FINERACT-1971: Enhancing re-Amortization validation

This commit is contained in:
Ruchi Dhamankar
2024-05-13 10:50:08 +02:00
committed by Adam Saghy
parent 33a584bbcd
commit bcf04b7e6f
3 changed files with 105 additions and 2 deletions
@@ -114,8 +114,8 @@ public class LoanReAmortizationValidator {
}
// validate if there's no payment between the reamortization and today
boolean repaymentExistsAfterReAmortization = loan.getLoanTransactions().stream()
.anyMatch(tx -> tx.getTypeOf().isRepaymentType() && transactionHappenedAfterOther(tx, optionalReAmortizationTx.get()));
boolean repaymentExistsAfterReAmortization = loan.getLoanTransactions().stream().anyMatch(tx -> tx.getTypeOf().isRepaymentType()
&& !tx.isReversed() && transactionHappenedAfterOther(tx, optionalReAmortizationTx.get()));
if (repaymentExistsAfterReAmortization) {
throw new GeneralPlatformDomainRuleException("error.msg.loan.reamortize.repayment.exists.after.reamortization",
"Undoing a reamortization can only be done if there hasn't been any repayment afterwards", loan.getId());