This is an automated email from the ASF dual-hosted git repository.
arnold 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 1eab0fe1b FINERACT-1724: Show reverted charge-off transactions
1eab0fe1b is described below
commit 1eab0fe1bdf96e453548e65f54f0b2ff1ba711d9
Author: Adam Saghy <[email protected]>
AuthorDate: Fri Mar 24 15:46:20 2023 +0100
FINERACT-1724: Show reverted charge-off transactions
---
.../fineract/portfolio/loanaccount/api/LoansApiResourceSwagger.java | 2 ++
.../service/LoanWritePlatformServiceJpaRepositoryImpl.java | 1 +
.../apache/fineract/integrationtests/ClientLoanIntegrationTest.java | 5 +++++
3 files changed, 8 insertions(+)
diff --git
a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResourceSwagger.java
b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResourceSwagger.java
index 0f4815360..fffa8beb4 100644
---
a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResourceSwagger.java
+++
b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResourceSwagger.java
@@ -690,6 +690,8 @@ final class LoansApiResourceSwagger {
public boolean creditBalanceRefund;
@Schema(example = "false")
public boolean chargeAdjustment;
+ @Schema(example = "false")
+ public boolean chargeoff;
}
static final class GetLoansLoanIdPaymentDetailData {
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 3936b049c..78b604819 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
@@ -2806,6 +2806,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl
implements LoanWritePlatf
businessEventNotifierService.notifyPreBusinessEvent(new
LoanUndoChargeOffBusinessEvent(chargedOffTransaction));
chargedOffTransaction.reverse();
+ chargedOffTransaction.manuallyAdjustedOrReversed();
loan.liftChargeOff();
loanTransactionRepository.saveAndFlush(chargedOffTransaction);
saveLoanWithDataIntegrityViolationChecks(loan);
diff --git
a/integration-tests/src/test/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java
b/integration-tests/src/test/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java
index ca6415f48..1798bab2d 100644
---
a/integration-tests/src/test/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java
+++
b/integration-tests/src/test/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java
@@ -7083,6 +7083,11 @@ public class ClientLoanIntegrationTest {
assertNull(loanDetails.getSummary().getChargeOffReason());
assertNull(loanDetails.getTimeline().getChargedOffOnDate());
+ GetLoansLoanIdTransactions undoChargeOffTransaction =
loanDetails.getTransactions()
+ .get(loanDetails.getTransactions().size() - 1);
+ assertTrue(undoChargeOffTransaction.getType().getChargeoff());
+ assertTrue(undoChargeOffTransaction.getManuallyReversed());
+
exception = assertThrows(CallFailedRuntimeException.class, () -> {
errorLoanTransactionHelper.undoChargeOffLoan((long) loanID,
new PostLoansLoanIdTransactionsRequest());
});