diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/ClearingCalendarValidationConfig.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/ClearingCalendarValidationConfig.java index 3d7327714..237040622 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/ClearingCalendarValidationConfig.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/ClearingCalendarValidationConfig.java @@ -43,6 +43,7 @@ public class ClearingCalendarValidationConfig { IMDGDistributedNames.Map_Company, Company.class, ValidationError.CompanyNotFound, + false, company -> WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus()) ? null : ValidationError.CompanyNotActive), DictionaryPresentRule.instance("dayStatus", ClearingCalendarNewRequest::getDayStatus, @@ -74,6 +75,7 @@ public class ClearingCalendarValidationConfig { IMDGDistributedNames.Map_Company, Company.class, ValidationError.CompanyNotFound, + false, company -> WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus()) ? null : ValidationError.CompanyNotActive), DictionaryPresentRule.instance("dayStatus", ClearingCalendarUpdateRequest::getDayStatus, diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerTemplateValidationConfig.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerTemplateValidationConfig.java index e0390eab6..6f7684118 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerTemplateValidationConfig.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerTemplateValidationConfig.java @@ -45,7 +45,9 @@ public class PlannerTemplateValidationConfig { IMDGDistributedNames.Map_TaskDictionary, TaskDictionary.class), TimeNotBeforeRule.instance("taskTime", - PlannerTemplateNewRequest::getTaskTime), + PlannerTemplateNewRequest::getTaskTime, + true, + false), DictionaryPresentRule.instance("taskStatus", PlannerTemplateNewRequest::getTaskStatus, IMDGDistributedNames.Map_TaskStatusDictionary, @@ -55,6 +57,7 @@ public class PlannerTemplateValidationConfig { IMDGDistributedNames.Map_Company, Company.class, ValidationError.CompanyNotFound, + false, company -> WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus()) ? null : ValidationError.CompanyNotActive), IdPresentRule.instance("securityId", PlannerTemplateNewRequest::getSecurityId, @@ -90,6 +93,7 @@ public class PlannerTemplateValidationConfig { false), TimeNotBeforeRule.instance("taskTime", PlannerTemplateUpdateRequest::getTaskTime, + false, false), DictionaryPresentRule.instance("taskStatus", PlannerTemplateUpdateRequest::getTaskStatus, diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerValidationConfig.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerValidationConfig.java index c60e0d628..389e7ef97 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerValidationConfig.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/config/validation/PlannerValidationConfig.java @@ -62,6 +62,7 @@ public class PlannerValidationConfig { IMDGDistributedNames.Map_Company, Company.class, ValidationError.CompanyNotFound, + false, company -> WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus()) ? null : ValidationError.CompanyNotActive), IdPresentRule.instance("securityId", PlannerNewRequest::getSecurityId, diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/validation/rules/common/EnumPresentRule.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/validation/rules/common/EnumPresentRule.java index a8ab3cd4f..39e53a19a 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/validation/rules/common/EnumPresentRule.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/validation/rules/common/EnumPresentRule.java @@ -55,6 +55,6 @@ public record EnumPresentRule(String fieldName, for (E enumValue : enumValues) { if (enumValue.getKey().equals(enumCode)) return empty(); } - return of(ValidationError.WrongEnumValue, fieldName); + return of(ValidationError.WrongDictionaryValue, fieldName); } } diff --git a/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/AbstractServiceTest.java b/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/AbstractServiceTest.java index c2a6b2173..51e4f577f 100644 --- a/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/AbstractServiceTest.java +++ b/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/AbstractServiceTest.java @@ -19,7 +19,7 @@ import ru.clearing.platform.dictionary.TaskStatusDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.scheduler.config.ErrorResolverConfig; import ru.spcex.clearing.scheduler.config.PlannerQueueConfig; -import ru.spcex.clearing.scheduler.config.SchedulerTestConfig; +import ru.spcex.clearing.scheduler.config.SchedulerServiceConfig; import ru.spcex.clearing.scheduler.config.validation.ClearingCalendarValidationConfig; import ru.spcex.clearing.scheduler.config.validation.PlannerTemplateValidationConfig; import ru.spcex.clearing.scheduler.config.validation.PlannerValidationConfig; @@ -60,7 +60,7 @@ import static ru.spcex.platform.enumeration.Market.mkrs; LauncherService.class, ErrorResolverConfig.class, PlannerQueueConfig.class, - SchedulerTestConfig.class, + SchedulerServiceConfig.class, ImdgTestConfig.class, KafkaTestConfig.class}) public abstract class AbstractServiceTest { diff --git a/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/validation/EnumPresentRuleTest.java b/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/validation/EnumPresentRuleTest.java index 5d039d6aa..cfc803a26 100644 --- a/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/validation/EnumPresentRuleTest.java +++ b/clearing-parent/scheduler-service/src/test/java/ru/spcex/clearing/scheduler/validation/EnumPresentRuleTest.java @@ -85,7 +85,7 @@ class EnumPresentRuleTest extends AbstractServiceTest { setter.accept(record, "BAD_VALUE"); enumMessages = strictValidator.validateAll(); assertEquals(1, enumMessages.size()); - assertEquals(ValidationError.WrongEnumValue, enumMessages.iterator().next().getSubject()); + assertEquals(ValidationError.WrongDictionaryValue, enumMessages.iterator().next().getSubject()); } } \ No newline at end of file