FINERACT-1806: Advanced accounting - Charge-off reason

This commit is contained in:
Adam Saghy
2025-01-07 19:40:45 +01:00
parent b7e6f356da
commit e1d043bb2d
10 changed files with 159 additions and 18 deletions
@@ -45,5 +45,5 @@ public class LoanDTO {
private boolean markedAsChargeOff;
@Setter
private boolean markedAsFraud;
private Integer chargeOffReasonCodeValue;
private Long chargeOffReasonCodeValue;
}
@@ -112,7 +112,7 @@ public class AccountingProcessorHelper {
boolean isAccountTransfer = (Boolean) accountingBridgeData.get("isAccountTransfer");
boolean isLoanMarkedAsChargeOff = (Boolean) accountingBridgeData.get("isChargeOff");
boolean isLoanMarkedAsFraud = (Boolean) accountingBridgeData.get("isFraud");
final Integer chargeOffReasonCodeValue = (Integer) accountingBridgeData.get("chargeOffReasonCodeValue");
final Long chargeOffReasonCodeValue = (Long) accountingBridgeData.get("chargeOffReasonCodeValue");
@SuppressWarnings("unchecked")
final List<Map<String, Object>> newTransactionsMap = (List<Map<String, Object>>) accountingBridgeData.get("newLoanTransactions");
@@ -177,7 +177,7 @@ public class AccountingProcessorHelper {
chargeOffReasonCodeValue);
}
public ProductToGLAccountMapping getChargeOffMappingByCodeValue(Integer chargeOffReasonCodeValue) {
public ProductToGLAccountMapping getChargeOffMappingByCodeValue(Long chargeOffReasonCodeValue) {
return accountMappingRepository.findChargeOffReasonMappingById(chargeOffReasonCodeValue);
}
@@ -230,7 +230,7 @@ public class AccrualBasedAccountingProcessorForLoan implements AccountingProcess
GLAccountBalanceHolder glAccountBalanceHolder = new GLAccountBalanceHolder();
// need to fetch if there are account mappings (always one)
Integer chargeOffReasonCodeValue = loanDTO.getChargeOffReasonCodeValue();
Long chargeOffReasonCodeValue = loanDTO.getChargeOffReasonCodeValue();
ProductToGLAccountMapping mapping = chargeOffReasonCodeValue != null
? helper.getChargeOffMappingByCodeValue(chargeOffReasonCodeValue)
@@ -72,6 +72,8 @@ final class CodeValuesApiResourceSwagger {
@Schema(example = "4")
public Long resourceId;
@Schema(example = "4")
public Long subResourceId;
}
@Schema(description = "PutCodeValuesDataRequest")