Merge pull request #1572 from rajuan/MIFOSX-2207
MIFOSX-2207 : Fixed outstanding balance calculation to exclude transfer transactions
This commit is contained in:
+11
-4
@@ -3080,7 +3080,9 @@ public class Loan extends AbstractPersistable<Long> {
|
||||
private List<LoanTransaction> retreiveListOfTransactionsPostDisbursement() {
|
||||
final List<LoanTransaction> repaymentsOrWaivers = new ArrayList<>();
|
||||
for (final LoanTransaction transaction : this.loanTransactions) {
|
||||
if (!transaction.isDisbursement() && transaction.isNotReversed()) {
|
||||
if (transaction.isNotReversed()
|
||||
&& !(transaction.isDisbursement()
|
||||
|| transaction.isNonMonetaryTransaction())) {
|
||||
repaymentsOrWaivers.add(transaction);
|
||||
}
|
||||
}
|
||||
@@ -3092,8 +3094,11 @@ public class Loan extends AbstractPersistable<Long> {
|
||||
public List<LoanTransaction> retreiveListOfTransactionsPostDisbursementExcludeAccruals() {
|
||||
final List<LoanTransaction> repaymentsOrWaivers = new ArrayList<>();
|
||||
for (final LoanTransaction transaction : this.loanTransactions) {
|
||||
if (!transaction.isDisbursement() && transaction.isNotReversed() && !transaction.isAccrual()
|
||||
&& !transaction.isRepaymentAtDisbursement()) {
|
||||
if (transaction.isNotReversed()
|
||||
&& !(transaction.isDisbursement()
|
||||
|| transaction.isAccrual()
|
||||
|| transaction.isRepaymentAtDisbursement()
|
||||
|| transaction.isNonMonetaryTransaction())) {
|
||||
repaymentsOrWaivers.add(transaction);
|
||||
}
|
||||
}
|
||||
@@ -3105,7 +3110,9 @@ public class Loan extends AbstractPersistable<Long> {
|
||||
private List<LoanTransaction> retreiveListOfTransactionsExcludeAccruals() {
|
||||
final List<LoanTransaction> repaymentsOrWaivers = new ArrayList<>();
|
||||
for (final LoanTransaction transaction : this.loanTransactions) {
|
||||
if (transaction.isNotReversed() && !transaction.isAccrual()) {
|
||||
if (transaction.isNotReversed()
|
||||
&& !(transaction.isAccrual()
|
||||
|| transaction.isNonMonetaryTransaction())) {
|
||||
repaymentsOrWaivers.add(transaction);
|
||||
}
|
||||
}
|
||||
|
||||
+10
@@ -617,6 +617,16 @@ public final class LoanTransaction extends AbstractPersistable<Long> {
|
||||
public boolean isAccrual() {
|
||||
return LoanTransactionType.ACCRUAL.equals(getTypeOf()) && isNotReversed();
|
||||
}
|
||||
|
||||
public boolean isNonMonetaryTransaction(){
|
||||
return isNotReversed()
|
||||
&& (LoanTransactionType.CONTRA.equals(getTypeOf())
|
||||
|| LoanTransactionType.MARKED_FOR_RESCHEDULING.equals(getTypeOf())
|
||||
|| LoanTransactionType.APPROVE_TRANSFER.equals(getTypeOf())
|
||||
|| LoanTransactionType.INITIATE_TRANSFER.equals(getTypeOf())
|
||||
|| LoanTransactionType.REJECT_TRANSFER.equals(getTypeOf())
|
||||
|| LoanTransactionType.WITHDRAW_TRANSFER.equals(getTypeOf()));
|
||||
}
|
||||
|
||||
public void updateOutstandingLoanBalance(BigDecimal outstandingLoanBalance) {
|
||||
this.outstandingLoanBalance = outstandingLoanBalance;
|
||||
|
||||
Reference in New Issue
Block a user