From 85d9fc6154abe4b6a534e10eb316fe53b1eb1013 Mon Sep 17 00:00:00 2001 From: ialbert Date: Fri, 11 Oct 2024 15:46:04 +0300 Subject: [PATCH] =?UTF-8?q?http://jira.mfd.msk:8088/browse/CLS-781=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B0=2008=2021=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=A6=D0=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../settings/UtilityServiceSettings.java | 9 +++++++ .../utility/service/SdfPairChecker.java | 24 +++++++++++++------ .../src/main/resources/application.properties | 4 +++- 3 files changed, 29 insertions(+), 8 deletions(-) diff --git a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/config/settings/UtilityServiceSettings.java b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/config/settings/UtilityServiceSettings.java index f7db55b39..08f63f794 100644 --- a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/config/settings/UtilityServiceSettings.java +++ b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/config/settings/UtilityServiceSettings.java @@ -14,6 +14,15 @@ public class UtilityServiceSettings { private HazelcastClientParams hazelcast; private KafkaConsumerSettings kafkaConsumer; private KafkaProducerSettings kafkaProducer; + private Boolean includeCk = false; + + public Boolean getIncludeCk() { + return includeCk; + } + + public void setIncludeCk(Boolean includeCk) { + this.includeCk = includeCk; + } public HazelcastClientParams getHazelcast() { return hazelcast; diff --git a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/SdfPairChecker.java b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/SdfPairChecker.java index 8fa9884c6..d9ccc117a 100644 --- a/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/SdfPairChecker.java +++ b/clearing-parent/utility-service/src/main/java/ru/spcex/clearing/utility/service/SdfPairChecker.java @@ -1,5 +1,8 @@ package ru.spcex.clearing.utility.service; +import java.time.Instant; +import java.time.temporal.ChronoUnit; +import java.util.Collection; import org.apache.kafka.clients.consumer.Consumer; import org.apache.kafka.clients.producer.Producer; import org.slf4j.Logger; @@ -17,6 +20,7 @@ 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.clearing.utility.config.settings.UtilityServiceSettings; import ru.spcex.platform.enumeration.Priority; import ru.spcex.platform.enumeration.Task; import ru.spcex.platform.imdg.api.Imdg; @@ -26,10 +30,6 @@ import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder; import ru.spcex.platform.imdg.iml.hazelcast.adapter.predicate.ImdgPredicateBuilderHazelcast; import ru.spcex.platform.utils.time.TimeUtil; -import java.time.Instant; -import java.time.temporal.ChronoUnit; -import java.util.Collection; - @Service public class SdfPairChecker extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -37,17 +37,20 @@ public class SdfPairChecker extends QueueConsumer implements InitializingBean { private final Imdg sDf09Imdg; private final ImdgProvider imdgProvider; private final KafkaSender kafkaSender; + private final boolean includeCk; @Autowired public SdfPairChecker(ImdgProvider imdgProvider, KafkaSender kafkaSender, Producer kafkaProducer, - Consumer kafkaQueue) { + Consumer kafkaQueue, + UtilityServiceSettings settings) { super(kafkaQueue, kafkaProducer); this.imdgProvider = imdgProvider; this.kafkaSender = kafkaSender; this.sDf02Imdg = imdgProvider.getImdg(IMDGDistributedNames.Map_SDf02, SDf02.class); this.sDf09Imdg = imdgProvider.getImdg(IMDGDistributedNames.Map_SDf09, SDf09.class); + this.includeCk = settings.getIncludeCk(); } @Override @@ -72,8 +75,15 @@ public class SdfPairChecker extends QueueConsumer implements InitializingBean { log.debug("Found {} sdf09 records in range {} - {}", sdf09OnDate.size(), tradingDayStart, tradingDayEnd); log.debug("Found {} sdf02 records in range {} - {}", sdf02OnDate.size(), tradingDayStart, tradingDayEnd); - String message = sdf09OnDate.isEmpty() && sdf02OnDate.isEmpty() ? "Отсутствуют пары ДФ-01/ДФ-57 и ДФ-08/ДФ-21" - : sdf09OnDate.isEmpty() ? "Отсутствует пара ДФ-08/ДФ-21" : sdf02OnDate.isEmpty() ? "Отсутствует пара ДФ-01/ДФ-57" : null; + String message; + { + boolean sdf09Err = !includeCk && sdf09OnDate.isEmpty(); + boolean sdf02Err = sdf02OnDate.isEmpty(); + message = sdf09Err && sdf02Err ? "Отсутствуют пары ДФ-01/ДФ-57 и ДФ-08/ДФ-21" + : sdf09Err ? "Отсутствует пара ДФ-08/ДФ-21" + : sdf02Err ? "Отсутствует пара ДФ-01/ДФ-57" + : null; + } if (message != null) { final String destination = Consts.NOTIFICATION_NEW; NotificationNewRequest request = new NotificationNewRequest(); diff --git a/clearing-parent/utility-service/src/main/resources/application.properties b/clearing-parent/utility-service/src/main/resources/application.properties index 73a36eb86..bd62d24f3 100644 --- a/clearing-parent/utility-service/src/main/resources/application.properties +++ b/clearing-parent/utility-service/src/main/resources/application.properties @@ -17,4 +17,6 @@ utility-service.kafka-producer.acks=all utility-service.kafka-producer.retries=0 utility-service.kafka-producer.batch-size=16384 utility-service.kafka-producer.linger-ms=1 -utility-service.kafka-producer.buffer-memory=33554432 \ No newline at end of file +utility-service.kafka-producer.buffer-memory=33554432 + +utility-service.include-ck=false \ No newline at end of file