diff --git a/clearing-parent/backend-api/src/main/resources/meta/data.xml b/clearing-parent/backend-api/src/main/resources/meta/data.xml index 07c4637d0..d21d3564b 100644 --- a/clearing-parent/backend-api/src/main/resources/meta/data.xml +++ b/clearing-parent/backend-api/src/main/resources/meta/data.xml @@ -84,6 +84,7 @@ + diff --git a/clearing-parent/backend-api/src/main/resources/meta/meta.json b/clearing-parent/backend-api/src/main/resources/meta/meta.json index 510eae0f4..eb87ce61e 100644 --- a/clearing-parent/backend-api/src/main/resources/meta/meta.json +++ b/clearing-parent/backend-api/src/main/resources/meta/meta.json @@ -6835,7 +6835,7 @@ "type": 12,"dbname": "Код направления сделки","name": "Направление сделки","shortname": "Направление","visible": true,"searchable": true,"sortable": true,"link": "side" } , - {"code": "сurrencyCode", + {"code": "currencyCode", "type": 12,"name": "Код валюты лота","shortname": "Код валюты лота","searchable": true,"sortable": true,"link": "currencyCode","linkCode": "code" } , @@ -9188,6 +9188,10 @@ {"code": "acc_name", "type": 2,"length": 30,"name": "Наименование участника клиринга","shortname": "Наименование УК","searchable": true,"sortable": true,"visible": true } + , + {"code": "acc_type", + "type": 2,"length": 3,"name": "Признак счета","shortname": "Признак счета","searchable": true,"sortable": true,"visible": true + } , {"code": "deal", "type": 2,"length": 4,"name": "Биржевой код участника клиринга","shortname": "Биржевой код УК","searchable": true,"sortable": true,"visible": true diff --git a/clearing-parent/backend-api/src/main/resources/meta/meta.xml b/clearing-parent/backend-api/src/main/resources/meta/meta.xml index b9855afe7..da4f495e1 100644 --- a/clearing-parent/backend-api/src/main/resources/meta/meta.xml +++ b/clearing-parent/backend-api/src/main/resources/meta/meta.xml @@ -1579,7 +1579,7 @@ - <сurrencyCode type="12" name="Код валюты лота" shortname="Код валюты лота" searchable="true" sortable="true" link="currencyCode" linkCode="code"/> + @@ -2116,6 +2116,7 @@ + diff --git a/clearing-parent/backend-api/src/test/java/ru/spcex/clearing/backendapi/service/validation/FieldNameMetaValidationTest.java b/clearing-parent/backend-api/src/test/java/ru/spcex/clearing/backendapi/service/validation/FieldNameMetaValidationTest.java new file mode 100644 index 000000000..07986e4f3 --- /dev/null +++ b/clearing-parent/backend-api/src/test/java/ru/spcex/clearing/backendapi/service/validation/FieldNameMetaValidationTest.java @@ -0,0 +1,62 @@ +package ru.spcex.clearing.backendapi.service.validation; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import ru.spcex.clearing.backendapi.meta.*; + +import java.util.Map; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(SpringExtension.class) +@ContextConfiguration(classes = GetResponseFactoryTestConfiguration.class) +class FieldNameMetaValidationTest { + + @Autowired + @Qualifier("metaJsonTest") + protected MetaServer meta; + + @Test + void checkLatinSymbolInName() { + for (Map.Entry dictionary : meta.getEnums().entrySet()) { + String dicName = dictionary.getKey(); + assertFalse(containWrongSymbols(dicName), "dictionary name: " + dicName); + //assertEquals(dicName, dictionary.getValue().getName()); + for (ActionField field : dictionary.getValue().getFields()) { + String fieldName = field.getCode(); + assertFalse(containWrongSymbols(fieldName), "dictionary " + dicName + " code: " + fieldName); + if (field.getField() != null) { + fieldName = field.getField(); + assertFalse(containWrongSymbols(fieldName), "dictionary " + dicName + " field: " + fieldName); + } + + } + } + for (Map.Entry object : meta.getObjects().entrySet()) { + String objName = object.getKey(); + assertFalse(containWrongSymbols(objName), "object name: " + objName); +// assertEquals(objName, object.getValue().getName()); + for (ActionField field : object.getValue().getFields()) { + String fieldName = field.getCode(); + assertFalse(containWrongSymbols(fieldName), "object " + objName + " code: " + fieldName); + if (field.getField() != null) { + fieldName = field.getField(); + assertFalse(containWrongSymbols(fieldName), "object " + objName + " field: " + fieldName); + } + } + } + + } + + protected boolean containWrongSymbols(String name) { + if (name == null) + return true; + if (name.equals("namа")) + return true; + return name.matches("[^A-Za-z_0-9]"); + } +} \ No newline at end of file diff --git a/clearing-parent/backend-api/src/test/resources/meta.json b/clearing-parent/backend-api/src/test/resources/meta.json index 510eae0f4..eb87ce61e 100644 --- a/clearing-parent/backend-api/src/test/resources/meta.json +++ b/clearing-parent/backend-api/src/test/resources/meta.json @@ -6835,7 +6835,7 @@ "type": 12,"dbname": "Код направления сделки","name": "Направление сделки","shortname": "Направление","visible": true,"searchable": true,"sortable": true,"link": "side" } , - {"code": "сurrencyCode", + {"code": "currencyCode", "type": 12,"name": "Код валюты лота","shortname": "Код валюты лота","searchable": true,"sortable": true,"link": "currencyCode","linkCode": "code" } , @@ -9188,6 +9188,10 @@ {"code": "acc_name", "type": 2,"length": 30,"name": "Наименование участника клиринга","shortname": "Наименование УК","searchable": true,"sortable": true,"visible": true } + , + {"code": "acc_type", + "type": 2,"length": 3,"name": "Признак счета","shortname": "Признак счета","searchable": true,"sortable": true,"visible": true + } , {"code": "deal", "type": 2,"length": 4,"name": "Биржевой код участника клиринга","shortname": "Биржевой код УК","searchable": true,"sortable": true,"visible": true diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/sdf/SDf52.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/sdf/SDf52.java index 22a257c90..30be11614 100644 --- a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/sdf/SDf52.java +++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/sdf/SDf52.java @@ -15,6 +15,7 @@ public class SDf52 extends SpcexObjectBase { private String account; private String acc_name; + private String acc_type; private String deal; private String date; private Long status; @@ -36,6 +37,13 @@ public class SDf52 extends SpcexObjectBase { this.acc_name=value; } + public String getAcc_type() { + return acc_type; + } + public void setAcc_type(String value) { + this.acc_type=value; + } + public String getDeal() { return deal; } diff --git a/clearing-parent/db-scripts/src/main/resources/db/DATA.sql b/clearing-parent/db-scripts/src/main/resources/db/DATA.sql index d9c6571a6..f25c9be35 100644 --- a/clearing-parent/db-scripts/src/main/resources/db/DATA.sql +++ b/clearing-parent/db-scripts/src/main/resources/db/DATA.sql @@ -170,6 +170,8 @@ INSERT INTO COMPANY_SYMBOL_DICTIONARY(ID, CODE, NAME, SHORTNAME) values (19, 'LI INSERT INTO COMPANY_SYMBOL_DICTIONARY(ID, CODE, NAME, SHORTNAME) values (20, 'INTC', 'Код инициатора', 'Код инициатора') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME, SHORTNAME = EXCLUDED.SHORTNAME; +INSERT INTO COMPANY_SYMBOL_DICTIONARY(ID, CODE, NAME, SHORTNAME) values (21, 'CRCD', 'Атрибут участника «Кросс - код»', 'Кросс код') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME, SHORTNAME = EXCLUDED.SHORTNAME; + INSERT INTO COMPANY_ROLE_DICTIONARY(ID, CODE, NAME) values (1, 'RPRT', 'Отчетная организация') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME; INSERT INTO COMPANY_ROLE_DICTIONARY(ID, CODE, NAME) values (2, 'CLRH', 'Клиринговая организация') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME; 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 65d3d0bee..3f7d702e8 100644 --- a/clearing-parent/db-scripts/src/main/resources/db/DDL.sql +++ b/clearing-parent/db-scripts/src/main/resources/db/DDL.sql @@ -3191,7 +3191,7 @@ GRANT ALL PRIVILEGES ON TABLE EXECUTION_FOND_HISTORY TO clearing; -- executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY; -CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY IS 'Сделки с валютными инструментами'; COMMENT ON COLUMN EXECUTION_CURRENCY.EXCHANGE_EXECUTION_ID IS 'Идентификационный номер сделки в Торговой системе'; @@ -3236,7 +3236,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY.QUANTITY IS 'Количество штук' COMMENT ON COLUMN EXECUTION_CURRENCY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; @@ -3257,7 +3257,7 @@ GRANT ALL PRIVILEGES ON TABLE EXECUTION_CURRENCY TO clearing; -- History log of executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY_HISTORY; -CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY_HISTORY IS 'История изменений таблицы executionCurrency'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EXECUTION_CURRENCY_ID IS 'Идентификатор записи в таблице EXECUTION_CURRENCY'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EVENT_TIME IS 'Дата и время изменения'; @@ -3306,7 +3306,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.QUANTITY IS 'Количество COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; @@ -4472,7 +4472,7 @@ GRANT ALL PRIVILEGES ON TABLE S_DF51 TO clearing; -- sDf52 - ДФ-52 Информация о состоянии счета (блокировка/разблокировка/закрытие/открытие) DROP TABLE IF EXISTS S_DF52; -CREATE TABLE S_DF52(ID bigint PRIMARY KEY, ACCOUNT varchar(25), ACC_NAME varchar(30), DEAL varchar(4), DATE varchar(8), STATUS bigint, FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +CREATE TABLE S_DF52(ID bigint PRIMARY KEY, ACCOUNT varchar(25), ACC_NAME varchar(30), ACC_TYPE varchar(3), DEAL varchar(4), DATE varchar(8), STATUS bigint, FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); COMMENT ON TABLE S_DF52 IS 'ДФ-52 Информация о состоянии счета (блокировка/разблокировка/закрытие/открытие)'; COMMENT ON COLUMN S_DF52.ID IS 'Идентификатор записи'; @@ -4481,6 +4481,8 @@ COMMENT ON COLUMN S_DF52.ACCOUNT IS 'Код счета участника кли COMMENT ON COLUMN S_DF52.ACC_NAME IS 'Наименование участника клиринга'; +COMMENT ON COLUMN S_DF52.ACC_TYPE IS 'Признак счета'; + COMMENT ON COLUMN S_DF52.DEAL IS 'Биржевой код участника клиринга'; COMMENT ON COLUMN S_DF52.DATE IS 'Дата изменения состояния счета'; diff --git a/clearing-parent/db-scripts/src/main/resources/db/updateDDL_3.11.sql b/clearing-parent/db-scripts/src/main/resources/db/updateDDL_3.11.sql index 7901fcf37..a606d1208 100644 --- a/clearing-parent/db-scripts/src/main/resources/db/updateDDL_3.11.sql +++ b/clearing-parent/db-scripts/src/main/resources/db/updateDDL_3.11.sql @@ -133,7 +133,7 @@ GRANT ALL PRIVILEGES ON TABLE TRADING_CLEARING_REGISTRY_LIST_HISTORY TO clearing -- executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY; -CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY IS 'Сделки с валютными инструментами'; COMMENT ON COLUMN EXECUTION_CURRENCY.EXCHANGE_EXECUTION_ID IS 'Идентификационный номер сделки в Торговой системе'; COMMENT ON COLUMN EXECUTION_CURRENCY.EXCHANGE_EXECUTION_TIME IS 'Время заключения сделки в Торговой системе'; @@ -156,7 +156,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY.LOTS IS 'Количество лотов'; COMMENT ON COLUMN EXECUTION_CURRENCY.SETTLEMENT_AMOUNT IS 'Объем сделки в валюте лота'; COMMENT ON COLUMN EXECUTION_CURRENCY.QUANTITY IS 'Количество штук'; COMMENT ON COLUMN EXECUTION_CURRENCY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; COMMENT ON COLUMN EXECUTION_CURRENCY.COVERAGE_STATUS IS 'Код статуса достаточности обеспечения (linked to allowed)'; COMMENT ON COLUMN EXECUTION_CURRENCY.SESSION_ID IS 'Идентификатор клиринговой сессии (linked to session)'; @@ -169,7 +169,7 @@ GRANT ALL PRIVILEGES ON TABLE EXECUTION_CURRENCY TO clearing; -- History log of executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY_HISTORY; -CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY_HISTORY IS 'История изменений таблицы executionCurrency'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EXECUTION_CURRENCY_ID IS 'Идентификатор записи в таблице EXECUTION_CURRENCY'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EVENT_TIME IS 'Дата и время изменения'; @@ -196,7 +196,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.LOTS IS 'Количество ло COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SETTLEMENT_AMOUNT IS 'Объем сделки в валюте лота'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.QUANTITY IS 'Количество штук'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.COVERAGE_STATUS IS 'Код статуса достаточности обеспечения (linked to allowed)'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SESSION_ID IS 'Идентификатор клиринговой сессии (linked to session)'; @@ -284,6 +284,9 @@ COMMENT ON COLUMN S_DF07._DOC__NUM IS 'Номер выгружаемого до COMMENT ON COLUMN S_DF07._DOC__DATE IS 'Дата выгружаемого документа'; COMMENT ON COLUMN S_DF07.PAY_VAL IS 'Валюта документа'; +ALTER TABLE S_DF52 ADD COLUMN IF NOT EXISTS ACC_TYPE varchar(3); +COMMENT ON COLUMN S_DF52.ACC_TYPE IS 'Признак счета'; + ALTER TABLE S_DF54 ADD COLUMN IF NOT EXISTS _DOC__NUM varchar(3); ALTER TABLE S_DF54 ADD COLUMN IF NOT EXISTS _DOC__DATE varchar(8); ALTER TABLE S_DF54 ADD COLUMN IF NOT EXISTS _VALUE_DATE varchar(8); diff --git a/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf52Table.java b/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf52Table.java index 1a5fcaf1c..6cade2412 100644 --- a/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf52Table.java +++ b/clearing-parent/dbf-importer/src/main/java/ru/spcex/clearing/dbf/importer/logic/data/tables/SDf52Table.java @@ -25,6 +25,7 @@ public class SDf52Table extends AbstractTable { result.setDeal((String) entity[2]); result.setDate((String) entity[3]); BigDecimal status = (BigDecimal) entity[4]; + //todo result.setAcc_type((String) entity[?]); result.setStatus(status != null ? status.longValue() : null); // or safe universal type result.setStatus(anyNumberToLong(entity[4])); result.setFileName(filename); result.setGenerationTime(Instant.now()); diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/object/SDf52MapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/object/SDf52MapStore.java index aff7a012d..a6b6058a1 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/object/SDf52MapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/object/SDf52MapStore.java @@ -33,7 +33,7 @@ public class SDf52MapStore extends TemplateMapStore { @Override public String[] getFields() { return new String[]{ - "ID", "ACCOUNT", "ACC_NAME", "DEAL", "DATE", "STATUS", "FILE_NAME", "GENERATION_TIME", "GENERATION_ID" + "ID", "ACCOUNT", "ACC_NAME", "ACC_TYPE", "DEAL", "DATE", "STATUS", "FILE_NAME", "GENERATION_TIME", "GENERATION_ID" }; } @@ -58,6 +58,7 @@ public class SDf52MapStore extends TemplateMapStore { object.setId(resultSet.getObject("ID", Long.class)); object.setAccount(resultSet.getObject("ACCOUNT", String.class)); object.setAcc_name(resultSet.getObject("ACC_NAME", String.class)); + object.setAcc_type(resultSet.getObject("ACC_TYPE", String.class)); object.setDeal(resultSet.getObject("DEAL", String.class)); object.setDate(resultSet.getObject("DATE", String.class)); object.setStatus(resultSet.getObject("STATUS", Long.class)); @@ -73,6 +74,7 @@ public class SDf52MapStore extends TemplateMapStore { object.getId(), object.getAccount(), object.getAcc_name(), + object.getAcc_type(), object.getDeal(), object.getDate(), object.getStatus(), diff --git a/clearing-parent/imdg/src/test/resources/ddl.sql b/clearing-parent/imdg/src/test/resources/ddl.sql index 1ccd91085..bb0d8a9eb 100644 --- a/clearing-parent/imdg/src/test/resources/ddl.sql +++ b/clearing-parent/imdg/src/test/resources/ddl.sql @@ -1,4 +1,4 @@ --- DB version: 3.11.0.78 +-- DB version: 3.11.0.81 /* Dictionaries */ -- allowed - Справочник признаков допустимости использования объектов @@ -783,10 +783,10 @@ COMMENT ON COLUMN CURRENCY_SETTLEMENT_TYPE_DICTIONARY.NAME IS 'Тип расче GRANT ALL PRIVILEGES ON TABLE CURRENCY_SETTLEMENT_TYPE_DICTIONARY TO clearing; --- currencyPair - Справочник способов доставки документа +-- currencyPair - Справочник валютных пар DROP TABLE IF EXISTS CURRENCY_PAIR_DICTIONARY; -CREATE TABLE CURRENCY_PAIR_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), BASE_CURRENCY_ID varchar(4), QUOTE_CURRENCY_ID varchar(4), MAJOR_SIGN varchar(4)); -COMMENT ON TABLE CURRENCY_PAIR_DICTIONARY IS 'Справочник способов доставки документа'; +CREATE TABLE CURRENCY_PAIR_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(25), BASE_CURRENCY_ID varchar(4), QUOTE_CURRENCY_ID varchar(4), MAJOR_SIGN varchar(4)); +COMMENT ON TABLE CURRENCY_PAIR_DICTIONARY IS 'Справочник валютных пар'; COMMENT ON COLUMN CURRENCY_PAIR_DICTIONARY.ID IS 'Идентификатор'; @@ -1759,7 +1759,7 @@ COMMENT ON COLUMN CURRENCY_PAIR_SECURITY.CURRENCY_PAIR_ID IS 'Идентифик COMMENT ON COLUMN CURRENCY_PAIR_SECURITY.CODE IS 'Наименование валютной пары (linked to currencyPair)'; -COMMENT ON COLUMN CURRENCY_PAIR_SECURITY.SETTLEMENT_TYPE IS 'Код статуса (linked to currencySettlementType)'; +COMMENT ON COLUMN CURRENCY_PAIR_SECURITY.SETTLEMENT_TYPE IS 'Тип расчета (linked to currencySettlementType)'; COMMENT ON COLUMN CURRENCY_PAIR_SECURITY.CLEARING_ORGANIZATION IS 'Наименование клиринговой организации'; @@ -1791,7 +1791,7 @@ COMMENT ON COLUMN CURRENCY_PAIR_SECURITY_HISTORY.CURRENCY_PAIR_ID IS 'Идент COMMENT ON COLUMN CURRENCY_PAIR_SECURITY_HISTORY.CODE IS 'Наименование валютной пары (linked to currencyPair)'; -COMMENT ON COLUMN CURRENCY_PAIR_SECURITY_HISTORY.SETTLEMENT_TYPE IS 'Код статуса (linked to currencySettlementType)'; +COMMENT ON COLUMN CURRENCY_PAIR_SECURITY_HISTORY.SETTLEMENT_TYPE IS 'Тип расчета (linked to currencySettlementType)'; COMMENT ON COLUMN CURRENCY_PAIR_SECURITY_HISTORY.CLEARING_ORGANIZATION IS 'Наименование клиринговой организации'; @@ -3191,7 +3191,7 @@ GRANT ALL PRIVILEGES ON TABLE EXECUTION_FOND_HISTORY TO clearing; -- executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY; -CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY(EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY IS 'Сделки с валютными инструментами'; COMMENT ON COLUMN EXECUTION_CURRENCY.EXCHANGE_EXECUTION_ID IS 'Идентификационный номер сделки в Торговой системе'; @@ -3236,7 +3236,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY.QUANTITY IS 'Количество штук' COMMENT ON COLUMN EXECUTION_CURRENCY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; @@ -3257,7 +3257,7 @@ GRANT ALL PRIVILEGES ON TABLE EXECUTION_CURRENCY TO clearing; -- History log of executionCurrency - Сделки с валютными инструментами DROP TABLE IF EXISTS EXECUTION_CURRENCY_HISTORY; -CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), _сURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); +CREATE TABLE EXECUTION_CURRENCY_HISTORY(EXECUTION_CURRENCY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), EXCHANGE_EXECUTION_ID bigint, EXCHANGE_EXECUTION_TIME timestamp, EXCHANGE_EXECUTION_MICROSECONDS timestamp, TRADING_DATE date, SETTLEMENT_DATE date, SETTLEMENT_CODE varchar(12), SECURITY_ID bigint, SECURITY_SYMBOL varchar(255), SECURITY_NAME varchar(255), COMPANY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY_ID bigint, PARTY_TRADING_CLEARING_REGISTRY varchar(20), COUNTER_PARTY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY_ID bigint, COUNTER_PARTY_TRADING_CLEARING_REGISTRY varchar(20), MARKET varchar(4), PRICE numeric(72,18), LOTS numeric(72,2), SETTLEMENT_AMOUNT numeric(72,2), QUANTITY numeric(72,2), SIDE varchar(4), CURRENCY_CODE varchar(4), SETTLEMENT_ORGANIZATION varchar(255), COVERAGE_STATUS varchar(4), SESSION_ID bigint, CLEARING_DATE date, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp); COMMENT ON TABLE EXECUTION_CURRENCY_HISTORY IS 'История изменений таблицы executionCurrency'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EXECUTION_CURRENCY_ID IS 'Идентификатор записи в таблице EXECUTION_CURRENCY'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.EVENT_TIME IS 'Дата и время изменения'; @@ -3306,7 +3306,7 @@ COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.QUANTITY IS 'Количество COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SIDE IS 'Код направления сделки (linked to side)'; -COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY._сURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; +COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.CURRENCY_CODE IS 'Код валюты лота (linked to currencyCode)'; COMMENT ON COLUMN EXECUTION_CURRENCY_HISTORY.SETTLEMENT_ORGANIZATION IS 'Наименование расчетной организации'; @@ -4104,7 +4104,7 @@ GRANT ALL PRIVILEGES ON TABLE S_DF05 TO clearing; -- sDf06 - ДФ-06 Запрос на зачисление/списание денежных средств DROP TABLE IF EXISTS S_DF06; -CREATE TABLE S_DF06(ID bigint PRIMARY KEY, ACCOUNT varchar(20), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(255), DEAL varchar(10), CLIENT_N varchar(255), INN varchar(255), BIC varchar(255), SPEC varchar(255), NUMBER numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE date, PAY_VAL varchar(12)); +CREATE TABLE S_DF06(ID bigint PRIMARY KEY, ACCOUNT varchar(20), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(255), DEAL varchar(10), CLIENT_N varchar(255), INN varchar(255), BIC varchar(255), SPEC varchar(255), NUMBER numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE varchar(8), PAY_VAL varchar(12)); COMMENT ON TABLE S_DF06 IS 'ДФ-06 Запрос на зачисление/списание денежных средств'; COMMENT ON COLUMN S_DF06.ID IS 'Идентификатор записи'; @@ -4145,7 +4145,7 @@ GRANT ALL PRIVILEGES ON TABLE S_DF06 TO clearing; -- sDf07 - ДФ-07 Ответ на запрос по зачислению/списанию денежных средств DROP TABLE IF EXISTS S_DF07; -CREATE TABLE S_DF07(ID bigint PRIMARY KEY, ACCOUNT varchar(20), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(255), DEAL varchar(10), CLIENT_N varchar(255), INN varchar(255), BIC varchar(255), SPEC varchar(255), NUMBER numeric(72,18), RESULT numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, IN_S_DF_ID bigint, _DOC__NUM varchar(3), _DOC__DATE date, PAY_VAL varchar(12)); +CREATE TABLE S_DF07(ID bigint PRIMARY KEY, ACCOUNT varchar(20), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(255), DEAL varchar(10), CLIENT_N varchar(255), INN varchar(255), BIC varchar(255), SPEC varchar(255), NUMBER numeric(72,18), RESULT numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, IN_S_DF_ID bigint, _DOC__NUM varchar(3), _DOC__DATE varchar(8), PAY_VAL varchar(12)); COMMENT ON TABLE S_DF07 IS 'ДФ-07 Ответ на запрос по зачислению/списанию денежных средств'; COMMENT ON COLUMN S_DF07.ID IS 'Идентификатор записи'; @@ -4526,7 +4526,7 @@ GRANT ALL PRIVILEGES ON TABLE S_DF53 TO clearing; -- sDf54 - ДФ-54 Вывод свободных средств для инициаторов категории В с клирингового счета 30414 DROP TABLE IF EXISTS S_DF54; -CREATE TABLE S_DF54(ID bigint PRIMARY KEY, SEG_TYPE varchar(1), DOC_TYPE varchar(4), DOCNM_REF varchar(16), DOCNMPREV varchar(16), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(12), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), OP_ORDER varchar(1), PAY_DATE varchar(8), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR_1 varchar(35), SPECIF_1 varchar(255), SEND_TYPE varchar(10), DOC_RESULT varchar(2), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE date, _VALUE_DATE varchar(8), _SWIFT_BEN varchar(11), _SWIFT_INTERMED varchar(11)); +CREATE TABLE S_DF54(ID bigint PRIMARY KEY, SEG_TYPE varchar(1), DOC_TYPE varchar(4), DOCNM_REF varchar(16), DOCNMPREV varchar(16), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(12), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), OP_ORDER varchar(1), PAY_DATE varchar(8), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR_1 varchar(35), SPECIF_1 varchar(255), SEND_TYPE varchar(10), DOC_RESULT varchar(2), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE varchar(8), _VALUE_DATE varchar(8), _SWIFT_BEN varchar(11), _SWIFT_INT varchar(11)); COMMENT ON TABLE S_DF54 IS 'ДФ-54 Вывод свободных средств для инициаторов категории В с клирингового счета 30414'; COMMENT ON COLUMN S_DF54.ID IS 'Идентификатор записи'; @@ -4623,13 +4623,13 @@ COMMENT ON COLUMN S_DF54._VALUE_DATE IS 'Дата валютирования'; COMMENT ON COLUMN S_DF54._SWIFT_BEN IS 'Свифт банка бенефициара'; -COMMENT ON COLUMN S_DF54._SWIFT_INTERMED IS 'Swift_intermed'; +COMMENT ON COLUMN S_DF54._SWIFT_INT IS 'Свифт банка посредника'; GRANT ALL PRIVILEGES ON TABLE S_DF54 TO clearing; -- sDf55 - ДФ-55 Квитанция об обработке ДФ-54 DROP TABLE IF EXISTS S_DF55; -CREATE TABLE S_DF55(ID bigint PRIMARY KEY, SEG_TYPE varchar(1), DOC_TYPE varchar(4), DOCNM_REF varchar(16), DOCNMPREV varchar(16), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(12), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), OP_ORDER varchar(1), PAY_DATE varchar(8), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR_1 varchar(35), SPECIF_1 varchar(255), SEND_TYPE varchar(10), DOC_RESULT varchar(2), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE date, _VALUE_DATE varchar(8), _SWIFT_BEN varchar(11), _SWIFT_INTERMED varchar(11)); +CREATE TABLE S_DF55(ID bigint PRIMARY KEY, SEG_TYPE varchar(1), DOC_TYPE varchar(4), DOCNM_REF varchar(16), DOCNMPREV varchar(16), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(12), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), OP_ORDER varchar(1), PAY_DATE varchar(8), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR_1 varchar(35), SPECIF_1 varchar(255), SEND_TYPE varchar(10), DOC_RESULT varchar(2), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE varchar(8), _VALUE_DATE varchar(8), _SWIFT_BEN varchar(11), _SWIFT_INT varchar(11)); COMMENT ON TABLE S_DF55 IS 'ДФ-55 Квитанция об обработке ДФ-54'; COMMENT ON COLUMN S_DF55.ID IS 'Идентификатор записи'; @@ -4728,7 +4728,7 @@ COMMENT ON COLUMN S_DF55._VALUE_DATE IS 'Дата валютирования'; COMMENT ON COLUMN S_DF55._SWIFT_BEN IS 'Свифт банка бенефициара'; -COMMENT ON COLUMN S_DF55._SWIFT_INTERMED IS 'Swift_intermed'; +COMMENT ON COLUMN S_DF55._SWIFT_INT IS 'Свифт банка посредника'; GRANT ALL PRIVILEGES ON TABLE S_DF55 TO clearing; @@ -4757,7 +4757,7 @@ GRANT ALL PRIVILEGES ON TABLE S_DF56 TO clearing; -- sDf57 - ДФ-57 Список транзакций о списании/зачислении за период по всем счетам (ТБС и КС) DROP TABLE IF EXISTS S_DF57; -CREATE TABLE S_DF57(GENERATION_TIME timestamp, ID bigint PRIMARY KEY, DBF_ID bigint, DEAL_DEB varchar(4), DEAL_CRED varchar(4), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(35), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), PAY_DATE varchar(8), EXT_DATE varchar(255), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR varchar(35), SPECIF varchar(255), FILE_NAME varchar(255), GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE date, DT_IN varchar(22), KT_IN varchar(22), DT_OUT varchar(22), KT_OUT varchar(22)); +CREATE TABLE S_DF57(GENERATION_TIME timestamp, ID bigint PRIMARY KEY, DBF_ID bigint, DEAL_DEB varchar(4), DEAL_CRED varchar(4), SBANKCODE varchar(12), C_ACC_DEB varchar(35), SBANKNAM1 varchar(35), SBANKNAM2 varchar(35), SBANKNAM3 varchar(35), SBANKNAM4 varchar(35), SBANKNAM5 varchar(35), RBANKCODE varchar(35), C_ACC_CRED varchar(35), RBANKNAM1 varchar(35), RBANKNAM2 varchar(35), RBANKNAM3 varchar(35), RBANKNAM4 varchar(35), RBANKNAM5 varchar(35), OP_TYPE varchar(2), PAY_DATE varchar(8), EXT_DATE varchar(255), PAY_VAL varchar(12), SUM_DEB varchar(22), SCLIENTN1 varchar(35), SCLIENTN2 varchar(35), SCLIENTN3 varchar(35), SCLIENTN4 varchar(35), INN_DEB varchar(12), KPP_DEB varchar(9), ACC_DEB varchar(35), RCLIENTN1 varchar(35), RCLIENTN2 varchar(35), RCLIENTN3 varchar(35), RCLIENTN4 varchar(35), INN_CRED varchar(12), KPP_CRED varchar(9), ACC_KR varchar(35), SPECIF varchar(255), FILE_NAME varchar(255), GENERATION_ID bigint, _DOC__NUM varchar(3), _DOC__DATE varchar(8), DT_IN varchar(22), KT_IN varchar(22), DT_OUT varchar(22), KT_OUT varchar(22)); COMMENT ON TABLE S_DF57 IS 'ДФ-57 Список транзакций о списании/зачислении за период по всем счетам (ТБС и КС)'; COMMENT ON COLUMN S_DF57.GENERATION_TIME IS 'Дата и время создания записи'; @@ -5094,8 +5094,8 @@ COMMENT ON COLUMN S_CROSS_RATE.UPDATED_AT IS 'Дата-время изменен GRANT ALL PRIVILEGES ON TABLE S_CROSS_RATE TO clearing; - /* views */ +/* views */ - -- Data types +-- Data types INSERT INTO DB_VERSION(ID, VERSION) values (1, '3.11') ON CONFLICT (ID) DO UPDATE SET VERSION = EXCLUDED.VERSION \ No newline at end of file