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);
 
     }
 

Reply via email to