diff --git a/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterService.java b/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterService.java index db82e9b22..cac9e5189 100644 --- a/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterService.java +++ b/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterService.java @@ -33,7 +33,7 @@ public abstract class AbstractExporterService { public static final Charset ENCODING = Charset.forName("windows-1251"); protected final SwtTable type; protected final Imdg sdfImdg; - private final DateTimeFormatter dtFileNameFormatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); + private final DateTimeFormatter dtFileNameFormatter = DateTimeFormatter.ofPattern("yyMMddHHmmssSSS");// YYMMDDHHmmssSSS private final DateTimeFormatter dtInFileHeaderFormatter = DateTimeFormatter.ofPattern("yyyyMMdd'/'HHmm"); private final KafkaSender kafkaSender; protected final FileStorage fileStorage; diff --git a/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/util/SWTHeaderData.java b/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/util/SWTHeaderData.java index 7dd98489b..04d3dd3f7 100644 --- a/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/util/SWTHeaderData.java +++ b/clearing-parent/swt-exporter/src/main/java/ru/spcex/clearing/swt/exporter/util/SWTHeaderData.java @@ -147,15 +147,15 @@ public class SWTHeaderData { String timeS = dtInFileHeaderFormatter.format(dateTime); stringBuilder.append("Date/Time:").append(timeS).append(LINE_SEPARATOR); } - if (valFor18ATag != null) { - stringBuilder.append(":18A:").append(valFor18ATag).append(LINE_SEPARATOR); - } if (valFor20Tag != null) { stringBuilder.append(":20:").append(valFor20Tag).append(LINE_SEPARATOR); } if (valFor21Tag != null) { stringBuilder.append(":21:").append(valFor21Tag).append(LINE_SEPARATOR); } + if (valFor18ATag != null) { + stringBuilder.append(":18A:").append(valFor18ATag).append(LINE_SEPARATOR); + } if (valFor23Tag != null) { stringBuilder.append(":23:").append(valFor23Tag).append(LINE_SEPARATOR); } diff --git a/clearing-parent/swt-exporter/src/test/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterServiceTest.java b/clearing-parent/swt-exporter/src/test/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterServiceTest.java index db500402c..668829f10 100644 --- a/clearing-parent/swt-exporter/src/test/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterServiceTest.java +++ b/clearing-parent/swt-exporter/src/test/java/ru/spcex/clearing/swt/exporter/services/AbstractExporterServiceTest.java @@ -7,6 +7,9 @@ import ru.spcex.platform.enumeration.ResultStatuses; import javax.annotation.PostConstruct; import java.time.LocalDateTime; +import java.time.temporal.ChronoUnit; + +import static org.junit.jupiter.api.Assertions.assertEquals; class AbstractExporterServiceTest extends AbstractServiceTest { @PostConstruct @@ -22,4 +25,13 @@ class AbstractExporterServiceTest extends AbstractServiceTest { moneyExporterService.sendSwtExportedNotification(LocalDateTime.now(), 1L, ResultStatuses.notSuccess); //TestUtils.waitingSendAndCheckRecord(null, mockProducer); } + + @Test + void formatFileName() { + AbstractExporterService moneyExporterService = new DF09Exporter(null, kafkaSender, imdgProvider); + assertEquals("KS_RDC_DF-09_230227093203515.txt", moneyExporterService.formatFileName( + "DF-09", null, LocalDateTime.of(2023,2,27,9,32,3).plus(515, ChronoUnit.MILLIS) )); + assertEquals("KS_RDC_DF-09_230227093203000.txt", moneyExporterService.formatFileName( + moneyExporterService.typeForFileName(), moneyExporterService.sectionForFileName(null), LocalDateTime.of(2023,2,27,9,32,3,515) )); + } } \ No newline at end of file