sistemato salvaggio giacenza progressiva

This commit is contained in:
2024-03-04 10:59:29 +01:00
parent a2f169101b
commit a4b297dc9d

View File

@@ -260,26 +260,27 @@ public class GiacenzaService {
if (mtbInvenrs == null || mtbInvenrs.size() == 0 )
continue;
List<CarelliGiacenzaProg> giacDaInv = Stream.of(mtbInvenrs)
.map(x -> {
CarelliGiacenzaProg carelliGiacenzaProg = new CarelliGiacenzaProg()
.setCodMdep(codMdep)
.setCodMart(x.getCodMart())
.setQtaCar(x.getQtaInv())
.setQtaIniz(x.getQtaInv())
.setQtaScar(BigDecimal.ZERO)
.setDataReg(dataInv)
.setTipoCar("I")
.setDataIns(dataInv)
.setIdInventario(idInventario);
if (articoliSalvati.contains(x.getCodMart()))
carelliGiacenzaProg.setOperation(OperationType.UPDATE);
else {
carelliGiacenzaProg.setOperation(OperationType.INSERT);
articoliSalvati.add(x.getCodMart());
}
return carelliGiacenzaProg;
}).toList();
List<CarelliGiacenzaProg> giacDaInv = new ArrayList<>();
for (MtbInvenr x: mtbInvenrs) {
CarelliGiacenzaProg carelliGiacenzaProg = new CarelliGiacenzaProg()
.setCodMdep(codMdep)
.setCodMart(x.getCodMart())
.setQtaCar(x.getQtaInv())
.setQtaIniz(x.getQtaInv())
.setQtaScar(BigDecimal.ZERO)
.setDataReg(dataInv)
.setTipoCar("I")
.setDataIns(dataInv)
.setIdInventario(idInventario);
if (articoliSalvati.contains(x.getCodMart()))
carelliGiacenzaProg.setOperation(OperationType.UPDATE);
else {
carelliGiacenzaProg.setOperation(OperationType.INSERT);
articoliSalvati.add(x.getCodMart());
}
giacDaInv.add(carelliGiacenzaProg);
}
entityBases.addAll(giacDaInv);
@@ -297,33 +298,36 @@ public class GiacenzaService {
sql =
Query.format(
"SELECT mtb_aart.cod_mart " +
"SELECT art.cod_mart_mov as cod_mart " +
" FROM mtb_aart " +
" INNER JOIN (" + queryArt + ") art on mtb_aart.cod_mart = art.cod_mart\n" +
"WHERE exists(select * from mtb_sart where mtb_aart.cod_marT = mtb_sart.cod_mart and mtb_sart.cod_mdep = %s and \n" +
"(qta_iniz <> 0 or qta_car <> 0 or qta_scar <> 0 ))", codMdep);
sql = UtilityDB.addwhereCond(sql, whereCondFiltro, true);
List<String> datiArt = UtilityDB.executeSimpleQueryOnlyFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
giacDaInv =
Stream.of(datiArt)
.filterNot(x-> elencoArt.contains(x))
.map(x -> {
CarelliGiacenzaProg carelliGiacenzaProg = new CarelliGiacenzaProg()
.setCodMdep(codMdep)
.setCodMart(x)
.setQtaCar(BigDecimal.ZERO)
.setQtaScar(BigDecimal.ZERO)
.setDataReg(dataInv)
.setDataIns(dataInv)
.setTipoCar("I")
.setIdInventario(idInventario);
if (articoliSalvati.contains(x))
carelliGiacenzaProg.setOperation(OperationType.UPDATE);
else {
carelliGiacenzaProg.setOperation(OperationType.INSERT);
articoliSalvati.add(x);
}
return carelliGiacenzaProg;
}).toList();
datiArt = Stream.of(datiArt).filterNot(x -> elencoArt.contains(x)).toList();
giacDaInv = new ArrayList<>();
for(String codMart: datiArt) {
CarelliGiacenzaProg carelliGiacenzaProg = new CarelliGiacenzaProg()
.setCodMdep(codMdep)
.setCodMart(codMart)
.setQtaCar(BigDecimal.ZERO)
.setQtaScar(BigDecimal.ZERO)
.setQtaIniz(BigDecimal.ZERO)
.setDataReg(dataInv)
.setDataIns(dataInv)
.setTipoCar("I")
.setIdInventario(idInventario);
if (articoliSalvati.contains(codMart))
carelliGiacenzaProg.setOperation(OperationType.UPDATE);
else {
carelliGiacenzaProg.setOperation(OperationType.INSERT);
articoliSalvati.add(codMart);
}
giacDaInv.add(carelliGiacenzaProg);
}
entityBases.addAll(giacDaInv);
}