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 ef4fbd40a..24edd03a2 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 @@ -436,6 +436,7 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf actualDisbursementDate, txnExternalId); disbursementTransaction.updateLoan(loan); loan.addLoanTransaction(disbursementTransaction); + LoanTransaction savedLoanTransaction = loanTransactionRepository.saveAndFlush(disbursementTransaction); } if (loan.getRepaymentScheduleInstallments().isEmpty()) { /* @@ -460,8 +461,8 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf businessEventNotifierService.notifyPreBusinessEvent(new LoanTransactionDownPaymentPreBusinessEvent(loan)); LoanTransaction downPaymentTransaction = loan.handleDownPayment(amountToDisburse.getAmount(), command, scheduleGeneratorDTO); - businessEventNotifierService - .notifyPostBusinessEvent(new LoanTransactionDownPaymentPostBusinessEvent(downPaymentTransaction)); + LoanTransaction savedLoanTransaction = loanTransactionRepository.saveAndFlush(downPaymentTransaction); + businessEventNotifierService.notifyPostBusinessEvent(new LoanTransactionDownPaymentPostBusinessEvent(savedLoanTransaction)); businessEventNotifierService.notifyPostBusinessEvent(new LoanBalanceChangedBusinessEvent(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 75423a908..66b0c41f6 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 @@ -128,6 +128,10 @@ import org.slf4j.LoggerFactory; @ExtendWith(LoanTestLifecycleExtension.class) public class ClientLoanIntegrationTest { + static { + Utils.initializeRESTAssured(); + } + private static final String MINIMUM_OPENING_BALANCE = "1000.0"; private static final String ACCOUNT_TYPE_INDIVIDUAL = "INDIVIDUAL"; private static final Logger LOG = LoggerFactory.getLogger(ClientLoanIntegrationTest.class); @@ -172,10 +176,6 @@ public class ClientLoanIntegrationTest { private static final ChargesHelper CHARGES_HELPER = new ChargesHelper(); private static final ClientHelper CLIENT_HELPER = new ClientHelper(REQUEST_SPEC, RESPONSE_SPEC); - static { - Utils.initializeRESTAssured(); - } - private static RequestSpecification createRequestSpecification() { RequestSpecification request = new RequestSpecBuilder().setContentType(ContentType.JSON).build();