Merge branch 'develop' into feature/JDK11
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good

This commit is contained in:
jenkins
2025-12-02 10:44:08 +01:00
9 changed files with 330 additions and 61 deletions

View File

@@ -193,7 +193,7 @@ public class LicorProductionService {
.setPartitaMag(scarico.getPartitaMag())
.setTargetMtbColt(scaricoMaterialiAgg)
.setQtaCnf(scarico.getQtaCnf())
.setDataOrd(chiusuraLavorazioneDTO.getOrdine().getDataOrd())
.setDataOrd(UtilityLocalDate.localDateFromDate(chiusuraLavorazioneDTO.getOrdine().getDataOrd()))
.setRigaOrd(rigaOrd)
.setNumOrd(chiusuraLavorazioneDTO.getOrdine().getNumOrd());
wmsLavorazioneService.insertUDSRow(insertRequestDto);
@@ -419,7 +419,7 @@ public class LicorProductionService {
requestDTO.setQtaCnf(rigaOrdine.getQtaCnf());
requestDTO.setNumCnf(UtilityBigDecimal.divide(inventarioDTO.getQtaCol(), rigaOrdine.getQtaCnf()));
requestDTO.setDataOrd(rigaOrdine.getDataOrd());
requestDTO.setDataOrd(UtilityLocalDate.localDateFromDate(rigaOrdine.getDataOrd()));
requestDTO.setNumOrd(rigaOrdine.getNumOrd());
requestDTO.setRigaOrd(rigaOrdine.getRigaOrd());
@@ -443,7 +443,7 @@ public class LicorProductionService {
requestDTO.setQtaCnf(rigaOrdine.getQtaCnf());
requestDTO.setNumCnf(UtilityBigDecimal.divide(disp.getQta(), rigaOrdine.getQtaCnf()));
requestDTO.setDataOrd(rigaOrdine.getDataOrd());
requestDTO.setDataOrd(UtilityLocalDate.localDateFromDate(rigaOrdine.getDataOrd()));
requestDTO.setNumOrd(rigaOrdine.getNumOrd());
requestDTO.setRigaOrd(rigaOrdine.getRigaOrd());

View File

@@ -7,7 +7,6 @@ import it.integry.ems.document.dto.ULRowDTO;
import it.integry.ems.document.dto.UlVenditaDTO;
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.menu.dto.StbMenuDTO;
import it.integry.ems.retail.wms.accettazione.service.WMSAccettazioneService;
import it.integry.ems.retail.wms.dto.*;
import it.integry.ems.retail.wms.generic.dto.MvwSitArtUdcDetInventarioDTO;
@@ -25,7 +24,6 @@ import it.integry.ems_model.service.SetupGest;
import it.integry.ems_model.types.OperationType;
import it.integry.ems_model.utility.*;
import org.apache.commons.lang3.StringUtils;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
@@ -852,7 +850,7 @@ public class DocumentiDirettiService {
.setCodMart(ulRowDTO.getCodMart())
.setPartitaMag(ulRowDTO.getPartitaMag())
.setQtaTot(ulRowDTO.getQtaCol())
.setDataOrd(ulRowDTO.getDataOrd() != null ? UtilityLocalDate.localDateToDate(ulRowDTO.getDataOrd()) : null)
.setDataOrd(ulRowDTO.getDataOrd() != null ? ulRowDTO.getDataOrd() : null)
.setNumOrd(ulRowDTO.getNumOrd())
.setRigaOrd(ulRowDTO.getRigaOrd())
.setTargetMtbColt(uds)

View File

@@ -1753,7 +1753,7 @@ public class MesProductionServiceV2 {
.setSourceMtbColr(sourceMtbColr)
.setTargetMtbColt(uds)
.setQtaCnf(scarico.getQtaCnf())
.setDataOrd(ordine.getDataOrd())
.setDataOrd(UtilityLocalDate.localDateFromDate(ordine.getDataOrd()))
.setRigaOrd(rigaOrd)
.setNumOrd(ordine.getNumOrd());
wmsLavorazioneService.insertUDSRow(insertRequestDto);

View File

@@ -4,20 +4,24 @@ import com.annimon.stream.Optional;
import com.annimon.stream.Stream;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.dynamic_cache.EntityCacheComponent;
import it.integry.ems.exception.MissingDataException;
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.retail.wms.dto.InsertUDCRowRequestDTO;
import it.integry.ems.retail.wms.dto.InsertUDCRowResponseDTO;
import it.integry.ems.retail.wms.dto.*;
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.SpostaArtsTraULResponseDTO;
import it.integry.ems.rules.businessLogic.enums.FlagSezione;
import it.integry.ems.rules.completing.PackagesRules;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.service.dto.production.OrdineLavorazioneDTO;
import it.integry.ems.service.production.ProductionOrderDataHandlerService;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems_model.entity.*;
import it.integry.ems_model.entity._enum.GestioneEnum;
import it.integry.ems_model.rulescompleting.DroolsDataCompleting;
import it.integry.ems_model.types.OperationType;
import it.integry.ems_model.utility.*;
import org.apache.commons.lang3.StringUtils;
@@ -26,10 +30,7 @@ import java.io.IOException;
import java.math.BigDecimal;
import java.sql.SQLException;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
public class WMSUtility {
@@ -117,6 +118,232 @@ public class WMSUtility {
return listaPedane;
}
public static MtbColt createUDSLavorazioneMovement(MultiDBTransactionManager multiDBTransactionManager, CreateUDSRequestDTO createUDSRequestDTO, String username) throws Exception {
DroolsDataCompleting droolsDataCompleting = ApplicationContextProvider.getApplicationContext().getBean(DroolsDataCompleting.class);
EntityProcessor entityProcessor = ApplicationContextProvider.getApplicationContext().getBean(EntityProcessor.class);
ProductionOrderDataHandlerService productionOrderDataHandlerService = ApplicationContextProvider.getApplicationContext().getBean(ProductionOrderDataHandlerService.class);
if (createUDSRequestDTO.getCausaleCollo() == null) {
throw new MissingDataException("Causale collo non specificata");
}
List<DtbOrdt> foundDtbOrdts = new ArrayList<>();
if (createUDSRequestDTO.getOrders() != null) {
for (CreateUDSRequestOrderDTO orderDTO : createUDSRequestDTO.getOrders()) {
DtbOrdt dtbOrdt = orderDTO.toDtbOrdtEntity();
dtbOrdt.setOperation(OperationType.SELECT_OBJECT);
entityProcessor.processEntity(dtbOrdt, true, multiDBTransactionManager);
foundDtbOrdts.add(dtbOrdt);
}
}
MtbColt udsMtbColt = new MtbColt()
.setGestione(GestioneEnum.LAVORAZIONE.getText())
.setDataCollo(createUDSRequestDTO.getDataCollo() != null ? createUDSRequestDTO.getDataCollo() : UtilityLocalDate.getNow())
.setNumCollo(createUDSRequestDTO.getNumCollo())
.setSerCollo(createUDSRequestDTO.getSerCollo())
.setCodMdep(createUDSRequestDTO.getCodMdep())
.setSegno(createUDSRequestDTO.getSegno())
.setAnnotazioni(createUDSRequestDTO.getAnnotazioni())
.setOraInizPrep(UtilityDate.isNull(UtilityLocalDate.localDateTimeToDate(createUDSRequestDTO.getOraInizPrep()), new Date()))
.setPreparatoDa(username)
.setPosizione(createUDSRequestDTO.getPosizione())
.setCodJfas(createUDSRequestDTO.getCodJfas())
.setRifOrd(createUDSRequestDTO.getRifOrd())
.setCodAnag(createUDSRequestDTO.getCodAnag())
.setCodVdes(createUDSRequestDTO.getCodVdes())
.setCodTcol(createUDSRequestDTO.getCodTcol())
.setIdLotto(createUDSRequestDTO.getIdLotto());
udsMtbColt.setOperation(OperationType.INSERT);
switch (createUDSRequestDTO.getCausaleCollo()) {
case SCARICO:
final List<String> foundCodJfasList = foundDtbOrdts.stream()
.map(DtbOrdt::getCodJfas)
.distinct()
.collect(Collectors.toList());
if (foundCodJfasList.size() == 1)
udsMtbColt.setCodJfas(foundCodJfasList.get(0));
udsMtbColt.setSegno(-1);
break;
case POSIZIONAMENTO:
udsMtbColt.setSegno(1);
break;
}
if (UtilityString.isNullOrEmpty(udsMtbColt.getSerCollo())) {
udsMtbColt.setSerCollo(PackagesRules.getSerCollo(
multiDBTransactionManager.getPrimaryConnection(),
createUDSRequestDTO.getCodMdep()));
}
if (foundDtbOrdts.size() == 1) {
DtbOrdt foundDtbOrdt = foundDtbOrdts.get(0);
udsMtbColt.setNumOrd(foundDtbOrdt.getNumOrd())
.setDataOrd(UtilityLocalDate.localDateFromDate(foundDtbOrdt.getDataOrd()))
.setRifOrd(foundDtbOrdt.getRifOrd())
.setCodAnag(foundDtbOrdt.getCodAnag());
}
if (createUDSRequestDTO.getOrders() != null) {
String filtroOrdini = MtbColtUtils.generaFiltroOrdini(null,
createUDSRequestDTO.getOrders().stream()
.map(CreateUDSRequestOrderDTO::toDtbOrdrEntity)
.collect(Collectors.toList()));
udsMtbColt.setFiltroOrdini(filtroOrdini);
}
if (createUDSRequestDTO.isOrderRequired() && foundDtbOrdts.isEmpty()) {
final List<OrdineLavorazioneDTO> ordiniLavorazioneInCorso = productionOrderDataHandlerService.getOrdiniLavorazioneInCorso(createUDSRequestDTO.getCodJfas());
//Try to retrieve
//Se non trovo niente allora eccezione
if (ordiniLavorazioneInCorso == null || ordiniLavorazioneInCorso.isEmpty()) {
throw new Exception("Nessun ordine in corso sulla linea " + createUDSRequestDTO.getCodJfas());
}
if (udsMtbColt.getIdLotto() == null) {
List<Integer> idLotto = Stream.of(ordiniLavorazioneInCorso)
.map(OrdineLavorazioneDTO::getIdLotto)
.withoutNulls()
.distinct()
.toList();
if (idLotto.size() == 1) {
//Assegnare l'ordine o l'id lotto al collo appena creato
udsMtbColt
.setIdLotto(idLotto.get(0));
}
}
final List<Integer> foundInCorsoOrders = ordiniLavorazioneInCorso.stream()
.map(OrdineLavorazioneDTO::getNumOrd)
.distinct()
.collect(Collectors.toList());
if (foundInCorsoOrders.size() == 1) {
OrdineLavorazioneDTO ordineLavorazioneDTO = ordiniLavorazioneInCorso.get(0);
udsMtbColt
.setDataOrd(ordineLavorazioneDTO.getDataOrd())
.setNumOrd(ordineLavorazioneDTO.getNumOrd());
}
}
droolsDataCompleting.complete(udsMtbColt, multiDBTransactionManager.getPrimaryConnection(), username);
return udsMtbColt;
}
public static InsertUDSRowResponseDTO insertUDSLavorazioneRowMovement(Connection connection, InsertUDSRowRequestDTO insertUDSRowRequestDTO, String username) throws Exception {
DroolsDataCompleting droolsDataCompleting = ApplicationContextProvider.getApplicationContext().getBean(DroolsDataCompleting.class);
//Prendo solo la chiave
MtbColt targetMtbColt = insertUDSRowRequestDTO.getTargetMtbColt();
if (targetMtbColt == null)
throw new Exception("Nessun collo di destinazione specificato durante l'inserimento di una riga in una UDS (targetMtbColt null)");
MtbAart mtbAart = WMSUtility.getArticoloByCodMart(insertUDSRowRequestDTO.getCodMart(), connection);
if (mtbAart == null)
throw new InvalidArticoloException(insertUDSRowRequestDTO.getCodMart());
MtbColrInfoProd mtbColrInfoProd = null;
if (!UtilityString.isNullOrEmpty(insertUDSRowRequestDTO.getContrassegnoDa())) {
mtbColrInfoProd = new MtbColrInfoProd()
.setContrassegnoDa(insertUDSRowRequestDTO.getContrassegnoDa());
mtbColrInfoProd.setOperation(OperationType.INSERT_OR_UPDATE);
}
final MtbColr targetMtbColr = new MtbColr()
.setCausale(MtbColr.Causale.DEFAULT)
.setCodMart(mtbAart.getCodMart())
.setPartitaMag(insertUDSRowRequestDTO.getPartitaMag())
.setDataScadPartita(UtilityLocalDate.localDateToDate(insertUDSRowRequestDTO.getDataScad()))
.setQtaCol(insertUDSRowRequestDTO.getQtaTot())
.setQtaCnf(insertUDSRowRequestDTO.getQtaCnf())
.setNumCnf(insertUDSRowRequestDTO.getNumCnf())
.setDescrizione(mtbAart.getDescrizioneEstesa())
.setUtente(username)
.setDataOrd(insertUDSRowRequestDTO.getDataOrd())
.setNumOrd(insertUDSRowRequestDTO.getNumOrd())
.setRigaOrd(insertUDSRowRequestDTO.getRigaOrd())
.setDatetimeRow(UtilityLocalDate.isNull(insertUDSRowRequestDTO.getDatetimeRow(), UtilityLocalDate.getNowTime()))
.setCodJcom(insertUDSRowRequestDTO.getCodJcom())
.setMtbColrInfoProd(mtbColrInfoProd);
targetMtbColr.setOperation(OperationType.INSERT);
targetMtbColt.getMtbColr().add(targetMtbColr);
if (insertUDSRowRequestDTO.getSourceMtbColr() != null) {
MtbColr sourceMtbColr = insertUDSRowRequestDTO.getSourceMtbColr();
String sqlCodTcol = Query.format("SELECT cod_tcol\n" +
"FROM mtb_colt\n" +
"WHERE gestione = {}\n" +
" AND data_collo = {}\n" +
" AND num_collo = {}\n" +
" AND ser_collo = {}",
sourceMtbColr.getGestione(),
sourceMtbColr.getDataCollo(),
sourceMtbColr.getNumCollo(),
sourceMtbColr.getSerCollo());
final String sourceCodTcol = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection, sqlCodTcol);
if (UtilityString.isNullOrEmpty(targetMtbColt.getCodTcol()) && !UtilityString.isNullOrEmpty(sourceCodTcol)) {
targetMtbColt.setCodTcol(sourceCodTcol);
if (targetMtbColt.getOperation() == OperationType.SELECT_OBJECT ||
targetMtbColt.getOperation() == OperationType.SELECT ||
targetMtbColt.getOperation() == OperationType.NO_OP)
targetMtbColt.setOperation(OperationType.UPDATE);
}
targetMtbColr
// .setCodJcom(UtilityString.emptyStr2Null(sourceMtbColr.getCodJcom()))
.setSerColloRif(sourceMtbColr.getSerCollo())
.setDataColloRif(sourceMtbColr.getDataCollo())
.setNumColloRif(sourceMtbColr.getNumCollo())
.setGestioneRif(sourceMtbColr.getGestione());
if (sourceMtbColr.getPesoNettoKg() != null) {
//Proporzione
BigDecimal pesoNettoKg = UtilityBigDecimal.divide(UtilityBigDecimal.multiply(insertUDSRowRequestDTO.getQtaTot(), sourceMtbColr.getPesoNettoKg()), sourceMtbColr.getQtaCol());
targetMtbColr.setPesoNettoKg(pesoNettoKg);
}
if (sourceMtbColr.getPesoLordoKg() != null) {
//Proporzione
BigDecimal pesoLordoKg = UtilityBigDecimal.divide(UtilityBigDecimal.multiply(insertUDSRowRequestDTO.getQtaTot(), sourceMtbColr.getPesoLordoKg()), sourceMtbColr.getQtaCol());
targetMtbColr.setPesoLordoKg(pesoLordoKg);
}
targetMtbColr
.setPosizioneOut(sourceMtbColr.getPosizioneIn())
.setCodMdepOut(sourceMtbColr.getCodMdepIn())
.setBarcodeUlOut(sourceMtbColr.getBarcodeUlIn());
//Non valorizzo i campi IN perchè si è ritenuto errato negli L-
// .setBarcodeUlIn(targetMtbColt.getBarcodeUl())
// .setPosizioneIn(targetMtbColt.getPosizione())
// .setCodMdepIn(targetMtbColt.getCodMdep());
}
droolsDataCompleting.complete(targetMtbColt, connection, username);
return new InsertUDSRowResponseDTO()
.setSavedMtbColr(targetMtbColr);
}
public static boolean canULBeDeleted(MtbColt mtbColt, MultiDBTransactionManager multiDBTransactionManager) throws Exception {
HashMap<String, Object> params = new HashMap<>();
params.put("mtb_colt.gestione", mtbColt.getGestione());

View File

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonValue;
import it.integry.ems_model.entity._enum.IBaseEnum;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
public class CreateUDSRequestDTO {
@@ -21,12 +22,16 @@ public class CreateUDSRequestDTO {
private String codJfas;
private String codAnag;
private String codVdes;
private String codTcol;
private Integer idLotto;
private String rifOrd;
private String barcodeUl;
private LocalDateTime oraInizPrep;
private boolean orderRequired;
private boolean reso;
private List<CreateUDSRequestOrderDTO> orders;
@@ -138,6 +143,15 @@ public class CreateUDSRequestDTO {
return this;
}
public String getCodTcol() {
return codTcol;
}
public CreateUDSRequestDTO setCodTcol(String codTcol) {
this.codTcol = codTcol;
return this;
}
public List<CreateUDSRequestOrderDTO> getOrders() {
return orders;
}
@@ -165,6 +179,15 @@ public class CreateUDSRequestDTO {
return this;
}
public boolean isReso() {
return reso;
}
public CreateUDSRequestDTO setReso(boolean reso) {
this.reso = reso;
return this;
}
public Integer getIdLotto() {
return idLotto;
}
@@ -183,6 +206,15 @@ public class CreateUDSRequestDTO {
return this;
}
public LocalDateTime getOraInizPrep() {
return oraInizPrep;
}
public CreateUDSRequestDTO setOraInizPrep(LocalDateTime oraInizPrep) {
this.oraInizPrep = oraInizPrep;
return this;
}
public enum Causale implements IBaseEnum<Causale> {
SCARICO(0),
POSIZIONAMENTO(1);

View File

@@ -4,7 +4,8 @@ import it.integry.ems_model.entity.MtbColr;
import it.integry.ems_model.entity.MtbColt;
import java.math.BigDecimal;
import java.util.Date;
import java.time.LocalDate;
import java.time.LocalDateTime;
public class InsertUDSRowRequestDTO {
@@ -16,12 +17,12 @@ public class InsertUDSRowRequestDTO {
private BigDecimal qtaCnf;
private BigDecimal numCnf;
private String partitaMag;
private Date dataScad;
private LocalDate dataScad;
private Date dataOrd;
private LocalDate dataOrd;
private Integer numOrd;
private Integer rigaOrd;
private LocalDateTime datetimeRow;
private String codJcom;
private String contrassegnoDa;
@@ -56,7 +57,7 @@ public class InsertUDSRowRequestDTO {
return partitaMag;
}
public Date getDataScad() {
public LocalDate getDataScad() {
return dataScad;
}
@@ -96,16 +97,16 @@ public class InsertUDSRowRequestDTO {
return this;
}
public InsertUDSRowRequestDTO setDataScad(Date dataScad) {
public InsertUDSRowRequestDTO setDataScad(LocalDate dataScad) {
this.dataScad = dataScad;
return this;
}
public Date getDataOrd() {
public LocalDate getDataOrd() {
return dataOrd;
}
public InsertUDSRowRequestDTO setDataOrd(Date dataOrd) {
public InsertUDSRowRequestDTO setDataOrd(LocalDate dataOrd) {
this.dataOrd = dataOrd;
return this;
}
@@ -128,6 +129,15 @@ public class InsertUDSRowRequestDTO {
return this;
}
public LocalDateTime getDatetimeRow() {
return datetimeRow;
}
public InsertUDSRowRequestDTO setDatetimeRow(LocalDateTime datetimeRow) {
this.datetimeRow = datetimeRow;
return this;
}
public String getCodJcom() {
return codJcom;
}

View File

@@ -1584,18 +1584,18 @@ public class WMSGenericService {
mtbColtToInsert.setOperation(OperationType.NO_OP);
} else {
mtbColtToInsert = new MtbColt()
.setMtbColr(new ArrayList<>())
.setGestione("L")
.setSegno(-1)
mtbColtToInsert = WMSUtility.createUDSLavorazioneMovement(multiDBTransactionManager,
new CreateUDSRequestDTO()
.setCausaleCollo(CreateUDSRequestDTO.Causale.SCARICO)
.setCodMdep(codMdep)
.setCodJfas(codJfas == null ? scaricoMateriaPrimaDTO.getCodJfas() : codJfas)
.setPosizione(scaricoMateriaPrimaDTO.getPosizione())
.setCodAnag(codAnag)
.setOrders(Collections.singletonList(new CreateUDSRequestOrderDTO()
.setDataOrd(scaricoMateriaPrimaDTO.getDataOrd())
.setNumOrd(scaricoMateriaPrimaDTO.getNumOrd())
.setCodAnag(codAnag);
mtbColtToInsert.setOperation(OperationType.INSERT_OR_UPDATE);
.setGestione(scaricoMateriaPrimaDTO.getGestioneOrd()))),
userSession.getUsername());
}
@@ -1629,21 +1629,19 @@ public class WMSGenericService {
if (UtilityBigDecimal.equalsOrLowerThan(qtaToTake, BigDecimal.ZERO)) continue;
MtbColr mtbColr = new MtbColr()
final InsertUDSRowResponseDTO insertedUds = WMSUtility.insertUDSLavorazioneRowMovement(multiDBTransactionManager.getPrimaryConnection(),
new InsertUDSRowRequestDTO()
.setTargetMtbColt(mtbColtToInsert)
.setCodMart(giacInPosizioneItem.getCodMart())
.setCodJcom(giacInPosizioneItem.getCodJcom())
.setNumOrd(scaricoMateriaPrimaDTO.getNumOrd())
.setDataOrd(scaricoMateriaPrimaDTO.getDataOrd())
.setRigaOrd(giacInPosizioneItem.getRigaOrd())
.setQtaCol(qtaToTake)
.setQtaTot(qtaToTake)
.setPartitaMag(giacInPosizioneItem.getPartitaMag())
.setNumColloRif(giacInPosizioneItem.getNumCollo())
.setDataColloRif(giacInPosizioneItem.getDataCollo())
.setSerColloRif(giacInPosizioneItem.getSerCollo())
.setGestioneRif(giacInPosizioneItem.getGestione())
.setDatetimeRow(UtilityLocalDate.getNowTime());
mtbColr.setOperation(OperationType.INSERT);
mtbColtToInsert.getMtbColr().add(mtbColr);
.setSourceMtbColr(WMSUtility.convertMvwItemToMtbColr(giacInPosizioneItem))
.setDatetimeRow(UtilityLocalDate.getNowTime()),
userSession.getUsername());
qtaScaricata = qtaScaricata.add(qtaToTake);
}
@@ -1731,11 +1729,16 @@ public class WMSGenericService {
break;
}
MtbColt mtbColt = Stream.of(mtbColtsToInsert).filter(x -> scaricoDaOrdine.getDataOrd().equals(x.getDataOrd()) &&
MtbColt mtbColt = mtbColtsToInsert
.stream()
.filter(x -> scaricoDaOrdine.getDataOrd().equals(x.getDataOrd()) &&
scaricoDaOrdine.getNumOrd().equals(x.getNumOrd()) &&
scaricoDaOrdine.getGestioneOrd().equals(x.getGestione()) &&
giacenza.getPosizione().equals(x.getPosizione()) &&
(codJfasScarico != null && codJfasScarico.equalsIgnoreCase(x.getCodJfas()))).findFirst().orElse(null);
(codJfasScarico != null && codJfasScarico.equalsIgnoreCase(x.getCodJfas())))
.findFirst()
.orElse(null);
if (mtbColt == null) {
String queryMtbColt = "SELECT *" +
" FROM mtb_colt" +
@@ -1756,18 +1759,18 @@ public class WMSGenericService {
mtbColt = alreadyPresentMtbColts.get(0);
mtbColt.setOperation(OperationType.NO_OP);
} else {
mtbColt = new MtbColt()
.setMtbColr(new ArrayList<>())
.setGestione("L")
.setSegno(-1)
mtbColt = WMSUtility.createUDSLavorazioneMovement(multiDBTransactionManager,
new CreateUDSRequestDTO()
.setCodMdep(codMdep)
.setCodJfas(codJfasScarico)
.setPosizione(giacenza.getPosizione())
.setCodAnag(codAnag)
.setCausaleCollo(CreateUDSRequestDTO.Causale.SCARICO)
.setOrders(Collections.singletonList(new CreateUDSRequestOrderDTO()
.setDataOrd(scaricoDaOrdine.getDataOrd())
.setNumOrd(scaricoDaOrdine.getNumOrd())
.setCodAnag(codAnag);
mtbColt.setOperation(OperationType.INSERT_OR_UPDATE);
.setGestione(scaricoDaOrdine.getGestioneOrd()))),
userSession.getUsername());
}
mtbColtsToInsert.add(mtbColt);
}
@@ -1781,21 +1784,20 @@ public class WMSGenericService {
if (UtilityBigDecimal.equalsOrLowerThan(qtaToTake, BigDecimal.ZERO)) continue;
MtbColr mtbColr = new MtbColr()
WMSUtility.insertUDSLavorazioneRowMovement(multiDBTransactionManager.getPrimaryConnection(),
new InsertUDSRowRequestDTO()
.setTargetMtbColt(mtbColt)
.setCodMart(giacenza.getCodMart())
.setCodJcom(giacenza.getCodJcom())
.setNumOrd(scaricoDaOrdine.getNumOrd())
.setDataOrd(scaricoDaOrdine.getDataOrd())
.setRigaOrd(giacenza.getRigaOrd())
.setQtaCol(qtaToTake)
.setQtaTot(qtaToTake)
.setPartitaMag(giacenza.getPartitaMag())
.setNumColloRif(giacenza.getNumCollo())
.setDataColloRif(giacenza.getDataCollo())
.setSerColloRif(giacenza.getSerCollo())
.setGestioneRif(giacenza.getGestione())
.setDatetimeRow(UtilityLocalDate.getNowTime());
mtbColr.setOperation(OperationType.INSERT);
mtbColt.getMtbColr().add(mtbColr);
.setSourceMtbColr(WMSUtility.convertMvwItemToMtbColr(giacenza))
.setDatetimeRow(UtilityLocalDate.getNowTime()),
userSession.getUsername());
qtaRimanente = qtaRimanente.subtract(qtaToTake);
}
@@ -2132,7 +2134,7 @@ public class WMSGenericService {
.setQtaCnf(mtbColr.getQtaCnf())
.setNumCnf(mtbColr.getNumCnf())
.setPartitaMag(mtbColr.getPartitaMag())
.setDataScad(mtbColr.getDataScadPartita())
.setDataScad(UtilityLocalDate.localDateFromDate(mtbColr.getDataScadPartita()))
.setTargetMtbColt(uds);
WMSUtility.createDtbDocrFromMtbColr(

View File

@@ -280,13 +280,13 @@ public class WMSLavorazioneService {
.setCausale(MtbColr.Causale.DEFAULT)
.setCodMart(mtbAart.getCodMart())
.setPartitaMag(insertUDSRowRequestDTO.getPartitaMag())
.setDataScadPartita(insertUDSRowRequestDTO.getDataScad())
.setDataScadPartita(UtilityLocalDate.localDateToDate(insertUDSRowRequestDTO.getDataScad()))
.setQtaCol(insertUDSRowRequestDTO.getQtaTot())
.setQtaCnf(insertUDSRowRequestDTO.getQtaCnf())
.setNumCnf(insertUDSRowRequestDTO.getNumCnf())
.setDescrizione(mtbAart.getDescrizioneEstesa())
.setUtente(userSession.getFullname())
.setDataOrd(UtilityLocalDate.localDateFromDate(insertUDSRowRequestDTO.getDataOrd()))
.setDataOrd(insertUDSRowRequestDTO.getDataOrd())
.setNumOrd(insertUDSRowRequestDTO.getNumOrd())
.setRigaOrd(insertUDSRowRequestDTO.getRigaOrd())
.setDatetimeRow(UtilityLocalDate.getNowTime())
@@ -382,13 +382,13 @@ public class WMSLavorazioneService {
.setCausale(MtbColr.Causale.DEFAULT)
.setCodMart(mtbAart.getCodMart())
.setPartitaMag(row.getPartitaMag())
.setDataScadPartita(row.getDataScad())
.setDataScadPartita(UtilityLocalDate.localDateToDate(row.getDataScad()))
.setQtaCol(row.getQtaTot())
.setQtaCnf(row.getQtaCnf())
.setNumCnf(row.getNumCnf())
.setDescrizione(mtbAart.getDescrizioneEstesa())
.setUtente(userSession.getFullname())
.setDataOrd(UtilityLocalDate.localDateFromDate(row.getDataOrd()))
.setDataOrd(row.getDataOrd())
.setNumOrd(row.getNumOrd())
.setRigaOrd(row.getRigaOrd())
.setDatetimeRow(UtilityLocalDate.getNowTime())

View File

@@ -253,7 +253,7 @@ public class WMSSpedizioneService {
.setCausale(MtbColr.Causale.DEFAULT)
.setCodMart(mtbAart.getCodMart())
.setPartitaMag(insertUDSRowRequestDTO.getPartitaMag())
.setDataScadPartita(insertUDSRowRequestDTO.getDataScad())
.setDataScadPartita(UtilityLocalDate.localDateToDate(insertUDSRowRequestDTO.getDataScad()))
.setQtaCol(insertUDSRowRequestDTO.getQtaTot())
.setQtaCnf(insertUDSRowRequestDTO.getQtaCnf())
.setNumCnf(insertUDSRowRequestDTO.getNumCnf())