Permettere la duplicazione delle uds
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20240621094545 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("PICKING", "SPEDIZIONE", "FLAG_ASK_DUPLICATE_UDS", "N", "Questo flag permetta all'utente di creare nel picking di vendita più UDS partendo da una già creata solo se l'UDS non ha riferimenti a colli di carico.", "SI_NO");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -419,7 +419,7 @@ public class PackagesRules extends QueryRules {
|
||||
BigDecimal rapPesoLordo = mtbColt.getPesoKg().divide(pesoLordo, 5, RoundingMode.HALF_UP);
|
||||
BigDecimal rapPesoNetto = mtbColt.getPesoNettoKg().divide(pesoNetto, 5, RoundingMode.HALF_UP);
|
||||
for (MtbColr mtbColr : righe) {
|
||||
if (mtbColr.getOperation() != OperationType.DELETE) {
|
||||
if (mtbColr.getOperation() != OperationType.DELETE && mtbColr.getCodMart() != null) {
|
||||
BigDecimal pesoNettoRiga = mtbColr.getPesoNettoKg().multiply(rapPesoNetto).setScale(5, RoundingMode.HALF_UP);
|
||||
BigDecimal pesoLordoRiga = mtbColr.getPesoLordoKg().multiply(rapPesoLordo).setScale(5, RoundingMode.HALF_UP);
|
||||
|
||||
|
||||
@@ -544,8 +544,9 @@ public class MtbColt extends EntityBase implements EquatableEntityInterface<MtbC
|
||||
return dataDistribuzione;
|
||||
}
|
||||
|
||||
public void setDataDistribuzione(Date dataDistribuzione) {
|
||||
public MtbColt setDataDistribuzione(Date dataDistribuzione) {
|
||||
this.dataDistribuzione = dataDistribuzione;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getFlagColloAnonimo() {
|
||||
|
||||
@@ -86,11 +86,11 @@ public class WMSSpedizioneController {
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "duplicateUDSRow", method = RequestMethod.POST)
|
||||
@RequestMapping(value = "duplicateUDS", method = RequestMethod.POST)
|
||||
public @ResponseBody
|
||||
ServiceRestResponse duplicateUDSRow(@RequestParam(CommonConstants.PROFILE_DB) String profileDB,
|
||||
@RequestBody DuplicateUDSRequestDTO duplicateUDSRowRequestDTO) throws Exception {
|
||||
ServiceRestResponse duplicateUDS(@RequestParam(CommonConstants.PROFILE_DB) String profileDB,
|
||||
@RequestBody DuplicateUDSRequestDTO duplicateUDSRequestDTO) throws Exception {
|
||||
|
||||
return ServiceRestResponse.createPositiveResponse(wmsSpedizioneService.duplicateUDSRow(duplicateUDSRowRequestDTO));
|
||||
return ServiceRestResponse.createPositiveResponse(wmsSpedizioneService.duplicateUDS(duplicateUDSRequestDTO));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -499,19 +499,38 @@ public class WMSSpedizioneService {
|
||||
entityProcessor.processEntity(mtbColt, multiDBTransactionManager);
|
||||
}
|
||||
|
||||
public DuplicateUDSResponseDTO duplicateUDSRow(DuplicateUDSRequestDTO deleteUDSRowRequestDTO) throws Exception {
|
||||
List<MtbColt> mtbColtList = new ArrayList<>();
|
||||
public DuplicateUDSResponseDTO duplicateUDS(DuplicateUDSRequestDTO duplicateUDSRequest) throws Exception {
|
||||
List<MtbColt> mtbColtListToReturn = new ArrayList<>();
|
||||
|
||||
for (int i = 0; i < duplicateUDSRequest.getNumOfDuplicates(); i++) {
|
||||
MtbColt mtbColt = (MtbColt) duplicateUDSRequest.getMtbColt().clone();
|
||||
|
||||
MtbColt mtbColt = deleteUDSRowRequestDTO.getMtbColt();
|
||||
mtbColt.setOperation(OperationType.INSERT);
|
||||
mtbColt.setNumCollo(null)
|
||||
.setDataDistribuzione(null)
|
||||
.setDataVers(null)
|
||||
.setDataOrd(null)
|
||||
.setNumOrd(null)
|
||||
.setOperation(OperationType.INSERT);
|
||||
|
||||
for (int i = 0; i < deleteUDSRowRequestDTO.getNumOfDuplicates(); i++) {
|
||||
mtbColtList.add(mtbColt.setNumCollo(null));
|
||||
mtbColt.getMtbColr().stream().peek(x -> {
|
||||
x.setNumCollo(null)
|
||||
.setDataOrd(null)
|
||||
.setNumOrd(null)
|
||||
.setRigaOrd(null);
|
||||
});
|
||||
|
||||
entityProcessor.processEntity(mtbColt, multiDBTransactionManager);
|
||||
|
||||
List<MtbColt> distributedUDS = wmsColliService.distribuisciUL(new FiltroDistribuzioneColloDTO()
|
||||
.setDataCollo(mtbColt.getDataCollo())
|
||||
.setSerCollo(mtbColt.getSerCollo())
|
||||
.setGestione(mtbColt.getGestione())
|
||||
.setNumCollo(mtbColt.getNumCollo())
|
||||
.setCriterioDistribuzione(FiltroDistribuzioneColloDTO.CriterioDistribuzioneEnum.U.getText()));
|
||||
|
||||
mtbColtListToReturn.addAll(distributedUDS);
|
||||
}
|
||||
|
||||
entityProcessor.processEntityList(mtbColtList, true);
|
||||
|
||||
return new DuplicateUDSResponseDTO().setMtbColtList(mtbColtList);
|
||||
return new DuplicateUDSResponseDTO().setMtbColtList(mtbColtListToReturn);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user