diff --git a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java
index 3c2a0942..c85dacd7 100644
--- a/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java
+++ b/src/main/java/net/gepafin/tendermanagement/constants/GepafinConstant.java
@@ -409,5 +409,28 @@ public class GepafinConstant {
public static final String REQUIRED_REQUESTED_AMOUNT_MSG = "validation.required.requested.amount";
public static final String CRITERIA_TABLE_COLUMNS="criteria_table_columns";
+
+ public static final String DOCUMENTATION_INTEGRATION_REQUEST_SVILUPPUMBRIA= "\n" +
+ "
\n" +
+ " \n" +
+ "
RICHIESTA INTEGRAZIONE DOCUMENTALE
\n" +
+ "
Buongiorno,
\n" +
+ "
In riferimento alla domanda di concessione di Finanziamento agevolato a valere sul Bando \n" +
+ " {{call_name}} di cui al Protocollo n. {{protocol_number}} del\n" +
+ " {{protocol_date}} e {{protocol_time}}, alla luce dell'attività istruttoria svolta,\n" +
+ " segnaliamo quanto segue:\n" +
+ "
\n" +
+ " {{note}}\n" +
+ "
Vi invitiamo a fornire quanto sopra richiesto integrando la documentazione caricandola all'interno dello sportello\n" +
+ " online {{platform_link}} entro e non oltre {{response_days}} giorni dal ricevimento della presente comunicazione,\n" +
+ " precisando che, in caso di mancata ricezione nei termini indicati, saremo costretti a non prendere in considerazione la Vostra richiesta di finanziamento.\n" +
+ "
\n" +
+ "
La documentazione trasmessa e le informazioni fornite saranno processate dall'istruttore assegnatario della pratica.\n" +
+ "
\n" +
+ "
Distinti Saluti,
\n" +
+ "
{{email_signature}}
\n" +
+ "
\n" +
+ " \n" +
+ "";
}
diff --git a/src/main/java/net/gepafin/tendermanagement/dao/EmailNotificationDao.java b/src/main/java/net/gepafin/tendermanagement/dao/EmailNotificationDao.java
index 3988b35a..7bc8010d 100644
--- a/src/main/java/net/gepafin/tendermanagement/dao/EmailNotificationDao.java
+++ b/src/main/java/net/gepafin/tendermanagement/dao/EmailNotificationDao.java
@@ -94,7 +94,15 @@ public class EmailNotificationDao {
subjectPlaceholders.put("{{company_name}}", company.getCompanyName());
// bodyPlaceholders.put("{{legal_mail}}", legalMail);
String subject = Utils.replacePlaceholders(systemEmailTemplateResponse.getSubject(), subjectPlaceholders);
- String body = Utils.replacePlaceholders(systemEmailTemplateResponse.getHtmlContent(), bodyPlaceholders);
+ String body;
+ if ("t7jh5wfg9QXylNaTZkPoE".equals(hubEntity.getUniqueUuid()) && templateType.equals(SystemEmailTemplatesEntity.SystemEmailTemplatesEntityTypeEnum.DOCUMENTATION_INTEGRATION_REQUEST)) {
+ bodyPlaceholders.put("{{email_signature}}", hubEntity.getEmailSignature());
+ bodyPlaceholders.put("{{platform_link}}",hubEntity.getDomainName());
+ body = Utils.replacePlaceholders(GepafinConstant.DOCUMENTATION_INTEGRATION_REQUEST_SVILUPPUMBRIA, bodyPlaceholders);
+ }
+ else {
+ body = Utils.replacePlaceholders(systemEmailTemplateResponse.getHtmlContent(), bodyPlaceholders);
+ }
return new EmailContentResponse(subject, body, systemEmailTemplateResponse);
}
diff --git a/src/main/java/net/gepafin/tendermanagement/dao/FormDao.java b/src/main/java/net/gepafin/tendermanagement/dao/FormDao.java
index 5e5cfdef..e4be1b0d 100644
--- a/src/main/java/net/gepafin/tendermanagement/dao/FormDao.java
+++ b/src/main/java/net/gepafin/tendermanagement/dao/FormDao.java
@@ -36,6 +36,8 @@ import java.util.stream.Collectors;
@Component
public class FormDao {
+ private final Logger log = LoggerFactory.getLogger(FormDao.class);
+
@Autowired
private FormRepository formRepository;
@@ -203,8 +205,9 @@ public class FormDao {
String formFieldId,Long evaluationCriteriaId) {
EvaluationCriteriaEntity evaluationCriteria = evaluationCriteriaService.validateEvaluationCriteria(evaluationCriteriaId);
if (Boolean.FALSE.equals(evaluationCriteria.getCall().getId().equals(callEntity.getId()))) {
- throw new CustomValidationException(Status.VALIDATION_ERROR,
- Translator.toLocale(GepafinConstant.EVALUATIONCRITERIA_INVALID));
+ log.info("This evaluation criterion does not belong to the current call. Expected Call ID = {}, Found Call ID = {}",
+ callEntity.getId(), evaluationCriteria.getCall().getId());
+ return;
}
CriteriaFormFieldEntity criteriaFormField = new CriteriaFormFieldEntity();
criteriaFormField.setCallId(callEntity.getId());
@@ -471,7 +474,9 @@ public class FormDao {
FieldValidatorBean fieldValidatorBean = Utils.convertSourceObjectToDestinationObject(contentResponseBean.getValidators(), FieldValidatorBean.class);
String fieldValue = getFieldValue(contentResponseBean);
- validator.isRequired(value, fieldValidatorBean.getIsRequired(), fieldValue);
+
+ validator.isRequired(value, fieldValidatorBean.getIsRequired(), fieldValue)
+ .validateCustomTableValidation(value,fieldValidatorBean.getCustom(),fieldValue,contentResponseBean);
});
if (Boolean.TRUE.equals(isSendValidationError)) {
validator.validate();
diff --git a/src/main/java/net/gepafin/tendermanagement/util/FieldValidator.java b/src/main/java/net/gepafin/tendermanagement/util/FieldValidator.java
index a9b5ad9a..ffcdfcac 100644
--- a/src/main/java/net/gepafin/tendermanagement/util/FieldValidator.java
+++ b/src/main/java/net/gepafin/tendermanagement/util/FieldValidator.java
@@ -147,11 +147,51 @@ public class FieldValidator {
return this;
}
- private static void checkTableValidation(String value, String fieldId, ContentResponseBean contentResponseBean, List