diff --git a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/config/validation/CompanySymbolValidationConfig.java b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/config/validation/CompanySymbolValidationConfig.java index c06df951a..0585c211f 100644 --- a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/config/validation/CompanySymbolValidationConfig.java +++ b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/config/validation/CompanySymbolValidationConfig.java @@ -73,12 +73,8 @@ public class CompanySymbolValidationConfig { IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class, CompanyErrors.RequiredFieldEmpty, - CompanyErrors.CompanyInfoNotFound, - (CompanySymbols existSymbol) -> { - assert existSymbol.getId().equals(context.getValidatedObject().getId()); - return existSymbol.getCompanySymbol().equals(context.getValidatedObject().getCompanySymbol()) - ? null : CompanyErrors.EditCompanySymbols; - }), + CompanyErrors.CompanyInfoNotFound + ), FieldRequiredRule.instance("companyId", CompanySymbolUpdateRequest::getCompanyId, CompanyErrors.RequiredFieldEmpty), IdPresentRule.instance("companyId", diff --git a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/error/CompanyErrors.java b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/error/CompanyErrors.java index 824f55545..feaa34f50 100644 --- a/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/error/CompanyErrors.java +++ b/clearing-parent/company-service/src/main/java/ru/spcex/clearing/company/error/CompanyErrors.java @@ -21,6 +21,7 @@ public enum CompanyErrors implements IErrorEnumId { CategoryAlreadySet(3017L), // Компании %s уже присвоена категория %s. CompanyAlreadyHasLiabilities(3018L), // У компании %s присутствуют обязательства. CompanyWithCompanySymbolAlreadyExist(3019L), // Компания с %s = %s уже создана" (где первый %s - companySymbol, второй %s - companySymbolValue) + @Deprecated EditCompanySymbols(3020L), // Тип реквизита компании %s не может быть изменен. EditContactType(3021L), // Тип контакта компании %s не может быть изменен. TradingClearingRegistryNotFound(3022L), // ТКР с %s не найден 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 3297b9b03..ac69dc9fc 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 @@ -176,9 +176,12 @@ public class CompanySymbolService extends QueueConsumer implements InitializingB if (companySymbols == null) { throw new ClearingBaseException(new EnumMessage(CompanyErrors.CompanyInfoNotFound, req.getId())); } -// if (!companySymbols.getCompanySymbol().equalsIgnoreCase(req.getCompanySymbolValue())) { -// throw new ClearingBaseException(new EnumMessage(CompanyErrors.EditCompanySymbols, req.getId())); -// } + if (!companySymbols.getCompanySymbol().equalsIgnoreCase(req.getCompanySymbol())) { + log.debug("Change CompanySymbol[{}].CompanySymbol from \"{}\" to \"{}\"", + companySymbols.getId(), companySymbols.getCompanySymbol(), req.getCompanySymbol()); + companyService.updateCompanyBySymbol(transaction, companySymbols, true); + companySymbols.setCompanySymbol(req.getCompanySymbol()); + } companySymbols.setCompanySymbolValue(req.getCompanySymbolValue()); companySymbolsTMap.update(companySymbols); companyService.updateCompanyBySymbol(transaction, companySymbols, false);