This commit is contained in:
parent
2a61062eb9
commit
9eff119ff2
7 changed files with 63 additions and 6 deletions
|
|
@ -1,6 +1,8 @@
|
|||
package ru.spcex.clearing.reports.builders.ks;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.account.AccountSymbols;
|
||||
import ru.clearing.classes.statics.data.misc.Session;
|
||||
import ru.clearing.classes.statics.data.registry.Registry;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
|
|
@ -28,12 +30,14 @@ import java.util.stream.Collectors;
|
|||
public class KSRepDepoNettoReportBuilder extends CSVReportBuilder<SessionIdParam, KSRepDepoNettoReport> {
|
||||
private final Imdg<Registry> registryImdg;
|
||||
private final Imdg<Session> sessionImdg;
|
||||
private final Imdg<AccountSymbols> accountSymbolsImdg;
|
||||
|
||||
private List<KSRepDepoNettoReport> rows = null;
|
||||
|
||||
public KSRepDepoNettoReportBuilder(ImdgProvider imdgProvider) {
|
||||
registryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class);
|
||||
sessionImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class);
|
||||
accountSymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AccountSymbols, AccountSymbols.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -128,7 +132,13 @@ public class KSRepDepoNettoReportBuilder extends CSVReportBuilder<SessionIdParam
|
|||
ksRepDepoNettoReport.setFirmId(registry.getTradingCode());
|
||||
ksRepDepoNettoReport.setSessionId(registry.getSessionId());
|
||||
ksRepDepoNettoReport.setTkr(registry.getTradingClearingRegistry());
|
||||
ksRepDepoNettoReport.setAccount(registry.getAccount());
|
||||
|
||||
String account = registry.getAccount();
|
||||
AccountSymbols accountSymbols = accountSymbolsImdg.getFirstObjectByFieldValues(Map.of("accountId", registry.getAccountId()));
|
||||
if (accountSymbols != null && !StringUtils.isBlank(accountSymbols.getAccountSymbolValue()))
|
||||
account = accountSymbols.getAccountSymbolValue();
|
||||
ksRepDepoNettoReport.setAccount(account);
|
||||
|
||||
ksRepDepoNettoReport.setSecurityId(registry.getSecuritySymbol());
|
||||
ksRepDepoNettoReport.setDate(nowDate);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
package ru.spcex.clearing.reports.builders.ks;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.account.AccountSymbols;
|
||||
import ru.clearing.classes.statics.data.company.Company;
|
||||
import ru.clearing.classes.statics.data.registry.Registry;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
|
|
@ -13,6 +15,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
|
|||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
||||
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.Instant;
|
||||
|
|
@ -22,17 +25,20 @@ import java.time.temporal.ChronoUnit;
|
|||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Component
|
||||
public class KSRepDepoRegisterQuantitiesReportBuilder extends CSVReportBuilder<EmptyParams, KSRepDepoRegisterQuantitiesReport> {
|
||||
private final Imdg<Registry> registryImdg;
|
||||
private final Imdg<Company> companyImdg;
|
||||
private final Imdg<AccountSymbols> accountSymbolsImdg;
|
||||
|
||||
private List<KSRepDepoRegisterQuantitiesReport> rows = null;
|
||||
|
||||
public KSRepDepoRegisterQuantitiesReportBuilder(ImdgProvider imdgProvider) {
|
||||
registryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class);
|
||||
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
||||
accountSymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AccountSymbols, AccountSymbols.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -105,8 +111,14 @@ public class KSRepDepoRegisterQuantitiesReportBuilder extends CSVReportBuilder<E
|
|||
pairRegistry.getId());
|
||||
}
|
||||
|
||||
String firmId = registry.getTradingCode();
|
||||
String account = registry.getAccount();
|
||||
AccountSymbols accountSymbols = null;
|
||||
if (IEnumKey.getEnumByKey(AccountType.class, registry.getAccountType()) == AccountType.Depo)
|
||||
accountSymbols = accountSymbolsImdg.getFirstObjectByFieldValues(Map.of("accountId", registry.getAccountId()));
|
||||
if (accountSymbols != null && !StringUtils.isBlank(accountSymbols.getAccountSymbolValue()))
|
||||
account = accountSymbols.getAccountSymbolValue();
|
||||
|
||||
String firmId = registry.getTradingCode();
|
||||
String tkr = registry.getTradingClearingRegistry();
|
||||
String tradeNum = "";
|
||||
String securityId = registry.getSecuritySymbol();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
package ru.spcex.clearing.reports.builders.ks;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.account.AccountSymbols;
|
||||
import ru.clearing.classes.statics.data.company.Company;
|
||||
import ru.clearing.classes.statics.data.registry.Registry;
|
||||
import ru.clearing.platform.dictionary.RegistryCodeDictionary;
|
||||
|
|
@ -29,6 +31,7 @@ public class KSRepDepoRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
|||
private final Imdg<Registry> registryImdg;
|
||||
private final Imdg<Company> companyImdg;
|
||||
private final Imdg<RegistryCodeDictionary> registryCodeDictionaryImdg;
|
||||
private final Imdg<AccountSymbols> accountSymbolsImdg;
|
||||
|
||||
private List<KSRepDepoRegistersReport> rows = null;
|
||||
|
||||
|
|
@ -36,6 +39,7 @@ public class KSRepDepoRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
|||
registryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class);
|
||||
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
||||
registryCodeDictionaryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_RegistryCodeDictionary, RegistryCodeDictionary.class);
|
||||
accountSymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AccountSymbols, AccountSymbols.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -92,7 +96,13 @@ public class KSRepDepoRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
|||
|
||||
KSRepDepoRegistersReport ksRepDepoRegistersReport = new KSRepDepoRegistersReport();
|
||||
ksRepDepoRegistersReport.setFirmId(registry.getTradingCode());
|
||||
ksRepDepoRegistersReport.setAccount(registry.getAccount());
|
||||
|
||||
String account = registry.getAccount();
|
||||
AccountSymbols accountSymbols = accountSymbolsImdg.getFirstObjectByFieldValues(Map.of("accountId", registry.getAccountId()));
|
||||
if (accountSymbols != null && !StringUtils.isBlank(accountSymbols.getAccountSymbolValue()))
|
||||
account = accountSymbols.getAccountSymbolValue();
|
||||
ksRepDepoRegistersReport.setAccount(account);
|
||||
|
||||
ksRepDepoRegistersReport.setTkr(registry.getTradingClearingRegistry());
|
||||
ksRepDepoRegistersReport.setDate(nowDate);
|
||||
ksRepDepoRegistersReport.setSecurityId(registry.getSecuritySymbol());
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
|||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
import ru.clearing.classes.statics.data.account.Account;
|
||||
import ru.clearing.classes.statics.data.account.AccountSymbols;
|
||||
import ru.clearing.classes.statics.data.company.Company;
|
||||
import ru.clearing.classes.statics.data.company.CompanySymbols;
|
||||
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
|
||||
|
|
@ -91,6 +92,7 @@ public class ReportServiceTest_KS {
|
|||
private Imdg<EquitySecurity> equitySecurityImdg;
|
||||
private Imdg<TradingClearingRegistry> tradingClearingRegistryImdg;
|
||||
private Imdg<STrades> sTradesImdg;
|
||||
private Imdg<AccountSymbols> accountSymbolsImdg;
|
||||
|
||||
private Long COMPANY_ID;
|
||||
@Autowired
|
||||
|
|
@ -269,6 +271,11 @@ public class ReportServiceTest_KS {
|
|||
registryCodeDictionary.setName("AS_T_NAME");
|
||||
registryCodeDictionaryImdg.insert(registryCodeDictionary);
|
||||
|
||||
AccountSymbols accountSymbols = new AccountSymbols();
|
||||
accountSymbols.setAccountId(888L);
|
||||
accountSymbols.setAccountSymbolValue("ACCOUNT_SYMBOL_VALUE");
|
||||
accountSymbolsImdg.insert(accountSymbols);
|
||||
|
||||
Registry registry = new Registry();
|
||||
registry.setCompanyId(COMPANY_ID);
|
||||
registry.setSecurityId(777L);
|
||||
|
|
@ -349,6 +356,7 @@ public class ReportServiceTest_KS {
|
|||
registryImdg.delete(addWithdrawRegistry_1);
|
||||
registryImdg.delete(addWithdrawRegistry_2);
|
||||
registryImdg.delete(addWithdrawRegistry_3);
|
||||
accountSymbolsImdg.delete(accountSymbols);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -359,6 +367,11 @@ public class ReportServiceTest_KS {
|
|||
ReportRequest reportRequest = new ReportRequest();
|
||||
reportRequest.setReportId(ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES.getKey());
|
||||
|
||||
AccountSymbols accountSymbols = new AccountSymbols();
|
||||
accountSymbols.setAccountId(777L);
|
||||
accountSymbols.setAccountSymbolValue("ACCOUNT_SYMBOL_VALUE");
|
||||
accountSymbolsImdg.insert(accountSymbols);
|
||||
|
||||
Registry registry_1 = new Registry();
|
||||
registry_1.setUpdated(Instant.now());
|
||||
registry_1.setSecuritySymbol("SECURITY_SYMBOL");
|
||||
|
|
@ -367,6 +380,8 @@ public class ReportServiceTest_KS {
|
|||
registry_1.setTradingClearingRegistry("0008CAT00001");
|
||||
registry_1.setCompanyId(COMPANY_ID);
|
||||
registry_1.setAccount("ACCOUNT");
|
||||
registry_1.setAccountId(777L);
|
||||
registry_1.setAccountType(AccountType.Depo.getKey());
|
||||
registry_1.setRegistryCode("DS_I");
|
||||
registry_1.setRegistryDesignation("D");
|
||||
registry_1.setRegistryInstrumentType("S");
|
||||
|
|
@ -399,6 +414,7 @@ public class ReportServiceTest_KS {
|
|||
|
||||
registryImdg.delete(registry_1);
|
||||
registryImdg.delete(pairRegistry);
|
||||
accountSymbolsImdg.delete(accountSymbols);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -564,6 +580,11 @@ public class ReportServiceTest_KS {
|
|||
reportRequest.setReportId(ReportBuilderType.KS_REP_DEPO_NETTO.getKey());
|
||||
reportRequest.setSessionId(sessionId);
|
||||
|
||||
AccountSymbols accountSymbols = new AccountSymbols();
|
||||
accountSymbols.setAccountId(777L);
|
||||
accountSymbols.setAccountSymbolValue("ACCOUNT_SYMBOL_VALUE");
|
||||
accountSymbolsImdg.insert(accountSymbols);
|
||||
|
||||
Registry registry_1 = new Registry();
|
||||
registry_1.setTradingCode("TRADING_CODE");
|
||||
registry_1.setClearingDate(LocalDate.now());
|
||||
|
|
@ -579,6 +600,7 @@ public class ReportServiceTest_KS {
|
|||
registry_1.setSessionId(sessionId);
|
||||
registry_1.setAccount("ACCOUNT");
|
||||
registry_1.setAccountType(AccountType.Depo.getKey());
|
||||
registry_1.setAccountId(777L);
|
||||
registry_1.setBalance(BigDecimal.valueOf(44.4444444));
|
||||
registryImdg.insert(registry_1);
|
||||
|
||||
|
|
@ -596,6 +618,7 @@ public class ReportServiceTest_KS {
|
|||
registry_2.setSecuritySymbol("SECURITY_SYMBOL");
|
||||
registry_2.setSessionId(sessionId);
|
||||
registry_2.setAccount("ACCOUNT");
|
||||
registry_2.setAccountId(777L);
|
||||
registry_2.setAccountType(AccountType.Depo.getKey());
|
||||
registry_2.setBalance(BigDecimal.valueOf(22.2222222));
|
||||
registryImdg.insert(registry_2);
|
||||
|
|
@ -617,6 +640,7 @@ public class ReportServiceTest_KS {
|
|||
registryImdg.delete(registry_1);
|
||||
registryImdg.delete(registry_2);
|
||||
sessionImdg.delete(session);
|
||||
accountSymbolsImdg.delete(accountSymbols);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
|
|
@ -853,6 +877,7 @@ public class ReportServiceTest_KS {
|
|||
statementImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Statement, Statement.class);
|
||||
equitySecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class);
|
||||
tradingClearingRegistryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
||||
accountSymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AccountSymbols, AccountSymbols.class);
|
||||
sTradesImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_STrades, STrades.class);
|
||||
accountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Account, Account.class);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
"FIRMID","SESSION_ID","SESSION_DATE","ACCOUNT","TKR","SECURITYID","VALUE","DATE"
|
||||
"TRADING_CODE","2","20.01.1970T02:49:58","ACCOUNT","TKR","SECURITY_SYMBOL","22","07.07.2023"
|
||||
"TRADING_CODE","2","20.01.1970T02:49:58","ACCOUNT_SYMBOL_VALUE","TKR","SECURITY_SYMBOL","22","07.07.2023"
|
||||
|
|
|
|||
|
|
|
@ -1,2 +1,2 @@
|
|||
"FIRMID","ACCOUNT","TKR","DATE","SECURITYID","REGISTER_CODE","REGISTER_NAME","OPEN_QUANTITY","CHANGE_QUANTITY","ADD_WITHDRAW_DEPO","CLOSE_QUANTITY","REMARKS","TRADE_NUM"
|
||||
"TRADING_CODE","ACCOUNT","TRADING_CLEARING_REGISTRY","02.10.2023","SECURITY_SYMBOL","AS_T","AS_T_NAME","78","67","111","255","",""
|
||||
"TRADING_CODE","ACCOUNT_SYMBOL_VALUE","TRADING_CLEARING_REGISTRY","02.10.2023","SECURITY_SYMBOL","AS_T","AS_T_NAME","78","67","111","255","",""
|
||||
|
|
|
|||
|
|
|
@ -1,2 +1,2 @@
|
|||
"FIRMID","ACCOUNT","TKR","SECURITYID","REGISTER_CODE","ADD_QUANTITY","ADD_TIME","ADD_DATE","TRADE_NUM"
|
||||
"TRADING_CODE","ACCOUNT","0008CAT00001","SECURITY_SYMBOL","AS_T","10","13:55:53","02.10.2023",""
|
||||
"TRADING_CODE","ACCOUNT_SYMBOL_VALUE","0008CAT00001","SECURITY_SYMBOL","AS_T","10","13:55:53","02.10.2023",""
|
||||
|
|
|
|||
|
Loading…
Add table
Reference in a new issue