This commit is contained in:
akulikov 2023-12-29 17:44:20 +03:00
parent ce85bbe8be
commit b9b50ba957
2 changed files with 9 additions and 3 deletions

View file

@ -5,6 +5,7 @@ import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.execution.ExecutionCommon;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
import ru.clearing.platform.dictionary.AllowedDictionary;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.registry.reports.bean.ExecutionRegisterReport;
@ -26,11 +27,13 @@ public class ExecutionRegisterReportBuilder extends CSVReportBuilder<ExecutionRe
private final Imdg<Company> companyImdg;
private final Imdg<CompanySymbols> companySymbolsImdg;
private final Imdg<AllowedDictionary> allowedDictionaryImdg;
private final Imdg<TradingClearingRegistry> tradingClearingRegistryImdg;
public ExecutionRegisterReportBuilder(ImdgProvider imdgProvider) {
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
companySymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
allowedDictionaryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AllowedDictionary, AllowedDictionary.class);
tradingClearingRegistryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
}
@Override
@ -51,6 +54,11 @@ public class ExecutionRegisterReportBuilder extends CSVReportBuilder<ExecutionRe
entity.setTradingDate(input.getTradingDate());
entity.setExchangeExecutionId(input.getExchangeExecutionId());
if (input.getTradingClearingRegistryId() != null) {
TradingClearingRegistry tkr = tradingClearingRegistryImdg.getSingleObjectByID(input.getTradingClearingRegistryId());
if (tkr != null) entity.setSellerTkr(tkr.getCode());
}
if (input.getSide() != null && input.getCompanyId() != null && input.getCounterPartyId() != null) {
CompanySymbols companySymbolsByCompanyId = companySymbolsImdg.getFirstObjectByFieldValues(
Map.of(
@ -78,7 +86,6 @@ public class ExecutionRegisterReportBuilder extends CSVReportBuilder<ExecutionRe
if (companySymbolsByCompanyId != null) {
entity.setBuyerCode(companySymbolsByCompanyId.getCompanySymbolValue());
}
entity.setSellerTkr(input.getCounterPartyTradingClearingRegistry());
entity.setBuyerTkr(input.getPartyTradingClearingRegistry());
}
if (Arrays.asList(Side.SELL.getKey(), MoneyFlowSide.SELL.getKey()).contains(input.getSide().toUpperCase())) {
@ -92,7 +99,6 @@ public class ExecutionRegisterReportBuilder extends CSVReportBuilder<ExecutionRe
if (companySymbolsByCounterPartyId != null) {
entity.setBuyerCode(companySymbolsByCounterPartyId.getCompanySymbolValue());
}
entity.setSellerTkr(input.getPartyTradingClearingRegistry());
entity.setBuyerTkr(input.getCounterPartyTradingClearingRegistry());
}
}

View file

@ -1,2 +1,2 @@
"Наименование биржи","Дата заключения сделки","Дата исполнения","Идентификационный номер сделки в Торговой системе","Время заключения сделки в Торговой системе","Код БИ","Дата возврата","Код УК - продавца","Наименование УК - продавца","ТКР продавца","Клиринговый код покупателя","Наименование компании-покупателя","Торгово-клиринговый регистр покупателя","Сумма сделки","Количество ценных бумаг","Статус"
"СПВБ","01.01.2020",,"777","03:00:00",,,"COMPANY_SYMBOL_VALUE_FOR_COMPANY_ID",,"PARTY_TKR","COMPANY_SYMBOL_VALUE_FOR_COUNTER_PARTY_ID",,"COUNTER_PARTY_TKR","777.00","888",
"СПВБ","01.01.2020",,"777","03:00:00",,,"COMPANY_SYMBOL_VALUE_FOR_COMPANY_ID",,,"COMPANY_SYMBOL_VALUE_FOR_COUNTER_PARTY_ID",,"COUNTER_PARTY_TKR","777.00","888",

1 Наименование биржи Дата заключения сделки Дата исполнения Идентификационный номер сделки в Торговой системе Время заключения сделки в Торговой системе Код БИ Дата возврата Код УК - продавца Наименование УК - продавца ТКР продавца Клиринговый код покупателя Наименование компании-покупателя Торгово-клиринговый регистр покупателя Сумма сделки Количество ценных бумаг Статус
2 СПВБ 01.01.2020 777 03:00:00 COMPANY_SYMBOL_VALUE_FOR_COMPANY_ID PARTY_TKR COMPANY_SYMBOL_VALUE_FOR_COUNTER_PARTY_ID COUNTER_PARTY_TKR 777.00 888