fixes EnumPresentRule

This commit is contained in:
akulikov 2023-05-03 16:30:19 +03:00
parent 804b659227
commit 342db96a1e
2 changed files with 7 additions and 26 deletions

View file

@ -77,11 +77,6 @@ public class AccountValidationConfig {
if (statusValue == null || AccountStatus.ACTIVE.equalsByKey(statusValue)) return null; if (statusValue == null || AccountStatus.ACTIVE.equalsByKey(statusValue)) return null;
return AccountError.WrongFieldValue; return AccountError.WrongFieldValue;
}), }),
EnumPresentRule.instance("accountType",
CorrespondentAccountNewRequest::getAccountType,
AccountType.values(),
AccountError.WrongFieldValue,
AccountError.RequiredFieldEmpty),
DictionaryPresentRule.instance("accountType", DictionaryPresentRule.instance("accountType",
CorrespondentAccountNewRequest::getAccountType, CorrespondentAccountNewRequest::getAccountType,
IMDGDistributedNames.Map_AccountTypeDictionary, IMDGDistributedNames.Map_AccountTypeDictionary,
@ -89,7 +84,7 @@ public class AccountValidationConfig {
AccountError.RequiredFieldEmpty, AccountError.RequiredFieldEmpty,
AccountError.WrongFieldValue, AccountError.WrongFieldValue,
accountType -> { accountType -> {
if (accountType.getCode().equalsIgnoreCase(AccountType.Corr.getKey())) return null; if (AccountType.Corr.equalsByKey(accountType.getCode())) return null;
return AccountError.WrongFieldValue; return AccountError.WrongFieldValue;
}) })
); );
@ -138,11 +133,6 @@ public class AccountValidationConfig {
false, false,
AccountError.WrongFieldValue, AccountError.WrongFieldValue,
AccountError.RequiredFieldEmpty), AccountError.RequiredFieldEmpty),
EnumPresentRule.instance("accountType",
CorrespondentAccountUpdateRequest::getAccountType,
AccountType.values(),
AccountError.WrongFieldValue,
AccountError.RequiredFieldEmpty),
DictionaryPresentRule.instance("accountType", DictionaryPresentRule.instance("accountType",
CorrespondentAccountUpdateRequest::getAccountType, CorrespondentAccountUpdateRequest::getAccountType,
IMDGDistributedNames.Map_AccountTypeDictionary, IMDGDistributedNames.Map_AccountTypeDictionary,
@ -150,7 +140,7 @@ public class AccountValidationConfig {
AccountError.RequiredFieldEmpty, AccountError.RequiredFieldEmpty,
AccountError.WrongFieldValue, AccountError.WrongFieldValue,
accountType -> { accountType -> {
if (accountType.getCode().equalsIgnoreCase(AccountType.Corr.getKey())) return null; if (AccountType.Corr.equalsByKey(accountType.getCode())) return null;
return AccountError.WrongFieldValue; return AccountError.WrongFieldValue;
}) })
); );
@ -172,7 +162,11 @@ public class AccountValidationConfig {
IMDGDistributedNames.Map_Account, IMDGDistributedNames.Map_Account,
Account.class, Account.class,
AccountError.RequiredFieldEmpty, AccountError.RequiredFieldEmpty,
AccountError.AccountNotFound) AccountError.AccountNotFound,
account -> {
if (AccountStatus.ACTIVE.equalsByKey(account.getStatus())) return null;
return AccountError.AccountNotActive;
})
); );
}; };
} }

View file

@ -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.account.BankAccountUpdateRequest;
import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest; 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.DictionaryPresentRule;
import ru.spcex.clearing.validation.common.rules.EnumPresentRule;
import ru.spcex.clearing.validation.common.rules.FieldRequiredRule; import ru.spcex.clearing.validation.common.rules.FieldRequiredRule;
import ru.spcex.clearing.validation.common.rules.IdPresentRule; import ru.spcex.clearing.validation.common.rules.IdPresentRule;
import ru.spcex.platform.classes.base.SpcexObjectBase; import ru.spcex.platform.classes.base.SpcexObjectBase;
import ru.spcex.platform.enumeration.AccountStatus; import ru.spcex.platform.enumeration.AccountStatus;
import ru.spcex.platform.enumeration.AccountType; import ru.spcex.platform.enumeration.AccountType;
import ru.spcex.platform.enumeration.CurrencyCode;
import ru.spcex.platform.enumeration.WorkflowStatus; import ru.spcex.platform.enumeration.WorkflowStatus;
import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate; import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
@ -73,11 +71,6 @@ public class BankAccountValidationConfig {
if (accounts.isEmpty()) return null; if (accounts.isEmpty()) return null;
return AccountError.AccountAlreadyExist; return AccountError.AccountAlreadyExist;
}), }),
EnumPresentRule.instance("currency",
BankAccountNewRequest::getCurrency,
CurrencyCode.values(),
AccountError.WrongFieldValue,
AccountError.RequiredFieldEmpty),
DictionaryPresentRule.instance("currency", DictionaryPresentRule.instance("currency",
BankAccountNewRequest::getCurrency, BankAccountNewRequest::getCurrency,
IMDGDistributedNames.Map_CurrencyCodeDictionary, IMDGDistributedNames.Map_CurrencyCodeDictionary,
@ -126,12 +119,6 @@ public class BankAccountValidationConfig {
if (!AccountStatus.ACTIVE.equalsByKey(account.getStatus())) return AccountError.AccountNotActive; if (!AccountStatus.ACTIVE.equalsByKey(account.getStatus())) return AccountError.AccountNotActive;
return null; return null;
}), }),
EnumPresentRule.instance("currency",
BankAccountUpdateRequest::getCurrency,
CurrencyCode.values(),
false,
AccountError.WrongFieldValue,
AccountError.RequiredFieldEmpty),
DictionaryPresentRule.instance("currency", DictionaryPresentRule.instance("currency",
BankAccountUpdateRequest::getCurrency, BankAccountUpdateRequest::getCurrency,
IMDGDistributedNames.Map_CurrencyCodeDictionary, IMDGDistributedNames.Map_CurrencyCodeDictionary,