From 55dd0cc8b69ea4237bac19b939d10ce3a677a226 Mon Sep 17 00:00:00 2001 From: etreschenkov Date: Mon, 3 Jun 2024 11:09:40 +0300 Subject: [PATCH] http://jira.mfd.msk:8088/browse/CLS-684 // http://jira.mfd.msk:8088/browse/CLS-685 --- .../account/service/ClientCodeService.java | 4 +-- .../TradingClearingRegistryService.java | 15 ++++---- .../service/adapter/TkrAdapter.java | 8 ++--- .../domain/cud/account/TkrAccount.java | 8 ++--- ...ntMsg.java => MoneyAccountMsgRequest.java} | 2 +- .../cud/gateway/MoneyAccountMsgResponse.java | 36 +++++++++++++++++++ .../messaging/domain/cud/gateway/Tkr.java | 16 +++++++-- 7 files changed, 69 insertions(+), 20 deletions(-) rename platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/{MoneyAccountMsg.java => MoneyAccountMsgRequest.java} (94%) create mode 100644 platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgResponse.java diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClientCodeService.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClientCodeService.java index d84aed951..b4b1f04fb 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClientCodeService.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/ClientCodeService.java @@ -34,7 +34,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.account.ClientCodeUpdateR import ru.spcex.clearing.platform.messaging.domain.cud.account.TkrAccount; import ru.spcex.clearing.platform.messaging.domain.cud.account.TkrAccountsGatewayRequest; import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsg; +import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsgRequest; import ru.spcex.clearing.platform.messaging.domain.cud.registry.TradingClearingRegistryListNewRequest; import ru.spcex.clearing.platform.messaging.domain.cud.registry.TradingClearingRegistryListUpdateRequest; import ru.spcex.clearing.platform.messaging.domain.cud.registry.TradingClearingRegistryNewRequest; @@ -197,7 +197,7 @@ public class ClientCodeService extends QueueConsumer implements InitializingBean clientCodeNewRequest.setDepoAccountId(account.getId()); } } - for (MoneyAccountMsg moneyAccountMsg : tkrAccount.getMoneyAccounts()) { + for (MoneyAccountMsgRequest moneyAccountMsg : tkrAccount.getMoneyAccounts()) { if (moneyAccountMsg.getCurrCode().equals(CurrencyCode.RUB.getKey())) { Account account = accountImdg.getFirstObjectByFieldValues( Map.of( diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/TradingClearingRegistryService.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/TradingClearingRegistryService.java index 4aac6a7e1..c35ff2848 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/TradingClearingRegistryService.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/TradingClearingRegistryService.java @@ -35,7 +35,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.account.TkrAccount; import ru.spcex.clearing.platform.messaging.domain.cud.account.TkrAccountsGatewayRequest; import ru.spcex.clearing.platform.messaging.domain.cud.clearing.CreateRegistryRequest; import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonIdRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsg; +import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsgResponse; import ru.spcex.clearing.platform.messaging.domain.cud.gateway.SendTkrRequest; import ru.spcex.clearing.platform.messaging.domain.cud.gateway.Tkr; import ru.spcex.clearing.platform.messaging.domain.cud.registry.TradingClearingRegistryNewRequest; @@ -51,6 +51,7 @@ import ru.spcex.clearing.util.services.RequestHelper; import ru.spcex.clearing.validation.common.ValidationHelper; import ru.spcex.platform.enumeration.CompanySymbol; import ru.spcex.platform.enumeration.ServiceStatus; +import ru.spcex.platform.enumeration.Status; import static ru.spcex.platform.enumeration.Task.makeFiles_MTCR; import ru.spcex.platform.enumeration.TradingClearingRegistryPurpose; import ru.spcex.platform.enumeration.TradingClearingRegistryType; @@ -357,9 +358,8 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini } tradingClearingRegistry.setTradingClearingRegistryType(tradingRegistryType); - TradingClearingRegistryPurpose registryPurpose; - if (req.getDepoAccountId() != null) registryPurpose = TradingClearingRegistryPurpose.C; - else registryPurpose = TradingClearingRegistryPurpose.M; + //http://jira.mfd.msk:8088/browse/CLS-631#comment-60200 + TradingClearingRegistryPurpose registryPurpose = TradingClearingRegistryPurpose.C; tradingClearingRegistry.setTradingClearingRegistryPurpose(registryPurpose.getKey()); Company company = companyImdg.getSingleObjectByID(req.getCompanyId()); @@ -558,6 +558,7 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini tkr.setTradingCode(Long.valueOf(company.getTradingCode())); tkr.setTkrCode(tradingClearingRegistry.getCode()); tkr.setTkrType(tradingClearingRegistry.getTradingClearingRegistryPurpose()); + tkr.setActive(Status.Active.equalsByKey(tradingClearingRegistry.getStatus())); String accountType; if (clientCode == null) { if (TradingClearingRegistryType.Client_B.equalsByKey( @@ -582,9 +583,10 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini { if (tradingClearingRegistry.getMoneyAccountId() != null) { Account moneyAccount = accountImdg.getSingleObjectByID(tradingClearingRegistry.getMoneyAccountId()); - MoneyAccountMsg moneyAccountMsg = new MoneyAccountMsg(); + MoneyAccountMsgResponse moneyAccountMsg = new MoneyAccountMsgResponse(); moneyAccountMsg.setAccount(moneyAccount.getAccount()); moneyAccountMsg.setCurrCode(StringUtils.hasText(moneyAccount.getCurrency()) ? moneyAccount.getCurrency() : "RUB"); + moneyAccountMsg.setActive(Status.Active.equalsByKey(moneyAccount.getStatus())); tkr.getMoneyAccounts().add(moneyAccountMsg); } } @@ -596,9 +598,10 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini ); for (TradingClearingRegistryList tkrList : tradingClearingRegistries) { Account additionalAcc = accountImdg.getSingleObjectByID(tkrList.getAccountId()); - MoneyAccountMsg moneyAccountMsg = new MoneyAccountMsg(); + MoneyAccountMsgResponse moneyAccountMsg = new MoneyAccountMsgResponse(); moneyAccountMsg.setAccount(additionalAcc.getAccount()); moneyAccountMsg.setCurrCode(StringUtils.hasText(additionalAcc.getCurrency()) ? additionalAcc.getCurrency() : "RUB"); + moneyAccountMsg.setActive(Status.Active.equalsByKey(additionalAcc.getStatus())); tkr.getMoneyAccounts().add(moneyAccountMsg); } } diff --git a/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/TkrAdapter.java b/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/TkrAdapter.java index 37042a9ac..671c51c0c 100644 --- a/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/TkrAdapter.java +++ b/clearing-parent/gateway-api/src/main/java/ru/spcex/clearing/gatewayapi/service/adapter/TkrAdapter.java @@ -8,7 +8,7 @@ import org.springframework.util.StringUtils; import ru.spcex.clearing.gatewayapi.controller.inbound.request.tkr.request.InfoAccount; import ru.spcex.clearing.gatewayapi.controller.inbound.request.tkr.request.MoneyAccount; import ru.spcex.clearing.gatewayapi.enums.TypeOperations; -import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsg; +import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsgRequest; import ru.spcex.clearing.platform.messaging.domain.cud.account.TkrAccount; @Service @@ -34,15 +34,15 @@ public class TkrAdapter { tkrResponse.setDepoAccount(infoAccount.getDepoAccount()); if (infoAccount.getMoneyAccounts() != null) { - List moneyAccountMsgs = infoAccount.getMoneyAccounts().stream() + List moneyAccountMsgs = infoAccount.getMoneyAccounts().stream() .map(this::toMoneyAccountMsg).toList(); tkrResponse.setMoneyAccounts(moneyAccountMsgs); } return tkrResponse; } - private MoneyAccountMsg toMoneyAccountMsg(MoneyAccount moneyAccount) { - MoneyAccountMsg moneyAccountMsg = new MoneyAccountMsg(); + private MoneyAccountMsgRequest toMoneyAccountMsg(MoneyAccount moneyAccount) { + MoneyAccountMsgRequest moneyAccountMsg = new MoneyAccountMsgRequest(); moneyAccountMsg.setAccount(moneyAccount.getAccount()); moneyAccountMsg.setCurrCode(moneyAccount.getCurrCode()); return moneyAccountMsg; diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/account/TkrAccount.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/account/TkrAccount.java index 7693da06f..61da8efe1 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/account/TkrAccount.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/account/TkrAccount.java @@ -2,7 +2,7 @@ package ru.spcex.clearing.platform.messaging.domain.cud.account; import java.util.List; import com.fasterxml.jackson.annotation.JsonProperty; -import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsg; +import ru.spcex.clearing.platform.messaging.domain.cud.gateway.MoneyAccountMsgRequest; public class TkrAccount { @JsonProperty @@ -20,7 +20,7 @@ public class TkrAccount { @JsonProperty private String depoAccount; @JsonProperty - private List moneyAccounts; + private List moneyAccounts; public String getCompanyId() { return companyId; @@ -70,11 +70,11 @@ public class TkrAccount { this.depoAccount = depoAccount; } - public List getMoneyAccounts() { + public List getMoneyAccounts() { return moneyAccounts; } - public void setMoneyAccounts(List moneyAccounts) { + public void setMoneyAccounts(List moneyAccounts) { this.moneyAccounts = moneyAccounts; } } diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsg.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgRequest.java similarity index 94% rename from platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsg.java rename to platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgRequest.java index 0c5dfc341..bb2a87322 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsg.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgRequest.java @@ -2,7 +2,7 @@ package ru.spcex.clearing.platform.messaging.domain.cud.gateway; import com.fasterxml.jackson.annotation.JsonProperty; -public class MoneyAccountMsg { +public class MoneyAccountMsgRequest { @JsonProperty("curr_code") private String currCode; @JsonProperty("account") diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgResponse.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgResponse.java new file mode 100644 index 000000000..b00774f43 --- /dev/null +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/MoneyAccountMsgResponse.java @@ -0,0 +1,36 @@ +package ru.spcex.clearing.platform.messaging.domain.cud.gateway; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class MoneyAccountMsgResponse { + @JsonProperty("curr_code") + private String currCode; + @JsonProperty("account") + private String account; + @JsonProperty("is_active") + private Boolean isActive; + + public String getCurrCode() { + return currCode; + } + + public void setCurrCode(String currCode) { + this.currCode = currCode; + } + + public String getAccount() { + return account; + } + + public void setAccount(String account) { + this.account = account; + } + + public Boolean getActive() { + return isActive; + } + + public void setActive(Boolean active) { + isActive = active; + } +} diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/Tkr.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/Tkr.java index da61b4823..4a8478e1f 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/Tkr.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/gateway/Tkr.java @@ -19,8 +19,10 @@ public class Tkr { private String accountTypeName; @JsonProperty("depo_account") private String depoAccount; + @JsonProperty("is_active") + private Boolean isActive; @JsonProperty("money_account") - private List moneyAccounts = new ArrayList<>(); + private List moneyAccounts = new ArrayList<>(); public String getCompanyId() { return companyId; @@ -78,11 +80,19 @@ public class Tkr { this.depoAccount = depoAccount; } - public List getMoneyAccounts() { + public List getMoneyAccounts() { return moneyAccounts; } - public void setMoneyAccounts(List moneyAccounts) { + public void setMoneyAccounts(List moneyAccounts) { this.moneyAccounts = moneyAccounts; } + + public Boolean getActive() { + return isActive; + } + + public void setActive(Boolean active) { + isActive = active; + } }