diff --git a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/ExportFromHazelcast.java b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/ExportFromHazelcast.java index 6b948f582..936ad0692 100644 --- a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/ExportFromHazelcast.java +++ b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/ExportFromHazelcast.java @@ -13,6 +13,7 @@ import com.linuxense.javadbf.DBFWriter; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Component; +import ru.clearing.classes.statics.data.sdf.SDf02; import ru.spcex.clearing.dbf.exporter.config.SFTPConfig; import ru.spcex.clearing.dbf.exporter.config.settings.ExportDBFServiceSettings; import ru.spcex.clearing.dbf.exporter.exceptions.ConfigException; @@ -87,7 +88,7 @@ public class ExportFromHazelcast extends Stage implements InitializingBean { if (Table.S_DF02 == resultContainer.getTableForExport()) { log.trace("Sort S_DF02 items"); // Сортировка по возрастанию id, чтобы сохранить последовательность строк SDF02, как в SDF01 tableRows = new ArrayList(tableRows); - ((ArrayList) tableRows).sort(Comparator.comparing(SpcexObjectBase::getId)); + ((ArrayList) tableRows).sort(Comparator.comparing(SDf02::getInSDfId)); } DFConverter currentConverter = null; for (SpcexObjectBase value : tableRows) { diff --git a/clearing-parent/xml-exporter/src/main/java/ru/spcex/clearing/xml/exporter/logic/stages/ExportFromHazelcast.java b/clearing-parent/xml-exporter/src/main/java/ru/spcex/clearing/xml/exporter/logic/stages/ExportFromHazelcast.java index 5af2d1855..6f2d5fcf5 100644 --- a/clearing-parent/xml-exporter/src/main/java/ru/spcex/clearing/xml/exporter/logic/stages/ExportFromHazelcast.java +++ b/clearing-parent/xml-exporter/src/main/java/ru/spcex/clearing/xml/exporter/logic/stages/ExportFromHazelcast.java @@ -127,7 +127,8 @@ public class ExportFromHazelcast { tableRows = map.getAllValues(); } if (table == Table.S_DF02) { - ((ArrayList) tableRows).sort(Comparator.comparing(SpcexObjectBase::getId)); + tableRows = new ArrayList(tableRows); + ((ArrayList) tableRows).sort(Comparator.comparing(SDf02::getInSDfId)); } if (tableRows.isEmpty()) { log.info("uuid {}. Map {} is empty, generationId {}", resultContainer.getUuid(), resultContainer.getTableForExport().getHazelcastMapName(), resultContainer.getGroupId()); @@ -148,11 +149,6 @@ public class ExportFromHazelcast { log.debug("uuid {}. Selected {} records from map {}, generationId {}", resultContainer.getUuid(), tableRows.size(), resultContainer.getTableForExport().getHazelcastMapName(), resultContainer.getGroupId()); } - if (Table.S_DF02 == resultContainer.getTableForExport()) { - log.trace("Sort S_DF02 items"); // Сортировка по возрастанию id, чтобы сохранить последовательность строк SDF02, как в SDF01 - tableRows = new ArrayList(tableRows); - ((ArrayList) tableRows).sort(Comparator.comparing(SpcexObjectBase::getId)); - } String messageId = ""; for (SpcexObjectBase s : tableRows) {