From f95f1f241d2b38cb237586fa9fe9206e2039284f Mon Sep 17 00:00:00 2001 From: AKurakin Date: Thu, 24 Aug 2023 11:33:31 +0300 Subject: [PATCH] =?UTF-8?q?account-service=20http://jira.mfd.msk:8088/brow?= =?UTF-8?q?se/CLS-489=20=D0=BF=D1=80=D0=BE=D0=B4=D0=BE=D0=BB=D0=B6=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B4=D0=BE=20SDF=5F53,=20=D0=B4=D0=BE=D0=B1?= =?UTF-8?q?=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=B8=D0=BC=D1=8F=20=D0=B2=D1=85?= =?UTF-8?q?=D0=BE=D0=B4=D0=BD=D0=BE=D0=B3=D0=BE=20=D1=84=D0=B0=D0=B9=D0=BB?= =?UTF-8?q?=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D0=B7=D0=B0=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D1=81=D0=B0=20=D0=B3=D0=B5=D0=BD=D0=B5=D1=80=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=BA=D0=B2=D0=B8=D1=82=D0=B0=D0=BD=D1=86=D0=B8=D0=B9?= =?UTF-8?q?=20DF-53?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../account/service/SDFProcessService.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/SDFProcessService.java b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/SDFProcessService.java index 12213ffab..a42ac96c2 100644 --- a/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/SDFProcessService.java +++ b/clearing-parent/account-service/src/main/java/ru/spcex/clearing/account/service/SDFProcessService.java @@ -20,10 +20,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgTransaction; import java.time.Instant; -import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; @Service public class SDFProcessService { @@ -70,6 +67,7 @@ public class SDFProcessService { ImdgTransaction imdgTransaction = imdgProvider.newTransaction(); boolean txOk = false; imdgTransaction.beginTransaction(); + HashSet fileNames = new HashSet<>(); try { // 2. обновление данных, в транзакции Imdg sdf53Imdg = imdgTransaction.getImdg(IMDGDistributedNames.Map_SDf53, SDf53.class); @@ -77,6 +75,7 @@ public class SDFProcessService { for (Triple item : toProcessSDF53) { SDf53 sDf53 = createBy(item.getLeft(), item.getRight(), now, generationId); sdf53Imdg.insert(sDf53); + fileNames.add(item.getLeft().getFileName()); } txOk = true; @@ -89,8 +88,12 @@ public class SDFProcessService { } } - log.info("Send export command for SDF53 generationId={}", generationId); - messageStatementToExport53(generationId); + if (fileNames.size() > 1) + log.warn("generationId={}, too many different file names in S_DF52: {}", generationId, fileNames); + String fileNameSingle = fileNames.stream().filter(Objects::nonNull).findAny().orElse(null); + log.info("Send export command for SDF53 generationId={} with source file name {}", + generationId, (fileNameSingle == null ? null : "\"" + fileNameSingle + "\"")); + messageStatementToExport53(generationId, fileNameSingle); } SDf53 createBy(SDf52 sdf52, String result, Instant now, Long newGenerationId) { @@ -130,12 +133,12 @@ public class SDFProcessService { } - void messageStatementToExport53(Long groupId) { + void messageStatementToExport53(Long groupId, String fileName) { final String destination = Consts.EXPORT_PROCESS; // dbf-exporter ExportToFileRequest request = new ExportToFileRequest(); request.setNameOfTable("DF-53"); // SdfTable.SDF_53 request.setSdfGroupId(groupId); - request.setFileName(null); + request.setFileName(fileName); Long msgId = kafkaSender.sendRequestToQueue(destination, request); log.debug("Send ExportToFileRequest({}, {}) message id={} to kafka \"{}\"", groupId, request.getNameOfTable(), msgId, destination);