MIFOSX-865: fixing failing testing cases for accrual accounting
This commit is contained in:
+10
-8
@@ -15,19 +15,21 @@ public class LoanDTO {
|
||||
|
||||
private String currencyCode;
|
||||
private boolean cashBasedAccountingEnabled;
|
||||
private boolean accrualBasedAccountingEnabled;
|
||||
final boolean upfrontAccrualBasedAccountingEnabled;
|
||||
final boolean periodicAccrualBasedAccountingEnabled;
|
||||
private List<LoanTransactionDTO> newLoanTransactions;
|
||||
|
||||
public LoanDTO(final Long loanId, final Long loanProductId, final Long officeId, final String currencyCode,
|
||||
final boolean cashBasedAccountingEnabled, final boolean accrualBasedAccountingEnabled,
|
||||
final List<LoanTransactionDTO> newLoanTransactions) {
|
||||
final boolean cashBasedAccountingEnabled, final boolean upfrontAccrualBasedAccountingEnabled,
|
||||
final boolean periodicAccrualBasedAccountingEnabled, final List<LoanTransactionDTO> newLoanTransactions) {
|
||||
this.loanId = loanId;
|
||||
this.loanProductId = loanProductId;
|
||||
this.officeId = officeId;
|
||||
this.cashBasedAccountingEnabled = cashBasedAccountingEnabled;
|
||||
this.accrualBasedAccountingEnabled = accrualBasedAccountingEnabled;
|
||||
this.newLoanTransactions = newLoanTransactions;
|
||||
this.currencyCode = currencyCode;
|
||||
this.upfrontAccrualBasedAccountingEnabled = upfrontAccrualBasedAccountingEnabled;
|
||||
this.periodicAccrualBasedAccountingEnabled = periodicAccrualBasedAccountingEnabled;
|
||||
}
|
||||
|
||||
public Long getLoanId() {
|
||||
@@ -62,12 +64,12 @@ public class LoanDTO {
|
||||
this.cashBasedAccountingEnabled = cashBasedAccountingEnabled;
|
||||
}
|
||||
|
||||
public boolean isAccrualBasedAccountingEnabled() {
|
||||
return this.accrualBasedAccountingEnabled;
|
||||
public boolean isUpfrontAccrualBasedAccountingEnabled() {
|
||||
return this.upfrontAccrualBasedAccountingEnabled;
|
||||
}
|
||||
|
||||
public void setAccrualBasedAccountingEnabled(final boolean accrualBasedAccountingEnabled) {
|
||||
this.accrualBasedAccountingEnabled = accrualBasedAccountingEnabled;
|
||||
public boolean isPeriodicAccrualBasedAccountingEnabled() {
|
||||
return this.periodicAccrualBasedAccountingEnabled;
|
||||
}
|
||||
|
||||
public List<LoanTransactionDTO> getNewLoanTransactions() {
|
||||
|
||||
+4
-3
@@ -27,9 +27,10 @@ public class AccountingProcessorForLoanFactory {
|
||||
if (loanDTO.isCashBasedAccountingEnabled()) {
|
||||
accountingProcessorForLoan = this.applicationContext.getBean("cashBasedAccountingProcessorForLoan",
|
||||
AccountingProcessorForLoan.class);
|
||||
}
|
||||
|
||||
else if (loanDTO.isAccrualBasedAccountingEnabled()) {
|
||||
} else if (loanDTO.isUpfrontAccrualBasedAccountingEnabled()) {
|
||||
accountingProcessorForLoan = this.applicationContext.getBean("accrualBasedAccountingProcessorForLoan",
|
||||
AccountingProcessorForLoan.class);
|
||||
} else if (loanDTO.isPeriodicAccrualBasedAccountingEnabled()) {
|
||||
accountingProcessorForLoan = this.applicationContext.getBean("accrualBasedAccountingProcessorForLoan",
|
||||
AccountingProcessorForLoan.class);
|
||||
}
|
||||
|
||||
+3
-3
@@ -74,7 +74,7 @@ public class AccountingProcessorHelper {
|
||||
}
|
||||
|
||||
public LoanDTO populateLoanDtoFromMap(final Map<String, Object> accountingBridgeData, final boolean cashBasedAccountingEnabled,
|
||||
final boolean accrualBasedAccountingEnabled) {
|
||||
final boolean upfrontAccrualBasedAccountingEnabled, final boolean periodicAccrualBasedAccountingEnabled) {
|
||||
final Long loanId = (Long) accountingBridgeData.get("loanId");
|
||||
final Long loanProductId = (Long) accountingBridgeData.get("loanProductId");
|
||||
final Long officeId = (Long) accountingBridgeData.get("officeId");
|
||||
@@ -127,8 +127,8 @@ public class AccountingProcessorHelper {
|
||||
|
||||
}
|
||||
|
||||
return new LoanDTO(loanId, loanProductId, officeId, currencyData.code(), cashBasedAccountingEnabled, accrualBasedAccountingEnabled,
|
||||
newLoanTransactions);
|
||||
return new LoanDTO(loanId, loanProductId, officeId, currencyData.code(), cashBasedAccountingEnabled,
|
||||
upfrontAccrualBasedAccountingEnabled, periodicAccrualBasedAccountingEnabled, newLoanTransactions);
|
||||
}
|
||||
|
||||
public SavingsDTO populateSavingsDtoFromMap(final Map<String, Object> accountingBridgeData, final boolean cashBasedAccountingEnabled,
|
||||
|
||||
+4
-3
@@ -310,11 +310,12 @@ public class JournalEntryWritePlatformServiceJpaRepositoryImpl implements Journa
|
||||
public void createJournalEntriesForLoan(final Map<String, Object> accountingBridgeData) {
|
||||
|
||||
final boolean cashBasedAccountingEnabled = (Boolean) accountingBridgeData.get("cashBasedAccountingEnabled");
|
||||
final boolean accrualBasedAccountingEnabled = (Boolean) accountingBridgeData.get("accrualBasedAccountingEnabled");
|
||||
final boolean upfrontAccrualBasedAccountingEnabled = (Boolean) accountingBridgeData.get("upfrontAccrualBasedAccountingEnabled");
|
||||
final boolean periodicAccrualBasedAccountingEnabled = (Boolean) accountingBridgeData.get("periodicAccrualBasedAccountingEnabled");
|
||||
|
||||
if (cashBasedAccountingEnabled || accrualBasedAccountingEnabled) {
|
||||
if (cashBasedAccountingEnabled || upfrontAccrualBasedAccountingEnabled || periodicAccrualBasedAccountingEnabled) {
|
||||
final LoanDTO loanDTO = this.helper.populateLoanDtoFromMap(accountingBridgeData, cashBasedAccountingEnabled,
|
||||
accrualBasedAccountingEnabled);
|
||||
upfrontAccrualBasedAccountingEnabled, periodicAccrualBasedAccountingEnabled);
|
||||
final AccountingProcessorForLoan accountingProcessorForLoan = this.accountingProcessorForLoanFactory
|
||||
.determineProcessor(loanDTO);
|
||||
accountingProcessorForLoan.createJournalEntriesForLoan(loanDTO);
|
||||
|
||||
Reference in New Issue
Block a user