Aggiornati servizi di recupera materiale con nuove logiche barcode
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
1
.idea/vcs.xml
generated
1
.idea/vcs.xml
generated
@@ -2,5 +2,6 @@
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/ts" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
@@ -6,6 +6,7 @@ import it.integry.ems.utility.UtilityEntity;
|
||||
import it.integry.ems_model.annotation.*;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.base.EquatableEntityInterface;
|
||||
import it.integry.ems_model.entity.key.MtbColtKey;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import it.integry.ems_model.utility.UtilityHashMap;
|
||||
@@ -197,6 +198,14 @@ public class MtbColt extends EntityBase implements EquatableEntityInterface<MtbC
|
||||
super(logger);
|
||||
}
|
||||
|
||||
public MtbColt(MtbColtKey mtbColtKey) {
|
||||
this();
|
||||
this.dataCollo = mtbColtKey.getDataCollo();
|
||||
this.gestione = mtbColtKey.getGestione();
|
||||
this.serCollo = mtbColtKey.getSerCollo();
|
||||
this.numCollo = mtbColtKey.getNumCollo();
|
||||
}
|
||||
|
||||
public MtbColt(String gestione, LocalDate dataCollo, Integer numCollo, String serCollo) {
|
||||
this();
|
||||
this.dataCollo = dataCollo;
|
||||
|
||||
@@ -5,10 +5,14 @@ import java.util.Objects;
|
||||
|
||||
public class MtbColtKey {
|
||||
|
||||
private final String gestione;
|
||||
private final String serCollo;
|
||||
private final LocalDate dataCollo;
|
||||
private final Integer numCollo;
|
||||
private String gestione;
|
||||
private String serCollo;
|
||||
private LocalDate dataCollo;
|
||||
private Integer numCollo;
|
||||
|
||||
public MtbColtKey() {
|
||||
// Default constructor for JPA
|
||||
}
|
||||
|
||||
public MtbColtKey(String gestione, String serCollo, LocalDate dataCollo, Integer numCollo) {
|
||||
this.gestione = gestione;
|
||||
@@ -17,6 +21,22 @@ public class MtbColtKey {
|
||||
this.numCollo = numCollo;
|
||||
}
|
||||
|
||||
public String getGestione() {
|
||||
return gestione;
|
||||
}
|
||||
|
||||
public String getSerCollo() {
|
||||
return serCollo;
|
||||
}
|
||||
|
||||
public LocalDate getDataCollo() {
|
||||
return dataCollo;
|
||||
}
|
||||
|
||||
public Integer getNumCollo() {
|
||||
return numCollo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
|
||||
@@ -442,7 +442,7 @@ public class WMSUtility {
|
||||
|
||||
List<MtbAart> listMtbAart = UtilityDB.executeSimpleQueryDTO(connection, query, MtbAart.class);
|
||||
|
||||
List<MtbAartBarCode> barCodeFromCod = getBarCodeFromCod(codMarts, connection);
|
||||
List<MtbAartBarCode> barCodeFromCod = getAlternativeMtbAartBarCodes(codMarts, connection);
|
||||
|
||||
if (listMtbAart != null && !listMtbAart.isEmpty()) {
|
||||
List<String> untMisStrings = listMtbAart.stream()
|
||||
@@ -490,8 +490,11 @@ public class WMSUtility {
|
||||
"SELECT CAST(IIF(COUNT(*) > 0, 1, 0) AS BIT) AS exist " +
|
||||
" FROM mtb_colt WHERE barcode_ul = " + UtilityDB.valueToString(barcodeUl));
|
||||
}
|
||||
public static List<MtbAartBarCode> getBarCodeFromCod(List<String> codMart, Connection conn) throws Exception {
|
||||
String sql = "SELECT * FROM mtb_aart_bar_code WHERE cod_mart IN (" + UtilityQuery.concatStringFieldsWithSeparator(codMart, ",") + ")";
|
||||
public static List<MtbAartBarCode> getAlternativeMtbAartBarCodes(List<String> codMarts, Connection conn) throws Exception {
|
||||
codMarts = codMarts.stream()
|
||||
.distinct().collect(Collectors.toList());
|
||||
|
||||
String sql = "SELECT * FROM mtb_aart_bar_code WHERE cod_mart IN (" + UtilityQuery.concatStringFieldsWithSeparator(codMarts, ",") + ")";
|
||||
final List<MtbAartBarCode> barCodeList = UtilityDB.executeSimpleQueryDTO(conn, sql, MtbAartBarCode.class);
|
||||
return barCodeList != null ? barCodeList : new ArrayList<>();
|
||||
}
|
||||
@@ -559,4 +562,12 @@ public class WMSUtility {
|
||||
|
||||
return UtilityDB.executeSimpleQueryOnlyFirstColumn(connection, sql);
|
||||
}
|
||||
|
||||
public static MtbColt retrieveBarcodeUlAnag(Connection connection, String barcodeUl) throws Exception {
|
||||
if (UtilityString.isNullOrEmpty(barcodeUl))
|
||||
return null;
|
||||
|
||||
String sql = "SELECT * FROM mtb_colt WHERE barcode_ul = " + UtilityDB.valueToString(barcodeUl);
|
||||
return UtilityDB.executeSimpleQueryOnlyFirstRowDTO(connection, sql, MtbColt.class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,12 @@ public class WMSMaterialiController {
|
||||
}
|
||||
|
||||
|
||||
@GetMapping(value = "retrieveLastVersamenti")
|
||||
public @ResponseBody ServiceRestResponse recupera(@RequestParam(required = false) String codJfas) throws Exception {
|
||||
return ServiceRestResponse.createPositiveResponse(wmsMaterialiService.retrieveLastVersamenti(codJfas));
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "recupera")
|
||||
public @ResponseBody ServiceRestResponse recupera(@RequestParam(CommonConstants.PROFILE_DB) String profileDB,
|
||||
@RequestBody RecuperaMaterialiRequestDTO recuperaMaterialiRequestDTO) throws Exception {
|
||||
|
||||
@@ -0,0 +1,360 @@
|
||||
package it.integry.ems.retail.wms.lavorazione.dto;
|
||||
|
||||
import it.integry.ems_model.annotation.SqlField;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
public class HistoryVersamentoULDTO {
|
||||
|
||||
@SqlField("gestione")
|
||||
private String gestione;
|
||||
|
||||
@SqlField("data_collo")
|
||||
private LocalDate dataCollo;
|
||||
|
||||
@SqlField("ser_collo")
|
||||
private String serCollo;
|
||||
|
||||
@SqlField("num_collo")
|
||||
private Integer numCollo;
|
||||
|
||||
@SqlField("segno")
|
||||
private Integer segno;
|
||||
|
||||
@SqlField("cod_mart")
|
||||
private String codMart;
|
||||
|
||||
@SqlField("cod_col")
|
||||
private String codCol;
|
||||
|
||||
@SqlField("cod_tagl")
|
||||
private String codTagl;
|
||||
|
||||
@SqlField("cod_jfas")
|
||||
private String codJfas;
|
||||
|
||||
@SqlField("descrizione_fase")
|
||||
private String descrizioneFase;
|
||||
|
||||
@SqlField("qta_col")
|
||||
private BigDecimal qtaCol;
|
||||
|
||||
@SqlField("qta_cnf")
|
||||
private BigDecimal qtaCnf;
|
||||
|
||||
@SqlField("num_cnf")
|
||||
private BigDecimal numCnf;
|
||||
|
||||
@SqlField("partita_mag")
|
||||
private String partitaMag;
|
||||
|
||||
@SqlField("cod_jcom")
|
||||
private String codJcom;
|
||||
|
||||
@SqlField("datetime_row")
|
||||
private LocalDateTime datetimeRow;
|
||||
|
||||
@SqlField("descrizione_art")
|
||||
private String descrizioneArt;
|
||||
|
||||
@SqlField("unt_mis")
|
||||
private String untMis;
|
||||
|
||||
|
||||
@SqlField("barcode_ul_out")
|
||||
private String barcodeUlOut;
|
||||
|
||||
@SqlField("cod_mdep_out")
|
||||
private String codMdepOut;
|
||||
|
||||
@SqlField("posizione_out")
|
||||
private String posizioneOut;
|
||||
|
||||
@SqlField("barcode_ul_in")
|
||||
private String barcodeUlIn;
|
||||
|
||||
@SqlField("cod_mdep_in")
|
||||
private String codMdepIn;
|
||||
|
||||
@SqlField("posizione_in")
|
||||
private String posizioneIn;
|
||||
|
||||
|
||||
@SqlField("num_ord")
|
||||
private Integer numOrd;
|
||||
|
||||
@SqlField("data_ord")
|
||||
private LocalDate dataOrd;
|
||||
|
||||
@SqlField("gestione_ord")
|
||||
private String gestioneOrd;
|
||||
|
||||
@SqlField("riga_ord")
|
||||
private Integer rigaOrd;
|
||||
|
||||
@SqlField("percentage_hr")
|
||||
private Integer percentageHr;
|
||||
|
||||
public String getGestione() {
|
||||
return gestione;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setGestione(String gestione) {
|
||||
this.gestione = gestione;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataCollo() {
|
||||
return dataCollo;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setDataCollo(LocalDate dataCollo) {
|
||||
this.dataCollo = dataCollo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getSerCollo() {
|
||||
return serCollo;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setSerCollo(String serCollo) {
|
||||
this.serCollo = serCollo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getNumCollo() {
|
||||
return numCollo;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setNumCollo(Integer numCollo) {
|
||||
this.numCollo = numCollo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getSegno() {
|
||||
return segno;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setSegno(Integer segno) {
|
||||
this.segno = segno;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodMart() {
|
||||
return codMart;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodMart(String codMart) {
|
||||
this.codMart = codMart;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodCol() {
|
||||
return codCol;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodCol(String codCol) {
|
||||
this.codCol = codCol;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodTagl() {
|
||||
return codTagl;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodTagl(String codTagl) {
|
||||
this.codTagl = codTagl;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodJfas() {
|
||||
return codJfas;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodJfas(String codJfas) {
|
||||
this.codJfas = codJfas;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getDescrizioneFase() {
|
||||
return descrizioneFase;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setDescrizioneFase(String descrizioneFase) {
|
||||
this.descrizioneFase = descrizioneFase;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BigDecimal getQtaCol() {
|
||||
return qtaCol;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setQtaCol(BigDecimal qtaCol) {
|
||||
this.qtaCol = qtaCol;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BigDecimal getQtaCnf() {
|
||||
return qtaCnf;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setQtaCnf(BigDecimal qtaCnf) {
|
||||
this.qtaCnf = qtaCnf;
|
||||
return this;
|
||||
}
|
||||
|
||||
public BigDecimal getNumCnf() {
|
||||
return numCnf;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setNumCnf(BigDecimal numCnf) {
|
||||
this.numCnf = numCnf;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getPartitaMag() {
|
||||
return partitaMag;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setPartitaMag(String partitaMag) {
|
||||
this.partitaMag = partitaMag;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodJcom() {
|
||||
return codJcom;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodJcom(String codJcom) {
|
||||
this.codJcom = codJcom;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDateTime getDatetimeRow() {
|
||||
return datetimeRow;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setDatetimeRow(LocalDateTime datetimeRow) {
|
||||
this.datetimeRow = datetimeRow;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getDescrizioneArt() {
|
||||
return descrizioneArt;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setDescrizioneArt(String descrizioneArt) {
|
||||
this.descrizioneArt = descrizioneArt;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getUntMis() {
|
||||
return untMis;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setUntMis(String untMis) {
|
||||
this.untMis = untMis;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getBarcodeUlOut() {
|
||||
return barcodeUlOut;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setBarcodeUlOut(String barcodeUlOut) {
|
||||
this.barcodeUlOut = barcodeUlOut;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodMdepOut() {
|
||||
return codMdepOut;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodMdepOut(String codMdepOut) {
|
||||
this.codMdepOut = codMdepOut;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getPosizioneOut() {
|
||||
return posizioneOut;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setPosizioneOut(String posizioneOut) {
|
||||
this.posizioneOut = posizioneOut;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getBarcodeUlIn() {
|
||||
return barcodeUlIn;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setBarcodeUlIn(String barcodeUlIn) {
|
||||
this.barcodeUlIn = barcodeUlIn;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodMdepIn() {
|
||||
return codMdepIn;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setCodMdepIn(String codMdepIn) {
|
||||
this.codMdepIn = codMdepIn;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getPosizioneIn() {
|
||||
return posizioneIn;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setPosizioneIn(String posizioneIn) {
|
||||
this.posizioneIn = posizioneIn;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getNumOrd() {
|
||||
return numOrd;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setNumOrd(Integer numOrd) {
|
||||
this.numOrd = numOrd;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataOrd() {
|
||||
return dataOrd;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setDataOrd(LocalDate dataOrd) {
|
||||
this.dataOrd = dataOrd;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGestioneOrd() {
|
||||
return gestioneOrd;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setGestioneOrd(String gestioneOrd) {
|
||||
this.gestioneOrd = gestioneOrd;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getRigaOrd() {
|
||||
return rigaOrd;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setRigaOrd(Integer rigaOrd) {
|
||||
this.rigaOrd = rigaOrd;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getPercentageHr() {
|
||||
return percentageHr;
|
||||
}
|
||||
|
||||
public HistoryVersamentoULDTO setPercentageHr(Integer percentageHr) {
|
||||
this.percentageHr = percentageHr;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
package it.integry.ems.retail.wms.lavorazione.dto;
|
||||
|
||||
import it.integry.ems_model.entity.MtbColt;
|
||||
import it.integry.ems_model.entity.key.MtbColtKey;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
@@ -14,18 +14,18 @@ public class RecuperaMaterialiRequestDTO {
|
||||
private BigDecimal qtaCnf;
|
||||
private BigDecimal qtaTot;
|
||||
|
||||
private int numCollo;
|
||||
private LocalDate dataCollo;
|
||||
private String gestione;
|
||||
private String serCollo;
|
||||
private MtbColtKey movementScarico;
|
||||
|
||||
private int numColloRif;
|
||||
private LocalDate dataColloRif;
|
||||
private String gestioneRif;
|
||||
private String serColloRif;
|
||||
private String barcodeUlScarico;
|
||||
private String codMdepScarico;
|
||||
private String posizioneScarico;
|
||||
|
||||
private List<Ordine> ordini;
|
||||
private MtbColt mtbColtCarico;
|
||||
|
||||
private String barcodeUlCarico;
|
||||
private String codMdepCarico;
|
||||
private String posizioneCarico;
|
||||
|
||||
|
||||
public String getCodMart() {
|
||||
return codMart;
|
||||
@@ -72,75 +72,39 @@ public class RecuperaMaterialiRequestDTO {
|
||||
return this;
|
||||
}
|
||||
|
||||
public int getNumCollo() {
|
||||
return numCollo;
|
||||
public MtbColtKey getMovementScarico() {
|
||||
return movementScarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setNumCollo(int numCollo) {
|
||||
this.numCollo = numCollo;
|
||||
public RecuperaMaterialiRequestDTO setMovementScarico(MtbColtKey movementScarico) {
|
||||
this.movementScarico = movementScarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataCollo() {
|
||||
return dataCollo;
|
||||
public String getBarcodeUlScarico() {
|
||||
return barcodeUlScarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setDataCollo(LocalDate dataCollo) {
|
||||
this.dataCollo = dataCollo;
|
||||
public RecuperaMaterialiRequestDTO setBarcodeUlScarico(String barcodeUlScarico) {
|
||||
this.barcodeUlScarico = barcodeUlScarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGestione() {
|
||||
return gestione;
|
||||
public String getCodMdepScarico() {
|
||||
return codMdepScarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setGestione(String gestione) {
|
||||
this.gestione = gestione;
|
||||
public RecuperaMaterialiRequestDTO setCodMdepScarico(String codMdepScarico) {
|
||||
this.codMdepScarico = codMdepScarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getSerCollo() {
|
||||
return serCollo;
|
||||
public String getPosizioneScarico() {
|
||||
return posizioneScarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setSerCollo(String serCollo) {
|
||||
this.serCollo = serCollo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public int getNumColloRif() {
|
||||
return numColloRif;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setNumColloRif(int numColloRif) {
|
||||
this.numColloRif = numColloRif;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataColloRif() {
|
||||
return dataColloRif;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setDataColloRif(LocalDate dataColloRif) {
|
||||
this.dataColloRif = dataColloRif;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getGestioneRif() {
|
||||
return gestioneRif;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setGestioneRif(String gestioneRif) {
|
||||
this.gestioneRif = gestioneRif;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getSerColloRif() {
|
||||
return serColloRif;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setSerColloRif(String serColloRif) {
|
||||
this.serColloRif = serColloRif;
|
||||
public RecuperaMaterialiRequestDTO setPosizioneScarico(String posizioneScarico) {
|
||||
this.posizioneScarico = posizioneScarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -153,12 +117,30 @@ public class RecuperaMaterialiRequestDTO {
|
||||
return this;
|
||||
}
|
||||
|
||||
public MtbColt getMtbColtCarico() {
|
||||
return mtbColtCarico;
|
||||
public String getBarcodeUlCarico() {
|
||||
return barcodeUlCarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setMtbColtCarico(MtbColt mtbColtCarico) {
|
||||
this.mtbColtCarico = mtbColtCarico;
|
||||
public RecuperaMaterialiRequestDTO setBarcodeUlCarico(String barcodeUlCarico) {
|
||||
this.barcodeUlCarico = barcodeUlCarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodMdepCarico() {
|
||||
return codMdepCarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setCodMdepCarico(String codMdepCarico) {
|
||||
this.codMdepCarico = codMdepCarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getPosizioneCarico() {
|
||||
return posizioneCarico;
|
||||
}
|
||||
|
||||
public RecuperaMaterialiRequestDTO setPosizioneCarico(String posizioneCarico) {
|
||||
this.posizioneCarico = posizioneCarico;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
@@ -6,10 +6,7 @@ import it.integry.ems.retail.wms.exceptions.InvalidArticoloException;
|
||||
import it.integry.ems.retail.wms.generic.dto.MvwSitArtUdcDetInventarioDTO;
|
||||
import it.integry.ems.retail.wms.generic.dto.RetrieveArtsInGiacenzaByArtRequestDTO;
|
||||
import it.integry.ems.retail.wms.generic.service.WMSGiacenzaULService;
|
||||
import it.integry.ems.retail.wms.lavorazione.dto.RecuperaMaterialiRequestDTO;
|
||||
import it.integry.ems.retail.wms.lavorazione.dto.RecuperaMaterialiResponseDTO;
|
||||
import it.integry.ems.retail.wms.lavorazione.dto.VersaMaterialiRequestDTO;
|
||||
import it.integry.ems.retail.wms.lavorazione.dto.VersaMaterialiResponseDTO;
|
||||
import it.integry.ems.retail.wms.lavorazione.dto.*;
|
||||
import it.integry.ems.service.EntityProcessor;
|
||||
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
|
||||
import it.integry.ems.user.UserSession;
|
||||
@@ -25,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.ArrayList;
|
||||
@@ -71,7 +69,6 @@ public class WMSMaterialiService {
|
||||
throw new Exception("L'UL non contiene articoli (" + request.getBarcodeUl() + ")");
|
||||
|
||||
|
||||
|
||||
MtbDepoPosizioni posizioneVersamento = null;
|
||||
boolean isPosizioneVersamentoLineaProduzione = false;
|
||||
|
||||
@@ -150,14 +147,121 @@ public class WMSMaterialiService {
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
return new VersaMaterialiResponseDTO();
|
||||
}
|
||||
|
||||
|
||||
public List<HistoryVersamentoULDTO> retrieveLastVersamenti(@Nullable String codJfas) throws Exception {
|
||||
boolean versamentoDirettoEnabled = setupGest.getSetupBoolean("PICKING", "PRODUZIONE", "FLAG_VERSAMENTO_DIRETTO");
|
||||
|
||||
|
||||
String sql = "WITH ul_list AS (SELECT mtb_colr.gestione,\n" +
|
||||
" mtb_colr.data_collo,\n" +
|
||||
" mtb_colr.num_collo,\n" +
|
||||
" mtb_colr.ser_collo,\n" +
|
||||
" mtb_colr.cod_mart,\n" +
|
||||
" mtb_colr.cod_col,\n" +
|
||||
" mtb_colr.cod_tagl,\n" +
|
||||
" SUM(mtb_colr.qta_col) AS qta_col,\n" +
|
||||
" mtb_colr.qta_cnf AS qta_cnf,\n" +
|
||||
" SUM(mtb_colr.num_cnf) AS num_cnf,\n" +
|
||||
" mtb_colr.partita_mag,\n" +
|
||||
" mtb_colr.cod_jcom,\n" +
|
||||
" mtb_colr.barcode_ul_out,\n" +
|
||||
" mtb_colr.cod_mdep_out,\n" +
|
||||
" mtb_colr.posizione_out,\n" +
|
||||
" mtb_colr.barcode_ul_in,\n" +
|
||||
" mtb_colr.cod_mdep_in,\n" +
|
||||
" mtb_colr.posizione_in,\n" +
|
||||
" mtb_colt.segno,\n" +
|
||||
" mtb_colt.cod_jfas,\n" +
|
||||
" MAX(datetime_row) AS datetime_row,\n" +
|
||||
" mtb_colr.num_ord,\n" +
|
||||
" mtb_colr.data_ord,\n" +
|
||||
" mtb_colr.gestione AS gestione_ord,\n" +
|
||||
" mtb_colr.riga_ord,\n" +
|
||||
" dtb_ord_steps.hr_num AS hr,\n" +
|
||||
" CONVERT(INTEGER, ROUND((CAST(dtb_ord_steps.hr_num AS DECIMAL(20, 5)) /\n" +
|
||||
" SUM(dtb_ord_steps.hr_num) OVER (PARTITION BY mtb_colr.num_collo)) * 100,\n" +
|
||||
" SUM(IIF(dtb_ord_steps.hr_num > 0, dtb_ord_steps.hr_num, 1))\n" +
|
||||
" OVER (PARTITION BY mtb_colr.num_collo)) * 100,\n" +
|
||||
" 0) AS percentage_hr\n" +
|
||||
|
||||
"FROM mtb_colr\n" +
|
||||
" INNER JOIN mtb_colt ON mtb_colr.num_collo = mtb_colt.num_collo AND\n" +
|
||||
" mtb_colr.data_collo = mtb_colt.data_collo AND\n" +
|
||||
" mtb_colr.ser_collo = mtb_colt.ser_collo AND\n" +
|
||||
" mtb_colr.gestione = mtb_colt.gestione\n" +
|
||||
" " + (versamentoDirettoEnabled ? "INNER" : "LEFT OUTER") + " JOIN dtb_ord_steps ON dtb_ord_steps.data_ord = mtb_colr.data_ord AND\n" +
|
||||
" dtb_ord_steps.gestione = mtb_colr.gestione AND\n" +
|
||||
" dtb_ord_steps.num_ord = mtb_colr.num_ord AND\n" +
|
||||
" dtb_ord_steps.data_iniz IS NOT NULL AND\n" +
|
||||
" dtb_ord_steps.data_fine IS NULL\n" +
|
||||
"WHERE mtb_colt.cod_jfas IS NOT NULL\n" +
|
||||
(UtilityString.isNullOrEmpty(codJfas) ? "" : " AND mtb_colt.cod_jfas = " + UtilityDB.valueToString(codJfas)) +
|
||||
" AND segno = -1\n" +
|
||||
" AND mtb_colr.data_collo > DATEADD(DAY, -5, GETDATE())\n" +
|
||||
" GROUP BY mtb_colr.gestione, mtb_colr.data_collo,\n" +
|
||||
" mtb_colr.num_collo, mtb_colr.ser_collo, mtb_colr.qta_cnf, mtb_colr.cod_mart, mtb_colr.cod_col,\n" +
|
||||
" mtb_colr.cod_tagl, mtb_colr.ser_collo, mtb_colr.partita_mag, mtb_colr.cod_jcom,\n" +
|
||||
" mtb_colt.cod_jfas,\n" +
|
||||
" mtb_colr.barcode_ul_out, mtb_colr.cod_mdep_out, mtb_colr.posizione_out,\n" +
|
||||
" mtb_colr.barcode_ul_in, mtb_colr.cod_mdep_in, mtb_colr.posizione_in, mtb_colt.segno,\n" +
|
||||
" mtb_colr.num_ord, mtb_colr.data_ord, mtb_colr.gestione, mtb_colr.riga_ord,\n" +
|
||||
" dtb_ord_steps.hr_num\n" +
|
||||
" HAVING SUM(mtb_colr.qta_col) > 0" +
|
||||
"),\n" +
|
||||
" max_ul AS (SELECT gestione,\n" +
|
||||
" cod_mart,\n" +
|
||||
" cod_col,\n" +
|
||||
" cod_tagl,\n" +
|
||||
" ser_collo,\n" +
|
||||
" partita_mag,\n" +
|
||||
" cod_jcom,\n" +
|
||||
" segno,\n" +
|
||||
" num_ord,\n" +
|
||||
" data_ord,\n" +
|
||||
" gestione_ord,\n" +
|
||||
" riga_ord,\n" +
|
||||
" cod_jfas,\n" +
|
||||
" hr,\n" +
|
||||
" MAX(datetime_row) AS max_datetime_row\n" +
|
||||
" FROM ul_list\n" +
|
||||
" GROUP BY gestione, cod_mart, cod_col, cod_tagl, ser_collo, partita_mag,\n" +
|
||||
" cod_jcom,\n" +
|
||||
" segno, num_ord, data_ord, gestione_ord, riga_ord, cod_jfas, hr)\n" +
|
||||
"SELECT ul_list.*,\n" +
|
||||
"\n" +
|
||||
" ISNULL(mtb_aart.descrizione_estesa, mtb_aart.descrizione) AS descrizione_art,\n" +
|
||||
" mtb_aart.unt_mis,\n" +
|
||||
" jtb_fasi.cod_jfas,\n" +
|
||||
" jtb_fasi.descrizione AS descrizione_fase\n" +
|
||||
"FROM max_ul\n" +
|
||||
"LEFT OUTER JOIN ul_list ON ISNULL(max_ul.gestione, '') = ISNULL(ul_list.gestione, '') AND\n" +
|
||||
" ISNULL(max_ul.cod_mart, '') = ISNULL(ul_list.cod_mart, '') AND\n" +
|
||||
" ISNULL(max_ul.cod_col, '') = ISNULL(ul_list.cod_col, '') AND\n" +
|
||||
" ISNULL(max_ul.cod_tagl, '') = ISNULL(ul_list.cod_tagl, '') AND\n" +
|
||||
" ISNULL(max_ul.ser_collo, '') = ISNULL(ul_list.ser_collo, '') AND\n" +
|
||||
" ISNULL(max_ul.partita_mag, '') = ISNULL(ul_list.partita_mag, '') AND\n" +
|
||||
" ISNULL(max_ul.cod_jcom, '') = ISNULL(ul_list.cod_jcom, '') AND\n" +
|
||||
" ISNULL(max_ul.segno, '') = ISNULL(ul_list.segno, '') AND\n" +
|
||||
" ISNULL(max_ul.num_ord, '') = ISNULL(ul_list.num_ord, '') AND\n" +
|
||||
" ISNULL(max_ul.data_ord, '') = ISNULL(ul_list.data_ord, '') AND\n" +
|
||||
" ISNULL(max_ul.gestione_ord, '') = ISNULL(ul_list.gestione_ord, '') AND\n" +
|
||||
" ISNULL(max_ul.riga_ord, '') = ISNULL(ul_list.riga_ord, '') AND\n" +
|
||||
" max_ul.cod_jfas = ul_list.cod_jfas AND\n" +
|
||||
" ISNULL(max_ul.hr, '') = ISNULL(ul_list.hr, '') AND\n" +
|
||||
" max_ul.max_datetime_row = ul_list.datetime_row\n" +
|
||||
"INNER JOIN mtb_aart ON max_ul.cod_mart = mtb_aart.cod_mart\n" +
|
||||
" INNER JOIN jtb_fasi ON max_ul.cod_jfas = jtb_fasi.cod_jfas";
|
||||
|
||||
|
||||
return UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, HistoryVersamentoULDTO.class);
|
||||
}
|
||||
|
||||
public RecuperaMaterialiResponseDTO recupera(RecuperaMaterialiRequestDTO request) throws Exception {
|
||||
|
||||
final boolean versamentoDirettoEnabled = setupGest.getSetupBoolean(multiDBTransactionManager.getPrimaryConnection(), "PICKING", "PRODUZIONE", "FLAG_VERSAMENTO_DIRETTO");
|
||||
@@ -167,22 +271,19 @@ public class WMSMaterialiService {
|
||||
if (mtbAart == null)
|
||||
throw new InvalidArticoloException(request.getCodMart());
|
||||
|
||||
if (request.getMtbColtCarico() == null)
|
||||
if (request.getBarcodeUlCarico() == null)
|
||||
throw new Exception("Indicare una UL in cui effettuare il carico del materiale");
|
||||
|
||||
|
||||
List<EntityBase> entitiesToSave = new ArrayList<>();
|
||||
|
||||
final MtbColt mtbColtScarico = new MtbColt()
|
||||
.setDataCollo(request.getDataCollo())
|
||||
.setSerCollo(request.getSerCollo())
|
||||
.setNumCollo(request.getNumCollo())
|
||||
.setGestione(request.getGestione());
|
||||
final MtbColt movementScarico = new MtbColt(request.getMovementScarico());
|
||||
|
||||
mtbColtScarico.setOperation(OperationType.SELECT_OBJECT);
|
||||
entityProcessor.processEntity(mtbColtScarico, multiDBTransactionManager);
|
||||
movementScarico.setOperation(OperationType.SELECT_OBJECT);
|
||||
entityProcessor.processEntity(movementScarico, true, multiDBTransactionManager);
|
||||
|
||||
entitiesToSave.add(mtbColtScarico);
|
||||
movementScarico.setOperation(OperationType.UPDATE);
|
||||
entitiesToSave.add(movementScarico);
|
||||
|
||||
BigDecimal inputNumCnf = request.getNumCnf();
|
||||
BigDecimal inputQtaTot = request.getQtaTot();
|
||||
@@ -213,7 +314,7 @@ public class WMSMaterialiService {
|
||||
qtaColToSave = qtaColToSave.multiply(BigDecimal.valueOf(-1));
|
||||
|
||||
|
||||
final MtbColr mtbColrScarico = new MtbColr()
|
||||
final MtbColr mtbColrScaricoNegative = new MtbColr()
|
||||
.setCodMart(request.getCodMart())
|
||||
.setPartitaMag(UtilityString.emptyStr2Null(request.getPartitaMag()))
|
||||
.setQtaCol(qtaColToSave)
|
||||
@@ -221,16 +322,21 @@ public class WMSMaterialiService {
|
||||
.setNumCnf(numCnfToSave)
|
||||
.setDescrizione(UtilityString.isNull(mtbAart.getDescrizioneEstesa(), mtbAart.getDescrizione()))
|
||||
.setDatetimeRow(UtilityLocalDate.getNowTime())
|
||||
.setNumColloRif(request.getNumColloRif())
|
||||
.setDataColloRif(request.getDataColloRif())
|
||||
.setGestioneRif(request.getGestioneRif())
|
||||
.setSerColloRif(request.getSerColloRif())
|
||||
|
||||
.setBarcodeUlOut(request.getBarcodeUlScarico())
|
||||
.setCodMdepOut(request.getCodMdepScarico())
|
||||
.setPosizioneOut(request.getPosizioneScarico())
|
||||
|
||||
.setBarcodeUlIn(movementScarico.getBarcodeUl())
|
||||
.setPosizioneIn(movementScarico.getPosizione())
|
||||
.setCodMdepIn(movementScarico.getCodMdep())
|
||||
|
||||
.setDataOrd(ordine.getData())
|
||||
.setNumOrd(ordine.getNumero())
|
||||
.setRigaOrd(ordine.getRigaOrd());
|
||||
|
||||
mtbColrScarico.setOperation(OperationType.INSERT);
|
||||
mtbColtScarico.getMtbColr().add(mtbColrScarico);
|
||||
mtbColrScaricoNegative.setOperation(OperationType.INSERT);
|
||||
movementScarico.getMtbColr().add(mtbColrScaricoNegative);
|
||||
}
|
||||
} else {
|
||||
BigDecimal qtaColToSave;
|
||||
@@ -268,16 +374,21 @@ public class WMSMaterialiService {
|
||||
.setNumCnf(numCnf)
|
||||
.setDescrizione(UtilityString.isNull(mtbAart.getDescrizioneEstesa(), mtbAart.getDescrizione()))
|
||||
.setDatetimeRow(UtilityLocalDate.getNowTime())
|
||||
.setNumColloRif(request.getNumColloRif())
|
||||
.setDataColloRif(request.getDataColloRif())
|
||||
.setGestioneRif(request.getGestioneRif())
|
||||
.setSerColloRif(request.getSerColloRif())
|
||||
|
||||
.setBarcodeUlOut(request.getBarcodeUlScarico())
|
||||
.setCodMdepOut(request.getCodMdepScarico())
|
||||
.setPosizioneOut(request.getPosizioneScarico())
|
||||
|
||||
.setBarcodeUlIn(movementScarico.getBarcodeUl())
|
||||
.setPosizioneIn(movementScarico.getPosizione())
|
||||
.setCodMdepIn(movementScarico.getCodMdep())
|
||||
|
||||
.setDataOrd(ordine.getData())
|
||||
.setNumOrd(ordine.getNumero())
|
||||
.setRigaOrd(ordine.getRigaOrd());
|
||||
|
||||
mtbColrScarico.setOperation(OperationType.INSERT);
|
||||
mtbColtScarico.getMtbColr().add(mtbColrScarico);
|
||||
movementScarico.getMtbColr().add(mtbColrScarico);
|
||||
}
|
||||
} else {
|
||||
final MtbColr mtbColrScarico = new MtbColr()
|
||||
@@ -288,13 +399,17 @@ public class WMSMaterialiService {
|
||||
.setNumCnf(numCnfToSave)
|
||||
.setDescrizione(UtilityString.isNull(mtbAart.getDescrizioneEstesa(), mtbAart.getDescrizione()))
|
||||
.setDatetimeRow(UtilityLocalDate.getNowTime())
|
||||
.setNumColloRif(request.getNumColloRif())
|
||||
.setDataColloRif(request.getDataColloRif())
|
||||
.setGestioneRif(request.getGestioneRif())
|
||||
.setSerColloRif(request.getSerColloRif());
|
||||
|
||||
.setBarcodeUlOut(request.getBarcodeUlScarico())
|
||||
.setCodMdepOut(request.getCodMdepScarico())
|
||||
.setPosizioneOut(request.getPosizioneScarico())
|
||||
|
||||
.setBarcodeUlIn(movementScarico.getBarcodeUl())
|
||||
.setPosizioneIn(movementScarico.getPosizione())
|
||||
.setCodMdepIn(movementScarico.getCodMdep());
|
||||
|
||||
mtbColrScarico.setOperation(OperationType.INSERT);
|
||||
mtbColtScarico.getMtbColr().add(mtbColrScarico);
|
||||
movementScarico.getMtbColr().add(mtbColrScarico);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -303,38 +418,34 @@ public class WMSMaterialiService {
|
||||
|
||||
if (UtilityBigDecimal.lowerThan(totalSumOfNumCnf, inputNumCnf)) {
|
||||
BigDecimal diff = inputNumCnf.subtract(totalSumOfNumCnf).multiply(BigDecimal.valueOf(-1));
|
||||
mtbColtScarico.getMtbColr().get(0).setNumCnf(mtbColtScarico.getMtbColr().get(0).getNumCnf().add(diff));
|
||||
movementScarico.getMtbColr().get(0).setNumCnf(movementScarico.getMtbColr().get(0).getNumCnf().add(diff));
|
||||
updateQtaCnfFirstRow = true;
|
||||
}
|
||||
|
||||
if (UtilityBigDecimal.lowerThan(totalSumOfQtaCol, inputQtaTot)) {
|
||||
BigDecimal diff = inputQtaTot.subtract(totalSumOfQtaCol).multiply(BigDecimal.valueOf(-1));
|
||||
mtbColtScarico.getMtbColr().get(0).setQtaCol(mtbColtScarico.getMtbColr().get(0).getQtaCol().add(diff));
|
||||
movementScarico.getMtbColr().get(0).setQtaCol(movementScarico.getMtbColr().get(0).getQtaCol().add(diff));
|
||||
updateQtaCnfFirstRow = true;
|
||||
}
|
||||
|
||||
if (updateQtaCnfFirstRow) {
|
||||
mtbColtScarico.getMtbColr().get(0).setQtaCnf(
|
||||
UtilityBigDecimal.divide(mtbColtScarico.getMtbColr().get(0).getQtaCol(), mtbColtScarico.getMtbColr().get(0).getNumCnf()));
|
||||
movementScarico.getMtbColr().get(0).setQtaCnf(
|
||||
UtilityBigDecimal.divide(movementScarico.getMtbColr().get(0).getQtaCol(), movementScarico.getMtbColr().get(0).getNumCnf()));
|
||||
}
|
||||
|
||||
for (int i = 0; i < mtbColtScarico.getMtbColr().size(); i++) {
|
||||
if (mtbColtScarico.getMtbColr().get(i).getQtaCol().equals(BigDecimal.ZERO)) {
|
||||
mtbColtScarico.getMtbColr().remove(i);
|
||||
i--;
|
||||
}
|
||||
}
|
||||
|
||||
mtbColtScarico.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
|
||||
if (!request.getMtbColtCarico().getDataCollo().isEqual(request.getDataColloRif()) ||
|
||||
!request.getMtbColtCarico().getSerCollo().equalsIgnoreCase(request.getSerColloRif()) ||
|
||||
request.getMtbColtCarico().getNumCollo() != request.getNumColloRif() ||
|
||||
!request.getMtbColtCarico().getGestione().equalsIgnoreCase(request.getGestioneRif())) {
|
||||
// for (int i = 0; i < mtbColtScarico.getMtbColr().size(); i++) {
|
||||
// if (mtbColtScarico.getMtbColr().get(i).getQtaCol().equals(BigDecimal.ZERO)) {
|
||||
// mtbColtScarico.getMtbColr().remove(i);
|
||||
// i--;
|
||||
// }
|
||||
// }
|
||||
|
||||
if (!request.getBarcodeUlCarico().equalsIgnoreCase(request.getBarcodeUlScarico())) {
|
||||
//Non sto caricando nella stessa UL da cui ho prelevato
|
||||
MtbColt mtbColtCarico = request.getMtbColtCarico();
|
||||
mtbColtCarico.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
final MtbColt mtbColtMovement = WMSUtility.retrieveBarcodeUlAnag(
|
||||
multiDBTransactionManager.getPrimaryConnection(),
|
||||
request.getBarcodeUlCarico());
|
||||
mtbColtMovement.setOperation(OperationType.UPDATE);
|
||||
|
||||
final MtbColr mtbColrCarico = new MtbColr()
|
||||
.setCodMart(request.getCodMart())
|
||||
@@ -344,25 +455,26 @@ public class WMSMaterialiService {
|
||||
.setQtaCnf(inputQtaCnf)
|
||||
.setDescrizione(UtilityString.isNull(mtbAart.getDescrizioneEstesa(), mtbAart.getDescrizione()))
|
||||
.setDatetimeRow(UtilityLocalDate.getNowTime())
|
||||
.setNumColloRif(request.getNumColloRif())
|
||||
.setDataColloRif(request.getDataColloRif())
|
||||
.setGestioneRif(request.getGestioneRif())
|
||||
.setSerColloRif(request.getSerColloRif());
|
||||
.setBarcodeUlOut(request.getBarcodeUlScarico())
|
||||
.setCodMdepOut(request.getCodMdepScarico())
|
||||
.setPosizioneOut(request.getPosizioneScarico())
|
||||
.setBarcodeUlIn(request.getBarcodeUlCarico())
|
||||
.setCodMdepIn(request.getCodMdepCarico())
|
||||
.setPosizioneIn(request.getPosizioneCarico());
|
||||
mtbColrCarico.setOperation(OperationType.INSERT);
|
||||
|
||||
mtbColtMovement.getMtbColr().add(mtbColrCarico);
|
||||
|
||||
mtbColtCarico.setOperation(OperationType.INSERT_OR_UPDATE);
|
||||
mtbColtCarico.getMtbColr().add(mtbColrCarico);
|
||||
|
||||
entitiesToSave.add(mtbColtCarico);
|
||||
entitiesToSave.add(mtbColtMovement);
|
||||
|
||||
}
|
||||
|
||||
if (mtbColtScarico.hasDocument()) {
|
||||
DtbDoct dtbDoctScaricoToUpdate = new DtbDoct(mtbColtScarico.getCodAnag(),
|
||||
mtbColtScarico.getCodDtip(),
|
||||
mtbColtScarico.getDataDoc(),
|
||||
mtbColtScarico.getNumDoc(),
|
||||
mtbColtScarico.getSerDoc());
|
||||
if (movementScarico.hasDocument()) {
|
||||
DtbDoct dtbDoctScaricoToUpdate = new DtbDoct(movementScarico.getCodAnag(),
|
||||
movementScarico.getCodDtip(),
|
||||
movementScarico.getDataDoc(),
|
||||
movementScarico.getNumDoc(),
|
||||
movementScarico.getSerDoc());
|
||||
dtbDoctScaricoToUpdate.setOperation(OperationType.NO_OP);
|
||||
|
||||
|
||||
@@ -382,7 +494,8 @@ public class WMSMaterialiService {
|
||||
|
||||
final List<EntityBase> savedEntities = entityProcessor.processEntityList(entitiesToSave, true);
|
||||
UtilityEntity.throwEntitiesException(savedEntities);
|
||||
return new RecuperaMaterialiResponseDTO(mtbColtScarico);
|
||||
// return new RecuperaMaterialiResponseDTO(mtbColtScarico);
|
||||
return new RecuperaMaterialiResponseDTO(null);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user