swt-exporter DF12Exporter fix header 20

This commit is contained in:
AKurakin 2023-08-09 16:03:58 +03:00
parent d4142e3b03
commit 2e25c733ba

View file

@ -58,8 +58,10 @@ public class DF12Exporter extends AbstractExporterService<SDf12> {
@Override
protected String convertRecord(SDf12 record, ConvertionContext context) {
StringBuilder stringBuilder = new StringBuilder();
if (!Objects.equals(lastHeader20, record.getOutDocument())) { // header
stringBuilder.append(":20:").append(record.getOutDocument()).append(SWTHeaderData.LINE_SEPARATOR);
if (!Objects.equals(lastHeader20, record.getOutDocument())) { // header, тег :20: должен быть 1 раз только в начале документа
//stringBuilder.append(":20:").append(record.getOutDocument()).append(SWTHeaderData.LINE_SEPARATOR);
log.debug("SWT generationId={} last header :20: was \"{}\" but next record OutDocument=\"{}\"",
record.getGenerationId(), lastHeader20, record.getOutDocument());
lastHeader20 = record.getOutDocument();
}
stringBuilder.append(":23:").append(record.getDirection()).append(SWTHeaderData.LINE_SEPARATOR);
@ -81,9 +83,9 @@ public class DF12Exporter extends AbstractExporterService<SDf12> {
swtHeaderData.setType(typeForHeader());
swtHeaderData.setDateTime(LocalDateTime.now());
if (record != null) {
// swtHeaderData.setValFor20Tag(record.getOutDocument());
swtHeaderData.setValFor20Tag(record.getOutDocument());
lastHeader20 = null;
}
lastHeader20 = null;
return swtHeaderData;
}