1. порядок сортировки по exchangeExecutionTime/exchangeExecutionId в шаге создания liabilities и claims
2. TCR/TKR/ТКР
This commit is contained in:
parent
24fe8346d3
commit
1b72d20ee5
4 changed files with 19 additions and 10 deletions
|
|
@ -116,7 +116,7 @@ public class AnltSearcher {
|
||||||
return new AnltSearch(infoAcc, company, tcr, tcrList, currencyCode);
|
return new AnltSearch(infoAcc, company, tcr, tcrList, currencyCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final Pattern tcrPattern = Pattern.compile("(?:ТКР|TKR).*?([0-9A-Z-]{12})");
|
private static final Pattern tcrPattern = Pattern.compile("(?:ТКР|TKR|TCR).*?([0-9A-Z-]{12})");
|
||||||
|
|
||||||
private static String getTkrCodeFromComment(String comment) {
|
private static String getTkrCodeFromComment(String comment) {
|
||||||
if (TextUtil.isEmpty(comment)) {
|
if (TextUtil.isEmpty(comment)) {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package ru.spcex.clearing.session.stage.impl;
|
package ru.spcex.clearing.session.stage.impl;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.Comparator;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
@ -23,6 +22,8 @@ import ru.spcex.clearing.session.stage.ISessionStage;
|
||||||
import ru.spcex.clearing.session.stage.StageResult;
|
import ru.spcex.clearing.session.stage.StageResult;
|
||||||
import ru.spcex.clearing.session.stage.Task;
|
import ru.spcex.clearing.session.stage.Task;
|
||||||
import ru.spcex.clearing.session.stage.TaskType;
|
import ru.spcex.clearing.session.stage.TaskType;
|
||||||
|
import static ru.spcex.clearing.util.ComparatorUtil.execIdComparator;
|
||||||
|
import static ru.spcex.clearing.util.ComparatorUtil.tradeTimeComparator;
|
||||||
import ru.spcex.platform.classes.base.interfaces.ExecutionType;
|
import ru.spcex.platform.classes.base.interfaces.ExecutionType;
|
||||||
import ru.spcex.platform.enumeration.ISide;
|
import ru.spcex.platform.enumeration.ISide;
|
||||||
import ru.spcex.platform.enumeration.MoneyFlowSide;
|
import ru.spcex.platform.enumeration.MoneyFlowSide;
|
||||||
|
|
@ -66,7 +67,7 @@ public class RequirementsAndObligationCreation implements ISessionStage {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected StageResult<?> createRegisters(List<ExecutionCommon> data) {
|
protected StageResult<?> createRegisters(List<ExecutionCommon> data) {
|
||||||
data.sort(Comparator.comparing(ExecutionCommon::getExchangeExecutionId));
|
data.sort(tradeTimeComparator.thenComparing(execIdComparator));
|
||||||
//см. описание к #matchExecutions
|
//см. описание к #matchExecutions
|
||||||
for (int i = 0; i < data.size(); ) {
|
for (int i = 0; i < data.size(); ) {
|
||||||
Pair<ExecutionCommon, ExecutionCommon> matched = matchExecutions(data, i);
|
Pair<ExecutionCommon, ExecutionCommon> matched = matchExecutions(data, i);
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package ru.spcex.clearing.session.stage.impl;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Comparator;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
@ -17,6 +16,8 @@ import ru.spcex.clearing.session.stage.StageResult;
|
||||||
import ru.spcex.clearing.session.stage.Task;
|
import ru.spcex.clearing.session.stage.Task;
|
||||||
import ru.spcex.clearing.session.stage.TaskType;
|
import ru.spcex.clearing.session.stage.TaskType;
|
||||||
import ru.spcex.clearing.session.stage.task.RequirementsAndObligationCreationCompoundPayload;
|
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 ru.spcex.platform.classes.base.interfaces.ExecutionType;
|
import ru.spcex.platform.classes.base.interfaces.ExecutionType;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.collection.Pair;
|
import ru.spcex.platform.utils.collection.Pair;
|
||||||
|
|
@ -28,12 +29,6 @@ import ru.spcex.platform.utils.collection.Pair;
|
||||||
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
|
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
|
||||||
public class RequirementsAndObligationCreationCompound extends RequirementsAndObligationCreation {
|
public class RequirementsAndObligationCreationCompound extends RequirementsAndObligationCreation {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
private static final Comparator<ExecutionCommon> tradeTimeComparator
|
|
||||||
= Comparator.comparing(ExecutionCommon::getExchangeExecutionTime);
|
|
||||||
|
|
||||||
private static final Comparator<ExecutionCommon> execIdComparator
|
|
||||||
= Comparator.comparing(ExecutionCommon::getExchangeExecutionId);
|
|
||||||
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public RequirementsAndObligationCreationCompound(ImdgProvider imdgProvider) {
|
public RequirementsAndObligationCreationCompound(ImdgProvider imdgProvider) {
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
package ru.spcex.clearing.util;
|
||||||
|
|
||||||
|
import java.util.Comparator;
|
||||||
|
import ru.clearing.classes.statics.data.execution.ExecutionCommon;
|
||||||
|
|
||||||
|
public class ComparatorUtil {
|
||||||
|
public static final Comparator<ExecutionCommon> tradeTimeComparator
|
||||||
|
= Comparator.comparing(ExecutionCommon::getExchangeExecutionTime);
|
||||||
|
|
||||||
|
public static final Comparator<ExecutionCommon> execIdComparator
|
||||||
|
= Comparator.comparing(ExecutionCommon::getExchangeExecutionId);
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue