Fixing charge to and from accounts for disbursement relevant charges.
diff --git a/component-test/src/main/java/io/mifos/portfolio/TestAccountingInteractionInLoanWorkflow.java b/component-test/src/main/java/io/mifos/portfolio/TestAccountingInteractionInLoanWorkflow.java
index 24f3441..2ad7ab3 100644
--- a/component-test/src/main/java/io/mifos/portfolio/TestAccountingInteractionInLoanWorkflow.java
+++ b/component-test/src/main/java/io/mifos/portfolio/TestAccountingInteractionInLoanWorkflow.java
@@ -208,13 +208,13 @@
final Set<Debtor> debtors = new HashSet<>();
debtors.add(new Debtor(pendingDisbursalAccountIdentifier, caseParameters.getMaximumBalance().toPlainString()));
- debtors.add(new Debtor(AccountingFixture.TELLER_ONE_ACCOUNT_IDENTIFIER,
- caseParameters.getMaximumBalance().subtract(DISBURSEMENT_FEE_AMOUNT).toPlainString()));
+ debtors.add(new Debtor(AccountingFixture.LOANS_PAYABLE_ACCOUNT_IDENTIFIER, caseParameters.getMaximumBalance().toPlainString()));
+ debtors.add(new Debtor(AccountingFixture.TELLER_ONE_ACCOUNT_IDENTIFIER, DISBURSEMENT_FEE_AMOUNT.toPlainString()));
final Set<Creditor> creditors = new HashSet<>();
creditors.add(new Creditor(customerLoanAccountIdentifier, caseParameters.getMaximumBalance().toPlainString()));
+ creditors.add(new Creditor(AccountingFixture.TELLER_ONE_ACCOUNT_IDENTIFIER, caseParameters.getMaximumBalance().toPlainString()));
creditors.add(new Creditor(AccountingFixture.DISBURSEMENT_FEE_INCOME_ACCOUNT_IDENTIFIER, DISBURSEMENT_FEE_AMOUNT.toPlainString()));
- creditors.add(new Creditor(AccountingFixture.LOANS_PAYABLE_ACCOUNT_IDENTIFIER, caseParameters.getMaximumBalance().toPlainString()));
AccountingFixture.verifyTransfer(ledgerManager, debtors, creditors);
expectedCurrentBalance = expectedCurrentBalance.add(caseParameters.getMaximumBalance());
diff --git a/service/src/main/java/io/mifos/individuallending/IndividualLendingPatternFactory.java b/service/src/main/java/io/mifos/individuallending/IndividualLendingPatternFactory.java
index eb7c4e0..6a30102 100644
--- a/service/src/main/java/io/mifos/individuallending/IndividualLendingPatternFactory.java
+++ b/service/src/main/java/io/mifos/individuallending/IndividualLendingPatternFactory.java
@@ -79,7 +79,7 @@
individualLendingRequiredAccounts.add(CUSTOMER_LOAN);
individualLendingRequiredAccounts.add(PENDING_DISBURSAL);
individualLendingRequiredAccounts.add(LOAN_FUNDS_SOURCE);
- individualLendingRequiredAccounts.add(LOANS_PAYABLE);
+ individualLendingRequiredAccounts.add(LOAN_FUNDS_SOURCE);
individualLendingRequiredAccounts.add(PROCESSING_FEE_INCOME);
individualLendingRequiredAccounts.add(ORIGINATION_FEE_INCOME);
individualLendingRequiredAccounts.add(DISBURSEMENT_FEE_INCOME);
@@ -132,8 +132,8 @@
disbursePayment.setIdentifier(DISBURSE_PAYMENT_ID);
disbursePayment.setName(DISBURSE_PAYMENT_NAME);
disbursePayment.setDescription(DISBURSE_PAYMENT_NAME);
- disbursePayment.setFromAccountDesignator(ENTRY);
- disbursePayment.setToAccountDesignator(CUSTOMER_LOAN);
+ disbursePayment.setFromAccountDesignator(LOANS_PAYABLE);
+ disbursePayment.setToAccountDesignator(ENTRY);
disbursePayment.setProportionalTo(ChargeIdentifiers.PRINCIPAL_ADJUSTMENT_DESIGNATOR);
disbursePayment.setChargeMethod(ChargeDefinition.ChargeMethod.PROPORTIONAL);
disbursePayment.setAmount(BigDecimal.ONE);
@@ -144,7 +144,7 @@
trackPrincipalDisbursePayment.setName(TRACK_DISBURSAL_PAYMENT_NAME);
trackPrincipalDisbursePayment.setDescription(TRACK_DISBURSAL_PAYMENT_NAME);
trackPrincipalDisbursePayment.setFromAccountDesignator(PENDING_DISBURSAL);
- trackPrincipalDisbursePayment.setToAccountDesignator(LOANS_PAYABLE);
+ trackPrincipalDisbursePayment.setToAccountDesignator(CUSTOMER_LOAN);
trackPrincipalDisbursePayment.setProportionalTo(ChargeIdentifiers.PRINCIPAL_ADJUSTMENT_DESIGNATOR);
trackPrincipalDisbursePayment.setChargeMethod(ChargeDefinition.ChargeMethod.PROPORTIONAL);
trackPrincipalDisbursePayment.setAmount(BigDecimal.ONE);
diff --git a/service/src/main/java/io/mifos/individuallending/internal/service/CostComponentService.java b/service/src/main/java/io/mifos/individuallending/internal/service/CostComponentService.java
index 20d2d37..48c4a82 100644
--- a/service/src/main/java/io/mifos/individuallending/internal/service/CostComponentService.java
+++ b/service/src/main/java/io/mifos/individuallending/internal/service/CostComponentService.java
@@ -210,7 +210,7 @@
chargesSplitIntoScheduledAndAccrued.get(false),
caseParameters.getMaximumBalance(),
currentBalance,
- BigDecimal.ZERO,//TODO: This needs to be provided by the user.
+ caseParameters.getMaximumBalance(),//TODO: This needs to be provided by the user.
minorCurrencyUnitDigits);
}