adamsaghy commented on code in PR #5219:
URL: https://github.com/apache/fineract/pull/5219#discussion_r2661239417


##########
fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanproduct/calc/ProgressiveEMICalculator.java:
##########
@@ -131,15 +131,100 @@ public void addDisbursement(final 
ProgressiveLoanInterestScheduleModel scheduleM
     }
 
     private void addDisbursement(final ProgressiveLoanInterestScheduleModel 
scheduleModel, final EmiChangeOperation operation) {
-        scheduleModel.repaymentPeriods().stream().filter(rp -> 
!operation.getSubmittedOnDate().isAfter(rp.getFromDate()))
-                .forEach(rp -> 
rp.setTotalDisbursedAmount(rp.getTotalDisbursedAmount().add(operation.getAmount())));
+        scheduleModel.repaymentPeriods().stream().filter(rp -> 
!operation.getSubmittedOnDate().isAfter(rp.getFromDate())).forEach(rp -> {
+            
rp.setTotalDisbursedAmount(rp.getTotalDisbursedAmount().add(operation.getAmount()));
+        });
 
-        scheduleModel
-                
.changeOutstandingBalanceAndUpdateInterestPeriods(operation.getSubmittedOnDate(),
 operation.getAmount(),
-                        scheduleModel.zero(), scheduleModel.zero())
-                .ifPresent((repaymentPeriod) -> 
calculateEMIValueAndRateFactors(
-                        getEffectiveRepaymentDueDate(scheduleModel, 
repaymentPeriod, operation.getSubmittedOnDate()), scheduleModel,
-                        operation));
+        if (scheduleModel.allowFullTermForTranche() && 
scheduleModel.originalNumberOfRepayments() > 0) {

Review Comment:
   Add 
   ```
   //TODO: If the allow full tranche is TRUE, we should generate and the new 
repayment periods to the `relatedRepaymentPeriods` 
   ```
   
   to the 
org.apache.fineract.portfolio.loanproduct.calc.ProgressiveEMICalculator#calculateEMIValueAndRateFactorsForDecliningBalanceInterestMethod



##########
fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanproduct/calc/ProgressiveEMICalculator.java:
##########
@@ -131,15 +131,100 @@ public void addDisbursement(final 
ProgressiveLoanInterestScheduleModel scheduleM
     }
 
     private void addDisbursement(final ProgressiveLoanInterestScheduleModel 
scheduleModel, final EmiChangeOperation operation) {
-        scheduleModel.repaymentPeriods().stream().filter(rp -> 
!operation.getSubmittedOnDate().isAfter(rp.getFromDate()))
-                .forEach(rp -> 
rp.setTotalDisbursedAmount(rp.getTotalDisbursedAmount().add(operation.getAmount())));
+        scheduleModel.repaymentPeriods().stream().filter(rp -> 
!operation.getSubmittedOnDate().isAfter(rp.getFromDate())).forEach(rp -> {
+            
rp.setTotalDisbursedAmount(rp.getTotalDisbursedAmount().add(operation.getAmount()));
+        });
 
-        scheduleModel
-                
.changeOutstandingBalanceAndUpdateInterestPeriods(operation.getSubmittedOnDate(),
 operation.getAmount(),
-                        scheduleModel.zero(), scheduleModel.zero())
-                .ifPresent((repaymentPeriod) -> 
calculateEMIValueAndRateFactors(
-                        getEffectiveRepaymentDueDate(scheduleModel, 
repaymentPeriod, operation.getSubmittedOnDate()), scheduleModel,
-                        operation));
+        if (scheduleModel.allowFullTermForTranche() && 
scheduleModel.originalNumberOfRepayments() > 0) {

Review Comment:
   Add 
   ```
   //TODO: If the allow full tranche is TRUE, we should generate and the new 
repayment periods to the `relatedRepaymentPeriods` 
   ```
   
   to the 
`org.apache.fineract.portfolio.loanproduct.calc.ProgressiveEMICalculator#calculateEMIValueAndRateFactorsForDecliningBalanceInterestMethod`



-- 
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]

Reply via email to