Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id CAEBC200B32 for ; Thu, 23 Jun 2016 14:15:42 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id C62D5160A68; Thu, 23 Jun 2016 12:15:42 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 00549160A58 for ; Thu, 23 Jun 2016 14:15:41 +0200 (CEST) Received: (qmail 88150 invoked by uid 500); 23 Jun 2016 12:15:41 -0000 Mailing-List: contact commits-help@fineract.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@fineract.incubator.apache.org Delivered-To: mailing list commits@fineract.incubator.apache.org Received: (qmail 88140 invoked by uid 99); 23 Jun 2016 12:15:41 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Jun 2016 12:15:41 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id C7B6A1857E4 for ; Thu, 23 Jun 2016 12:15:40 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -4.646 X-Spam-Level: X-Spam-Status: No, score=-4.646 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id 9ZwNyhzV6Jjd for ; Thu, 23 Jun 2016 12:15:38 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with SMTP id CE3485F260 for ; Thu, 23 Jun 2016 12:15:37 +0000 (UTC) Received: (qmail 88120 invoked by uid 99); 23 Jun 2016 12:15:37 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Jun 2016 12:15:37 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id EE126E38B1; Thu, 23 Jun 2016 12:15:36 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: nazeer1100126@apache.org To: commits@fineract.incubator.apache.org Date: Thu, 23 Jun 2016 12:15:36 -0000 Message-Id: <7865bca3886b48ec9928174ff46ac545@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [1/2] incubator-fineract git commit: FINERACT-182 archived-at: Thu, 23 Jun 2016 12:15:42 -0000 Repository: incubator-fineract Updated Branches: refs/heads/develop 91a51698f -> e2b0084c9 FINERACT-182 Project: http://git-wip-us.apache.org/repos/asf/incubator-fineract/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-fineract/commit/88942695 Tree: http://git-wip-us.apache.org/repos/asf/incubator-fineract/tree/88942695 Diff: http://git-wip-us.apache.org/repos/asf/incubator-fineract/diff/88942695 Branch: refs/heads/develop Commit: 8894269543a1aea893b32216952ea366c45ed205 Parents: c31c46b Author: venkatconflux Authored: Thu Jun 23 14:37:37 2016 +0530 Committer: venkatconflux Committed: Thu Jun 23 14:37:37 2016 +0530 ---------------------------------------------------------------------- .../integrationtests/ClientLoanIntegrationTest.java | 12 ++++++------ .../fineract/portfolio/loanaccount/domain/Loan.java | 11 +++++++++-- .../portfolio/loanaccount/domain/LoanCharge.java | 4 ++++ 3 files changed, 19 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/88942695/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java index 9a241a2..b2a737c 100644 --- a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java +++ b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ClientLoanIntegrationTest.java @@ -1890,9 +1890,9 @@ public class ClientLoanIntegrationTest { loanCharges = this.loanTransactionHelper.getLoanCharges(loanID); validateCharge(flatInstallmentFee, loanCharges, "50", "100.00", "50.0", "50.0"); - this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 September 2011", new JournalEntry(Float.valueOf("50.0"), + this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 November 2011", new JournalEntry(Float.valueOf("50.0"), JournalEntry.TransactionType.CREDIT)); - this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 September 2011", + this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 November 2011", new JournalEntry(Float.valueOf("50.0"), JournalEntry.TransactionType.DEBIT)); System.out.println("----------Make repayment 2------------"); @@ -2079,9 +2079,9 @@ public class ClientLoanIntegrationTest { loanCharges = this.loanTransactionHelper.getLoanCharges(loanID); validateCharge(percentageInstallmentFee, loanCharges, "1", "61.19", "29.11", "29.70"); - this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 September 2011", new JournalEntry(Float.valueOf("29.7"), + this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 November 2011", new JournalEntry(Float.valueOf("29.7"), JournalEntry.TransactionType.CREDIT)); - this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 September 2011", + this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 November 2011", new JournalEntry(Float.valueOf("29.7"), JournalEntry.TransactionType.DEBIT)); System.out.println("----------Make repayment 2------------"); @@ -2280,9 +2280,9 @@ public class ClientLoanIntegrationTest { loanCharges = this.loanTransactionHelper.getLoanCharges(loanID); validateCharge(amountPlusInterestPercentageInstallmentFee, loanCharges, "1", "63.02", "31.51", "31.51"); - this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 September 2011", new JournalEntry( + this.journalEntryHelper.checkJournalEntryForAssetAccount(assetAccount, "20 November 2011", new JournalEntry( Float.valueOf("31.51"), JournalEntry.TransactionType.CREDIT)); - this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 September 2011", + this.journalEntryHelper.checkJournalEntryForExpenseAccount(expenseAccount, "20 November 2011", new JournalEntry(Float.valueOf("31.51"), JournalEntry.TransactionType.DEBIT)); System.out.println("----------Make repayment 2------------"); http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/88942695/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/Loan.java ---------------------------------------------------------------------- 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 e0428b0..f55111e 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 @@ -972,9 +972,16 @@ public class Loan extends AbstractPersistable { } LocalDate transactionDate = getDisbursementDate(); - if (loanCharge.isSpecifiedDueDate()) { - transactionDate = loanCharge.getDueLocalDate(); + if (loanCharge.isDueDateCharge()) { + if (loanCharge.getDueLocalDate().isAfter(DateUtils.getLocalDateOfTenant())) { + transactionDate = DateUtils.getLocalDateOfTenant(); + } else { + transactionDate = loanCharge.getDueLocalDate(); + } + }else if(loanCharge.isInstalmentFee()){ + transactionDate = loanCharge.getInstallmentLoanCharge(loanInstallmentNumber).getRepaymentInstallment().getDueDate(); } + scheduleGeneratorDTO.setRecalculateFrom(transactionDate); updateSummaryWithTotalFeeChargesDueAtDisbursement(deriveSumTotalOfChargesDueAtDisbursement()); http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/88942695/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanCharge.java ---------------------------------------------------------------------- diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanCharge.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanCharge.java index ee2c382..0c0bcbf 100755 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanCharge.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/domain/LoanCharge.java @@ -987,4 +987,8 @@ public class LoanCharge extends AbstractPersistable { public boolean isTrancheDisbursementCharge() { return ChargeTimeType.fromInt(this.chargeTime).equals(ChargeTimeType.TRANCHE_DISBURSEMENT); } + + public boolean isDueDateCharge() { + return this.dueDate != null; + } } \ No newline at end of file