correzione su accettazione

This commit is contained in:
2025-05-15 17:27:46 +02:00
parent 0f2879cdcc
commit 328d7f8067

View File

@@ -408,58 +408,58 @@ public class PvmAccettazioneService {
righeDoc.add(riga);
}
List<MtbColr> righeCollo =
Stream.of(mtbColr)
.filter(x ->
UtilityString.equalsIgnoreCase(x.getCodMart(), articolo.getCodMart()) &&
x.getPartitaMag() != null).toList();
if (!UtilityString.isNullOrEmpty(articolo.getLotti())) {
List<String> lottiCollo = Arrays.asList(articolo.getLotti().split("|"));
righeCollo =
Stream.of(mtbColr)
.filter(x -> lottiCollo.contains(x.getPartitaMag())).toList();
}
// List<MtbColr> righeCollo =
// Stream.of(mtbColr)
// .filter(x ->
// UtilityString.equalsIgnoreCase(x.getCodMart(), articolo.getCodMart()) &&
// x.getPartitaMag() != null).toList();
// if (!UtilityString.isNullOrEmpty(articolo.getLotti())) {
// List<String> lottiCollo = Arrays.asList(articolo.getLotti().split("|"));
// righeCollo =
// Stream.of(mtbColr)
// .filter(x -> lottiCollo.contains(x.getPartitaMag())).toList();
// }
List<WdtbDocr> righeNew = new ArrayList<>();
// righeDoc = Stream.of(righeDoc).filter(x->x.getPartitaMag() == null).toList();
for (AccettazioneRigaDocDTO riga : righeDoc) {
do {
if (righeCollo != null && !righeCollo.isEmpty()) {
righeCollo = Stream.of(righeCollo)
.filter(x -> UtilityBigDecimal.greaterThan(x.getQtaCol(), BigDecimal.ZERO)).toList();
for (MtbColr rigaCollo : righeCollo) {
BigDecimal qtaDoc;
String partitaMag;
Integer idRiga = null;
if (UtilityBigDecimal.greaterThan(riga.getQtaDoc(), rigaCollo.getQtaCol())) {
qtaDoc = rigaCollo.getQtaCol();
partitaMag = rigaCollo.getPartitaMag();
idRiga = riga.getIdRiga();
riga.setQtaDoc(riga.getQtaDoc().subtract(rigaCollo.getQtaCol()));
rigaCollo.setQtaCol(BigDecimal.ZERO);
} else {
qtaDoc = riga.getQtaDoc();
partitaMag = rigaCollo.getPartitaMag();
rigaCollo.setQtaCol(rigaCollo.getQtaCol().subtract(riga.getQtaDoc()));
riga.setQtaDoc(BigDecimal.ZERO);
}
righeNew.add(insertRowBolla(articolo, idRiga, partitaMag, qtaDoc, riga.getValUnt()));
riga.setIdRiga(null); // Dopo la prima lettura id riga viene annullato perchè tutte le righe devono essere nuove
if (UtilityBigDecimal.isNullOrZero(riga.getQtaDoc())) {
break;
}
}
if (UtilityBigDecimal.greaterThan(riga.getQtaDoc(), BigDecimal.ZERO)) {
righeNew.add(insertRowBolla(articolo, riga.getIdRiga(), null, riga.getQtaDoc(), riga.getValUnt()));
riga.setQtaDoc(BigDecimal.ZERO);
}
} else {
// if (righeCollo != null && !righeCollo.isEmpty()) {
// righeCollo = Stream.of(righeCollo)
// .filter(x -> UtilityBigDecimal.greaterThan(x.getQtaCol(), BigDecimal.ZERO)).toList();
// for (MtbColr rigaCollo : righeCollo) {
// BigDecimal qtaDoc;
// String partitaMag;
// Integer idRiga = null;
//
// if (UtilityBigDecimal.greaterThan(riga.getQtaDoc(), rigaCollo.getQtaCol())) {
// qtaDoc = rigaCollo.getQtaCol();
// partitaMag = rigaCollo.getPartitaMag();
// idRiga = riga.getIdRiga();
// riga.setQtaDoc(riga.getQtaDoc().subtract(rigaCollo.getQtaCol()));
// rigaCollo.setQtaCol(BigDecimal.ZERO);
// } else {
// qtaDoc = riga.getQtaDoc();
// partitaMag = rigaCollo.getPartitaMag();
// rigaCollo.setQtaCol(rigaCollo.getQtaCol().subtract(riga.getQtaDoc()));
// riga.setQtaDoc(BigDecimal.ZERO);
// }
// righeNew.add(insertRowBolla(articolo, idRiga, partitaMag, qtaDoc, riga.getValUnt()));
// riga.setIdRiga(null); // Dopo la prima lettura id riga viene annullato perchè tutte le righe devono essere nuove
// if (UtilityBigDecimal.isNullOrZero(riga.getQtaDoc())) {
// break;
// }
// }
//
// if (UtilityBigDecimal.greaterThan(riga.getQtaDoc(), BigDecimal.ZERO)) {
// righeNew.add(insertRowBolla(articolo, riga.getIdRiga(), null, riga.getQtaDoc(), riga.getValUnt()));
// riga.setQtaDoc(BigDecimal.ZERO);
// }
//
// } else {
righeNew.add(insertRowBolla(articolo, riga.getIdRiga(), null, riga.getQtaDoc(), riga.getValUnt()));
riga.setQtaDoc(BigDecimal.ZERO);
}
// }
} while (riga.getQtaDoc().doubleValue() > 0);
}