diff --git a/mifosng-db/patches/patch-0001-heavensfamily-data-patch.sql b/mifosng-db/patches/patch-0001-heavensfamily-data-patch.sql new file mode 100644 index 000000000..60a1c7cb7 --- /dev/null +++ b/mifosng-db/patches/patch-0001-heavensfamily-data-patch.sql @@ -0,0 +1,9 @@ +UPDATE `mifostenant-heavensfamily`.`m_loan` +SET +`loan_transaction_strategy_id` = 2 +WHERE id > 0; + +UPDATE `mifostenant-heavensfamily`.`m_loan` +SET +`term_frequency` = `repay_every` * `number_of_repayments` +WHERE `term_frequency` = 0; diff --git a/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanApplicationCommandValidator.java b/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanApplicationCommandValidator.java index 1b0b3e61e..df7ad2131 100644 --- a/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanApplicationCommandValidator.java +++ b/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanApplicationCommandValidator.java @@ -3,6 +3,7 @@ package org.mifosng.platform.loan.service; import java.util.ArrayList; import java.util.List; +import org.mifosng.platform.DataValidatorBuilder; import org.mifosng.platform.api.commands.CalculateLoanScheduleCommand; import org.mifosng.platform.api.commands.LoanChargeCommand; import org.mifosng.platform.api.commands.LoanApplicationCommand; @@ -39,6 +40,11 @@ public class LoanApplicationCommandValidator { } } + if (command.getTransactionProcessingStrategyId() == null) { + DataValidatorBuilder baseDataValidator = new DataValidatorBuilder(dataValidationErrors).resource("loan"); + baseDataValidator.reset().parameter("transactionProcessingStrategyId").value(command.getTransactionProcessingStrategyId()).notNull().inMinMaxRange(2, 2); + } + try { // reuse calculate loan schedule validator for now CalculateLoanScheduleCommand calculateLoanScheduleCommand = this.command.toCalculateLoanScheduleCommand();