FINERACT-1971: Fix wrong due date calculation when loan got submitted

This commit is contained in:
Adam Saghy
2024-04-23 20:45:51 +02:00
parent 2b9e114c05
commit 039bca440b
4 changed files with 390 additions and 98 deletions
@@ -431,10 +431,12 @@ public final class LoanApplicationTerms {
this.variationsDataWrapper = new LoanTermVariationsDataWrapper(loanTermVariations);
this.actualNumberOfRepayments = numberOfRepayments + getLoanTermVariations().adjustNumberOfRepayments();
this.adjustPrincipalForFlatLoans = principal.zero();
if (this.calculatedRepaymentsStartingFromDate == null) {
this.seedDate = this.expectedDisbursementDate;
// We only change the seed date if `repaymentStartingFromDate was provided`
if (this.repaymentsStartingFromDate == null) {
this.seedDate = repaymentStartDateType.isDisbursementDate() ? expectedDisbursementDate : submittedOnDate;
} else {
this.seedDate = this.calculatedRepaymentsStartingFromDate;
// When we change the seed date we are taking the `repaymentsStartingFromDate`
this.seedDate = repaymentsStartingFromDate;
}
this.calendarHistoryDataWrapper = calendarHistoryDataWrapper;
this.isInterestChargedFromDateSameAsDisbursalDateEnabled = isInterestChargedFromDateSameAsDisbursalDateEnabled;