[MIFOSX-2656] - Accrual transaction should be added only on the first tranche disbursal

This commit is contained in:
Adi Narayana Raju
2016-05-24 14:47:28 +05:30
parent 7ae9b67d93
commit 2faea6d27f
@@ -2286,7 +2286,8 @@ public class Loan extends AbstractPersistable<Long> {
* selected * selected
**/ **/
if (isNoneOrCashOrUpfrontAccrualAccountingEnabledOnLoanProduct()) { if (isNoneOrCashOrUpfrontAccrualAccountingEnabledOnLoanProduct()
&& ((isMultiDisburmentLoan() && getDisbursedLoanDisbursementDetails().size() == 1) || !isMultiDisburmentLoan())) {
final LoanTransaction interestAppliedTransaction = LoanTransaction.accrueInterest(getOffice(), this, interestApplied, final LoanTransaction interestAppliedTransaction = LoanTransaction.accrueInterest(getOffice(), this, interestApplied,
actualDisbursementDate, createdDate, currentUser); actualDisbursementDate, createdDate, currentUser);
this.loanTransactions.add(interestAppliedTransaction); this.loanTransactions.add(interestAppliedTransaction);
@@ -2296,6 +2297,18 @@ public class Loan extends AbstractPersistable<Long> {
} }
private List<LoanDisbursementDetails> getDisbursedLoanDisbursementDetails() {
List<LoanDisbursementDetails> ret = new ArrayList<>();
if(this.disbursementDetails != null && this.disbursementDetails.size() > 0){
for (LoanDisbursementDetails disbursementDetail : this.disbursementDetails) {
if (disbursementDetail.actualDisbursementDate() != null) {
ret.add(disbursementDetail);
}
}
}
return ret;
}
public void regenerateScheduleOnDisbursement(final ScheduleGeneratorDTO scheduleGeneratorDTO, final boolean recalculateSchedule, public void regenerateScheduleOnDisbursement(final ScheduleGeneratorDTO scheduleGeneratorDTO, final boolean recalculateSchedule,
final LocalDate actualDisbursementDate, BigDecimal emiAmount, final AppUser currentUser, LocalDate nextPossibleRepaymentDate, final LocalDate actualDisbursementDate, BigDecimal emiAmount, final AppUser currentUser, LocalDate nextPossibleRepaymentDate,
Date rescheduledRepaymentDate) { Date rescheduledRepaymentDate) {