fix warnings in savings code

This commit is contained in:
Vishwas Babu A J
2014-04-30 17:48:53 +05:30
parent b69b071ffe
commit 1b4e03aa6e
2 changed files with 32 additions and 37 deletions
@@ -11,8 +11,9 @@ import static org.mifosplatform.portfolio.savings.DepositsApiConstants.FIXED_DEP
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.RECURRING_DEPOSIT_PRODUCT_REQUEST_DATA_PARAMETERS;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.RECURRING_DEPOSIT_PRODUCT_RESOURCE_NAME;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.chartsParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.minDepositTermTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.maxDepositTermTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositAmountParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositMaxAmountParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositMinAmountParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.inMultiplesOfDepositTermParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.inMultiplesOfDepositTermTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.interestFreeFromPeriodParamName;
@@ -20,16 +21,15 @@ import static org.mifosplatform.portfolio.savings.DepositsApiConstants.interestF
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.interestFreePeriodFrequencyTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.interestFreeToPeriodParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.maxDepositTermParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.maxDepositTermTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.minDepositTermParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.minDepositTermTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.preClosurePenalApplicableParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.preClosurePenalInterestOnTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.preClosurePenalInterestParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.recurringDepositFrequencyParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.recurringDepositFrequencyTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.recurringDepositTypeIdParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositAmountParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositMinAmountParamName;
import static org.mifosplatform.portfolio.savings.DepositsApiConstants.depositMaxAmountParamName;
import static org.mifosplatform.portfolio.savings.SavingsApiConstants.currencyCodeParamName;
import static org.mifosplatform.portfolio.savings.SavingsApiConstants.descriptionParamName;
import static org.mifosplatform.portfolio.savings.SavingsApiConstants.digitsAfterDecimalParamName;
@@ -51,8 +51,6 @@ import static org.mifosplatform.portfolio.savings.SavingsApiConstants.withdrawal
import java.lang.reflect.Type;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -114,7 +112,7 @@ public class DepositProductDataValidator {
validateDepositTermDeatilForCreate(element, baseDataValidator);
validateChartsData(element, baseDataValidator);
validateDepositAmountForCreate(element, baseDataValidator);
throwExceptionIfValidationWarningsExist(dataValidationErrors);
@@ -138,7 +136,7 @@ public class DepositProductDataValidator {
validateDepositTermDetailForUpdate(element, baseDataValidator);
validateChartsData(element, baseDataValidator);
validateDepositAmountForUpdate(element, baseDataValidator);
throwExceptionIfValidationWarningsExist(dataValidationErrors);
@@ -165,7 +163,7 @@ public class DepositProductDataValidator {
validateRecurringDetailForCreate(element, baseDataValidator);
validateChartsData(element, baseDataValidator);
validateDepositAmountForCreate(element, baseDataValidator);
throwExceptionIfValidationWarningsExist(dataValidationErrors);
@@ -191,7 +189,7 @@ public class DepositProductDataValidator {
validateRecurringDepositUpdate(element, baseDataValidator);
validateChartsData(element, baseDataValidator);
validateDepositAmountForUpdate(element, baseDataValidator);
throwExceptionIfValidationWarningsExist(dataValidationErrors);
@@ -387,7 +385,7 @@ public class DepositProductDataValidator {
baseDataValidator.reset().parameter(maxDepositTermTypeIdParamName).value(maxDepositTermType)
.isOneOfTheseValues(SavingsPeriodFrequencyType.integerValues());
}
if (fromApiJsonHelper.parameterExists(inMultiplesOfDepositTermParamName, element)) {
final Integer inMultiplesOfDepositTerm = fromApiJsonHelper.extractIntegerSansLocaleNamed(inMultiplesOfDepositTermParamName,
element);
@@ -746,20 +744,20 @@ public class DepositProductDataValidator {
.isOneOfTheseValues(SavingsPeriodFrequencyType.integerValues());
}
}
private void validateDepositAmountForCreate(JsonElement element, DataValidatorBuilder baseDataValidator) {
final BigDecimal depositAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositAmountParamName, element);
final BigDecimal depositAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositAmountParamName, element);
baseDataValidator.reset().parameter(depositAmountParamName).value(depositAmount).notNull().positiveAmount();
BigDecimal depositMinAmount = null;
if (this.fromApiJsonHelper.parameterExists(depositMinAmountParamName, element)) {
depositMinAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMinAmountParamName, element);
depositMinAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMinAmountParamName, element);
baseDataValidator.reset().parameter(depositMinAmountParamName).value(depositMinAmount).notNull().positiveAmount();
}
BigDecimal depositMaxAmount = null;
if (this.fromApiJsonHelper.parameterExists(depositMaxAmountParamName, element)) {
depositMaxAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMaxAmountParamName, element);
depositMaxAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMaxAmountParamName, element);
baseDataValidator.reset().parameter(depositMaxAmountParamName).value(depositMaxAmount).notNull().positiveAmount();
}
@@ -777,29 +775,29 @@ public class DepositProductDataValidator {
baseDataValidator.reset().parameter(depositAmountParamName).value(depositAmount).notLessThanMin(depositMinAmount);
}
}
private void validateDepositAmountForUpdate(JsonElement element, DataValidatorBuilder baseDataValidator) {
BigDecimal depositAmount = null;
if (this.fromApiJsonHelper.parameterExists(depositAmountParamName, element)) {
depositAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositAmountParamName, element);
baseDataValidator.reset().parameter(depositMinAmountParamName).value(depositAmount).notNull().positiveAmount();
}
baseDataValidator.reset().parameter(depositAmountParamName).value(depositAmount).notNull().positiveAmount();
BigDecimal depositMinAmount = null;
if (this.fromApiJsonHelper.parameterExists(depositMinAmountParamName, element)) {
depositMinAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMinAmountParamName, element);
depositMinAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMinAmountParamName, element);
baseDataValidator.reset().parameter(depositMinAmountParamName).value(depositMinAmount).notNull().positiveAmount();
}
BigDecimal depositMaxAmount = null;
if (this.fromApiJsonHelper.parameterExists(depositMaxAmountParamName, element)) {
depositMaxAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMaxAmountParamName, element);
depositMaxAmount = this.fromApiJsonHelper.extractBigDecimalWithLocaleNamed(depositMaxAmountParamName, element);
baseDataValidator.reset().parameter(depositMaxAmountParamName).value(depositMaxAmount).notNull().positiveAmount();
}
if(depositAmount != null) {
if (depositAmount != null) {
if (depositMaxAmount != null && depositMaxAmount.compareTo(BigDecimal.ZERO) != -1) {
if (depositMinAmount != null && depositMinAmount.compareTo(BigDecimal.ZERO) != -1) {
baseDataValidator.reset().parameter(depositMaxAmountParamName).value(depositMaxAmount).notLessThanMin(depositMinAmount);
@@ -16,25 +16,23 @@ import org.mifosplatform.infrastructure.core.api.JsonCommand;
import org.mifosplatform.infrastructure.core.data.DataValidatorBuilder;
/**
* RecurringDepositProductAmountDetails encapsulates all recurring Deposit Amount of a
* {@link RecurringDepositProduct}.
* RecurringDepositProductAmountDetails encapsulates all recurring Deposit
* Amount of a {@link RecurringDepositProduct}.
*/
@Embeddable
public class DepositProductAmountDetails {
@Column(name = "min_deposit_amount", scale = 6, precision = 19, nullable = true)
private BigDecimal minDepositAmount;
@Column(name = "max_deposit_amount", scale = 6, precision = 19, nullable = true)
private BigDecimal maxDepositAmount;
@Column(name = "deposit_amount", scale = 6, precision = 19, nullable = false)
private BigDecimal depositAmount;
public static DepositProductAmountDetails createFrom(final BigDecimal minDepositAmount,
final BigDecimal depositAmount, final BigDecimal maxDepositAmount) {
public static DepositProductAmountDetails createFrom(final BigDecimal minDepositAmount, final BigDecimal depositAmount,
final BigDecimal maxDepositAmount) {
return new DepositProductAmountDetails(minDepositAmount, depositAmount, maxDepositAmount);
}
@@ -70,7 +68,7 @@ public class DepositProductAmountDetails {
actualChanges.put("locale", localeAsInput);
this.maxDepositAmount = newValue;
}
final String depositAmountParamName = "depositAmount";
if (command.isChangeInBigDecimalParameterNamedWithNullCheck(depositAmountParamName, this.depositAmount)) {
final BigDecimal newValue = command.bigDecimalValueOfParameterNamed(depositAmountParamName);
@@ -90,9 +88,8 @@ public class DepositProductAmountDetails {
return this.maxDepositAmount;
}
public BigDecimal getDepositAmount() {
return this.depositAmount;
}
public BigDecimal getDepositAmount() {
return this.depositAmount;
}
}