diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/Loan.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/Loan.java index 8b5a70766..6deb4321f 100755 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/Loan.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/Loan.java @@ -5868,10 +5868,14 @@ public class Loan extends AbstractPersistableCustom { } return actualDisbursementDate; } - - public void addTrancheLoanCharge(Charge charge) { - if (!trancheCharges.contains(charge)) { - trancheCharges.add(new LoanTrancheCharge(charge, this)); + + public void addTrancheLoanCharge(final Charge charge) { + final List appliedCharges = new ArrayList<>(); + for(final LoanTrancheCharge loanTrancheCharge: this.trancheCharges){ + appliedCharges.add(loanTrancheCharge.getCharge()); + } + if (!appliedCharges.contains(charge)) { + this.trancheCharges.add(new LoanTrancheCharge(charge, this)); } } diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanTrancheDisbursementCharge.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanTrancheDisbursementCharge.java index d2258cef0..56360bbbd 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanTrancheDisbursementCharge.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanTrancheDisbursementCharge.java @@ -34,7 +34,7 @@ public class LoanTrancheDisbursementCharge extends AbstractPersistableCustom