sistemato paga scadenze

This commit is contained in:
2024-03-04 13:46:06 +01:00
parent 60e43da598
commit 3243008219

View File

@@ -440,7 +440,6 @@ public class AccountingBusinessLogic {
).count();
List<CtbScad> elencoScadenzeNew = new ArrayList<>();
elencoScadenze = Stream.of(elencoScadenze).sorted(Comparator.comparing(CtbScad::getDataScad)).toList();
for (CtbScad ctbScadOrig : elencoScadenze) {
// se il tipo partita non viene passato il metodo si comporta come prima:
// chiude correttamente le scadenze, ma il valore residuo restituito potrebbe non essere corretto.
@@ -448,10 +447,9 @@ public class AccountingBusinessLogic {
if (UtilityString.isNullOrEmpty(tipoPartita)) tipoPartita = 1;
BigDecimal impScad = ctbScadOrig.getImpDare().subtract(ctbScadOrig.getImpAvere());
Date dataPag = ctbScadOrig.getDataPag();
impScad = impScad.abs();
if (!UtilityBigDecimal.isNullOrZero(residuo) && dataPag == null) {
if (!UtilityBigDecimal.isNullOrZero(residuo) && ctbScadOrig.getDataPag() == null ) {
residuo = residuo.abs();
if (UtilityBigDecimal.equalsOrGreaterThan(residuo, impScad)) {
if (UtilityBigDecimal.equalsTo(residuo, impScad)) {
@@ -473,6 +471,7 @@ public class AccountingBusinessLogic {
}
ctbScadOrig.setDataPag(dataCmov);
ctbScadOrig.setIdRigaMov(idRigaMov);
ctbScadOrig.setOperation(OperationType.INSERT_OR_UPDATE);
} else {
//Clona scadenza
CtbScad ctbScadNew = (CtbScad) ctbScadOrig.clone();
@@ -482,6 +481,7 @@ public class AccountingBusinessLogic {
ctbScadOrig.setImpAvere(residuo);
ctbScadOrig.setDataPag(dataCmov);
ctbScadOrig.setIdRigaMov(idRigaMov);
ctbScadOrig.setOperation(OperationType.INSERT_OR_UPDATE);
// calcola importo residuo della nuova scadenza
residuo = residuo.subtract(impScad);
@@ -495,6 +495,7 @@ public class AccountingBusinessLogic {
} else {
ctbScadNew.setImpAvere(residuo.abs());
}
residuo = BigDecimal.ZERO;
}
}
elencoScadenzeNew.add(ctbScadOrig);