adamsaghy commented on code in PR #3467:
URL: https://github.com/apache/fineract/pull/3467#discussion_r1334361158
##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/loanschedule/domain/AbstractLoanScheduleGenerator.java:
##########
@@ -430,6 +435,30 @@ private LoanScheduleModel generate(final MathContext mc,
final LoanApplicationTe
totalOutstanding);
}
+ private void
checkDownPaymentInstallmentForOverlappingInstallments(Collection<LoanScheduleModelPeriod>
periods,
+ LocalDate scheduledDueDate) {
+ Integer downPaymentPeriodNumber = 0;
+ Integer repaymentPeriodNumber = 0;
+ List<LoanScheduleModelPeriod> overlappingPeriods = periods.stream()
+ .filter(p -> p.periodDueDate() != null &&
p.periodDueDate().isEqual(scheduledDueDate))
+
.sorted(Comparator.comparing(LoanScheduleModelPeriod::periodNumber)).toList();
+ if (overlappingPeriods.size() == 2) {
Review Comment:
What if there are multiple overlapping periods?
I found this logic a little bit overcomplicated...
You should fetch all overlapping periods (there could be multiple):
- first repayment period, and set the first periodnumber to it
- find and update downpayment period numbers
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]