diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClearingAccountService.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClearingAccountService.java index 7b3bc5045..587c18b5f 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClearingAccountService.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClearingAccountService.java @@ -367,6 +367,7 @@ public class ClearingAccountService extends QueueConsumer implements Initializin makeSdfErrorText(AccountError.AccountNotFound, SDFProcessService.SDF_STATUS_ERROR_COMPANY_NOT_FOUND))); continue; } + toProcessSDF53.add(new MutableTriple<>(sDf52, account, SDFProcessService.SDF_STATUS_OK)); toUpdate.add(new Pair<>(sDf52, account)); } } @@ -447,12 +448,13 @@ public class ClearingAccountService extends QueueConsumer implements Initializin account = accountImdg.getSingleObjectByID(account.getId()); if (!newStatus.equalsByKey(account.getStatus())) { // Обновление счёта + String oldStatus = account.getStatus(); account.setStatus(newStatus.getKey()); account.setUpdated(now); accountImdg.update(account); log.trace("S_DF52[{}] do update status to {} for account[{}]", sdf.getId(), newStatus.getKey(), account.getId()); - if (AccountStatus.ACTIVE == newStatus) { + if (AccountStatus.ACTIVE.equalsByKey(oldStatus) && AccountStatus.ACTIVE != newStatus) { // счёт заблокировали - значит блокируем ТКР, наоборот не надо. // Отправка в ТКР TradingClearingRegistryUpdateRequest tcrReq = new TradingClearingRegistryUpdateRequest(); tcrReq.setMoneyAccountId(account.getId());