From e9af3a8ac84eaba246085d51a9e850180aed3ab7 Mon Sep 17 00:00:00 2001 From: Jose Alberto Hernandez Date: Wed, 14 Jan 2026 13:10:27 -0500 Subject: [PATCH] FINERACT-2421: Undo Last Disbursement failed after reaging --- .../resources/features/LoanReAging.feature | 42 ++++---- .../LoanReAgingEqualAmortization.feature | 97 ++++++++++--------- .../LoanRepaymentScheduleInstallment.java | 1 - ...WritePlatformServiceJpaRepositoryImpl.java | 2 +- 4 files changed, 72 insertions(+), 70 deletions(-) diff --git a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature index 1b429ea50..659e039f9 100644 --- a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature +++ b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAging.feature @@ -7257,26 +7257,28 @@ Then Loan Repayment schedule has 4 periods, with the following data for periods: | 01 April 2024 | Chargeback | 12.0 | 11.42 | 0.58 | 0.0 | 0.0 | 144.99 | false | false | # --- undo last disbursement --- # - # When Admin successfully undo last disbursal - # Then Loan Repayment schedule has 8 periods, with the following data for periods: - # | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - # | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | - # | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | - # | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | - # | 3 | 14 | 15 March 2024 | | 69.64 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 4 | 31 | 15 April 2024 | | 55.71 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 5 | 30 | 15 May 2024 | | 41.78 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 6 | 31 | 15 June 2024 | | 27.85 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 7 | 30 | 15 July 2024 | | 13.92 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 8 | 31 | 15 August 2024 | | 0.0 | 13.92 | 0.26 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # Then Loan Repayment schedule has the following data in Total row: - # | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - # | 100.0 | 2.09 | 0.0 | 0.0 | 102.09 | 17.01 | 0.0 | 0.0 | 85.08 | - # Then Loan Transactions tab has the following data: - # | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | - # | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | - # | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | - # | 15 March 2024 | Re-age | 85.08 | 83.57 | 1.51 | 0.0 | 0.0 | 0.0 | false | false | + When Admin successfully undo last disbursal + Then Loan Repayment schedule has 9 periods, with the following data for periods: + | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | + | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | + | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | + | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 3 | 14 | 15 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 4 | 17 | 01 April 2024 | | 70.25 | 13.32 | 0.98 | 0.0 | 0.0 | 14.3 | 0.0 | 0.0 | 0.0 | 14.3 | + | 5 | 30 | 01 May 2024 | | 56.43 | 25.24 | 1.06 | 0.0 | 0.0 | 26.3 | 0.0 | 0.0 | 0.0 | 26.3 | + | 6 | 31 | 01 June 2024 | | 42.46 | 13.97 | 0.33 | 0.0 | 0.0 | 14.3 | 0.0 | 0.0 | 0.0 | 14.3 | + | 7 | 30 | 01 July 2024 | | 28.41 | 14.05 | 0.25 | 0.0 | 0.0 | 14.3 | 0.0 | 0.0 | 0.0 | 14.3 | + | 8 | 31 | 01 August 2024 | | 14.28 | 14.13 | 0.17 | 0.0 | 0.0 | 14.3 | 0.0 | 0.0 | 0.0 | 14.3 | + | 9 | 31 | 01 September 2024 | | 0.0 | 14.28 | 0.08 | 0.0 | 0.0 | 14.36 | 0.0 | 0.0 | 0.0 | 14.36 | + Then Loan Repayment schedule has the following data in Total row: + | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | + | 111.42 | 3.45 | 0.0 | 0.0 | 114.87 | 17.01 | 0.0 | 0.0 | 97.86 | + Then Loan Transactions tab has the following data: + | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | + | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | + | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | + | 15 March 2024 | Re-age | 84.28 | 83.57 | 0.71 | 0.0 | 0.0 | 0.0 | false | true | + | 01 April 2024 | Chargeback | 12.0 | 11.42 | 0.58 | 0.0 | 0.0 | 94.99 | false | false | When Loan Pay-off is made on "01 April 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met diff --git a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAgingEqualAmortization.feature b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAgingEqualAmortization.feature index 71427d4ac..c5eb00a2d 100644 --- a/fineract-e2e-tests-runner/src/test/resources/features/LoanReAgingEqualAmortization.feature +++ b/fineract-e2e-tests-runner/src/test/resources/features/LoanReAgingEqualAmortization.feature @@ -435,7 +435,6 @@ Feature: LoanReAgingEqualAmortization When Loan Pay-off is made on "15 March 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met - @Skip @TestRailId:C4245 @AdvancedPaymentAllocation Scenario: Verify Loan re-aging trn with 2nd disb before and with chargeback and undo last disb after re-age - interest bearing multidisb loan with equal amortization; outstanding payable interest - UC1.2 When Admin sets the business date to "01 January 2024" @@ -556,26 +555,27 @@ Feature: LoanReAgingEqualAmortization # --- undo last disbursement should be allowed on that point --- # When Admin successfully undo last disbursal - Then Loan Repayment schedule has 8 periods, with the following data for periods: + Then Loan Repayment schedule has 9 periods, with the following data for periods: | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | - | 1 | 31 | 01 February 2024 | 15 March 2024 | 82.99 | 17.01 | 0.0 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | - | 2 | 29 | 01 March 2024 | 15 March 2024 | 82.99 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | - | 3 | 31 | 01 April 2024 | | 69.16 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 4 | 30 | 01 May 2024 | | 55.33 | 30.84 | 0.18 | 0.0 | 0.0 | 31.02 | 0.0 | 0.0 | 0.0 | 31.02 | - | 5 | 31 | 01 June 2024 | | 41.5 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 6 | 30 | 01 July 2024 | | 27.67 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 7 | 31 | 01 August 2024 | | 13.84 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 8 | 31 | 01 September 2024 | | 0.0 | 13.84 | 0.16 | 0.0 | 0.0 | 14.0 | 0.0 | 0.0 | 0.0 | 14.0 | + | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | + | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 3 | 14 | 15 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 4 | 17 | 01 April 2024 | | 69.64 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 5 | 30 | 01 May 2024 | | 55.71 | 30.94 | 0.12 | 0.0 | 0.0 | 31.06 | 0.0 | 0.0 | 0.0 | 31.06 | + | 6 | 31 | 01 June 2024 | | 41.78 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 7 | 30 | 01 July 2024 | | 27.85 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 8 | 31 | 01 August 2024 | | 13.92 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 9 | 31 | 01 September 2024 | | 0.0 | 13.92 | 0.11 | 0.0 | 0.0 | 14.03 | 0.0 | 0.0 | 0.0 | 14.03 | Then Loan Repayment schedule has the following data in Total row: | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - | 117.01 | 1.06 | 0.0 | 0.0 | 118.07 | 17.01 | 0.0 | 0.0 | 101.06 | + | 117.01 | 1.29 | 0.0 | 0.0 | 118.3 | 17.01 | 0.0 | 0.0 | 101.29 | Then Loan Transactions tab has the following data: | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | - | 01 February 2024 | Repayment | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 82.99 | false | true | - | 15 March 2024 | Re-age | 84.05 | 82.99 | 1.06 | 0.0 | 0.0 | 0.0 | false | true | - | 01 April 2024 | Chargeback | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | + | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | + | 15 March 2024 | Re-age | 84.28 | 83.57 | 0.71 | 0.0 | 0.0 | 0.0 | false | true | + | 01 April 2024 | Chargeback | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 100.58 | false | false | When Loan Pay-off is made on "01 April 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met @@ -2752,7 +2752,6 @@ Feature: LoanReAgingEqualAmortization When Loan Pay-off is made on "15 March 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met - @Skip @TestRailId:C4247 @AdvancedPaymentAllocation Scenario: Verify Loan re-aging trn with 2nd disb before and with chargeback and undo last disb after re-age - interest bearing multidisb loan with equal amortization; outstanding FULL interest - UC1.2 When Admin sets the business date to "01 January 2024" @@ -2873,26 +2872,27 @@ Feature: LoanReAgingEqualAmortization # --- undo last disbursement should be allowed on that point --- # When Admin successfully undo last disbursal - Then Loan Repayment schedule has 8 periods, with the following data for periods: + Then Loan Repayment schedule has 9 periods, with the following data for periods: | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | - | 1 | 31 | 01 February 2024 | 15 March 2024 | 82.99 | 17.01 | 0.0 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | - | 2 | 29 | 01 March 2024 | 15 March 2024 | 82.99 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | - | 3 | 31 | 01 April 2024 | | 69.16 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 4 | 30 | 01 May 2024 | | 55.33 | 30.84 | 0.18 | 0.0 | 0.0 | 31.02 | 0.0 | 0.0 | 0.0 | 31.02 | - | 5 | 31 | 01 June 2024 | | 41.5 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 6 | 30 | 01 July 2024 | | 27.67 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 7 | 31 | 01 August 2024 | | 13.84 | 13.83 | 0.18 | 0.0 | 0.0 | 14.01 | 0.0 | 0.0 | 0.0 | 14.01 | - | 8 | 31 | 01 September 2024 | | 0.0 | 13.84 | 0.16 | 0.0 | 0.0 | 14.0 | 0.0 | 0.0 | 0.0 | 14.0 | + | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | + | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 3 | 14 | 15 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 4 | 17 | 01 April 2024 | | 69.64 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | + | 5 | 30 | 01 May 2024 | | 55.71 | 30.94 | 0.25 | 0.0 | 0.0 | 31.19 | 0.0 | 0.0 | 0.0 | 31.19 | + | 6 | 31 | 01 June 2024 | | 41.78 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | + | 7 | 30 | 01 July 2024 | | 27.85 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | + | 8 | 31 | 01 August 2024 | | 13.92 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | + | 9 | 31 | 01 September 2024 | | 0.0 | 13.92 | 0.26 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | Then Loan Repayment schedule has the following data in Total row: | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - | 117.01 | 1.06 | 0.0 | 0.0 | 118.07 | 17.01 | 0.0 | 0.0 | 101.06 | + | 117.01 | 2.09 | 0.0 | 0.0 | 119.1 | 17.01 | 0.0 | 0.0 | 102.09 | Then Loan Transactions tab has the following data: | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | - | 01 February 2024 | Repayment | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 82.99 | false | true | - | 15 March 2024 | Re-age | 84.05 | 82.99 | 1.06 | 0.0 | 0.0 | 0.0 | false | true | - | 01 April 2024 | Chargeback | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | + | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | + | 15 March 2024 | Re-age | 85.08 | 83.57 | 1.51 | 0.0 | 0.0 | 0.0 | false | true | + | 01 April 2024 | Chargeback | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | 100.58 | false | false | When Loan Pay-off is made on "01 April 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met @@ -6575,26 +6575,27 @@ Feature: LoanReAgingEqualAmortization | 15 March 2024 | Re-age | 134.41 | 133.57 | 0.84 | 0.0 | 0.0 | 0.0 | false | true | # --- undo last disbursement --- # - # When Admin successfully undo last disbursal - # Then Loan Repayment schedule has 8 periods, with the following data for periods: - # | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - # | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | - # | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | - # | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | - # | 3 | 14 | 15 March 2024 | | 69.64 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 4 | 31 | 15 April 2024 | | 55.71 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 5 | 30 | 15 May 2024 | | 41.78 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 6 | 31 | 15 June 2024 | | 27.85 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 7 | 30 | 15 July 2024 | | 13.92 | 13.93 | 0.25 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # | 8 | 31 | 15 August 2024 | | 0.0 | 13.92 | 0.26 | 0.0 | 0.0 | 14.18 | 0.0 | 0.0 | 0.0 | 14.18 | - # Then Loan Repayment schedule has the following data in Total row: - # | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | - # | 100.0 | 2.09 | 0.0 | 0.0 | 102.09 | 17.01 | 0.0 | 0.0 | 85.08 | - # Then Loan Transactions tab has the following data: - # | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | - # | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | - # | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | - # | 15 March 2024 | Re-age | 85.08 | 83.57 | 1.51 | 0.0 | 0.0 | 0.0 | false | false | + When Admin successfully undo last disbursal + Then Loan Repayment schedule has 9 periods, with the following data for periods: + | Nr | Days | Date | Paid date | Balance of loan | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | + | | | 01 January 2024 | | 100.0 | | | 0.0 | | 0.0 | 0.0 | | | | + | 1 | 31 | 01 February 2024 | 01 February 2024 | 83.57 | 16.43 | 0.58 | 0.0 | 0.0 | 17.01 | 17.01 | 0.0 | 0.0 | 0.0 | + | 2 | 29 | 01 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 3 | 14 | 15 March 2024 | 15 March 2024 | 83.57 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | + | 4 | 17 | 01 April 2024 | | 69.64 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 5 | 30 | 01 May 2024 | | 55.71 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 6 | 31 | 01 June 2024 | | 41.78 | 13.93 | 0.12 | 0.0 | 10.0 | 24.05 | 0.0 | 0.0 | 0.0 | 24.05 | + | 7 | 30 | 01 July 2024 | | 27.85 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 8 | 31 | 01 August 2024 | | 13.92 | 13.93 | 0.12 | 0.0 | 0.0 | 14.05 | 0.0 | 0.0 | 0.0 | 14.05 | + | 9 | 31 | 01 September 2024 | | 0.0 | 13.92 | 0.11 | 0.0 | 0.0 | 14.03 | 0.0 | 0.0 | 0.0 | 14.03 | + Then Loan Repayment schedule has the following data in Total row: + | Principal due | Interest | Fees | Penalties | Due | Paid | In advance | Late | Outstanding | + | 100.0 | 1.29 | 0.0 | 10.0 | 111.29 | 17.01 | 0.0 | 0.0 | 94.28 | + Then Loan Transactions tab has the following data: + | Transaction date | Transaction Type | Amount | Principal | Interest | Fees | Penalties | Loan Balance | Reverted | Replayed | + | 01 January 2024 | Disbursement | 100.0 | 0.0 | 0.0 | 0.0 | 0.0 | 100.0 | false | false | + | 01 February 2024 | Repayment | 17.01 | 16.43 | 0.58 | 0.0 | 0.0 | 83.57 | false | false | + | 15 March 2024 | Re-age | 84.28 | 83.57 | 0.71 | 0.0 | 0.0 | 0.0 | false | true | When Loan Pay-off is made on "01 April 2024" Then Loan is closed with zero outstanding balance and it's all installments have obligations met diff --git a/fineract-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanRepaymentScheduleInstallment.java b/fineract-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanRepaymentScheduleInstallment.java index e6d0d34b0..482586035 100644 --- a/fineract-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanRepaymentScheduleInstallment.java +++ b/fineract-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanRepaymentScheduleInstallment.java @@ -1090,7 +1090,6 @@ public class LoanRepaymentScheduleInstallment extends AbstractAuditableWithUTCDa updateLoanCompoundingDetails(period.getLoanCompoundingDetails()); getInstallmentCharges().clear(); getPostDatedChecks().clear(); - getLoanTransactionToRepaymentScheduleMappings().clear(); // Update fields setFromDate(period.periodFromDate()); setDueDate(period.periodDueDate()); 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 5bda35834..553a1bb64 100644 --- 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 @@ -3439,7 +3439,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf /** * Reverse only disbursement, accruals, and repayments at disbursal transactions */ - public void reverseExistingTransactionsTillLastDisbursal(Loan loan, final LoanTransaction lastDisbursalTransaction) { + private void reverseExistingTransactionsTillLastDisbursal(Loan loan, final LoanTransaction lastDisbursalTransaction) { LoanCharge chargeToDeactivate = null; for (final LoanCharge charge : loan.getCharges()) {