FINERACT-1734-Charge-Paid-By-List-Loan-Transaction-Events

This commit is contained in:
Ruchi Dhamankar
2022-12-27 10:43:16 +01:00
committed by Arnold Gálovics
parent d3dcc760e2
commit 03e17c2d23
2 changed files with 9 additions and 0 deletions
@@ -29,6 +29,7 @@ import org.apache.fineract.infrastructure.event.external.service.serialization.m
import org.apache.fineract.infrastructure.event.external.service.serialization.serializer.AbstractBusinessEventSerializer;
import org.apache.fineract.portfolio.loanaccount.data.LoanTransactionData;
import org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction;
import org.apache.fineract.portfolio.loanaccount.service.LoanChargePaidByReadPlatformService;
import org.apache.fineract.portfolio.loanaccount.service.LoanReadPlatformService;
import org.springframework.stereotype.Component;
@@ -38,6 +39,7 @@ public class LoanAdjustTransactionBusinessEventSerializer extends AbstractBusine
private final LoanReadPlatformService service;
private final LoanTransactionDataMapper mapper;
private final LoanChargePaidByReadPlatformService loanChargePaidByReadPlatformService;
@Override
public <T> boolean canSerialize(BusinessEvent<T> event) {
@@ -50,6 +52,8 @@ public class LoanAdjustTransactionBusinessEventSerializer extends AbstractBusine
LoanTransaction transactionToAdjust = event.get().getTransactionToAdjust();
LoanTransactionData transactionToAdjustData = service.retrieveLoanTransaction(transactionToAdjust.getLoan().getId(),
transactionToAdjust.getId());
transactionToAdjustData.setLoanChargePaidByList(
loanChargePaidByReadPlatformService.getLoanChargesPaidByTransactionId(transactionToAdjust.getId()));
LoanTransactionDataV1 transactionToAdjustAvroDto = mapper.map(transactionToAdjustData);
LoanTransaction newTransactionDetail = event.get().getNewTransactionDetail();
@@ -57,6 +61,8 @@ public class LoanAdjustTransactionBusinessEventSerializer extends AbstractBusine
if (newTransactionDetail != null) {
LoanTransactionData newTransactionDetailData = service.retrieveLoanTransaction(newTransactionDetail.getLoan().getId(),
newTransactionDetail.getId());
newTransactionDetailData.setLoanChargePaidByList(
loanChargePaidByReadPlatformService.getLoanChargesPaidByTransactionId(newTransactionDetail.getId()));
newTransactionDetailAvroDto = mapper.map(newTransactionDetailData);
}
@@ -27,6 +27,7 @@ import org.apache.fineract.infrastructure.event.business.domain.loan.transaction
import org.apache.fineract.infrastructure.event.external.service.serialization.mapper.loan.LoanTransactionDataMapper;
import org.apache.fineract.infrastructure.event.external.service.serialization.serializer.AbstractBusinessEventSerializer;
import org.apache.fineract.portfolio.loanaccount.data.LoanTransactionData;
import org.apache.fineract.portfolio.loanaccount.service.LoanChargePaidByReadPlatformService;
import org.apache.fineract.portfolio.loanaccount.service.LoanReadPlatformService;
import org.springframework.stereotype.Component;
@@ -36,6 +37,7 @@ public class LoanTransactionBusinessEventSerializer extends AbstractBusinessEven
private final LoanReadPlatformService service;
private final LoanTransactionDataMapper loanTransactionMapper;
private final LoanChargePaidByReadPlatformService loanChargePaidByReadPlatformService;
@Override
public <T> boolean canSerialize(BusinessEvent<T> event) {
@@ -48,6 +50,7 @@ public class LoanTransactionBusinessEventSerializer extends AbstractBusinessEven
Long loanId = event.get().getLoan().getId();
Long loanTransactionId = event.get().getId();
LoanTransactionData transactionData = service.retrieveLoanTransaction(loanId, loanTransactionId);
transactionData.setLoanChargePaidByList(loanChargePaidByReadPlatformService.getLoanChargesPaidByTransactionId(loanTransactionId));
return loanTransactionMapper.map(transactionData);
}