FINERACT-2150: disbursement not allowed on charged-off loan
This commit is contained in:
+3
-5
@@ -152,11 +152,9 @@ public final class LoanTransactionValidator {
|
|||||||
validateLoanClientIsActive(loan);
|
validateLoanClientIsActive(loan);
|
||||||
validateLoanGroupIsActive(loan);
|
validateLoanGroupIsActive(loan);
|
||||||
|
|
||||||
if (loan.isChargedOff() && DateUtils.isBefore(actualDisbursementDate, loan.getChargedOffOnDate())) {
|
if (loan.isChargedOff()) {
|
||||||
throw new GeneralPlatformDomainRuleException("error.msg.transaction.date.cannot.be.earlier.than.charge.off.date", "Loan: "
|
throw new GeneralPlatformDomainRuleException("error.msg.loan.disbursal.not.allowed.on.charged.off",
|
||||||
+ loan.getId()
|
"Loan: " + loan.getId() + " disbursement is not allowed on charged-off loan.");
|
||||||
+ " backdated transaction is not allowed. Transaction date cannot be earlier than the charge-off date of the loan",
|
|
||||||
loan.getId());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean isSingleDisburseLoan = !loan.getLoanProduct().isMultiDisburseLoan();
|
boolean isSingleDisburseLoan = !loan.getLoanProduct().isMultiDisburseLoan();
|
||||||
|
|||||||
+9
-1
@@ -6362,7 +6362,15 @@ public class ClientLoanIntegrationTest extends BaseLoanIntegrationTest {
|
|||||||
.locale("en").dateFormat(DATETIME_PATTERN));
|
.locale("en").dateFormat(DATETIME_PATTERN));
|
||||||
});
|
});
|
||||||
assertEquals(403, exception.getResponse().code());
|
assertEquals(403, exception.getResponse().code());
|
||||||
assertTrue(exception.getMessage().contains("error.msg.transaction.date.cannot.be.earlier.than.charge.off.date"));
|
assertTrue(exception.getMessage().contains("error.msg.loan.disbursal.not.allowed.on.charged.off"));
|
||||||
|
|
||||||
|
exception = assertThrows(CallFailedRuntimeException.class, () -> {
|
||||||
|
errorLoanTransactionHelper.disburseLoan((long) loanID,
|
||||||
|
new PostLoansLoanIdRequest().actualDisbursementDate("7 September 2022").transactionAmount(new BigDecimal("10"))
|
||||||
|
.locale("en").dateFormat(DATETIME_PATTERN));
|
||||||
|
});
|
||||||
|
assertEquals(403, exception.getResponse().code());
|
||||||
|
assertTrue(exception.getMessage().contains("error.msg.loan.disbursal.not.allowed.on.charged.off"));
|
||||||
|
|
||||||
LOAN_TRANSACTION_HELPER.makeLoanRepayment((long) loanID, new PostLoansLoanIdTransactionsRequest().dateFormat(DATETIME_PATTERN)
|
LOAN_TRANSACTION_HELPER.makeLoanRepayment((long) loanID, new PostLoansLoanIdTransactionsRequest().dateFormat(DATETIME_PATTERN)
|
||||||
.transactionDate("07 September 2022").locale("en").transactionAmount(5000.0));
|
.transactionDate("07 September 2022").locale("en").transactionAmount(5000.0));
|
||||||
|
|||||||
Reference in New Issue
Block a user