http://jira.mfd.msk:8088/browse/CLS-593 SDF02 в порядке SDF01
This commit is contained in:
parent
15242a0a75
commit
3fbb5931df
2 changed files with 10 additions and 8 deletions
|
|
@ -41,9 +41,7 @@ import java.math.BigDecimal;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.Collection;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -112,7 +110,9 @@ public class Sdf01Executor extends AbstractExecutor<SDf01> {
|
||||||
result.setChildGenerationId(generationIdForGroup);
|
result.setChildGenerationId(generationIdForGroup);
|
||||||
result.setFileName(filenameObtainer.getFilename(sdf, sdf01Imdg, statementRequest.getGroupId()));
|
result.setFileName(filenameObtainer.getFilename(sdf, sdf01Imdg, statementRequest.getGroupId()));
|
||||||
log.info("SDF01 execution: sdf01 file={} number={}, groupId={}", result.getFileName(), sdf.size(), sdf.stream().findFirst().map(SDf01::getGenerationId).orElse(null));
|
log.info("SDF01 execution: sdf01 file={} number={}, groupId={}", result.getFileName(), sdf.size(), sdf.stream().findFirst().map(SDf01::getGenerationId).orElse(null));
|
||||||
for (SDf01 sdf01 : sdf) {
|
ArrayList<SDf01> orderedSdf = new ArrayList<>(sdf);
|
||||||
|
orderedSdf.sort(Comparator.comparing(SDf01::getId));// Сортировка по возрастанию id, чтобы сохранить последовательность строк SDF02, как в SDF01
|
||||||
|
for (SDf01 sdf01 : orderedSdf) {
|
||||||
IValidator validator = sDf01Validator.apply(sdf01);
|
IValidator validator = sDf01Validator.apply(sdf01);
|
||||||
Optional<EnumMessage> error = validator.tillFirstError();
|
Optional<EnumMessage> error = validator.tillFirstError();
|
||||||
Company company = validator.getStored(ValidationStored.Sdf01Company);
|
Company company = validator.getStored(ValidationStored.Sdf01Company);
|
||||||
|
|
|
||||||
|
|
@ -18,10 +18,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.nio.charset.Charset;
|
import java.nio.charset.Charset;
|
||||||
import java.util.Collection;
|
import java.util.*;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Выгрузка данных из мапы hazelcast и их запись в файлы
|
* Выгрузка данных из мапы hazelcast и их запись в файлы
|
||||||
|
|
@ -94,6 +91,11 @@ public class ExportFromHazelcast extends Stage implements InitializingBean {
|
||||||
log.debug("uuid {}. Selected {} records from map {}, generationId {}", resultContainer.getUuid(),
|
log.debug("uuid {}. Selected {} records from map {}, generationId {}", resultContainer.getUuid(),
|
||||||
tableRows.size(), resultContainer.getTableForExport().getHazelcastMapName(), resultContainer.getGroupId());
|
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<SpcexObjectBase>(tableRows);
|
||||||
|
((ArrayList<SpcexObjectBase>) tableRows).sort(Comparator.comparing(SpcexObjectBase::getId));
|
||||||
|
}
|
||||||
for (SpcexObjectBase value : tableRows) {
|
for (SpcexObjectBase value : tableRows) {
|
||||||
Object[] values;
|
Object[] values;
|
||||||
if (value instanceof SDf02 sDf02Value) values = s_df02_converter.toObjectArray(sDf02Value);
|
if (value instanceof SDf02 sDf02Value) values = s_df02_converter.toObjectArray(sDf02Value);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue