Merge branch 'develop' into feature/JDK11
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:
@@ -5,6 +5,7 @@ import it.integry.ems.document.dto.ArticoloPartitaDTO;
|
|||||||
import it.integry.ems.document.dto.CreateULFromDocumentsDTO;
|
import it.integry.ems.document.dto.CreateULFromDocumentsDTO;
|
||||||
import it.integry.ems.document.dto.ULRowDTO;
|
import it.integry.ems.document.dto.ULRowDTO;
|
||||||
import it.integry.ems.document.dto.UlVenditaDTO;
|
import it.integry.ems.document.dto.UlVenditaDTO;
|
||||||
|
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
|
||||||
import it.integry.ems.javabeans.RequestDataDTO;
|
import it.integry.ems.javabeans.RequestDataDTO;
|
||||||
import it.integry.ems.menu.dto.StbMenuDTO;
|
import it.integry.ems.menu.dto.StbMenuDTO;
|
||||||
import it.integry.ems.retail.wms.accettazione.service.WMSAccettazioneService;
|
import it.integry.ems.retail.wms.accettazione.service.WMSAccettazioneService;
|
||||||
@@ -19,6 +20,7 @@ import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
|
|||||||
import it.integry.ems.utility.UtilityEntity;
|
import it.integry.ems.utility.UtilityEntity;
|
||||||
import it.integry.ems_model.base.EntityBase;
|
import it.integry.ems_model.base.EntityBase;
|
||||||
import it.integry.ems_model.entity.*;
|
import it.integry.ems_model.entity.*;
|
||||||
|
import it.integry.ems_model.exception.DataConverterNotFoundException;
|
||||||
import it.integry.ems_model.service.SetupGest;
|
import it.integry.ems_model.service.SetupGest;
|
||||||
import it.integry.ems_model.types.OperationType;
|
import it.integry.ems_model.types.OperationType;
|
||||||
import it.integry.ems_model.utility.*;
|
import it.integry.ems_model.utility.*;
|
||||||
@@ -30,6 +32,7 @@ import org.springframework.stereotype.Service;
|
|||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.sql.SQLException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -539,7 +542,7 @@ public class DocumentiDirettiService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<DtbDocImb> imballi = dtbDoct.getDtbDocImb().stream().filter(x -> x.getOperation() != OperationType.DELETE && x.getTipoReso() != 2).collect(Collectors.toList());
|
List<DtbDocImb> imballi = dtbDoct.getDtbDocImb().stream().filter(x -> x.getOperation() != OperationType.DELETE && x.getTipoReso() != 2).collect(Collectors.toList());
|
||||||
int qtaDoc = 0;
|
|
||||||
for (DtbDocImb docImb : imballi) {
|
for (DtbDocImb docImb : imballi) {
|
||||||
sql =
|
sql =
|
||||||
Query.format(
|
Query.format(
|
||||||
@@ -558,9 +561,8 @@ public class DocumentiDirettiService {
|
|||||||
|
|
||||||
String descrizioneArticolo = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
|
String descrizioneArticolo = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
|
||||||
|
|
||||||
String codDtipPed;
|
|
||||||
if ((fatturaVettore || fatturaPedaneCliente) && docImb.getNumImbCons() != 0) {
|
if ((fatturaVettore || fatturaPedaneCliente) && docImb.getNumImbCons() != 0) {
|
||||||
codDtipPed = codDtipPedCons;
|
|
||||||
String descrizione =
|
String descrizione =
|
||||||
String.format("NS. BOLLA DI CONSEGNA %S DEL %S N. %S/%S",
|
String.format("NS. BOLLA DI CONSEGNA %S DEL %S N. %S/%S",
|
||||||
dtbDoct.getCodDtip(),
|
dtbDoct.getCodDtip(),
|
||||||
@@ -569,70 +571,10 @@ public class DocumentiDirettiService {
|
|||||||
dtbDoct.getNumDoc());
|
dtbDoct.getNumDoc());
|
||||||
|
|
||||||
descrizioneArticolo = descrizioneArticolo + CommonConstants.A_CAPO + descrizione;
|
descrizioneArticolo = descrizioneArticolo + CommonConstants.A_CAPO + descrizione;
|
||||||
|
getDtbDoctImballi(dtbDoct, entityList, codDtipPedCons, codAnagPed, codMdep, listino, codMart, docImb.getNumImbCons(), descrizioneArticolo, idAttivita);
|
||||||
qtaDoc = docImb.getNumImbCons();
|
|
||||||
|
|
||||||
|
|
||||||
} else if (!fatturaVettore && docImb.getNumImbResi() != 0) {
|
|
||||||
codDtipPed = codDtipPedResi;
|
|
||||||
qtaDoc = docImb.getNumImbResi();
|
|
||||||
} else {
|
|
||||||
codDtipPed = null;
|
|
||||||
}
|
}
|
||||||
|
if (!fatturaVettore && docImb.getNumImbResi() != 0) {
|
||||||
if (codDtipPed != null) {
|
getDtbDoctImballi(dtbDoct, entityList, codDtipPedResi, codAnagPed, codMdep, listino, codMart, docImb.getNumImbResi(), descrizioneArticolo, idAttivita);
|
||||||
DtbDoct dtbDoctPed = (DtbDoct) entityList
|
|
||||||
.stream()
|
|
||||||
.filter(x -> x instanceof DtbDoct && ((DtbDoct) x).getCodDtip().equalsIgnoreCase(codDtipPed)).findFirst().orElse(null);
|
|
||||||
|
|
||||||
if (dtbDoctPed == null) {
|
|
||||||
sql = Query.format(
|
|
||||||
"SELECT cod_anag, cod_dtip, data_doc, ser_doc, num_doc\n" +
|
|
||||||
"FROM dtb_doct\n" +
|
|
||||||
"WHERE cod_dtip = %s \n" +
|
|
||||||
" AND cod_anag = %s \n" +
|
|
||||||
" AND data_doc = %s \n"
|
|
||||||
,
|
|
||||||
codDtipPed,
|
|
||||||
codAnagPed,
|
|
||||||
dtbDoct.getDataDoc());
|
|
||||||
|
|
||||||
if (UtilityString.isNullOrEmpty(dtbDoct.getIdViaggio()))
|
|
||||||
sql += " AND id_viaggio IS NULL ";
|
|
||||||
else
|
|
||||||
sql += " AND id_viaggio = " + UtilityDB.valueToString(dtbDoct.getIdViaggio());
|
|
||||||
|
|
||||||
dtbDoctPed = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, DtbDoct.class);
|
|
||||||
if (dtbDoctPed != null) {
|
|
||||||
dtbDoctPed.setOperation(OperationType.UPDATE);
|
|
||||||
entityList.add(dtbDoctPed);
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
dtbDoctPed.setOperation(OperationType.UPDATE);
|
|
||||||
}
|
|
||||||
if (dtbDoctPed == null) {
|
|
||||||
dtbDoctPed =
|
|
||||||
new DtbDoct()
|
|
||||||
.setCodDtip(codDtipPed)
|
|
||||||
.setCodAnag(codAnagPed)
|
|
||||||
.setDataDoc(dtbDoct.getDataDoc())
|
|
||||||
.setCodMdep(codMdep)
|
|
||||||
.setCodFornTrasp(dtbDoct.getCodFornTrasp())
|
|
||||||
.setListino(listino)
|
|
||||||
.setIdViaggio(dtbDoct.getIdViaggio());
|
|
||||||
dtbDoctPed.setOperation(OperationType.INSERT);
|
|
||||||
entityList.add(dtbDoctPed);
|
|
||||||
}
|
|
||||||
|
|
||||||
DtbDocr dtbDocr = new DtbDocr()
|
|
||||||
.setCodMart(codMart)
|
|
||||||
.setQtaDoc(new BigDecimal(qtaDoc).abs())
|
|
||||||
.setDescrizioneEstesa(descrizioneArticolo)
|
|
||||||
.setActivityIdRow(idAttivita);
|
|
||||||
dtbDocr.setOperation(OperationType.INSERT);
|
|
||||||
dtbDoctPed.getDtbDocr().add(dtbDocr);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -643,6 +585,61 @@ public class DocumentiDirettiService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void getDtbDoctImballi(DtbDoct dtbDoct, List<EntityBase> entityList, String codDtipPed, String codAnagPed, String codMdep, String listino, String codMart, int qtaDoc, String descrizioneArticolo, String idAttivita) throws DataConverterNotFoundException, SQLException, InstantiationException, IllegalAccessException, PrimaryDatabaseNotPresentException, IOException {
|
||||||
|
String sql;
|
||||||
|
DtbDoct dtbDoctPed = (DtbDoct) entityList
|
||||||
|
.stream()
|
||||||
|
.filter(x -> x instanceof DtbDoct && ((DtbDoct) x).getCodDtip().equalsIgnoreCase(codDtipPed)).findFirst().orElse(null);
|
||||||
|
|
||||||
|
if (dtbDoctPed == null) {
|
||||||
|
sql = Query.format(
|
||||||
|
"SELECT cod_anag, cod_dtip, data_doc, ser_doc, num_doc\n" +
|
||||||
|
"FROM dtb_doct\n" +
|
||||||
|
"WHERE cod_dtip = %s \n" +
|
||||||
|
" AND cod_anag = %s \n" +
|
||||||
|
" AND data_doc = %s \n"
|
||||||
|
,
|
||||||
|
codDtipPed,
|
||||||
|
codAnagPed,
|
||||||
|
dtbDoct.getDataDoc());
|
||||||
|
|
||||||
|
if (UtilityString.isNullOrEmpty(dtbDoct.getIdViaggio()))
|
||||||
|
sql += " AND id_viaggio IS NULL ";
|
||||||
|
else
|
||||||
|
sql += " AND id_viaggio = " + UtilityDB.valueToString(dtbDoct.getIdViaggio());
|
||||||
|
|
||||||
|
dtbDoctPed = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(multiDBTransactionManager.getPrimaryConnection(), sql, DtbDoct.class);
|
||||||
|
if (dtbDoctPed != null) {
|
||||||
|
dtbDoctPed.setOperation(OperationType.UPDATE);
|
||||||
|
entityList.add(dtbDoctPed);
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
dtbDoctPed.setOperation(OperationType.UPDATE);
|
||||||
|
}
|
||||||
|
if (dtbDoctPed == null) {
|
||||||
|
dtbDoctPed =
|
||||||
|
new DtbDoct()
|
||||||
|
.setCodDtip(codDtipPed)
|
||||||
|
.setCodAnag(codAnagPed)
|
||||||
|
.setDataDoc(dtbDoct.getDataDoc())
|
||||||
|
.setCodMdep(codMdep)
|
||||||
|
.setCodFornTrasp(dtbDoct.getCodFornTrasp())
|
||||||
|
.setListino(listino)
|
||||||
|
.setIdViaggio(dtbDoct.getIdViaggio());
|
||||||
|
dtbDoctPed.setOperation(OperationType.INSERT);
|
||||||
|
entityList.add(dtbDoctPed);
|
||||||
|
}
|
||||||
|
|
||||||
|
DtbDocr dtbDocr = new DtbDocr()
|
||||||
|
.setCodMart(codMart)
|
||||||
|
.setQtaDoc(new BigDecimal(qtaDoc).abs())
|
||||||
|
.setDescrizioneEstesa(descrizioneArticolo)
|
||||||
|
.setActivityIdRow(idAttivita);
|
||||||
|
dtbDocr.setOperation(OperationType.INSERT);
|
||||||
|
dtbDoctPed.getDtbDocr().add(dtbDocr);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private StbActivity createStbActivity(String activityTypeId) throws Exception {
|
private StbActivity createStbActivity(String activityTypeId) throws Exception {
|
||||||
String idAttivita = ConfigActivityRules.completeActivityId(multiDBTransactionManager.getPrimaryConnection());
|
String idAttivita = ConfigActivityRules.completeActivityId(multiDBTransactionManager.getPrimaryConnection());
|
||||||
|
|||||||
Reference in New Issue
Block a user