You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by ad...@apache.org on 2025/06/12 21:47:54 UTC

(fineract) branch develop updated: FINERACT-2232: Add missing fields on the Capitalized Income and Adjustment transactions

This is an automated email from the ASF dual-hosted git repository.

adamsaghy pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git


The following commit(s) were added to refs/heads/develop by this push:
     new de580c2cef FINERACT-2232: Add missing fields on the Capitalized Income and Adjustment transactions
de580c2cef is described below

commit de580c2cefb7f4cfc0094521d625f36c00852305
Author: Jose Alberto Hernandez <al...@black-box.local>
AuthorDate: Mon Jun 9 16:35:47 2025 -0500

    FINERACT-2232: Add missing fields on the Capitalized Income and Adjustment transactions
---
 .../service/CapitalizedIncomeWritePlatformServiceImpl.java  | 13 ++++++++++---
 .../integrationtests/LoanCapitalizedIncomeTest.java         | 10 +++++++++-
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/service/CapitalizedIncomeWritePlatformServiceImpl.java b/fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/service/CapitalizedIncomeWritePlatformServiceImpl.java
index 9e51018a5c..2df2b7d2b3 100644
--- a/fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/service/CapitalizedIncomeWritePlatformServiceImpl.java
+++ b/fineract-progressive-loan/src/main/java/org/apache/fineract/portfolio/loanaccount/service/CapitalizedIncomeWritePlatformServiceImpl.java
@@ -104,6 +104,9 @@ public class CapitalizedIncomeWritePlatformServiceImpl implements CapitalizedInc
         return new CommandProcessingResultBuilder() //
                 .withEntityId(capitalizedIncomeTransaction.getId()) //
                 .withEntityExternalId(capitalizedIncomeTransaction.getExternalId()) //
+                .withOfficeId(loan.getOfficeId()) //
+                .withClientId(loan.getClientId()) //
+                .withLoanId(loan.getId()) //
                 .build();
     }
 
@@ -150,9 +153,13 @@ public class CapitalizedIncomeWritePlatformServiceImpl implements CapitalizedInc
                 MathUtil.negativeToZero(capitalizedIncomeBalance.getUnrecognizedAmount().subtract(transactionAmount)));
         capitalizedIncomeBalanceRepository.save(capitalizedIncomeBalance);
 
-        return new CommandProcessingResultBuilder().withLoanId(loan.getId()).withLoanExternalId(loan.getExternalId())
-                .withEntityId(savedCapitalizedIncomeAdjustment.getId())
-                .withEntityExternalId(savedCapitalizedIncomeAdjustment.getExternalId()).build();
+        return new CommandProcessingResultBuilder() //
+                .withEntityId(savedCapitalizedIncomeAdjustment.getId()) //
+                .withEntityExternalId(savedCapitalizedIncomeAdjustment.getExternalId()) //
+                .withOfficeId(loan.getOfficeId()) //
+                .withClientId(loan.getClientId()) //
+                .withLoanId(loan.getId()) //
+                .build();
     }
 
     private void recalculateLoanTransactions(Loan loan, LocalDate transactionDate, LoanTransaction transaction) {
diff --git a/integration-tests/src/test/java/org/apache/fineract/integrationtests/LoanCapitalizedIncomeTest.java b/integration-tests/src/test/java/org/apache/fineract/integrationtests/LoanCapitalizedIncomeTest.java
index a71edc5801..28b18e112d 100644
--- a/integration-tests/src/test/java/org/apache/fineract/integrationtests/LoanCapitalizedIncomeTest.java
+++ b/integration-tests/src/test/java/org/apache/fineract/integrationtests/LoanCapitalizedIncomeTest.java
@@ -18,6 +18,7 @@
  */
 package org.apache.fineract.integrationtests;
 
+import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import java.math.BigDecimal;
@@ -165,7 +166,11 @@ public class LoanCapitalizedIncomeTest extends BaseLoanIntegrationTest {
                     "1 January 2024", 50.0);
             capitalizedIncomeIdRef.set(capitalizedIncomeResponse.getResourceId());
 
-            loanTransactionHelper.capitalizedIncomeAdjustment(loanId, capitalizedIncomeIdRef.get(), "1 April 2024", 50.0);
+            PostLoansLoanIdTransactionsResponse capitalizedIncomeAdjustmentResponse = loanTransactionHelper
+                    .capitalizedIncomeAdjustment(loanId, capitalizedIncomeIdRef.get(), "1 April 2024", 50.0);
+            assertNotNull(capitalizedIncomeAdjustmentResponse.getLoanId());
+            assertNotNull(capitalizedIncomeAdjustmentResponse.getClientId());
+            assertNotNull(capitalizedIncomeAdjustmentResponse.getOfficeId());
 
             verifyTransactions(loanId, //
                     transaction(100.0, "Disbursement", "01 January 2024"), //
@@ -409,6 +414,9 @@ public class LoanCapitalizedIncomeTest extends BaseLoanIntegrationTest {
             disburseLoan(loanId, BigDecimal.valueOf(100), "1 January 2024");
             PostLoansLoanIdTransactionsResponse capitalizedIncomeResponse = loanTransactionHelper.addCapitalizedIncome(loanId,
                     "1 January 2024", 100.0);
+            assertNotNull(capitalizedIncomeResponse.getLoanId());
+            assertNotNull(capitalizedIncomeResponse.getClientId());
+            assertNotNull(capitalizedIncomeResponse.getOfficeId());
             capitalizedIncomeIdRef.set(capitalizedIncomeResponse.getResourceId());
 
             // random midday COB run