diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreationCompound.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreationCompound.java index 02cc6ff1d..f333776cf 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreationCompound.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreationCompound.java @@ -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 executionCurrency = data.getExecutionsCurrency(); List executionDeposit = data.getExecutionsFinal(); Map 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(); diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/util/ComparatorUtil.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/util/ComparatorUtil.java index a681d542f..9655e5bc9 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/util/ComparatorUtil.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/util/ComparatorUtil.java @@ -10,4 +10,7 @@ public class ComparatorUtil { public static final Comparator execIdComparator = Comparator.comparing(ExecutionCommon::getExchangeExecutionId); + public static final Comparator execMarketComparator + = Comparator.comparing(ExecutionCommon::getMarket); + }