FINERACT-671 loan charge specific due date fix

This commit is contained in:
ShruthiRajaram
2018-12-19 18:38:25 +05:30
parent b3c36f1707
commit 37b61d156c
2 changed files with 7 additions and 1 deletions
@@ -134,6 +134,11 @@ public class LoanCharge extends AbstractPersistableCustom<Long> {
public static LoanCharge createNewFromJson(final Loan loan, final Charge chargeDefinition, final JsonCommand command) {
final LocalDate dueDate = command.localDateValueOfParameterNamed("dueDate");
if (dueDate == null) {
final String defaultUserMessage = "Loan charge is missing due date.";
throw new LoanChargeWithoutMandatoryFieldException("loanCharge", "dueDate", defaultUserMessage, chargeDefinition.getId(),
chargeDefinition.getName());
}
return createNewFromJson(loan, chargeDefinition, command, dueDate);
}
@@ -248,7 +248,8 @@ public final class LoanEventApiJsonValidator {
baseDataValidator.reset().parameter("amount").value(amount).notNull().positiveAmount();
if (this.fromApiJsonHelper.parameterExists("dueDate", element)) {
this.fromApiJsonHelper.extractLocalDateNamed("dueDate", element);
final LocalDate dueDate = this.fromApiJsonHelper.extractLocalDateNamed("dueDate", element);
baseDataValidator.reset().parameter("dueDate").value(dueDate).notBlank();
}
throwExceptionIfValidationWarningsExist(dataValidationErrors);