From 2e6e453f69f64542bcedd960765d6c3f38d6bf2a Mon Sep 17 00:00:00 2001 From: etreschenkov Date: Mon, 1 Sep 2025 17:24:10 +0300 Subject: [PATCH] http://jira.mfd.msk:8088/browse/CLS-901 --- .../company/service/CompanySymbolService.java | 32 +++++++++++-------- .../adapter/CompanyRequestAdapter.java | 8 ++++- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/CompanySymbolService.java b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/CompanySymbolService.java index 3d3cc40e0..73e80d91d 100644 --- a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/CompanySymbolService.java +++ b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/service/CompanySymbolService.java @@ -1,6 +1,9 @@ package ru.spcex.clearing.company.service; +import java.util.Objects; +import java.util.Optional; +import java.util.function.Function; import org.apache.kafka.clients.consumer.Consumer; import org.apache.kafka.clients.producer.Producer; import org.slf4j.Logger; @@ -20,7 +23,6 @@ import ru.spcex.clearing.platform.messaging.domain.cud.company.CompanySymbolNewR import ru.spcex.clearing.platform.messaging.domain.cud.company.CompanySymbolUpdateRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate; -import ru.spcex.clearing.platform.messaging.service.Status; import ru.spcex.clearing.util.security.UserRoleVerification; import ru.spcex.clearing.util.services.RequestHelper; import ru.spcex.clearing.validation.common.ValidationHelper; @@ -34,10 +36,6 @@ import ru.spcex.platform.utils.error.ClearingBaseException; import ru.spcex.platform.utils.error.ValidationException; import ru.spcex.platform.utils.validation.IValidator; -import java.util.Objects; -import java.util.Optional; -import java.util.function.Function; - @Service public class CompanySymbolService extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -113,10 +111,12 @@ public class CompanySymbolService extends QueueConsumer implements InitializingB public Long create(CompanySymbolNewRequest symbolRequest) throws ValidationException { log.debug("CompanySymbolNewRequest received"); { // validate - IValidator validator = companySymbolNewRequestValidator.apply(symbolRequest); - Optional error = validator.tillFirstError(); - if (error.isPresent()) { - throw new ValidationException(error.get()); + if (!symbolRequest.getCompanySymbol().equals("TAXN")) { + IValidator validator = companySymbolNewRequestValidator.apply(symbolRequest); + Optional error = validator.tillFirstError(); + if (error.isPresent()) { + throw new ValidationException(error.get()); + } } } @@ -139,7 +139,9 @@ public class CompanySymbolService extends QueueConsumer implements InitializingB boolean txOk = false; try { Imdg companySymbolsTMap = transaction.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class); - companySymbolsTMap.update(newSymbol); + if (!newSymbol.getCompanySymbol().equals("TAXN")) { + companySymbolsTMap.update(newSymbol); + } Imdg companyMap = transaction.getImdg(IMDGDistributedNames.Map_Company, Company.class); Company company = companyMap.getSingleObjectByID(newSymbol.getCompanyId()); @@ -163,8 +165,10 @@ public class CompanySymbolService extends QueueConsumer implements InitializingB RequestInfoUpdate requestInfoUpdate = userRoleVerification.validateRoleAndGetResult(symbolRequest); if (requestInfoUpdate != null) return requestInfoUpdate; - requestInfoUpdate = validationHelper.validateTillFirstError(symbolRequest, companySymbolUpdateRequestValidator); - if (requestInfoUpdate != null) return requestInfoUpdate; + if (!req.getCompanySymbol().equals("TAXN")) { + requestInfoUpdate = validationHelper.validateTillFirstError(symbolRequest, companySymbolUpdateRequestValidator); + if (requestInfoUpdate != null) return requestInfoUpdate; + } } CompanySymbols companySymbols; ImdgTransaction transaction = imdgProvider.newTransaction(); @@ -183,7 +187,9 @@ public class CompanySymbolService extends QueueConsumer implements InitializingB companySymbols.setCompanySymbol(req.getCompanySymbol()); } companySymbols.setCompanySymbolValue(req.getCompanySymbolValue()); - companySymbolsTMap.update(companySymbols); + if (!companySymbols.getCompanySymbol().equals("TAXN")) { + companySymbolsTMap.update(companySymbols); + } companyService.updateCompanyBySymbol(transaction, companySymbols, false); txOk = true; } catch (ClearingBaseException e) { diff --git a/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/CompanyRequestAdapter.java b/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/CompanyRequestAdapter.java index 2a2bf1707..4b93c8f8a 100644 --- a/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/CompanyRequestAdapter.java +++ b/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/CompanyRequestAdapter.java @@ -44,7 +44,13 @@ public class CompanyRequestAdapter { public CompanyInfoUpdateRequest toCompanyInfoRequest(CompanyInfo companyInfo) { CompanyInfoUpdateRequest companyInfoUpdateRequest = new CompanyInfoUpdateRequest(); - companyInfoUpdateRequest.setCountryCode("RUS"); // todo в текущей версии ТЗ присылается в цифровом обозначении + String resCountryCode; + switch (companyInfo.getCountryCode()) { + case 643 -> resCountryCode = "RUS"; + case 998 -> resCountryCode = "WRLD"; + default -> resCountryCode = "XTRN"; + } + companyInfoUpdateRequest.setCountryCode(resCountryCode); companyInfoUpdateRequest.setProfessionalSign(companyInfo.getProfessionalSign()); companyInfoUpdateRequest.setLegalKind(companyInfo.getLegalKind()); companyInfoUpdateRequest.setOrganizationType(companyInfo.getOrganizationType());