diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransaction.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransaction.java index 782bef329..43bdc901a 100755 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransaction.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransaction.java @@ -640,6 +640,10 @@ public final class LoanTransaction extends AbstractPersistable { private LocalDate getCreatedDate() { return new LocalDate(this.createdDate); } + + public LocalDateTime getCreatedDateTime() { + return new LocalDateTime(this.createdDate); + } public boolean isLastTransaction(final LoanTransaction loanTransaction) { boolean isLatest = false; diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransactionComparator.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransactionComparator.java index c6d34c1ce..c9cf2def9 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransactionComparator.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/domain/LoanTransactionComparator.java @@ -17,13 +17,19 @@ public class LoanTransactionComparator implements Comparator { int compareResult = 0; final int comparsion = o1.getTransactionDate().compareTo(o2.getTransactionDate()); if (comparsion == 0) { + int comparsionCreate = 0; + if (o1.getCreatedDateTime() != null && o2.getCreatedDateTime() != null){ + comparsionCreate = o1.getCreatedDateTime().compareTo(o2.getCreatedDateTime()); + } // equal transaction dates - if (o1.isWaiver() && o2.isNotWaiver()) { - compareResult = -1; - } else if (o1.isNotWaiver() && o2.isWaiver()) { - compareResult = 1; - } else { - compareResult = 0; + if (comparsionCreate == 0) { + if (o1.isWaiver() && o2.isNotWaiver()) { + compareResult = -1; + } else if (o1.isNotWaiver() && o2.isWaiver()) { + compareResult = 1; + } else { + compareResult = 0; + } } } else { compareResult = comparsion;