Repository: incubator-fineract Updated Branches: refs/heads/develop 9353a5201 -> b4a43e6e9
FINERACT-155 issue fixed Project: http://git-wip-us.apache.org/repos/asf/incubator-fineract/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-fineract/commit/3c254f94 Tree: http://git-wip-us.apache.org/repos/asf/incubator-fineract/tree/3c254f94 Diff: http://git-wip-us.apache.org/repos/asf/incubator-fineract/diff/3c254f94 Branch: refs/heads/develop Commit: 3c254f94e4396d35c1a7cf395dac4af8fc81404b Parents: d2b8535 Author: venkatconflux <[email protected]> Authored: Wed May 11 09:54:43 2016 +0530 Committer: venkatconflux <[email protected]> Committed: Wed May 11 09:54:43 2016 +0530 ---------------------------------------------------------------------- ...anWritePlatformServiceJpaRepositoryImpl.java | 22 ++++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/3c254f94/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java index d7aa02f..760c6d9 100755 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java @@ -154,6 +154,7 @@ import org.apache.fineract.portfolio.loanaccount.loanschedule.domain.LoanSchedul import org.apache.fineract.portfolio.loanaccount.loanschedule.domain.LoanScheduleModelPeriod; import org.apache.fineract.portfolio.loanaccount.loanschedule.domain.ScheduledDateGenerator; import org.apache.fineract.portfolio.loanaccount.loanschedule.service.LoanScheduleHistoryWritePlatformService; +import org.apache.fineract.portfolio.loanaccount.rescheduleloan.domain.LoanRescheduleRequest; import org.apache.fineract.portfolio.loanaccount.serialization.LoanApplicationCommandFromApiJsonHelper; import org.apache.fineract.portfolio.loanaccount.serialization.LoanEventApiJsonValidator; import org.apache.fineract.portfolio.loanaccount.serialization.LoanUpdateCommandFromApiJsonDeserializer; @@ -362,8 +363,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf regenerateScheduleOnDisbursement(command, loan, recalculateSchedule, scheduleGeneratorDTO, nextPossibleRepaymentDate, rescheduledRepaymentDate); if (loan.repaymentScheduleDetail().isInterestRecalculationEnabled()) { - this.loanScheduleHistoryWritePlatformService.createAndSaveLoanScheduleArchive(loan.fetchRepaymentScheduleInstallments(), - loan, null); + createAndSaveLoanScheduleArchive(loan, scheduleGeneratorDTO); } if (isPaymnetypeApplicableforDisbursementCharge) { changedTransactionDetail = loan.disburse(currentUser, command, changes, scheduleGeneratorDTO, paymentDetail); @@ -433,6 +433,14 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf .build(); } + private void createAndSaveLoanScheduleArchive(final Loan loan, ScheduleGeneratorDTO scheduleGeneratorDTO) { + LoanRescheduleRequest loanRescheduleRequest = null; + LoanScheduleModel loanScheduleModel = loan.regenerateScheduleModel(scheduleGeneratorDTO); + List<LoanRepaymentScheduleInstallment> installments = retrieveRepaymentScheduleFromModel(loanScheduleModel); + this.loanScheduleHistoryWritePlatformService.createAndSaveLoanScheduleArchive(installments, + loan, loanRescheduleRequest); + } + /** * create standing instruction for disbursed loan * @@ -599,8 +607,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf regenerateScheduleOnDisbursement(command, loan, recalculateSchedule, scheduleGeneratorDTO, nextPossibleRepaymentDate, rescheduledRepaymentDate); if (loan.repaymentScheduleDetail().isInterestRecalculationEnabled()) { - this.loanScheduleHistoryWritePlatformService.createAndSaveLoanScheduleArchive( - loan.fetchRepaymentScheduleInstallments(), loan, null); + createAndSaveLoanScheduleArchive(loan, scheduleGeneratorDTO); } if (configurationDomainService.isPaymnetypeApplicableforDisbursementCharge()) { changedTransactionDetail = loan.disburse(currentUser, command, changes, scheduleGeneratorDTO, paymentDetail); @@ -2011,8 +2018,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf loan.setHelpers(null, this.loanSummaryWrapper, this.transactionProcessingStrategy); loan.recalculateScheduleFromLastTransaction(scheduleGeneratorDTO, existingTransactionIds, existingReversedTransactionIds, currentUser); - this.loanScheduleHistoryWritePlatformService.createAndSaveLoanScheduleArchive( - loan.fetchRepaymentScheduleInstallments(), loan, null); + createAndSaveLoanScheduleArchive(loan, scheduleGeneratorDTO); } else if (reschedulebasedOnMeetingDates != null && reschedulebasedOnMeetingDates) { loan.updateLoanRepaymentScheduleDates(calendar.getStartDateLocalDate(), calendar.getRecurrence(), isHolidayEnabled, holidays, workingDays, reschedulebasedOnMeetingDates, presentMeetingDate, newMeetingDate, @@ -2724,9 +2730,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf } private void createLoanScheduleArchive(final Loan loan, final ScheduleGeneratorDTO scheduleGeneratorDTO) { - LoanScheduleModel loanScheduleModel = loan.regenerateScheduleModel(scheduleGeneratorDTO); - List<LoanRepaymentScheduleInstallment> installments = retrieveRepaymentScheduleFromModel(loanScheduleModel); - this.loanScheduleHistoryWritePlatformService.createAndSaveLoanScheduleArchive(installments, loan, null); + createAndSaveLoanScheduleArchive(loan, scheduleGeneratorDTO); }
