From 342db96a1e386d4f84110fea3064c9ee9a3b9661 Mon Sep 17 00:00:00 2001 From: akulikov Date: Wed, 3 May 2023 16:30:19 +0300 Subject: [PATCH] fixes EnumPresentRule --- .../validation/AccountValidationConfig.java | 20 +++++++------------ .../BankAccountValidationConfig.java | 13 ------------ 2 files changed, 7 insertions(+), 26 deletions(-) diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountValidationConfig.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountValidationConfig.java index e1f279b10..cb654bc0e 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountValidationConfig.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountValidationConfig.java @@ -77,11 +77,6 @@ public class AccountValidationConfig { if (statusValue == null || AccountStatus.ACTIVE.equalsByKey(statusValue)) return null; return AccountError.WrongFieldValue; }), - EnumPresentRule.instance("accountType", - CorrespondentAccountNewRequest::getAccountType, - AccountType.values(), - AccountError.WrongFieldValue, - AccountError.RequiredFieldEmpty), DictionaryPresentRule.instance("accountType", CorrespondentAccountNewRequest::getAccountType, IMDGDistributedNames.Map_AccountTypeDictionary, @@ -89,7 +84,7 @@ public class AccountValidationConfig { AccountError.RequiredFieldEmpty, AccountError.WrongFieldValue, accountType -> { - if (accountType.getCode().equalsIgnoreCase(AccountType.Corr.getKey())) return null; + if (AccountType.Corr.equalsByKey(accountType.getCode())) return null; return AccountError.WrongFieldValue; }) ); @@ -138,11 +133,6 @@ public class AccountValidationConfig { false, AccountError.WrongFieldValue, AccountError.RequiredFieldEmpty), - EnumPresentRule.instance("accountType", - CorrespondentAccountUpdateRequest::getAccountType, - AccountType.values(), - AccountError.WrongFieldValue, - AccountError.RequiredFieldEmpty), DictionaryPresentRule.instance("accountType", CorrespondentAccountUpdateRequest::getAccountType, IMDGDistributedNames.Map_AccountTypeDictionary, @@ -150,7 +140,7 @@ public class AccountValidationConfig { AccountError.RequiredFieldEmpty, AccountError.WrongFieldValue, accountType -> { - if (accountType.getCode().equalsIgnoreCase(AccountType.Corr.getKey())) return null; + if (AccountType.Corr.equalsByKey(accountType.getCode())) return null; return AccountError.WrongFieldValue; }) ); @@ -172,7 +162,11 @@ public class AccountValidationConfig { IMDGDistributedNames.Map_Account, Account.class, AccountError.RequiredFieldEmpty, - AccountError.AccountNotFound) + AccountError.AccountNotFound, + account -> { + if (AccountStatus.ACTIVE.equalsByKey(account.getStatus())) return null; + return AccountError.AccountNotActive; + }) ); }; } diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/BankAccountValidationConfig.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/BankAccountValidationConfig.java index 55b02c206..1c2ca6ab6 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/BankAccountValidationConfig.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/BankAccountValidationConfig.java @@ -12,13 +12,11 @@ import ru.spcex.clearing.platform.messaging.domain.cud.account.BankAccountNewReq import ru.spcex.clearing.platform.messaging.domain.cud.account.BankAccountUpdateRequest; import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest; import ru.spcex.clearing.validation.common.rules.DictionaryPresentRule; -import ru.spcex.clearing.validation.common.rules.EnumPresentRule; import ru.spcex.clearing.validation.common.rules.FieldRequiredRule; import ru.spcex.clearing.validation.common.rules.IdPresentRule; import ru.spcex.platform.classes.base.SpcexObjectBase; import ru.spcex.platform.enumeration.AccountStatus; import ru.spcex.platform.enumeration.AccountType; -import ru.spcex.platform.enumeration.CurrencyCode; import ru.spcex.platform.enumeration.WorkflowStatus; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.predicate.ImdgPredicate; @@ -73,11 +71,6 @@ public class BankAccountValidationConfig { if (accounts.isEmpty()) return null; return AccountError.AccountAlreadyExist; }), - EnumPresentRule.instance("currency", - BankAccountNewRequest::getCurrency, - CurrencyCode.values(), - AccountError.WrongFieldValue, - AccountError.RequiredFieldEmpty), DictionaryPresentRule.instance("currency", BankAccountNewRequest::getCurrency, IMDGDistributedNames.Map_CurrencyCodeDictionary, @@ -126,12 +119,6 @@ public class BankAccountValidationConfig { if (!AccountStatus.ACTIVE.equalsByKey(account.getStatus())) return AccountError.AccountNotActive; return null; }), - EnumPresentRule.instance("currency", - BankAccountUpdateRequest::getCurrency, - CurrencyCode.values(), - false, - AccountError.WrongFieldValue, - AccountError.RequiredFieldEmpty), DictionaryPresentRule.instance("currency", BankAccountUpdateRequest::getCurrency, IMDGDistributedNames.Map_CurrencyCodeDictionary,