From 5384067737e3c5cfc2326ae8e4ab6aa61a0c503c Mon Sep 17 00:00:00 2001 From: andrew-dzak Date: Fri, 4 Dec 2015 21:32:31 +0100 Subject: [PATCH] MIFOSX-2371 fixed days in year issue --- .../loanschedule/domain/LoanApplicationTerms.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) mode change 100644 => 100755 mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/LoanApplicationTerms.java diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/LoanApplicationTerms.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/LoanApplicationTerms.java old mode 100644 new mode 100755 index eebdbb911..0efc0e393 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/LoanApplicationTerms.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/LoanApplicationTerms.java @@ -786,10 +786,17 @@ public final class LoanApplicationTerms { private long calculatePeriodsInOneYear(final PaymentPeriodsInOneYearCalculator calculator) { - long periodsInOneYear = calculator.calculate(this.repaymentPeriodFrequencyType).longValue(); + //check if daysInYears is set if so change periodsInOneYear to days set in db + long periodsInOneYear; + boolean daysInYearToUse = (this.repaymentPeriodFrequencyType.getCode().equalsIgnoreCase("periodFrequencyType.days") && !this.daysInYearType.getCode().equalsIgnoreCase("DaysInYearType.actual")); + if(daysInYearToUse){ + periodsInOneYear = this.daysInYearType.getValue().longValue(); + }else{ + periodsInOneYear = calculator.calculate(this.repaymentPeriodFrequencyType).longValue(); + } switch (this.interestCalculationPeriodMethod) { case DAILY: - periodsInOneYear = calculator.calculate(PeriodFrequencyType.DAYS).longValue(); + periodsInOneYear = (!this.daysInYearType.getCode().equalsIgnoreCase("DaysInYearType.actual")) ? this.daysInYearType.getValue().longValue() : calculator.calculate(PeriodFrequencyType.DAYS).longValue(); break; case INVALID: break;