diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java index 192cbf527..ec201d1e6 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf57Executor.java @@ -316,8 +316,8 @@ public class Sdf57Executor extends AbstractExecutor { }); { boolean isAmat = RegistryManager.equalsByCode(RegistryTradingParams.AMAT, asts.a__t()); - boolean isInfo = accTypeIsInfoOrClrn(account); - if (isAmat && isInfo) gvtfIds.add(asts.a__t().getId()); + boolean infoOrClrn = accTypeIsInfoOrClrn(account); + if (isAmat && infoOrClrn) gvtfIds.add(asts.a__t().getId()); } InOutDirection direction = IEnumKey.getEnumByKey(InOutDirection.class, stmt.getInOutDirection()); boolean dm_tWasCreated = false; diff --git a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/AmatAmafChecker.java b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/AmatAmafChecker.java index dec42611a..ded1d50f7 100644 --- a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/AmatAmafChecker.java +++ b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/AmatAmafChecker.java @@ -1,5 +1,15 @@ package ru.spcex.clearing.utility.service; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.stream.Collectors; import org.apache.kafka.clients.consumer.Consumer; import org.apache.kafka.clients.producer.Producer; import org.slf4j.Logger; @@ -17,7 +27,12 @@ import ru.spcex.clearing.platform.messaging.domain.cud.utilities.NotificationNew import ru.spcex.clearing.platform.messaging.serialization.LogFormatter; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender; -import ru.spcex.platform.enumeration.*; +import ru.spcex.platform.enumeration.AccountType; +import ru.spcex.platform.enumeration.ObjectType; +import ru.spcex.platform.enumeration.Priority; +import ru.spcex.platform.enumeration.RegistryTradingParams; +import ru.spcex.platform.enumeration.ServiceStatus; +import ru.spcex.platform.enumeration.Task; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.predicate.ImdgPredicate; @@ -27,13 +42,6 @@ import ru.spcex.platform.imdg.iml.hazelcast.adapter.predicate.ImdgPredicateBuild import ru.spcex.platform.utils.collection.Pair; import ru.spcex.platform.utils.number.BigDecimalUtil; -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.time.LocalDateTime; -import java.time.format.DateTimeFormatter; -import java.util.*; -import java.util.stream.Collectors; - @Service public class AmatAmafChecker extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -92,7 +100,10 @@ public class AmatAmafChecker extends QueueConsumer implements InitializingBean { log.debug("Found {} code's from active TradingClearingRegistry", tcrActiveCode.size()); ImdgPredicate predicate = builder.and( AM_T_AM_F_predicate, - builder.equals("accountType", AccountType.Info.getKey()), + builder.or( + builder.equals("accountType", AccountType.Info.getKey()), + builder.equals("accountType", AccountType.Clrn.getKey()) + ), builder.in("tradingClearingRegistry", tcrActiveCode.toArray(new String[0])) ); checkRegistries = registryImdg.getCollectionObjectsByPredicate(predicate); @@ -115,7 +126,10 @@ public class AmatAmafChecker extends QueueConsumer implements InitializingBean { checkRegistries.add(am_tRegistry); ImdgPredicate predicate = builder.and( AM_T_AM_F_predicate, + builder.or( builder.equals("accountType", AccountType.Info.getKey()), + builder.equals("accountType", AccountType.Clrn.getKey()) + ), builder.equals("tradingClearingRegistry", am_tRegistry.getTradingClearingRegistry()), builder.equals("securitySymbol", am_tRegistry.getSecuritySymbol()), builder.not(builder.equals("id", am_tRegistry.getId())) // counter-registry