From f595f0f25153a2b56d290d66a220551ecbe1984a Mon Sep 17 00:00:00 2001 From: akulikov Date: Mon, 25 Sep 2023 12:04:39 +0300 Subject: [PATCH] http://jira.mfd.msk:8088/browse/CLS-497 --- .../reports/config/ReportBuildersConfig.java | 6 ---- .../reports/bean/KSRepFirmDetailsReport.java | 1 + .../KSRepCashRegisterSumsReportBuilder.java | 8 ++++- .../ks/KSRepFirmDetailsReportBuilder.java | 1 + .../reports/ks/KSRepTradesReportBuilder.java | 7 +++-- .../services/ReportServiceTest_KS.java | 30 ++++++++++++++----- .../ks/KS_COMMISSION_TRADES_expected.csv | 2 +- .../ks/KS_REP_CASH_REGISTER_SUMS_expected.csv | 2 +- .../ks/KS_REP_TRADES_expected.csv | 2 +- 9 files changed, 40 insertions(+), 19 deletions(-) diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/config/ReportBuildersConfig.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/config/ReportBuildersConfig.java index 762841d41..320aa95cb 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/config/ReportBuildersConfig.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/config/ReportBuildersConfig.java @@ -24,7 +24,6 @@ public class ReportBuildersConfig { KSRepDepoRegistersReportBuilder ksRepDepoRegistersReportBuilder, KSRepDepoRegisterQuantitiesReportBuilder ksRepDepoRegisterQuantitiesReportBuilder, KSRepTradesReportBuilder ksRepTradesReportBuilder, - KSRepFirmDetailsReportBuilder ksRepFirmDetailsReportBuilder, KSSessionListReportBuilder ksSessionListReportBuilder, KSCommissionTradesReportBuilder ksCommissionTradesReportBuilder ) { @@ -34,7 +33,6 @@ public class ReportBuildersConfig { resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTERS, List.of(ksRepDepoRegistersReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES, List.of(ksRepDepoRegisterQuantitiesReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_TRADES, List.of(ksRepTradesReportBuilder)); - resultMap.put(ReportBuilderType.KS_REP_FIRM_DETAILS, List.of(ksRepFirmDetailsReportBuilder)); resultMap.put(ReportBuilderType.KS_SESSION_LIST, List.of(ksSessionListReportBuilder)); resultMap.put(ReportBuilderType.KS_COMMISSION_TRADES, List.of(ksCommissionTradesReportBuilder)); return resultMap; @@ -72,7 +70,6 @@ public class ReportBuildersConfig { KSRepDepoRegistersReportBuilder ksRepDepoRegistersReportBuilder, KSRepDepoRegisterQuantitiesReportBuilder ksRepDepoRegisterQuantitiesReportBuilder, KSRepTradesReportBuilder ksRepTradesReportBuilder, - KSRepFirmDetailsReportBuilder ksRepFirmDetailsReportBuilder, KSRepCashNettoReportBuilder ksRepCashNettoReportBuilder, KSRepDepoNettoReportBuilder ksRepDepoNettoReportBuilder, KSSessionListReportBuilder ksSessionListReportBuilder, @@ -84,7 +81,6 @@ public class ReportBuildersConfig { resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTERS, List.of(ksRepDepoRegistersReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES, List.of(ksRepDepoRegisterQuantitiesReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_TRADES, List.of(ksRepTradesReportBuilder)); - resultMap.put(ReportBuilderType.KS_REP_FIRM_DETAILS, List.of(ksRepFirmDetailsReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_CASH_NETTO, List.of(ksRepCashNettoReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_DEPO_NETTO, List.of(ksRepDepoNettoReportBuilder)); resultMap.put(ReportBuilderType.KS_SESSION_LIST, List.of(ksSessionListReportBuilder)); @@ -99,7 +95,6 @@ public class ReportBuildersConfig { KSRepDepoRegistersReportBuilder ksRepDepoRegistersReportBuilder, KSRepDepoRegisterQuantitiesReportBuilder ksRepDepoRegisterQuantitiesReportBuilder, KSRepTradesReportBuilder ksRepTradesReportBuilder, - KSRepFirmDetailsReportBuilder ksRepFirmDetailsReportBuilder, KSRepCashNettoReportBuilder ksRepCashNettoReportBuilder, KSRepDepoNettoReportBuilder ksRepDepoNettoReportBuilder, KSSessionListReportBuilder ksSessionListReportBuilder, @@ -111,7 +106,6 @@ public class ReportBuildersConfig { resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTERS, List.of(ksRepDepoRegistersReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES, List.of(ksRepDepoRegisterQuantitiesReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_TRADES, List.of(ksRepTradesReportBuilder)); - resultMap.put(ReportBuilderType.KS_REP_FIRM_DETAILS, List.of(ksRepFirmDetailsReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_CASH_NETTO, List.of(ksRepCashNettoReportBuilder)); resultMap.put(ReportBuilderType.KS_REP_DEPO_NETTO, List.of(ksRepDepoNettoReportBuilder)); resultMap.put(ReportBuilderType.KS_SESSION_LIST, List.of(ksSessionListReportBuilder)); diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bean/KSRepFirmDetailsReport.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bean/KSRepFirmDetailsReport.java index ceeb88cd6..cfaeddd2a 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bean/KSRepFirmDetailsReport.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bean/KSRepFirmDetailsReport.java @@ -6,6 +6,7 @@ import com.opencsv.bean.CsvDate; import java.time.LocalDate; +@Deprecated public class KSRepFirmDetailsReport { @CsvBindByName(column = "FIRMID") @CsvBindByPosition(position = 0) diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepCashRegisterSumsReportBuilder.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepCashRegisterSumsReportBuilder.java index b23ff0e41..e30c9271c 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepCashRegisterSumsReportBuilder.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepCashRegisterSumsReportBuilder.java @@ -93,6 +93,12 @@ public class KSRepCashRegisterSumsReportBuilder extends CSVReportBuilder { private final Imdg companyImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepTradesReportBuilder.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepTradesReportBuilder.java index c7220caf8..e4102cf2a 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepTradesReportBuilder.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepTradesReportBuilder.java @@ -130,9 +130,12 @@ public class KSRepTradesReportBuilder extends CSVReportBuilder statementImdg; + private Imdg accountImdg; private Imdg registryImdg; private Imdg marketImdg; private Imdg companyImdg; @@ -178,22 +180,30 @@ public class ReportServiceTest_KS { registry_1.setRegistryDesignation("A"); registry_1.setRegistryInstrumentType("M"); registry_1.setRegistryUnit("T"); - registry_1.setTradingClearingRegistry("TRADING_CLEARING_REGISTRY"); + registry_1.setTradingClearingRegistry("0008CAT00001"); registryImdg.insert(registry_1); TradingClearingRegistry tkr = new TradingClearingRegistry(); tkr.setMoneyAccountId(777L); + tkr.setCode("0008CAT00001"); + tkr.setCompanyId(COMPANY_ID); tradingClearingRegistryImdg.insert(tkr); + Account account = new Account(); + account.setAccountType(AccountType.Info.getKey()); + account.setAccount("ACCOUNT"); + Long accountId = accountImdg.insert(account); + Statement statement_1 = new Statement(); statement_1.setAddresseeId(COMPANY_ID); statement_1.setAccount("ACCOUNT"); - statement_1.setAccountId(777L); + statement_1.setAccountId(accountId); statement_1.setInOutDirection(InOutDirection.in.getKey()); statement_1.setInOutSDfType(InOutSDfType.type57.getKey()); statement_1.setOperationStatus(OperationStatus.Executed.getKey()); statement_1.setAmount(BigDecimal.valueOf(7777.777777777)); statement_1.setCreated(Instant.now()); + statement_1.setComment("Зачислить на ТКР 0008CAT00001"); statementImdg.insert(statement_1); String jsonString = TestUtils.getJsonStringForSystem(reportRequest, 0L); @@ -213,6 +223,7 @@ public class ReportServiceTest_KS { registryImdg.delete(registry_1); statementImdg.delete(statement_1); tradingClearingRegistryImdg.delete(tkr); + accountImdg.delete(account); } @Test @@ -344,6 +355,7 @@ public class ReportServiceTest_KS { executionFond.setMarket("3333"); executionFond.setCompanyId(COMPANY_ID); executionFond.setTradingDate(LocalDate.now()); + executionFond.setSide(MoneyFlowSide.SELL.getKey()); executionFond.setSessionId(sessionId_1); executionFond.setTradingClearingRegistryId(tkrId); executionFond.setSettlementAmount(BigDecimal.valueOf(8888.888888)); @@ -372,6 +384,7 @@ public class ReportServiceTest_KS { executionDeposit.setMarket("3333"); executionDeposit.setCompanyId(COMPANY_ID); executionDeposit.setTradingDate(LocalDate.now()); + executionDeposit.setSide(Side.BUY.getKey()); executionDeposit.setSessionId(sessionId_2); executionDeposit.setTradingClearingRegistryId(tkrId); executionDeposit.setFirstLegAmount(BigDecimal.valueOf(8888.888888)); @@ -528,7 +541,7 @@ public class ReportServiceTest_KS { sessionImdg.delete(session); } - @Test + @Deprecated @Order(8) public void createReportTest_KSRepFirmDetailsReport() throws IOException, CsvValidationException { clearTestDir(); @@ -645,11 +658,11 @@ public class ReportServiceTest_KS { companySymbolsImdg.insert(companySymbols); Registry registry = new Registry(); - registry.setRegistryStatus(RegistryStatus.OK.getKey()); + registry.setRegistryStatus(RegistryStatus.CLRD.getKey()); registry.setCompanyId(COMPANY_ID); - registry.setRegistryCode("DM_T"); - registry.setRegistryDesignation(RegistryDesignation.D.getKey()); - registry.setRegistryInstrumentType(RegistryInstrumentType.M.getKey()); + registry.setRegistryCode("TS_T"); + registry.setRegistryDesignation(RegistryDesignation.T.getKey()); + registry.setRegistryInstrumentType(RegistryInstrumentType.S.getKey()); registry.setRegistryUnit(RegistryUnit.T.getKey()); registry.setBalance(BigDecimal.valueOf(77.777777777)); registry.setSecuritySymbol("SECURITY_SYMBOL"); @@ -660,6 +673,8 @@ public class ReportServiceTest_KS { registry.setContract("CONT~RACT"); registry.setClearingCode("CLEARING_CODE"); registry.setGroupId(23071812300L); + registry.setSessionType(SessionType.XDEP.getKey()); + registry.setValueDate(LocalDate.now().minusDays(10)); registryImdg.insert(registry); Registry omtRegistry = new Registry(); @@ -761,6 +776,7 @@ public class ReportServiceTest_KS { equitySecurityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class); tradingClearingRegistryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class); sTradesImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_STrades, STrades.class); + accountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Account, Account.class); } private void clearTestDir() throws IOException { diff --git a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_COMMISSION_TRADES_expected.csv b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_COMMISSION_TRADES_expected.csv index 82be43293..6a77684fe 100644 --- a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_COMMISSION_TRADES_expected.csv +++ b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_COMMISSION_TRADES_expected.csv @@ -1,2 +1,2 @@ "FIRM_ID","FIRM_ID_INITIATOR","SECCODE","CLASS_CODE","AGREEMENT_NUMBER","AGREEMENT_NUMBER_POSTFIX","AGREEMENT_DATE","SUM","REPAYM_DATE","EXEC_STATUS" -"CLEARING_CODE","TRADING_CODE","SECURITY_SYMBOL","market","CONT","CONT~RACT","01.01.1991","77.78","05.09.2023","Исполнено" +"CLEARING_CODE","TRADING_CODE","CONT~RACT","market","CONT","CONT~RACT","01.01.1991","77.78","05.09.2023","Исполнено" diff --git a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_CASH_REGISTER_SUMS_expected.csv b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_CASH_REGISTER_SUMS_expected.csv index 16b9bade9..73425c69a 100644 --- a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_CASH_REGISTER_SUMS_expected.csv +++ b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_CASH_REGISTER_SUMS_expected.csv @@ -1,2 +1,2 @@ "FIRMID","ACCOUNT","TKR","REGISTER_CODE","ADD_SUM","ADD_TIME","ADD_DATE","TRADE_NUM" -"1","ACCOUNT","TRADING_CLEARING_REGISTRY","AM_T","7777.78","15:49:30","01.08.2023","" +"1","","0008CAT00001","AM_T","7777.78","15:49:30","01.08.2023","" diff --git a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_TRADES_expected.csv b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_TRADES_expected.csv index 288861943..f39d01130 100644 --- a/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_TRADES_expected.csv +++ b/clearing-parent/reports-service/src/test/resources/expected_reports_csv/ks/KS_REP_TRADES_expected.csv @@ -1,3 +1,3 @@ "SESSION_ID","SESSION_DATE","TR_ID","FIRM_ID","TKR","CASH_LIABILITY","DEPO_LIABILITY","TRADE_NUM","CLASS_CODE","TRADE_DATE","STATUS" "4","20.01.1970T07:09:07","8","TRADING_CODE","TKR","8888.89","0","222",3333,"20.01.1970T02:49:58","0" -"3","20.01.1970T15:54:43","5","TRADING_CODE","TKR","8888.89","123","222",3333,"20.01.1970T02:49:58","1" +"3","20.01.1970T15:54:43","5","TRADING_CODE","TKR","8888.89","-123","222",3333,"20.01.1970T02:49:58","1"