diff --git a/ems-engine/src/main/java/it/integry/ems/document/service/DocumentiDirettiService.java b/ems-engine/src/main/java/it/integry/ems/document/service/DocumentiDirettiService.java index c85656aec4..ce26bd0ecf 100644 --- a/ems-engine/src/main/java/it/integry/ems/document/service/DocumentiDirettiService.java +++ b/ems-engine/src/main/java/it/integry/ems/document/service/DocumentiDirettiService.java @@ -57,6 +57,10 @@ public class DocumentiDirettiService { public List save(DtbDoct dtbDoct, boolean isInsert) throws Exception { List entityList = new ArrayList<>(); + if (!isInsert) { + dtbDoct.setOperation(OperationType.DELETE_THEN_INSERT); + dtbDoct.getDtbDocr().stream().forEach(dtbDoc -> {dtbDoc.setIdRiga(null);}); + } entityList.add(dtbDoct); String sql = diff --git a/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/dto/VariazioniPvInputDTO.java b/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/dto/VariazioniPvInputDTO.java index bf3e1c0802..e5c5f78608 100644 --- a/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/dto/VariazioniPvInputDTO.java +++ b/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/dto/VariazioniPvInputDTO.java @@ -1,5 +1,7 @@ package it.integry.ems.retail.ReportVariazioni.dto; +import it.integry.ems_model.utility.UtilityDate; + import java.util.Date; import java.util.List; @@ -19,6 +21,15 @@ public class VariazioniPvInputDTO { private List variazioni; public Date getDataValidita() { + if (dataValidita == null){ + if (getGiornoVariazione() != null) { + Date dataValiditaCalc = UtilityDate.prossimoGiornoSettimana(new Date(), + VariazioniReportGiornoSettimana.fromString(getGiornoVariazione())); + setDataValidita(dataValiditaCalc); + } else { + setDataValidita( UtilityDate.RelativeDateTime(new Date(), 1)); + } + } return dataValidita; } diff --git a/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/service/VariazioniPvService.java b/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/service/VariazioniPvService.java index 3a144f2a21..807d4d2619 100644 --- a/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/service/VariazioniPvService.java +++ b/ems-engine/src/main/java/it/integry/ems/retail/ReportVariazioni/service/VariazioniPvService.java @@ -4,10 +4,7 @@ import com.annimon.stream.Stream; import it.integry.common.var.CommonConstants; import it.integry.ems.dto.Result; import it.integry.ems.expansion.RunnableArgsReturnThrowable; -import it.integry.ems.retail.ReportVariazioni.dto.VariazioniDTO; -import it.integry.ems.retail.ReportVariazioni.dto.VariazioniDettaglioDTO; -import it.integry.ems.retail.ReportVariazioni.dto.VariazioniPvInputDTO; -import it.integry.ems.retail.ReportVariazioni.dto.VariazioniReportType; +import it.integry.ems.retail.ReportVariazioni.dto.*; import it.integry.ems.retail.ReportVariazioni.xml.*; import it.integry.ems.retail.dto.GrigliaAcquistoDTO; import it.integry.ems.retail.service.GrigliaAcquistoHandlerService; @@ -974,8 +971,9 @@ public class VariazioniPvService { " jtb_cicl.cod_prod = jtb_dist_mate.cod_prod " + " ORDER BY jtb_dist_mate.id_riga"; - if ("S".equalsIgnoreCase(invioIngOpz)) { + if ("S".equalsIgnoreCase(invioIngOpz) || tipoReport == VariazioniReportType.TRACCIABILITA) { if (tipoReport.compareTo(VariazioniReportType.LISTINO) != 0 && + tipoReport.compareTo(VariazioniReportType.TRACCIABILITA) != 0 && !"I".equalsIgnoreCase(tipoVariazioneLisv)) { whereCond = "jtb_cicl.data_ult_var = " + UtilityDB.valueDateToString(dataVariazioni, CommonConstants.DATE_FORMAT_YMD); query = UtilityDB.addwhereCond(query, whereCond, false); @@ -1203,8 +1201,9 @@ public class VariazioniPvService { dataValidita = variazioniPvInputDTO.getDataValidita(); } - if (dataValidita == null) + if (dataValidita == null) { dataValidita = UtilityDate.RelativeDateTime(UtilityDate.getTodayWithoutTime(), 1); + } List listini = getListini(variazioniPvInputDTO, existVariazioni); diff --git a/ems-engine/src/main/java/it/integry/ems/retail/export/service/VariazioniPvExportServices.java b/ems-engine/src/main/java/it/integry/ems/retail/export/service/VariazioniPvExportServices.java index 3bc98e2f8d..63c3d5e9d3 100644 --- a/ems-engine/src/main/java/it/integry/ems/retail/export/service/VariazioniPvExportServices.java +++ b/ems-engine/src/main/java/it/integry/ems/retail/export/service/VariazioniPvExportServices.java @@ -83,15 +83,6 @@ public class VariazioniPvExportServices { if (variazioniPvDTO != null && UtilityString.isNullOrEmpty(variazioniPvDTO.getFileXml())) { boolean existJson = (variazioniPvDTO.getVariazioni() != null && !variazioniPvDTO.getVariazioni().isEmpty()); - if (variazioniPvDTO.getDataValidita() == null) { - if (variazioniPvDTO.getGiornoVariazione() != null) { - Date dataValiditaCalc = UtilityDate.prossimoGiornoSettimana(new Date(), - VariazioniReportGiornoSettimana.fromString(variazioniPvDTO.getGiornoVariazione())); - variazioniPvDTO.setDataValidita(dataValiditaCalc); - } else { - variazioniPvDTO.setDataValidita( UtilityDate.RelativeDateTime(new Date(), 1)); - } - } if (variazioniPvDTO.getTipoReportEnum() == null) { variazioniPvDTO.setTipoReportEnum(VariazioniReportType.VARIAZIONI);