From 2900a17f7ad5298eb239462076b5019db153eaaf Mon Sep 17 00:00:00 2001 From: ialbert Date: Tue, 15 Aug 2023 20:50:47 +0300 Subject: [PATCH] ExecutionFond/ExecutionDeposit#CounterPartyTradingClearingRegistry --- .../service/execution/ExecutionDepositComponent.java | 1 + .../service/execution/ExecutionFondComponent.java | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionDepositComponent.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionDepositComponent.java index c2217fce8..588b7a62b 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionDepositComponent.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionDepositComponent.java @@ -247,6 +247,7 @@ public class ExecutionDepositComponent { strPb.equals("section", sTrades.getSection()), strPb.not(strPb.equals("operation", sTrades.getOperation())))); if (counterSTrades != null) { + eDeposit.setCounterPartyTradingClearingRegistry(counterSTrades.getAccount()); searchTcrByStrades(counterSTrades) .ifPresent(tcr -> eDeposit.setCounterPartyTradingClearingRegistryId(tcr.getId())); } diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionFondComponent.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionFondComponent.java index 76822e4b0..2d3a87e5e 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionFondComponent.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/execution/ExecutionFondComponent.java @@ -28,6 +28,7 @@ import ru.spcex.platform.enumeration.Section; import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; +import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder; import ru.spcex.platform.utils.enumeration.*; import ru.spcex.platform.utils.log.ExceptionUtils; import ru.spcex.platform.utils.time.TimeUtil; @@ -213,6 +214,16 @@ public class ExecutionFondComponent { eFond.setExchangeOrderId(sTrades.getOrderNum()); eFond.setSettlementAmount(sTrades.getValue()); eFond.setCounterPartyId(counterCompany.getId()); + { + ImdgPredicateBuilder strPb = sTradeImdg.predicateBuilder(); + STrades counterSTrades = sTradeImdg.getFirstObjectByPredicate(strPb.and( + strPb.equals("tradeNum", sTrades.getTradeNum()), + strPb.equals("section", sTrades.getSection()), + strPb.not(strPb.equals("operation", sTrades.getOperation())))); + if (counterSTrades != null) { + eFond.setCounterPartyTradingClearingRegistry(counterSTrades.getAccount()); + } + } return eFond; }