FINERACT-2181: Move the remaining transactions reprocessing logic out of the loan entity to ReprocessLoanTransactionsService.

This commit is contained in:
mariiaKraievska
2025-03-25 12:09:28 +01:00
committed by Adam Saghy
parent f3bb66f209
commit 2d2cbb46b5
5 changed files with 57 additions and 76 deletions
@@ -2918,7 +2918,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf
}
final List<LoanTransaction> loanTransactions = loan.retrieveListOfTransactionsForReprocessing();
loanTransactions.add(chargeOffTransaction);
reprocessLoanTransactionsService.reprocessTransactions(loan, loanTransactions);
reprocessLoanTransactionsService.reprocessParticularTransactions(loan, loanTransactions);
loan.addLoanTransaction(chargeOffTransaction);
} else {
reprocessLoanTransactionsService.processLatestTransaction(chargeOffTransaction, loan);
@@ -130,11 +130,11 @@ public class LoanReAmortizationServiceImpl {
private void reverseReAmortizeTransaction(LoanTransaction reAmortizeTransaction, JsonCommand command) {
ExternalId reversalExternalId = externalIdFactory.createFromCommand(command,
LoanReAmortizationApiConstants.externalIdParameterName);
loanChargeValidator.validateRepaymentTypeTransactionNotBeforeAChargeRefund(reAmortizeTransaction.getLoan(), reAmortizeTransaction,
"reversed");
final Loan loan = reAmortizeTransaction.getLoan();
loanChargeValidator.validateRepaymentTypeTransactionNotBeforeAChargeRefund(loan, reAmortizeTransaction, "reversed");
reAmortizeTransaction.reverse(reversalExternalId);
reAmortizeTransaction.manuallyAdjustedOrReversed();
reprocessLoanTransactionsService.reprocessTransactions(reAmortizeTransaction.getLoan());
reprocessLoanTransactionsService.reprocessTransactions(loan);
}
private LoanTransaction findLatestNonReversedReAmortizeTransaction(Loan loan) {