akulikov 2023-10-02 17:09:48 +03:00
parent e99311b582
commit d2cf49b7c8
5 changed files with 29 additions and 5 deletions

View file

@ -3,6 +3,8 @@ package ru.spcex.clearing.reports.reports.bp;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionFond; import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.reports.reports.SessionIdParam; import ru.spcex.clearing.reports.reports.SessionIdParam;
import ru.spcex.platform.enumeration.CoverageStatus;
import ru.spcex.platform.enumeration.MoneyFlowSide;
import ru.spcex.platform.enumeration.ReportKeys; import ru.spcex.platform.enumeration.ReportKeys;
import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.enumeration.Side;
import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgProvider;
@ -36,7 +38,11 @@ public class ExecutedDealReportBuilder_INFTYPE_1 extends ExecutedDealReportBuild
pb.notNull("sessionId"), pb.notNull("sessionId"),
pb.less("tradingDate", LocalDate.now()), pb.less("tradingDate", LocalDate.now()),
pb.equals("settlementDate", LocalDate.now()), pb.equals("settlementDate", LocalDate.now()),
pb.equals("side", Side.SELL.getKey()) pb.or(
pb.equals("side", Side.SELL.getKey()),
pb.equals("side", MoneyFlowSide.SELL.getKey())
),
pb.equals("coverageStatus", CoverageStatus.ALWD)
) )
); );
} }

View file

@ -3,6 +3,8 @@ package ru.spcex.clearing.reports.reports.bp;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionFond; import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.reports.reports.SessionIdParam; import ru.spcex.clearing.reports.reports.SessionIdParam;
import ru.spcex.platform.enumeration.CoverageStatus;
import ru.spcex.platform.enumeration.MoneyFlowSide;
import ru.spcex.platform.enumeration.ReportKeys; import ru.spcex.platform.enumeration.ReportKeys;
import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.enumeration.Side;
import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgProvider;
@ -36,7 +38,11 @@ public class ExecutedDealReportBuilder_INFTYPE_2 extends ExecutedDealReportBuild
pb.notNull("sessionId"), pb.notNull("sessionId"),
pb.equals("tradingDate", LocalDate.now()), pb.equals("tradingDate", LocalDate.now()),
pb.equals("settlementDate", LocalDate.now()), pb.equals("settlementDate", LocalDate.now()),
pb.equals("side", Side.SELL.getKey()) pb.or(
pb.equals("side", Side.SELL.getKey()),
pb.equals("side", MoneyFlowSide.SELL.getKey())
),
pb.equals("coverageStatus", CoverageStatus.ALWD)
) )
); );
} }

View file

@ -3,6 +3,7 @@ package ru.spcex.clearing.reports.reports.bp;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionFond; import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.reports.reports.SessionIdParam; import ru.spcex.clearing.reports.reports.SessionIdParam;
import ru.spcex.platform.enumeration.MoneyFlowSide;
import ru.spcex.platform.enumeration.ReportKeys; import ru.spcex.platform.enumeration.ReportKeys;
import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.enumeration.Side;
import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgProvider;
@ -34,7 +35,10 @@ public class ExecutedDealReportBuilder_INFTYPE_3 extends ExecutedDealReportBuild
return executionFondImdg.getCollectionObjectsByPredicate( return executionFondImdg.getCollectionObjectsByPredicate(
pb.and( pb.and(
pb.greater("settlementDate", LocalDate.now()), pb.greater("settlementDate", LocalDate.now()),
pb.equals("side", Side.SELL.getKey()) pb.or(
pb.equals("side", Side.SELL.getKey()),
pb.equals("side", MoneyFlowSide.SELL.getKey())
)
) )
); );
} }

View file

@ -4,6 +4,7 @@ import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.execution.ExecutionFond; import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.spcex.clearing.reports.reports.SessionIdParam; import ru.spcex.clearing.reports.reports.SessionIdParam;
import ru.spcex.platform.enumeration.Allowed; import ru.spcex.platform.enumeration.Allowed;
import ru.spcex.platform.enumeration.MoneyFlowSide;
import ru.spcex.platform.enumeration.ReportKeys; import ru.spcex.platform.enumeration.ReportKeys;
import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.enumeration.Side;
import ru.spcex.platform.imdg.api.ImdgProvider; import ru.spcex.platform.imdg.api.ImdgProvider;
@ -36,7 +37,10 @@ public class ExecutedDealReportBuilder_INFTYPE_4 extends ExecutedDealReportBuild
pb.and( pb.and(
pb.equals("coverageStatus", Allowed.DENIED.getKey()), pb.equals("coverageStatus", Allowed.DENIED.getKey()),
pb.equals("settlementDate", LocalDate.now()), pb.equals("settlementDate", LocalDate.now()),
pb.equals("side", Side.SELL.getKey()) pb.or(
pb.equals("side", Side.SELL.getKey()),
pb.equals("side", MoneyFlowSide.SELL.getKey())
)
) )
); );
} }

View file

@ -66,9 +66,13 @@ public class UnfulfilledDealReportBuilder extends CSVReportBuilder<SessionIdPara
ImdgPredicate predicate = pb.and( ImdgPredicate predicate = pb.and(
pb.notNull("sessionId"), pb.notNull("sessionId"),
pb.equals("coverageStatus", Allowed.DENIED.getKey()), pb.equals("coverageStatus", Allowed.DENIED.getKey()),
pb.equals("side", Side.SELL.getKey()) pb.or(
pb.equals("side", Side.SELL.getKey()),
pb.equals("side", MoneyFlowSide.SELL.getKey())
)
); );
Collection<ExecutionFond> executionFonds = executionFondImdg.getCollectionObjectsByPredicate(predicate); Collection<ExecutionFond> executionFonds = executionFondImdg.getCollectionObjectsByPredicate(predicate);
log.debug("Found {} ExecutionFond by query: {}", executionFonds.size(), predicate);
rows = new ArrayList<>(executionFonds.size()); rows = new ArrayList<>(executionFonds.size());
for (ExecutionFond executionFond : executionFonds) { for (ExecutionFond executionFond : executionFonds) {