From 06f53ad40d0344ca0d50739dda1500111f640ea5 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Tue, 31 Jan 2023 16:16:55 +0300 Subject: [PATCH 1/4] =?UTF-8?q?scheduler-service=20=D0=BE=D1=82=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BA=D0=B0=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=20=D0=B2=20=D0=BE=D1=87=D0=B5=D1=80=D0=B5=D0=B4=D0=B8=20?= =?UTF-8?q?=D0=BF=D0=BE=20=D1=80=D0=B0=D1=81=D0=BF=D0=B8=D1=81=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=8E=20-=20=D1=80=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=BD=D0=B3=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4?= =?UTF-8?q?=D1=8B=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA=D0=B0=20(=D1=81?= =?UTF-8?q?=D1=82=D0=B0=D0=BD=D0=B4=D0=B0=D1=80=D1=82=D0=B8=D0=B7=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../request/cud/schedule/LauncherNew.java | 19 ++++------- .../reports/services/QCommandExecutor.java | 33 ++++++++++--------- .../scheduler/service/LauncherSender.java | 15 +++------ .../platform/messaging/domain/Consts.java | 1 + 4 files changed, 29 insertions(+), 39 deletions(-) diff --git a/clearing-parent/backend-api/src/main/java/ru/spcex/clearing/backendapi/controller/request/cud/schedule/LauncherNew.java b/clearing-parent/backend-api/src/main/java/ru/spcex/clearing/backendapi/controller/request/cud/schedule/LauncherNew.java index 31ceac638..f5bfe7497 100644 --- a/clearing-parent/backend-api/src/main/java/ru/spcex/clearing/backendapi/controller/request/cud/schedule/LauncherNew.java +++ b/clearing-parent/backend-api/src/main/java/ru/spcex/clearing/backendapi/controller/request/cud/schedule/LauncherNew.java @@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty; import ru.spcex.clearing.backendapi.domain.actions.IAction; import ru.spcex.clearing.backendapi.errors.BackEndError; import ru.spcex.clearing.platform.messaging.domain.ActionType; -import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportWithPeriodRequest; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; import ru.spcex.platform.enumeration.Task; import ru.spcex.platform.utils.enumeration.EnumMessage; @@ -31,18 +30,12 @@ public class LauncherNew implements IAction { @Override public Object toRequest() { - if (Task.createReport_GREP.equalsByKey(task)) { - ReportWithPeriodRequest reportCommand = new ReportWithPeriodRequest(); - reportCommand.setReportId(task); - return reportCommand; - } else { - LauncherCommandRequest taskRunnerCommandRequest = new LauncherCommandRequest(); - taskRunnerCommandRequest.setTaskName(task); - taskRunnerCommandRequest.setCompanyId(companyId); - taskRunnerCommandRequest.setSecurityId(securityId); - taskRunnerCommandRequest.setUserId(userId); - return taskRunnerCommandRequest; - } + LauncherCommandRequest taskRunnerCommandRequest = new LauncherCommandRequest(); + taskRunnerCommandRequest.setTaskName(task); + taskRunnerCommandRequest.setCompanyId(companyId); + taskRunnerCommandRequest.setSecurityId(securityId); + taskRunnerCommandRequest.setUserId(userId); + return taskRunnerCommandRequest; } @Override diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java index 021bbc884..95436a786 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java @@ -8,7 +8,7 @@ import org.springframework.beans.factory.InitializingBean; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportWithPeriodRequest; +import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.clearing.reports.config.element.ReportsServiceSettings; import ru.spcex.platform.enumeration.Task; @@ -40,20 +40,23 @@ public class QCommandExecutor extends QueueConsumer implements InitializingBean @Override public void afterPropertiesSet() { log.info("Init queue listener {}", getClass().getSimpleName()); - callback(ReportWithPeriodRequest.class) + callback(LauncherCommandRequest.class) .setConsumer(this::newReportWithPeriod) .forDestination(Task.createReport_GREP.topic(), callbacks::put); init(); } - private void newReportWithPeriod(BaseRequest reportRequest) { - ReportWithPeriodRequest request = reportRequest.getRequestPayload(); + private void newReportWithPeriod(BaseRequest reportRequest) { + LauncherCommandRequest request = reportRequest.getRequestPayload(); log.info("newReportWithPeriod request received: {}", request); + final String taskName = QUEUE_RUN_REPORT_COMMAND; //request.getTaskName(); - if (StringUtils.isBlank(request.getReportId())) - throw new IllegalStateException("ReportID is empty"); - LocalDate startDate = request.getStartDate(); - LocalDate endDate = request.getEndDate(); +// if (StringUtils.isBlank(request.getReportId())) +// throw new IllegalStateException("ReportID is empty"); +// LocalDate startDate = request.getStartDate(); +// LocalDate endDate = request.getEndDate(); + LocalDate startDate = null; + LocalDate endDate = null; if (startDate == null && endDate == null) { endDate = LocalDate.now(); startDate = LocalDate.of(endDate.getYear(), endDate.getMonth(), 1); @@ -65,18 +68,18 @@ public class QCommandExecutor extends QueueConsumer implements InitializingBean throw new IllegalStateException("StartDate > EndDate"); try { - if (QUEUE_RUN_REPORT_COMMAND.equals(request.getReportId()) - || QUEUE_RUN_DAILY_REPORT_COMMAND.equals(request.getReportId())) { - log.info("Generate all report by command {}", request.getReportId()); - reportsServiceCommand.generateReportAll(request.getReportId(), startDate, endDate); + if (QUEUE_RUN_REPORT_COMMAND.equals(taskName) + || QUEUE_RUN_DAILY_REPORT_COMMAND.equals(taskName)) { + log.info("Generate all report by command {}", taskName); + reportsServiceCommand.generateReportAll(taskName, startDate, endDate); } else { - log.info("Generate single report by command {}", request.getReportId()); - reportsServiceCommand.generateReportById(request.getReportId(), startDate, endDate); + log.info("Generate single report by command {}", taskName); + reportsServiceCommand.generateReportById(taskName, startDate, endDate); } log.debug("successfully processed"); } catch (IOException e) { - log.error("Error create report {}: {}", request.getReportId(), ExceptionUtils.getStackTrace(e)); + log.error("Error create report {}: {}", taskName, ExceptionUtils.getStackTrace(e)); } } diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherSender.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherSender.java index bbf98c9d5..0f7d385ee 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherSender.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherSender.java @@ -10,7 +10,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import ru.spcex.clearing.platform.messaging.domain.ActionType; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportWithPeriodRequest; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; import ru.spcex.platform.enumeration.Task; import ru.spcex.platform.imdg.api.ImdgId; @@ -33,16 +32,10 @@ public class LauncherSender { protected BaseRequest makeCmdRequest(Task byTask, Long userId) { Object toRequest; - if (Task.createReport_GREP.equals(byTask)) { // см. ru.spcex.clearing.backendapi.controller.request.cud.schedule.LauncherNew#toRequest - ReportWithPeriodRequest reportCommand = new ReportWithPeriodRequest(); - reportCommand.setReportId(byTask.getKey()); - toRequest = reportCommand; - } else { - LauncherCommandRequest taskRunnerCommandRequest = new LauncherCommandRequest(); - taskRunnerCommandRequest.setTaskName(byTask.getKey()); - taskRunnerCommandRequest.setUserId(userId); - toRequest = taskRunnerCommandRequest; - } + LauncherCommandRequest taskRunnerCommandRequest = new LauncherCommandRequest(); + taskRunnerCommandRequest.setTaskName(byTask.getKey()); + taskRunnerCommandRequest.setUserId(userId); + toRequest = taskRunnerCommandRequest; BaseRequest request = new BaseRequest<>(); request.setId(idGenerator.nextId()); request.setActionType(ActionType.NEW); diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/Consts.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/Consts.java index b4132fa0a..552594f41 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/Consts.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/Consts.java @@ -57,6 +57,7 @@ public interface Consts { String REGISTRY_COVERED_DEAL_REGISTER_NEW = "registry-covered-deal-register-new"; String REGISTRY_ADMITTED_DEAL_REGISTER_NEW = "registry-admitted-deal-register-new"; + String REGISTRY_DEAL_REGISTER_NEW = "registry-deal-register-new"; String REGISTRY_ORDER_REGISTER_NEW = "registry-order-register-new"; String REGISTRY_CONTRACT_REGISTER_NEW = "registry-contract-register-new"; From 2c7a9934feaeaa5006ed1c6d38a8e28906599048 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Tue, 31 Jan 2023 16:19:12 +0300 Subject: [PATCH 2/4] =?UTF-8?q?clearing-service=20http://jira.mfd.msk:8088?= =?UTF-8?q?/browse/CLS-188=20=D1=87=D0=B0=D1=81=D1=82=D1=8C=20=D0=B4=D0=BE?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ExecutionDepositComponent.java | 31 +++------ .../src/main/resources/application.properties | 2 +- .../cud/registry/DealRegisterNewRequest.java | 67 +++++++++++++++++++ 3 files changed, 78 insertions(+), 22 deletions(-) create mode 100644 platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/DealRegisterNewRequest.java diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/ExecutionDepositComponent.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/ExecutionDepositComponent.java index bbe554b3a..761141c85 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/ExecutionDepositComponent.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/ExecutionDepositComponent.java @@ -21,7 +21,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.ActionType; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.Consts; -import ru.spcex.clearing.platform.messaging.domain.cud.registry.CoveredDealRegisterNewRequest; +import ru.spcex.clearing.platform.messaging.domain.cud.registry.DealRegisterNewRequest; import ru.spcex.clearing.platform.messaging.domain.cud.securitites.MoneyMarketSecurityNewRequest; import ru.spcex.platform.enumeration.Allowed; import ru.spcex.platform.enumeration.Market; @@ -85,8 +85,9 @@ public class ExecutionDepositComponent { /** * Сбрасывать каждый день в 01:00:01 "0 1 0 1 * ?" */ - @Scheduled(cron = "${clearing-service.scheduler.check-s-trade}") + @Scheduled(cron = "0 1 0 1 * ?") public void resetTradingDay() { + log.trace("Recheck today trading day for search STrade. Current state: tradeNum={}, tradeDat={}", tradeNum, tradingDay); Instant today = TimeUtil.localDateToInstant(LocalDate.now()); if (tradingDay == null || !tradingDay.equals(today)) { tradeNum = -1L; @@ -95,8 +96,9 @@ public class ExecutionDepositComponent { log.info("Reset trading day for search STrade: tradeNum={}, tradeDat={}", tradeNum, tradingDay); } + @Scheduled(cron = "${clearing-service.scheduler.check-s-trade}") public void processNewTS() { - Long tradeNum = -1L; // todo уточнить как он обновляется + log.debug("Start check new S_TRADE. Start tradeNum={}", tradeNum); ImdgPredicateBuilder pb = sTradeImdg.predicateBuilder(); ImdgPredicate sql = pb.and(pb.greater("tradeNum", tradeNum), pb.greatEqual("tradeDateTime", tradingDay)); Collection sTrades = sTradeImdg.getCollectionObjectsByPredicate(sql); @@ -166,7 +168,7 @@ public class ExecutionDepositComponent { Long newMaxTradeNum = sTrades.stream().mapToLong(STrade::getTradeNum).max().orElseGet(() -> tradeNum); - log.debug("Next tradeNum is {}", newMaxTradeNum); + log.info("Process completed. Next tradeNum is {}", newMaxTradeNum); } protected void verification(ExecutionDeposit forED) throws ClearingException { @@ -236,26 +238,13 @@ public class ExecutionDepositComponent { } protected void sendNotification(ExecutionDeposit forED) { - final String destination = Consts.REGISTRY_COVERED_DEAL_REGISTER_NEW; - CoveredDealRegisterNewRequest requestPayload = new CoveredDealRegisterNewRequest(); + final String destination = Consts.REGISTRY_DEAL_REGISTER_NEW; + DealRegisterNewRequest requestPayload = new DealRegisterNewRequest(); requestPayload.setExecutionId(forED.getId()); -// requestPayload.setCompanyFullName(forED.getCompanyFullName()); - requestPayload.setTradingDate(forED.getTradingDate()); + requestPayload.setClearingDate(forED.getClearingDate()); requestPayload.setExchangeExecutionId(forED.getExchangeExecutionId()); requestPayload.setExchangeExecutionTime(forED.getExchangeExecutionTime()); - requestPayload.setSecuritySymbol(forED.getSecuritySymbol()); - requestPayload.setSecurityFullName(forED.getSecurityFullName()); -// requestPayload.setSellerFullName(forED.getSellerFullName()); -// requestPayload.setSellerClearingCode(forED.getSellerClearingCode()); -// String requestPayload.setSellerAccount(forED.getAccountId()); -// String requestPayload.setBuyerFullName(forED.getBuyerFullName()); -// requestPayload.setBuyerClearingCode(forED.getBuyerClearingCode()); -// String requestPayload.setBuyerAccount(forED.getBuyerAccount()); -// BigDecimal requestPayload.setAmount(forED.getAmount()); - requestPayload.setId(idGenerator.nextId()); - requestPayload.setCreatedAt(forED.getCreated()); - requestPayload.setUpdatedAt(forED.getUpdated()); - requestPayload.setClearingDate(forED.getClearingDate()); +// requestPayload.setId(idGenerator.nextId()); BaseRequest request = new BaseRequest<>(); request.setId(idGenerator.nextId()); diff --git a/clearing-parent/clearing-service/src/main/resources/application.properties b/clearing-parent/clearing-service/src/main/resources/application.properties index e0908f94a..bb4e61e6b 100644 --- a/clearing-parent/clearing-service/src/main/resources/application.properties +++ b/clearing-parent/clearing-service/src/main/resources/application.properties @@ -20,4 +20,4 @@ clearing-service.kafka-producer.linger-ms=1 clearing-service.kafka-producer.buffer-memory=33554432 clearing-service.scheduler.check-payment-instruction=*/5 * * * * * -clearing-service.scheduler.check-s-trade=0 1 0 1 * ? +clearing-service.scheduler.check-s-trade=0 * 0 1 * ? diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/DealRegisterNewRequest.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/DealRegisterNewRequest.java new file mode 100644 index 000000000..c9edf8b55 --- /dev/null +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/DealRegisterNewRequest.java @@ -0,0 +1,67 @@ +package ru.spcex.clearing.platform.messaging.domain.cud.registry; + + +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.math.BigDecimal; +import java.time.Instant; +import java.time.LocalDate; + +public class DealRegisterNewRequest { + + @JsonProperty + public Long executionId; + + @JsonProperty + public Long exchangeExecutionId; + + @JsonProperty + public Instant exchangeExecutionTime; + + @JsonProperty + public Long id; + + @JsonProperty + public LocalDate clearingDate; + + + public Long getExecutionId() { + return executionId; + } + + public void setExecutionId(Long executionId) { + this.executionId = executionId; + } + + public Long getExchangeExecutionId() { + return exchangeExecutionId; + } + + public void setExchangeExecutionId(Long exchangeExecutionId) { + this.exchangeExecutionId = exchangeExecutionId; + } + + public Instant getExchangeExecutionTime() { + return exchangeExecutionTime; + } + + public void setExchangeExecutionTime(Instant exchangeExecutionTime) { + this.exchangeExecutionTime = exchangeExecutionTime; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public LocalDate getClearingDate() { + return clearingDate; + } + + public void setClearingDate(LocalDate clearingDate) { + this.clearingDate = clearingDate; + } +} From 7dd06fcc5166299681dd1e16d26a7db60eb30d85 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Tue, 31 Jan 2023 16:50:13 +0300 Subject: [PATCH 3/4] =?UTF-8?q?scheduler-service=20=D0=BE=D1=82=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BA=D0=B0=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=20=D0=B2=20=D0=BE=D1=87=D0=B5=D1=80=D0=B5=D0=B4=D0=B8=20?= =?UTF-8?q?-=20=D0=BF=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=BE?= =?UTF-8?q?=D0=B1=D1=91=D1=80=D1=82=D0=BA=D1=83=20launch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ru/spcex/clearing/scheduler/service/LauncherService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherService.java b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherService.java index 7f9e2f44f..aa869d0d4 100644 --- a/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherService.java +++ b/clearing-parent/scheduler-service/src/main/java/ru/spcex/clearing/scheduler/service/LauncherService.java @@ -58,7 +58,7 @@ public class LauncherService extends QueueConsumer implements InitializingBean { launcher.setUpdated(created); launcherMap.insert(launcher); log.debug("successfully processed, new id {}", launcher.getId()); - kafkaProducer.send(new ProducerRecord<>("launcher-" + launcher.getTask(), req)); + kafkaProducer.send(new ProducerRecord<>("launcher-" + launcher.getTask(), userRequest)); } } From 503710f19b088f45f4af87124ae0f1c902f3e9fb Mon Sep 17 00:00:00 2001 From: AKurakin Date: Tue, 31 Jan 2023 17:05:01 +0300 Subject: [PATCH 4/4] =?UTF-8?q?reports-service=20=D0=BF=D0=BE=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D1=8F=D0=BB=D0=B8=20=D1=82=D0=B8=D0=BF=D1=8B=20=D0=B2=20?= =?UTF-8?q?LiabilitiesClaimsAssets.refundDate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reports/services/ReportWithPeriodCollector.java | 12 ++++++------ .../collector/ReportBR_0420314_P2_Collector.java | 2 +- .../collector/ReportBR_0420317_Collector.java | 2 +- .../services/collector/ReportPA_B_Collector.java | 4 ++-- .../services/collector/ReportPA_IV_Collector.java | 4 ++-- .../services/AbstractReportCollectorTest.java | 8 ++++---- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java index e7687ed87..b11179d01 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java @@ -20,9 +20,9 @@ public abstract class ReportWithPeriodCollector extend LocalDate startDate, LocalDate endDate) { ImdgPredicateBuilder pb = liabilitiesClaimsAssetsImdg.predicateBuilder(); - Instant dateTimeLo = toInstantStartDay(startDate); - Instant dateTimeHi = toInstantStartDay(endDate); - ImdgPredicate p = pb.and(pb.greatEqual("refundDate", dateTimeLo), pb.lessEqual("refundDate", dateTimeHi)); +// Instant dateTimeLo = toInstantStartDay(startDate); +// Instant dateTimeHi = toInstantEndDay(endDate); + ImdgPredicate p = pb.and(pb.greatEqual("refundDate", startDate), pb.lessEqual("refundDate", endDate)); Collection liabilities = liabilitiesClaimsAssetsImdg.getCollectionObjectsByPredicate(p); return liabilities; } @@ -31,9 +31,9 @@ public abstract class ReportWithPeriodCollector extend LocalDate startDate, LocalDate endDate, Long allowClearingStatusId) { ImdgPredicateBuilder pb = liabilitiesClaimsAssetsImdg.predicateBuilder(); - Instant dateTimeLo = toInstantStartDay(startDate); - Instant dateTimeHi = toInstantStartDay(endDate); - ImdgPredicate p = pb.and(pb.greatEqual("refundDate", dateTimeLo), pb.lessEqual("refundDate", dateTimeHi), +// Instant dateTimeLo = toInstantStartDay(startDate); +// Instant dateTimeHi = toInstantEndDay(endDate); + ImdgPredicate p = pb.and(pb.greatEqual("refundDate", startDate), pb.lessEqual("refundDate", endDate), pb.equals("clearingStatus", allowClearingStatusId)); Collection liabilities = liabilitiesClaimsAssetsImdg.getCollectionObjectsByPredicate(p); return liabilities; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420314_P2_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420314_P2_Collector.java index 46bacd498..367d11525 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420314_P2_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420314_P2_Collector.java @@ -45,7 +45,7 @@ public class ReportBR_0420314_P2_Collector extends ReportWithPeriodCollector searchPaymentInstruction(LocalDate startDate, LocalDate endDate) { ImdgPredicateBuilder pb = paymentInstructionImdg.predicateBuilder(); Instant dateTimeLo = toInstantStartDay(startDate); - Instant dateTimeHi = toInstantStartDay(endDate); + Instant dateTimeHi = toInstantEndDay(endDate); ImdgPredicate p = pb.and(pb.greatEqual("created", dateTimeLo), pb.lessEqual("created", dateTimeHi)); Collection paymentInstructionsAll = paymentInstructionImdg.getCollectionObjectsByPredicate(p); return paymentInstructionsAll; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_Collector.java index 8699ec969..c0d7748b0 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_Collector.java @@ -35,7 +35,7 @@ public class ReportBR_0420317_Collector extends ReportWithPeriodCollector searchRelation(LocalDate startDate, LocalDate endDate, String service) { ImdgPredicateBuilder pb = relationImdg.predicateBuilder(); Instant dateTimeLo = toInstantStartDay(startDate); - Instant dateTimeHi = toInstantStartDay(endDate); + Instant dateTimeHi = toInstantEndDay(endDate); ImdgPredicate p = pb.and(pb.greatEqual("updated", dateTimeLo), pb.lessEqual("updated", dateTimeHi), pb.equals("service", service)); Collection relations = relationImdg.getCollectionObjectsByPredicate(p); diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_B_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_B_Collector.java index 8f6fe2bc4..bc373378d 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_B_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_B_Collector.java @@ -49,8 +49,8 @@ public class ReportPA_B_Collector extends ReportWithPeriodCollector ImdgPredicateBuilder builder = liabilitiesClaimsAssetsImdg.predicateBuilder(); ImdgPredicate refundDatePredicate = builder.and( - builder.greatEqual("refundDate", toInstantStartDay(startDate)), - builder.lessEqual("refundDate", toInstantStartDay(endDate)) + builder.greatEqual("refundDate", (startDate)), + builder.lessEqual("refundDate", (endDate)) ); ImdgPredicate companyIdPredicates = builder.in("companyId", companyIds.toArray(new Comparable[0])); ImdgPredicate finalPredicate = builder.and(refundDatePredicate, companyIdPredicates); diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_IV_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_IV_Collector.java index c7bef06e6..159b72c32 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_IV_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_IV_Collector.java @@ -55,8 +55,8 @@ public class ReportPA_IV_Collector extends ReportWithPeriodCollector