exchangeExecutionId одинаковые, сортировка сделок в Unit сессии

This commit is contained in:
ialbert 2025-06-27 17:00:33 +03:00
parent 83c65a4f3f
commit 824f263157
2 changed files with 5 additions and 3 deletions

View file

@ -19,8 +19,7 @@ import ru.spcex.clearing.session.stage.StageResult;
import ru.spcex.clearing.session.stage.Task;
import ru.spcex.clearing.session.stage.TaskType;
import ru.spcex.clearing.session.stage.task.RequirementsAndObligationCreationCompoundPayload;
import static ru.spcex.clearing.util.ComparatorUtil.execIdComparator;
import static ru.spcex.clearing.util.ComparatorUtil.tradeTimeComparator;
import static ru.spcex.clearing.util.ComparatorUtil.*;
import ru.spcex.platform.classes.base.interfaces.ExecutionType;
import ru.spcex.platform.imdg.api.ImdgProvider;
import ru.spcex.platform.utils.collection.Pair;
@ -65,7 +64,7 @@ public class RequirementsAndObligationCreationCompound extends RequirementsAndOb
List<ExecutionCommon> executionCurrency = data.getExecutionsCurrency();
List<ExecutionCommon> executionDeposit = data.getExecutionsFinal();
Map<Long, Registry> newRgss = storageMap(executionFond, executionCurrency, executionDeposit);
Stream.of(executionFond, executionCurrency, executionDeposit).forEach(c -> c.sort(tradeTimeComparator.thenComparing(execIdComparator)));
Stream.of(executionFond, executionCurrency, executionDeposit).forEach(c -> c.sort(tradeTimeComparator.thenComparing(execIdComparator).thenComparing(execMarketComparator)));
int efs = executionFond.size();
int eds = executionDeposit.size();

View file

@ -10,4 +10,7 @@ public class ComparatorUtil {
public static final Comparator<ExecutionCommon> execIdComparator
= Comparator.comparing(ExecutionCommon::getExchangeExecutionId);
public static final Comparator<ExecutionCommon> execMarketComparator
= Comparator.comparing(ExecutionCommon::getMarket);
}