FINERACT-1760: Fix reversal external id handling

This commit is contained in:
Adam Saghy
2022-12-05 14:13:08 +01:00
committed by Arnold Gálovics
parent 4ba40c2418
commit a708251c65
2 changed files with 5 additions and 4 deletions
@@ -185,7 +185,7 @@ public abstract class AbstractLoanRepaymentScheduleTransactionProcessor implemen
loanTransaction.updateLoanTransactionToRepaymentScheduleMappings(
newLoanTransaction.getLoanTransactionToRepaymentScheduleMappings());
} else {
loanTransaction.reverse(loanTransaction.getExternalId());
loanTransaction.reverse();
loanTransaction.updateExternalId(null);
newLoanTransaction.copyLoanTransactionRelations(loanTransaction.getLoanTransactionRelations());
// Adding Replayed relation from newly created transaction to reversed transaction
@@ -1068,9 +1068,10 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf
final LocalDate transactionDate = command.localDateValueOfParameterNamed("transactionDate");
final BigDecimal transactionAmount = command.bigDecimalValueOfParameterNamed("transactionAmount");
final ExternalId txnExternalId = externalIdFactory.createFromCommand(command, LoanApiConstants.externalIdParameterName);
// TODO: can it be refactored to use the 'externalId' for reversal?
final ExternalId reversalTxnExternalId = externalIdFactory.createFromCommand(command,
LoanApiConstants.REVERSAL_EXTERNAL_ID_PARAMNAME);
// We dont need auto generation for reversal external id... if it is not provided, it remains null (empty)
final String reversalExternalId = command.stringValueOfParameterNamedAllowingNull(LoanApiConstants.REVERSAL_EXTERNAL_ID_PARAMNAME);
final ExternalId reversalTxnExternalId = ExternalIdFactory.produce(reversalExternalId);
final Map<String, Object> changes = new LinkedHashMap<>();
changes.put("transactionDate", command.stringValueOfParameterNamed("transactionDate"));