From 31de64e5bb4bb2eb807158c8d78e0de65b399e1b Mon Sep 17 00:00:00 2001 From: AKurakin Date: Wed, 1 Nov 2023 13:57:02 +0300 Subject: [PATCH] =?UTF-8?q?account-service=20http://jira.mfd.msk:8088/brow?= =?UTF-8?q?se/CLS-577=20=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B8=D0=BB=20?= =?UTF-8?q?=D1=82=D0=B5=D0=BA=D1=81=D1=82=20=D0=B2=D0=B0=D0=BB=D0=B8=D0=B4?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AccountSymbolsValidationConfig.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountSymbolsValidationConfig.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountSymbolsValidationConfig.java index f4afb9a7f..1657415a9 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountSymbolsValidationConfig.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/config/validation/AccountSymbolsValidationConfig.java @@ -49,7 +49,7 @@ public class AccountSymbolsValidationConfig { if (AccountType.Depo.equalsByKey(account.getAccountType())) { return null; } else { - return AccountError.AccountDepoTypeRequired;//todo data.xml!!! + return AccountError.AccountDepoTypeRequired; } } ), @@ -78,7 +78,23 @@ public class AccountSymbolsValidationConfig { return empty(); } else { AccountSymbols existAS = existAccSymbols.iterator().next(); - return of(AccountError.AccountAlreadyExist, existAS.getAccountId() + "," + existAS.getAccountSymbolValue()); + String duplicateMsg = ""; + if (validatedObject.getAccountId() != null && validatedObject.getAccountId().equals(existAS.getAccountId())) { + Imdg accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class); + Account linkedAccount = accountImdg.getSingleObjectByID(existAS.getAccountId()); + if (linkedAccount != null) { + duplicateMsg = linkedAccount.getAccount(); + } else { + duplicateMsg = "" + existAS.getAccountId(); + } + } + if (validatedObject.getAccountSymbolValue() != null && + validatedObject.getAccountSymbolValue().equals(existAS.getAccountSymbolValue())) { + if (!duplicateMsg.isEmpty()) + duplicateMsg += ", "; + duplicateMsg += existAS.getAccountSymbolValue(); + } + return of(AccountError.AccountAlreadyExist, duplicateMsg); } } }