This commit is contained in:
akulikov 2023-05-15 16:20:22 +03:00
parent 1551ad04c8
commit b59597bc7b
3 changed files with 22 additions and 14 deletions

View file

@ -10,6 +10,7 @@ import ru.clearing.classes.statics.data.registry.Registry;
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry; import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.reports.reports.CSVReportBuilder; import ru.spcex.clearing.reports.reports.CSVReportBuilder;
import ru.spcex.platform.enumeration.Allowed;
import ru.spcex.platform.enumeration.Market; import ru.spcex.platform.enumeration.Market;
import ru.spcex.platform.enumeration.Side; import ru.spcex.platform.enumeration.Side;
import ru.spcex.platform.enumeration.WorkflowStatus; import ru.spcex.platform.enumeration.WorkflowStatus;
@ -112,7 +113,7 @@ public abstract class LiabilitiesClaimsReportBuilder<P> extends CSVReportBuilder
String clearingTime = dateFormatter.format(execution.getClearingDate()); String clearingTime = dateFormatter.format(execution.getClearingDate());
String trdAccId = registry.getTradingClearingRegistry(); String trdAccId = registry.getTradingClearingRegistry();
String account = String.valueOf(tradingClearingRegistry.getMoneyAccountId()); String account = String.valueOf(tradingClearingRegistry.getMoneyAccountId());
String depoAccount = String.valueOf(tradingClearingRegistry.getDepoAaccountId()); String depoAccount = String.valueOf(tradingClearingRegistry.getDepoAccountId());
String currency = execution.getSettlementCurrency(); String currency = execution.getSettlementCurrency();
String trId = String.valueOf(execution.getExchangeExecutionId()); String trId = String.valueOf(execution.getExchangeExecutionId());
String securityId = String.valueOf(execution.getSecurityId()); String securityId = String.valueOf(execution.getSecurityId());
@ -138,7 +139,12 @@ public abstract class LiabilitiesClaimsReportBuilder<P> extends CSVReportBuilder
if (execution instanceof ExecutionDeposit executionDeposit) { if (execution instanceof ExecutionDeposit executionDeposit) {
trExecDate = dateFormatter.format(executionDeposit.getSecondLegSettlementDate()); trExecDate = dateFormatter.format(executionDeposit.getSecondLegSettlementDate());
if (Market.mkrs.equalsByKey(execution.getMarket())) { if (Market.mkrs.equalsByKey(execution.getMarket())) {
execStatus = "Y";
String coverageStatus = executionDeposit.getCoverageStatus();
if (Allowed.ALLOWED.equalsByKey(coverageStatus)) execStatus = "Y";
else if (Allowed.DENIED.equalsByKey(coverageStatus)) execStatus = "N";
else execStatus = "W";
repaymDate = dateFormatter.format(executionDeposit.getSecondLegSettlementDate()); repaymDate = dateFormatter.format(executionDeposit.getSecondLegSettlementDate());
trPrice = String.valueOf(executionDeposit.getPrice()); trPrice = String.valueOf(executionDeposit.getPrice());
trValue = String.valueOf(executionDeposit.getFirstLegAmount()); trValue = String.valueOf(executionDeposit.getFirstLegAmount());
@ -175,19 +181,19 @@ public abstract class LiabilitiesClaimsReportBuilder<P> extends CSVReportBuilder
String registryCode = currRegistry.getRegistryCode(); String registryCode = currRegistry.getRegistryCode();
if (registryCode.endsWith("T")) { if (registryCode.endsWith("T")) {
if (registryCode.startsWith("TM")) { if (registryCode.startsWith("TM")) {
if (tm_tRegistry != null && tm_tRegistry.getUpdatedAt().isAfter(currRegistry.getUpdatedAt())) continue; if (tm_tRegistry != null && tm_tRegistry.getUpdated().isAfter(currRegistry.getUpdated())) continue;
tm_tRegistry = currRegistry; tm_tRegistry = currRegistry;
} }
if (registryCode.startsWith("OM")) { if (registryCode.startsWith("OM")) {
if (om_tRegistry != null && om_tRegistry.getUpdatedAt().isAfter(currRegistry.getUpdatedAt())) continue; if (om_tRegistry != null && om_tRegistry.getUpdated().isAfter(currRegistry.getUpdated())) continue;
om_tRegistry = currRegistry; om_tRegistry = currRegistry;
} }
if (registryCode.startsWith("TS")) { if (registryCode.startsWith("TS")) {
if (ts_tRegistry != null && ts_tRegistry.getUpdatedAt().isAfter(currRegistry.getUpdatedAt())) continue; if (ts_tRegistry != null && ts_tRegistry.getUpdated().isAfter(currRegistry.getUpdated())) continue;
ts_tRegistry = currRegistry; ts_tRegistry = currRegistry;
} }
if (registryCode.startsWith("OS")) { if (registryCode.startsWith("OS")) {
if (os_tRegistry != null && os_tRegistry.getUpdatedAt().isAfter(currRegistry.getUpdatedAt())) continue; if (os_tRegistry != null && os_tRegistry.getUpdated().isAfter(currRegistry.getUpdated())) continue;
os_tRegistry = currRegistry; os_tRegistry = currRegistry;
} }
} }

View file

@ -33,6 +33,7 @@ public class PeriodLiabilitiesClaimsReportBuilder extends LiabilitiesClaimsRepor
for (Long sessionId : params.getSessionIdList()) { for (Long sessionId : params.getSessionIdList()) {
sql.append(sessionId).append(","); sql.append(sessionId).append(",");
} }
sql.setLength(sql.length() - 1);
sql.append(")"); sql.append(")");
return executionFondImdg.getCollectionObjectsBySQL(sql.toString()); return executionFondImdg.getCollectionObjectsBySQL(sql.toString());
} }
@ -44,6 +45,7 @@ public class PeriodLiabilitiesClaimsReportBuilder extends LiabilitiesClaimsRepor
for (Long sessionId : params.getSessionIdList()) { for (Long sessionId : params.getSessionIdList()) {
sql.append(sessionId).append(","); sql.append(sessionId).append(",");
} }
sql.setLength(sql.length() - 1);
sql.append(")"); sql.append(")");
return executionDepositImdg.getCollectionObjectsBySQL(sql.toString()); return executionDepositImdg.getCollectionObjectsBySQL(sql.toString());
} }

View file

@ -7,14 +7,14 @@ import ru.spcex.platform.utils.enumeration.IEnumKey;
* todo сделать для них dictionary * todo сделать для них dictionary
*/ */
public enum ReportType implements IEnumKey { public enum ReportType implements IEnumKey {
OPERATIONAL_LIABILITIES_CLAIMS("operational_liabilities_claims"), OPERATIONAL_LIABILITIES_CLAIMS("operational-liabilities-claims"),
OPERATIONAL_MONEY_CHANGE("operational_money_change"), OPERATIONAL_MONEY_CHANGE("operational-money-change"),
SUMMARY_LIABILITIES_CLAIMS("summary_liabilities_claims"), SUMMARY_LIABILITIES_CLAIMS("summary-liabilities-claims"),
SUMMARY_MONEY_CHANGE("summary_money_change"), SUMMARY_MONEY_CHANGE("summary-money-change"),
PERIOD_LIABILITIES_CLAIMS("period_liabilities_claims"), PERIOD_LIABILITIES_CLAIMS("period-liabilities-claims"),
PERIOD_MONEY_CHANGE("period_money_change"), PERIOD_MONEY_CHANGE("period-money-change"),
EXECUTED_DEAL_REPORT("executed_deal_report"), EXECUTED_DEAL_REPORT("executed-deal-report"),
UNFULFILLED_DEAL_REPORT("unfulfilled_deal_report"), UNFULFILLED_DEAL_REPORT("unfulfilled-deal-report"),
; ;
private final String key; private final String key;