diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/charge/domain/ChargeTimeType.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/charge/domain/ChargeTimeType.java index 2419dfe92..d1482d0a8 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/charge/domain/ChargeTimeType.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/charge/domain/ChargeTimeType.java @@ -17,7 +17,7 @@ public enum ChargeTimeType { WITHDRAWAL_FEE(5, "chargeTimeType.withdrawalFee"), // only for savings ANNUAL_FEE(6, "chargeTimeType.annualFee"), // only for savings MONTHLY_FEE(7, "chargeTimeType.monthlyFee"), // only for savings - INSTALMENT_FEE(8,"chargeTimeType.instalmentFee");//only for loan charges + INSTALMENT_FEE(8, "chargeTimeType.instalmentFee");// only for loan charges private final Integer value; private final String code; @@ -36,7 +36,8 @@ public enum ChargeTimeType { } public static Object[] validLoanValues() { - return new Integer[] { ChargeTimeType.DISBURSEMENT.getValue(), ChargeTimeType.SPECIFIED_DUE_DATE.getValue() }; + return new Integer[] { ChargeTimeType.DISBURSEMENT.getValue(), ChargeTimeType.SPECIFIED_DUE_DATE.getValue(), + ChargeTimeType.INSTALMENT_FEE.getValue() }; } public static Object[] validSavingsValues() { @@ -48,37 +49,37 @@ public enum ChargeTimeType { public static ChargeTimeType fromInt(final Integer chargeTime) { ChargeTimeType chargeTimeType = ChargeTimeType.INVALID; if (chargeTime != null) { - switch (chargeTime) { - case 1: - chargeTimeType = DISBURSEMENT; - break; - case 2: - chargeTimeType = SPECIFIED_DUE_DATE; - break; - case 3: - chargeTimeType = SAVINGS_ACTIVATION; - break; - case 4: - chargeTimeType = SAVINGS_CLOSURE; - break; - case 5: - chargeTimeType = WITHDRAWAL_FEE; - break; - case 6: - chargeTimeType = ANNUAL_FEE; - break; - case 7: - chargeTimeType = MONTHLY_FEE; - break; - case 8: - chargeTimeType = INSTALMENT_FEE; - break; - default: - chargeTimeType = INVALID; - break; + switch (chargeTime) { + case 1: + chargeTimeType = DISBURSEMENT; + break; + case 2: + chargeTimeType = SPECIFIED_DUE_DATE; + break; + case 3: + chargeTimeType = SAVINGS_ACTIVATION; + break; + case 4: + chargeTimeType = SAVINGS_CLOSURE; + break; + case 5: + chargeTimeType = WITHDRAWAL_FEE; + break; + case 6: + chargeTimeType = ANNUAL_FEE; + break; + case 7: + chargeTimeType = MONTHLY_FEE; + break; + case 8: + chargeTimeType = INSTALMENT_FEE; + break; + default: + chargeTimeType = INVALID; + break; + } } - } - return chargeTimeType; + return chargeTimeType; } public boolean isTimeOfDisbursement() { @@ -109,11 +110,10 @@ public enum ChargeTimeType { return this.value.equals(ChargeTimeType.MONTHLY_FEE.getValue()); } - public boolean isInstalmentFee() { return this.value.equals(ChargeTimeType.INSTALMENT_FEE.getValue()); } - + public boolean isAllowedLoanChargeTime() { return isTimeOfDisbursement() || isOnSpecifiedDueDate() || isInstalmentFee(); }