From e8a2a3a19d5390a68f3acbc92d214ff229b9f05e Mon Sep 17 00:00:00 2001 From: "ivanov.denis" Date: Fri, 14 Mar 2025 14:43:55 +0300 Subject: [PATCH] mattmat 1 --- .../exception_handler_messages.properties | 4 ++- ...xception_handler_messages_en_US.properties | 4 ++- .../org/micord/service/ValidationService.java | 27 ++++++++++--------- 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/backend/src/main/resources/i18n/exception_handler_messages.properties b/backend/src/main/resources/i18n/exception_handler_messages.properties index dd49afe..e61c3bf 100644 --- a/backend/src/main/resources/i18n/exception_handler_messages.properties +++ b/backend/src/main/resources/i18n/exception_handler_messages.properties @@ -1,4 +1,6 @@ error.unknown=Произошла неизвестная ошибка, обратитесь в службу технической поддержки eks.error.argument.missing=Произошла ошибка ввода данных. Проверьте заполненность полей eks.error.argument.invalid=Поле «ИД ЕРВУ граждан или иные сведения» заполнено неверно -eks.error.misc=Произошла неизвестная ошибка, обратитесь в службу технической поддержки \ No newline at end of file +eks.error.misc=Произошла неизвестная ошибка, обратитесь в службу технической поддержки +eks.error.date.empty=Пустые даты не допускаются +eks.error.date.order=Начальная дата не может быть позже конечной \ No newline at end of file diff --git a/backend/src/main/resources/i18n/exception_handler_messages_en_US.properties b/backend/src/main/resources/i18n/exception_handler_messages_en_US.properties index dd49afe..e61c3bf 100644 --- a/backend/src/main/resources/i18n/exception_handler_messages_en_US.properties +++ b/backend/src/main/resources/i18n/exception_handler_messages_en_US.properties @@ -1,4 +1,6 @@ error.unknown=Произошла неизвестная ошибка, обратитесь в службу технической поддержки eks.error.argument.missing=Произошла ошибка ввода данных. Проверьте заполненность полей eks.error.argument.invalid=Поле «ИД ЕРВУ граждан или иные сведения» заполнено неверно -eks.error.misc=Произошла неизвестная ошибка, обратитесь в службу технической поддержки \ No newline at end of file +eks.error.misc=Произошла неизвестная ошибка, обратитесь в службу технической поддержки +eks.error.date.empty=Пустые даты не допускаются +eks.error.date.order=Начальная дата не может быть позже конечной \ No newline at end of file diff --git a/config-data-executor/src/main/java/org/micord/service/ValidationService.java b/config-data-executor/src/main/java/org/micord/service/ValidationService.java index 35490b6..b349e4d 100644 --- a/config-data-executor/src/main/java/org/micord/service/ValidationService.java +++ b/config-data-executor/src/main/java/org/micord/service/ValidationService.java @@ -146,6 +146,18 @@ public class ValidationService { } + private Map getRulesForEmptyDates(R request, T parameters) { + Boolean emptyDatesAllowed = validateEmptyDates(request, parameters); + + if (!emptyDatesAllowed && parameters.getStartDate() != null && parameters.getEndDate() != null) { + if (parameters.getStartDate().isAfter(parameters.getEndDate())) { + throw new IllegalArgumentException("eks.error.date.order"); + } + } + + return Map.of(ValidationService.IS_EMPTY_DATES_ALLOWED, emptyDatesAllowed); + } + private static Boolean validateEmptyDates(BaseRequest request, T parameters) { if (request.getRequestValidationRules() == null) { return Boolean.FALSE; @@ -154,22 +166,11 @@ public class ValidationService { LocalDate startDate = parameters.getStartDate(); LocalDate endDate = parameters.getEndDate(); if (Boolean.FALSE.equals(emptyDatesAllowed) && (startDate == null || endDate == null)) { - throw new IllegalRequestParametersException("пустые даты не допускаются"); + throw new IllegalRequestParametersException("eks.error.date.empty"); } return emptyDatesAllowed; } - private Map getRulesForEmptyDates(R request, T parameters) { - Boolean emptyDatesAllowed = validateEmptyDates(request, parameters); - if (!emptyDatesAllowed && parameters.getStartDate() != null && parameters.getEndDate() != null) { - if (parameters.getStartDate().isAfter(parameters.getEndDate())) { - throw new IllegalArgumentException("Start date must be before end date"); - } - } - - return Map.of(ValidationService.IS_EMPTY_DATES_ALLOWED, emptyDatesAllowed); - } - public Map validateByValidationConfig(List ids, T c) throws ValidationException, FileNotFoundException, SQLException { ValidationRules config = configService.getConfig(ConfigType.VALIDATE_BLOCK, ValidationRules.class); @@ -193,7 +194,7 @@ public class ValidationService { .toList(); if (!invalidColumns.isEmpty()) { - String message = "Запись " + id + " не удовлетворяет критериям валидации."; + String message = "Запись " + id + " имеет не отменённые временные меры или подписанные повестки"; invalidRecords.put(id, message); } });