diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/state/action/RequirementAndObligationCreationAction.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/state/action/RequirementAndObligationCreationAction.java index 29f07d53e..e24163414 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/state/action/RequirementAndObligationCreationAction.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/state/action/RequirementAndObligationCreationAction.java @@ -46,8 +46,7 @@ import ru.spcex.clearing.session.stage.impl.RegistryFondBuilder; import ru.spcex.clearing.session.stage.impl.RegistryUpdater; import ru.spcex.clearing.session.state.DataEnum; import ru.spcex.clearing.session.state.SsnEvent; -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.enumeration.ISide; import ru.spcex.platform.enumeration.MoneyFlowSide; @@ -149,7 +148,7 @@ public class RequirementAndObligationCreationAction extends AbstractSessionActio } protected void createRegisters(List data, Long sessionId, Map rgsStorage) { - data.sort(tradeTimeComparator.thenComparing(execIdComparator)); + data.sort(tradeTimeComparator.thenComparing(execIdComparator).thenComparing(execMarketComparator)); Map newRgss = rgsStorage != null ? rgsStorage : storageMap(data); //см. описание к #matchExecutions for (int i = 0; i < data.size(); ) {