From 98df65ed49d0ba29214795386261a8f1dc736790 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Fri, 21 Apr 2023 12:55:30 +0300 Subject: [PATCH] =?UTF-8?q?IMDG=20http://jira.mfd.msk:8088/browse/CLS-275?= =?UTF-8?q?=203.5.0.4,=20meta.3=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=202=20=D1=81=D0=BB=D0=BE=D0=B2=D0=B0=D1=80=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../db-scripts/src/main/resources/db/DDL.sql | 32 ++++++++++++++++--- .../dictionary/MarketCodeDictionary.java | 11 +++++++ .../dictionary/MoneyFlowSideDictionary.java | 2 +- .../platform/dictionary/SideDictionary.java | 11 +++++++ .../MarketCodeDictionaryMapStore.java | 30 +++++++++++++++++ .../dictionary/SideDictionaryMapStore.java | 31 ++++++++++++++++++ .../structure/RunnableMapNamesForTesting.java | 2 ++ .../ru/spcex/platform/enumeration/Task.java | 6 ++-- .../clearing/imdg/IMDGDistributedNames.java | 2 ++ 9 files changed, 119 insertions(+), 8 deletions(-) create mode 100644 clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MarketCodeDictionary.java create mode 100644 clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/SideDictionary.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/MarketCodeDictionaryMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/SideDictionaryMapStore.java diff --git a/clearing-parent/db-scripts/src/main/resources/db/DDL.sql b/clearing-parent/db-scripts/src/main/resources/db/DDL.sql index 91d9d0733..5cd0196ff 100644 --- a/clearing-parent/db-scripts/src/main/resources/db/DDL.sql +++ b/clearing-parent/db-scripts/src/main/resources/db/DDL.sql @@ -1,4 +1,4 @@ --- DB version: 3.5.0.19 +-- DB version: 3.5.0.20 /* Dictionaries */ -- allowed - Справочник признаков допустимости использования объектов @@ -465,10 +465,10 @@ COMMENT ON COLUMN SESSION_TYPE_DICTIONARY.CODE IS 'Код'; COMMENT ON COLUMN SESSION_TYPE_DICTIONARY.NAME IS 'Наименование'; --- moneyFlowSide - Справочник направлений +-- moneyFlowSide - Справочник направлений денежного рынка DROP TABLE IF EXISTS MONEY_FLOW_SIDE_DICTIONARY; CREATE TABLE MONEY_FLOW_SIDE_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255)); -COMMENT ON TABLE MONEY_FLOW_SIDE_DICTIONARY IS 'Справочник направлений'; +COMMENT ON TABLE MONEY_FLOW_SIDE_DICTIONARY IS 'Справочник направлений денежного рынка'; COMMENT ON COLUMN MONEY_FLOW_SIDE_DICTIONARY.ID IS 'Идентификатор'; @@ -476,6 +476,28 @@ COMMENT ON COLUMN MONEY_FLOW_SIDE_DICTIONARY.CODE IS 'Код'; COMMENT ON COLUMN MONEY_FLOW_SIDE_DICTIONARY.NAME IS 'Значение'; +-- side - Справочник направлений +DROP TABLE IF EXISTS SIDE_DICTIONARY; +CREATE TABLE SIDE_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255)); +COMMENT ON TABLE SIDE_DICTIONARY IS 'Справочник направлений'; + +COMMENT ON COLUMN SIDE_DICTIONARY.ID IS 'Идентификатор'; + +COMMENT ON COLUMN SIDE_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN SIDE_DICTIONARY.NAME IS 'Значение'; + +-- marketCode - Справочник кодов рынков +DROP TABLE IF EXISTS MARKET_CODE_DICTIONARY; +CREATE TABLE MARKET_CODE_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255)); +COMMENT ON TABLE MARKET_CODE_DICTIONARY IS 'Справочник кодов рынков'; + +COMMENT ON COLUMN MARKET_CODE_DICTIONARY.ID IS 'Идентификатор'; + +COMMENT ON COLUMN MARKET_CODE_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN MARKET_CODE_DICTIONARY.NAME IS 'Значение'; + -- chargeDirection - Направление начисления комиссии DROP TABLE IF EXISTS CHARGE_DIRECTION_DICTIONARY; CREATE TABLE CHARGE_DIRECTION_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(50)); @@ -1438,7 +1460,7 @@ COMMENT ON COLUMN MARKET.EXCHANGE_ID IS 'Идентификатор площад COMMENT ON COLUMN MARKET.NAME IS 'Наименование рынка'; -COMMENT ON COLUMN MARKET.CODE IS 'Код рынка'; +COMMENT ON COLUMN MARKET.CODE IS 'Код рынка (linked to marketCode)'; COMMENT ON COLUMN MARKET.SETTLEMENT_CURRENCY IS 'Код валюты расчета (linked to currencyCode)'; @@ -1466,7 +1488,7 @@ COMMENT ON COLUMN MARKET_HISTORY.EXCHANGE_ID IS 'Идентификатор пл COMMENT ON COLUMN MARKET_HISTORY.NAME IS 'Наименование рынка'; -COMMENT ON COLUMN MARKET_HISTORY.CODE IS 'Код рынка'; +COMMENT ON COLUMN MARKET_HISTORY.CODE IS 'Код рынка (linked to marketCode)'; COMMENT ON COLUMN MARKET_HISTORY.SETTLEMENT_CURRENCY IS 'Код валюты расчета (linked to currencyCode)'; diff --git a/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MarketCodeDictionary.java b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MarketCodeDictionary.java new file mode 100644 index 000000000..914007aab --- /dev/null +++ b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MarketCodeDictionary.java @@ -0,0 +1,11 @@ +package ru.clearing.platform.dictionary; + +/** + * Справочник кодов рынков + * + * Dictionary DB table: MARKET_CODE_DICTIONARY + **/ +public class MarketCodeDictionary extends AbstractDictionary { + private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID; + +} \ No newline at end of file diff --git a/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MoneyFlowSideDictionary.java b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MoneyFlowSideDictionary.java index 074f8ff38..6c253d4d5 100644 --- a/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MoneyFlowSideDictionary.java +++ b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/MoneyFlowSideDictionary.java @@ -1,7 +1,7 @@ package ru.clearing.platform.dictionary; /** - * Направление заявки + * Справочник направлений денежного рынка * * Dictionary DB table: MONEY_FLOW_SIDE_DICTIONARY **/ diff --git a/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/SideDictionary.java b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/SideDictionary.java new file mode 100644 index 000000000..7dbf76d64 --- /dev/null +++ b/clearing-parent/dictionary/src/main/java/ru/clearing/platform/dictionary/SideDictionary.java @@ -0,0 +1,11 @@ +package ru.clearing.platform.dictionary; + +/** + * Справочник направлений + * + * Dictionary DB table: SIDE_DICTIONARY + **/ +public class SideDictionary extends AbstractDictionary { + private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID; + +} \ No newline at end of file diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/MarketCodeDictionaryMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/MarketCodeDictionaryMapStore.java new file mode 100644 index 000000000..d2e301c08 --- /dev/null +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/MarketCodeDictionaryMapStore.java @@ -0,0 +1,30 @@ +package ru.spcex.clearing.imdg.dictionary; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.clearing.platform.dictionary.MarketCodeDictionary; +import ru.spcex.clearing.imdg.base.DictionaryTMapStore; +import ru.spcex.clearing.imdg.IMDGDistributedNames; + +@Component +public class MarketCodeDictionaryMapStore extends DictionaryTMapStore { + + public MarketCodeDictionaryMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_MarketCodeDictionary; + } + + @Override + public String getTableName() { + return "MARKET_CODE_DICTIONARY"; + } + + @Override + public MarketCodeDictionary getDictionaryObject() { + return new MarketCodeDictionary(); + } +} \ No newline at end of file diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/SideDictionaryMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/SideDictionaryMapStore.java new file mode 100644 index 000000000..7a3eaeeae --- /dev/null +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/dictionary/SideDictionaryMapStore.java @@ -0,0 +1,31 @@ +package ru.spcex.clearing.imdg.dictionary; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.clearing.platform.dictionary.SideDictionary; +import ru.spcex.clearing.imdg.base.DictionaryTMapStore; +import ru.spcex.clearing.imdg.IMDGDistributedNames; + +@Component +public class SideDictionaryMapStore extends DictionaryTMapStore { + + public SideDictionaryMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_SideDictionary; + } + + @Override + public String getTableName() { + return "SIDE_DICTIONARY"; + } + + @Override + public SideDictionary getDictionaryObject() { + return new SideDictionary(); + } + +} diff --git a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java index 34ada30e2..a0e8ee0ac 100644 --- a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java +++ b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java @@ -215,6 +215,7 @@ public class RunnableMapNamesForTesting { dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_ManagementJournalStatusDictionary, ManagementJournalStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_ManagementJournalTypeDictionary, ManagementJournalTypeDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_MoneyFlowSideDictionary, MoneyFlowSideDictionary.class)); + dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_MarketCodeDictionary, MarketCodeDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_OperationStatusDictionary, OperationStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_OperationTypeDictionary, OperationTypeDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_OrganizationTypeDictionary, OrganizationTypeDictionary.class)); @@ -226,6 +227,7 @@ public class RunnableMapNamesForTesting { dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_ServiceProductDictionary, ServiceProductDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_ServiceStatusDictionary, ServiceStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_StatementTypeDictionary, StatementTypeDictionary.class)); + dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_SideDictionary, SideDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_TaskDictionary, TaskDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_TaskStatusDictionary, TaskStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_TermTypeDictionary, TermTypeDictionary.class)); diff --git a/platform-parent/platform-enum/src/main/java/ru/spcex/platform/enumeration/Task.java b/platform-parent/platform-enum/src/main/java/ru/spcex/platform/enumeration/Task.java index eb74613d8..d91325176 100644 --- a/platform-parent/platform-enum/src/main/java/ru/spcex/platform/enumeration/Task.java +++ b/platform-parent/platform-enum/src/main/java/ru/spcex/platform/enumeration/Task.java @@ -8,14 +8,16 @@ public enum Task implements IEnumKey { additionOrDeleteOfBalance("ADBL"),//Дозачисление/списание остатков getOfTrades("GTRD"),//Получение сделок из Торговой системы getVerification("GVER"),// Запуск сверки - getBalance("GBLD"),// Поступление средств + @Deprecated /* todo GBLD удаляется по CLS-267, CLS-275 */ getBalance("GBLD"),// Поступление средств startOfClearing("SCLR"),// Запуск клиринговой сессии startOfPreClearing("SPRC"),// Запуск преклиринга startPostClearing("SPOC"),// Запуск постклиринга createOrder("CORD"), createOrderConfirm("CORC"), getAllBalance("GALB"), - createReport_GREP("GREP");// Создание отчёта (report-service) RPRT нескольких видов, этот GREP + createReport_GREP("GREP"), // Создание отчёта (report-service) RPRT нескольких видов, этот GREP + createRegistry_GORD("GORD"), // Формирование реестра распоряжений, направленных расчетному депозитарию + ; private final String key; diff --git a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java index a989d29b9..3ec5f5b9f 100644 --- a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java +++ b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java @@ -153,6 +153,8 @@ public final class IMDGDistributedNames { public static final String Map_BalanceDimensionDictionary = "Map_BalanceDimensionDictionary"; public static final String Map_DepoAccountTypeDictionary = "Map_DepoAccountTypeDictionary"; public static final String Map_ClearingAccountTypeDictionary = "Map_ClearingAccountTypeDictionary"; + public static final String Map_SideDictionary = "Map_SideDictionary"; + public static final String Map_MarketCodeDictionary = "Map_MarketCodeDictionary"; public static final String Map_ClientCode = "Map_ClientCode"; public static final String Map_ClientCodeHistory = "Map_ClientCodeHistory"; public static final String Map_TradingClearingRegistry = "Map_TradingClearingRegistry";