From 65dea832d0dfda0b2da4dfda968de75afc3fe20f Mon Sep 17 00:00:00 2001 From: rajesh Date: Wed, 29 Jan 2025 12:34:57 +0530 Subject: [PATCH] Done ticket GEPAFINBE-146 --- .../constants/GepafinConstant.java | 2 ++ .../impl/CallValidatorServiceImpl.java | 33 ++++++++++++++++--- src/main/resources/message_en.properties | 4 +++ src/main/resources/message_it.properties | 4 +++ 4 files changed, 39 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java index 8e2828e5..3170aafd 100644 --- a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java +++ b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java @@ -403,5 +403,7 @@ public class GepafinConstant { public static final String EVALUATION_V2_STEP_2 = "EVALUATION_V2_STEP_2"; public static final String ASSIGNED_APPLICATION_STATUS_UPDATED_SUCCESSFULLY = "assigned.application.status.updated.successfully"; + + public static final String REQUIRED_REQUESTED_AMOUNT_MSG = "validation.required.requested.amount"; } diff --git a/src/main/java/net/gepafin/tendermanagement/service/impl/CallValidatorServiceImpl.java b/src/main/java/net/gepafin/tendermanagement/service/impl/CallValidatorServiceImpl.java index eaa3ba13..4c54f042 100644 --- a/src/main/java/net/gepafin/tendermanagement/service/impl/CallValidatorServiceImpl.java +++ b/src/main/java/net/gepafin/tendermanagement/service/impl/CallValidatorServiceImpl.java @@ -7,10 +7,7 @@ import java.util.List; import net.gepafin.tendermanagement.config.Translator; import net.gepafin.tendermanagement.constants.GepafinConstant; import net.gepafin.tendermanagement.enums.EvaluationVersionEnum; -import net.gepafin.tendermanagement.model.response.CallResponse; -import net.gepafin.tendermanagement.model.response.EvaluationFormResponseBean; -import net.gepafin.tendermanagement.model.response.FlowResponseBean; -import net.gepafin.tendermanagement.model.response.FormResponseBean; +import net.gepafin.tendermanagement.model.response.*; import net.gepafin.tendermanagement.util.FieldValidator; import net.gepafin.tendermanagement.util.Utils; import net.gepafin.tendermanagement.web.rest.api.errors.CustomValidationException; @@ -61,6 +58,34 @@ public class CallValidatorServiceImpl { if (formResponses == null || formResponses.isEmpty()) { data.addError(Translator.toLocale(GepafinConstant.FORM_NOT_FOUND)); } + boolean isAmountRequestedValid = false; + if (formResponses != null && !formResponses.isEmpty()) { + outerloop: + for (FormResponseBean formResponse : formResponses) { + + if (formResponse.getContent() != null && !formResponse.getContent().isEmpty()) { + for (ContentResponseBean content : formResponse.getContent()) { + if ("numberinput".equals(content.getName()) && content.getSettings() != null) { + for (SettingResponseBean setting : content.getSettings()) { + if ("isRequestedAmount".equals(setting.getName())) { + Object value = setting.getValue(); + if (Boolean.TRUE.equals(value)) { + isAmountRequestedValid = true; + break outerloop; + } else if (value == null) { + data.addError(Translator.toLocale(GepafinConstant.REQUIRED_REQUESTED_AMOUNT_MSG)); + } + } + } + } + } + } + } + } + + if (!isAmountRequestedValid) { + data.addError(Translator.toLocale(GepafinConstant.REQUIRED_REQUESTED_AMOUNT_MSG)); + } data.validate(); } } diff --git a/src/main/resources/message_en.properties b/src/main/resources/message_en.properties index 239efc0f..451dec92 100644 --- a/src/main/resources/message_en.properties +++ b/src/main/resources/message_en.properties @@ -363,3 +363,7 @@ evaluation.form.fetched.successfully=Evaluation form fetched successfully. evaluation.form.not.found=Evaluation form not found. assigned.application.status.updated.successfully=Assigned application status updated successfully. + +validation.required.requested.amount=The Requested Amount configuration should be mandatory. + + diff --git a/src/main/resources/message_it.properties b/src/main/resources/message_it.properties index 3d37c00c..66595c92 100644 --- a/src/main/resources/message_it.properties +++ b/src/main/resources/message_it.properties @@ -355,3 +355,7 @@ evaluation.form.not.found=Modulo di valutazione non trovato. assigned.application.status.updated.successfully=Stato dell'applicazione assegnata aggiornato con successo. +validation.required.requested.amount=La configurazione dell'importo richiesto è obbligatoria. + + +