diff --git a/clearing-parent/backend-api/src/main/resources/data.xml b/clearing-parent/backend-api/src/main/resources/data.xml index aa2cfa865..91a65514d 100644 --- a/clearing-parent/backend-api/src/main/resources/data.xml +++ b/clearing-parent/backend-api/src/main/resources/data.xml @@ -1,13 +1,30 @@ + + + + + + + + + + + + + + + + + - - + + @@ -16,25 +33,29 @@ + - + + + + - - - - - - + + + + + + - + @@ -42,8 +63,14 @@ + + + + + + @@ -75,13 +102,14 @@ + - + @@ -89,8 +117,6 @@ - - @@ -99,375 +125,88 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + \ No newline at end of file diff --git a/clearing-parent/backend-api/src/main/resources/meta.xml b/clearing-parent/backend-api/src/main/resources/meta.xml index 69aa21006..aa9c77218 100644 --- a/clearing-parent/backend-api/src/main/resources/meta.xml +++ b/clearing-parent/backend-api/src/main/resources/meta.xml @@ -1,29 +1,39 @@ - + - - - + + + + - - - + + + + - - + + + + + + + + + + + - @@ -44,17 +54,17 @@ - + - + - + @@ -140,7 +150,7 @@ - + @@ -150,11 +160,11 @@ - + - - + + @@ -178,6 +188,7 @@ + @@ -189,20 +200,21 @@ - - - - + + + + - - - - - - - - - + + + + + + + + + + @@ -217,25 +229,43 @@ - - - + - - + + + + + + + + + + + + + + + - - + + + + + + + + + - + @@ -246,14 +276,22 @@ + - + - - + + + + + + + + + - + @@ -281,7 +319,7 @@ - + @@ -292,6 +330,7 @@ + @@ -300,32 +339,65 @@ - - + + - + - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + @@ -358,9 +430,10 @@ - - - + + + + @@ -408,7 +481,7 @@ - + @@ -440,7 +513,7 @@ - + @@ -451,7 +524,7 @@ - + @@ -510,31 +583,49 @@ - - + + + + - + + - - - + + + - - - + + + + + - - - + + + + + + + + + + + + + + + + @@ -571,6 +662,7 @@ + @@ -589,15 +681,19 @@ - - + + - - + + + + + + @@ -611,7 +707,7 @@ - + @@ -621,8 +717,37 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -641,67 +766,100 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - + + + + + - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -756,30 +914,42 @@ +
- - + + + + - + - + - + + + + - - - - + + + + + - - - + + + + + + + + @@ -809,6 +979,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 253cf259c..454a5e289 100644 --- a/clearing-parent/db-scripts/src/main/resources/db/DDL.sql +++ b/clearing-parent/db-scripts/src/main/resources/db/DDL.sql @@ -1,9 +1,39 @@ --- DB version: 0.0.0.5 +-- DB version: 0.0.0.6 /* Dictionaries */ --- interestStatus - Справочник статусов возваращения процентов +-- chargeDirection - Направление начисления комиссии +CREATE TABLE IF NOT EXISTS CHARGE_DIRECTION_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(50)); +COMMENT ON TABLE CHARGE_DIRECTION_DICTIONARY IS 'Направление начисления комиссии'; + +COMMENT ON COLUMN CHARGE_DIRECTION_DICTIONARY.ID IS 'Идентификатор'; + +COMMENT ON COLUMN CHARGE_DIRECTION_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN CHARGE_DIRECTION_DICTIONARY.NAME IS 'Направление комиссии'; + +-- chargeType - Справочник типов комиссий +CREATE TABLE IF NOT EXISTS CHARGE_TYPE_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(50)); +COMMENT ON TABLE CHARGE_TYPE_DICTIONARY IS 'Справочник типов комиссий'; + +COMMENT ON COLUMN CHARGE_TYPE_DICTIONARY.ID IS 'Идентификатор'; + +COMMENT ON COLUMN CHARGE_TYPE_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN CHARGE_TYPE_DICTIONARY.NAME IS 'Тип комиссии'; + +-- courierType - Способ доставки документа +CREATE TABLE IF NOT EXISTS COURIER_TYPE_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(50)); +COMMENT ON TABLE COURIER_TYPE_DICTIONARY IS 'Способ доставки документа'; + +COMMENT ON COLUMN COURIER_TYPE_DICTIONARY.ID IS 'Идентификатор'; + +COMMENT ON COLUMN COURIER_TYPE_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN COURIER_TYPE_DICTIONARY.NAME IS 'Способ доставки'; + +-- interestStatus - Справочник статусов возвращения процентов CREATE TABLE IF NOT EXISTS INTEREST_STATUS_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); -COMMENT ON TABLE INTEREST_STATUS_DICTIONARY IS 'Справочник статусов возваращения процентов'; +COMMENT ON TABLE INTEREST_STATUS_DICTIONARY IS 'Справочник статусов возвращения процентов'; COMMENT ON COLUMN INTEREST_STATUS_DICTIONARY.ID IS 'Идентификатор записи'; @@ -11,6 +41,16 @@ COMMENT ON COLUMN INTEREST_STATUS_DICTIONARY.CODE IS 'Код'; COMMENT ON COLUMN INTEREST_STATUS_DICTIONARY.NAME IS 'Наименование'; +-- termType - Справочник видов инструментов денежного рынка +CREATE TABLE IF NOT EXISTS TERM_TYPE_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); +COMMENT ON TABLE TERM_TYPE_DICTIONARY IS 'Справочник видов инструментов денежного рынка'; + +COMMENT ON COLUMN TERM_TYPE_DICTIONARY.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN TERM_TYPE_DICTIONARY.CODE IS 'Код'; + +COMMENT ON COLUMN TERM_TYPE_DICTIONARY.NAME IS 'Наименование'; + -- clearingStatus - Справочник результатов клиринга CREATE TABLE IF NOT EXISTS CLEARING_STATUS_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); COMMENT ON TABLE CLEARING_STATUS_DICTIONARY IS 'Справочник результатов клиринга'; @@ -253,9 +293,9 @@ COMMENT ON COLUMN SERVICE_PRODUCT_DICTIONARY.CODE IS 'Код'; COMMENT ON COLUMN SERVICE_PRODUCT_DICTIONARY.NAME IS 'Наименование'; --- sector - Справочник секторов +-- sector - Справочник секций CREATE TABLE IF NOT EXISTS SECTOR_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); -COMMENT ON TABLE SECTOR_DICTIONARY IS 'Справочник секторов'; +COMMENT ON TABLE SECTOR_DICTIONARY IS 'Справочник секций'; COMMENT ON COLUMN SECTOR_DICTIONARY.ID IS 'Идентификатор записи'; @@ -273,15 +313,15 @@ COMMENT ON COLUMN RESULT_STATUS_DICTIONARY.CODE IS 'Код'; COMMENT ON COLUMN RESULT_STATUS_DICTIONARY.NAME IS 'Статус обработки'; --- extError - -CREATE TABLE IF NOT EXISTS EXT_ERROR_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); -COMMENT ON TABLE EXT_ERROR_DICTIONARY IS ''; +-- errorCode - Коды ошибок +CREATE TABLE IF NOT EXISTS ERROR_CODE_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(255)); +COMMENT ON TABLE ERROR_CODE_DICTIONARY IS 'Коды ошибок'; -COMMENT ON COLUMN EXT_ERROR_DICTIONARY.ID IS 'Идентификатор записи'; +COMMENT ON COLUMN ERROR_CODE_DICTIONARY.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN EXT_ERROR_DICTIONARY.CODE IS 'Код'; +COMMENT ON COLUMN ERROR_CODE_DICTIONARY.CODE IS 'Код'; -COMMENT ON COLUMN EXT_ERROR_DICTIONARY.NAME IS 'Наименование ошибки'; +COMMENT ON COLUMN ERROR_CODE_DICTIONARY.NAME IS 'Текст ошибки'; -- managementJournalStatus - Справочник статусов журнала мониторинга и контроля CREATE TABLE IF NOT EXISTS MANAGEMENT_JOURNAL_STATUS_DICTIONARY(ID bigint PRIMARY KEY, CODE char(4), NAME varchar(50)); @@ -316,7 +356,7 @@ COMMENT ON COLUMN MANAGEMENT_JOURNAL_PURPOSE_DICTIONARY.NAME IS 'Тип запи /* Business objects */ -- company - Участник -CREATE TABLE IF NOT EXISTS COMPANY(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, TRADING_CODE varchar(255), CLEARING_CODE varchar(255), WORKFLOW_STATUS char(4), SHORT_NAME varchar(255), FULL_NAME varchar(255)); +CREATE TABLE IF NOT EXISTS COMPANY(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, TRADING_CODE varchar(255), CLEARING_CODE varchar(255), REGISTRATION_CODE varchar(255), WORKFLOW_STATUS char(4), SHORT_NAME varchar(255), FULL_NAME varchar(255)); COMMENT ON TABLE COMPANY IS 'Участник'; COMMENT ON COLUMN COMPANY.ID IS 'Идентификатор записи'; @@ -329,6 +369,8 @@ COMMENT ON COLUMN COMPANY.TRADING_CODE IS 'Код участника торго COMMENT ON COLUMN COMPANY.CLEARING_CODE IS 'Код участника клиринга'; +COMMENT ON COLUMN COMPANY.REGISTRATION_CODE IS 'Регистрационный код участника'; + COMMENT ON COLUMN COMPANY.WORKFLOW_STATUS IS 'Статус (linked to workflowStatus)'; COMMENT ON COLUMN COMPANY.SHORT_NAME IS 'Краткое наименование Компании'; @@ -336,12 +378,12 @@ COMMENT ON COLUMN COMPANY.SHORT_NAME IS 'Краткое наименование COMMENT ON COLUMN COMPANY.FULL_NAME IS 'Полное наименование Компании'; -- companyInfo - Профиль Компании -CREATE TABLE IF NOT EXISTS COMPANY_INFO(ID bigint PRIMARY KEY, COMPANY_ID bigint, CORPORATION_SOLE_TYPE char(4), COUNTRY_CODE char(4), DESCRIPTION varchar, PROFESSIONAL_SIGN char(4), LEGAL_KIND char(4), ORGANIZATION_TYPE char(4), RESIDENCE char(4), SHORT_NAME_ENG varchar(255), FULL_NAME_ENG varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255), TRADING_CODE varchar(255), CLEARING_CODE varchar(255)); +CREATE TABLE IF NOT EXISTS COMPANY_INFO(ID bigint PRIMARY KEY, COMPANY_ID bigint, CORPORATION_SOLE_TYPE char(4), COUNTRY_CODE char(4), DESCRIPTION varchar, PROFESSIONAL_SIGN char(4), LEGAL_KIND char(4), ORGANIZATION_TYPE char(4), RESIDENCE char(4), SHORT_NAME_ENG varchar(255), FULL_NAME_ENG varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255), TRADING_CODE varchar(255), CLEARING_CODE varchar(255), REGISTRATION_CODE varchar(255)); COMMENT ON TABLE COMPANY_INFO IS 'Профиль Компании'; COMMENT ON COLUMN COMPANY_INFO.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN COMPANY_INFO.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN COMPANY_INFO.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN COMPANY_INFO.CORPORATION_SOLE_TYPE IS 'Идентификатор единоличного исполнительного органа (linked to corporationSoleType)'; @@ -369,9 +411,11 @@ COMMENT ON COLUMN COMPANY_INFO.TRADING_CODE IS 'Код участника тор COMMENT ON COLUMN COMPANY_INFO.CLEARING_CODE IS 'Код участника клиринга'; +COMMENT ON COLUMN COMPANY_INFO.REGISTRATION_CODE IS 'Регистрационный код участника'; + -- Update log of companyInfo - Профиль Компании -CREATE TABLE IF NOT EXISTS COMPANY_INFO_UPDATE(COMPANY_INFO_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, COMPANY_ID bigint, CORPORATION_SOLE_TYPE char(4), COUNTRY_CODE char(4), DESCRIPTION varchar, PROFESSIONAL_SIGN char(4), LEGAL_KIND char(4), ORGANIZATION_TYPE char(4), RESIDENCE char(4), SHORT_NAME_ENG varchar(255), FULL_NAME_ENG varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255), TRADING_CODE varchar(255), CLEARING_CODE varchar(255) ); +CREATE TABLE IF NOT EXISTS COMPANY_INFO_UPDATE(COMPANY_INFO_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, COMPANY_ID bigint, CORPORATION_SOLE_TYPE char(4), COUNTRY_CODE char(4), DESCRIPTION varchar, PROFESSIONAL_SIGN char(4), LEGAL_KIND char(4), ORGANIZATION_TYPE char(4), RESIDENCE char(4), SHORT_NAME_ENG varchar(255), FULL_NAME_ENG varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255), TRADING_CODE varchar(255), CLEARING_CODE varchar(255), REGISTRATION_CODE varchar(255)); COMMENT ON TABLE COMPANY_INFO_UPDATE IS 'Журнал изменений таблицы companyInfo'; COMMENT ON COLUMN COMPANY_INFO_UPDATE.COMPANY_INFO_ID IS 'Идентификатор записи в таблице COMPANY_INFO'; COMMENT ON COLUMN COMPANY_INFO_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -379,7 +423,7 @@ COMMENT ON COLUMN COMPANY_INFO_UPDATE.EVENT_USER_ID IS 'Инициатор из COMMENT ON COLUMN COMPANY_INFO_UPDATE.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN COMPANY_INFO_UPDATE.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN COMPANY_INFO_UPDATE.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN COMPANY_INFO_UPDATE.CORPORATION_SOLE_TYPE IS 'Идентификатор единоличного исполнительного органа (linked to corporationSoleType)'; @@ -407,13 +451,15 @@ COMMENT ON COLUMN COMPANY_INFO_UPDATE.TRADING_CODE IS 'Код участника COMMENT ON COLUMN COMPANY_INFO_UPDATE.CLEARING_CODE IS 'Код участника клиринга'; --- clearingMemberCategory - Категории участника клиринга +COMMENT ON COLUMN COMPANY_INFO_UPDATE.REGISTRATION_CODE IS 'Регистрационный код участника'; + +-- clearingMemberCategory - Категории Участника клиринга CREATE TABLE IF NOT EXISTS CLEARING_MEMBER_CATEGORY(ID bigint PRIMARY KEY, COMPANY_ID bigint, CLEARING_MEMBER_CATEGORY char(4)); -COMMENT ON TABLE CLEARING_MEMBER_CATEGORY IS 'Категории участника клиринга'; +COMMENT ON TABLE CLEARING_MEMBER_CATEGORY IS 'Категории Участника клиринга'; COMMENT ON COLUMN CLEARING_MEMBER_CATEGORY.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN CLEARING_MEMBER_CATEGORY.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN CLEARING_MEMBER_CATEGORY.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN CLEARING_MEMBER_CATEGORY.CLEARING_MEMBER_CATEGORY IS 'Идентификатор категории участника клиринга (linked to clearingCategory)'; @@ -423,19 +469,19 @@ COMMENT ON TABLE CONTACT IS 'Контакты Компании'; COMMENT ON COLUMN CONTACT.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN CONTACT.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN CONTACT.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN CONTACT.CONTACT_TYPE IS 'Идентификатор справочника (linked to contactType)'; COMMENT ON COLUMN CONTACT.CONTACT_VALUE IS 'Значение справочника'; -- profileDocument - Досье Компании -CREATE TABLE IF NOT EXISTS PROFILE_DOCUMENT(ID bigint PRIMARY KEY, COMPANY_ID bigint, DOCUMENT_TYPE char(4), ISSUE_DATE date, ISSUE_PLACE varchar(255), ISSUER varchar(255), ISSUER_CODE varchar(255), NAME varchar(255), NUMBER varchar(255), PLACE varchar(255), VALID_FROM_DATE date, VALID_TO_DATE date); +CREATE TABLE IF NOT EXISTS PROFILE_DOCUMENT(ID bigint PRIMARY KEY, COMPANY_ID bigint, DOCUMENT_TYPE char(4), ISSUE_DATE date, ISSUE_PLACE varchar(255), ISSUER varchar(255), ISSUER_CODE varchar(255), NAME varchar(255), NUMBER varchar(255), PLACE varchar(255), VALID_FROM_DATE date, VALID_TO_DATE date, LINK varchar(255)); COMMENT ON TABLE PROFILE_DOCUMENT IS 'Досье Компании'; COMMENT ON COLUMN PROFILE_DOCUMENT.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN PROFILE_DOCUMENT.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN PROFILE_DOCUMENT.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN PROFILE_DOCUMENT.DOCUMENT_TYPE IS 'Идентификатор типа документа (linked to documentType)'; @@ -457,20 +503,22 @@ COMMENT ON COLUMN PROFILE_DOCUMENT.VALID_FROM_DATE IS 'Дата начала с COMMENT ON COLUMN PROFILE_DOCUMENT.VALID_TO_DATE IS 'Дата окончания срока действия'; --- companySymbols - Названия Компании +COMMENT ON COLUMN PROFILE_DOCUMENT.LINK IS 'Ссылка на документ'; + +-- companySymbols - Реквизиты Компании CREATE TABLE IF NOT EXISTS COMPANY_SYMBOLS(ID bigint PRIMARY KEY, COMPANY_ID bigint, COMPANY_SYMBOL char(4), COMPANY_SYMBOL_VALUE varchar(255)); -COMMENT ON TABLE COMPANY_SYMBOLS IS 'Названия Компании'; +COMMENT ON TABLE COMPANY_SYMBOLS IS 'Реквизиты Компании'; COMMENT ON COLUMN COMPANY_SYMBOLS.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN COMPANY_SYMBOLS.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN COMPANY_SYMBOLS.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN COMPANY_SYMBOLS.COMPANY_SYMBOL IS 'Идентификатор справочника (linked to companySymbol)'; COMMENT ON COLUMN COMPANY_SYMBOLS.COMPANY_SYMBOL_VALUE IS 'Значение справочника'; -- keyRate - Ключевая ставка ЦБ -CREATE TABLE IF NOT EXISTS KEY_RATE(ID bigint PRIMARY KEY, RATE numeric(72,18), START_DATE date, END_DATE date, DOCUMENT varchar(255), WORKFLOW_STATUS char(4) ); +CREATE TABLE IF NOT EXISTS KEY_RATE(ID bigint PRIMARY KEY, RATE numeric(72,18), START_DATE date, END_DATE date, DOCUMENT varchar(255), WORKFLOW_STATUS char(4)); COMMENT ON TABLE KEY_RATE IS 'Ключевая ставка ЦБ'; COMMENT ON COLUMN KEY_RATE.ID IS 'Идентификатор записи'; @@ -492,12 +540,12 @@ COMMENT ON TABLE COMPANY_ROLE_SET IS 'Таблица ролей Компании COMMENT ON COLUMN COMPANY_ROLE_SET.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN COMPANY_ROLE_SET.COMPANY_ID IS 'Идентификатор списка ролей Компании'; +COMMENT ON COLUMN COMPANY_ROLE_SET.COMPANY_ID IS 'Идентификатор списка ролей Компании (linked to company)'; COMMENT ON COLUMN COMPANY_ROLE_SET.ROLE_ID IS 'Значение справочника (linked to companyRole)'; -- account - Счета -CREATE TABLE IF NOT EXISTS ACCOUNT(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT varchar(12), ACCOUNT_TYPE char(4), RELATION_ID bigint, STATUS char(4)); +CREATE TABLE IF NOT EXISTS ACCOUNT(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT varchar(12), ACCOUNT_TYPE char(4), RELATION_ID bigint, STATUS char(4), PROCESSING_SIGN char(4)); COMMENT ON TABLE ACCOUNT IS 'Счета'; COMMENT ON COLUMN ACCOUNT.ID IS 'Идентификатор'; @@ -514,9 +562,11 @@ COMMENT ON COLUMN ACCOUNT.RELATION_ID IS 'Идентификатор догов COMMENT ON COLUMN ACCOUNT.STATUS IS 'Идентификатор статуса (linked to workflowStatus)'; +COMMENT ON COLUMN ACCOUNT.PROCESSING_SIGN IS 'Признак обработки счета (linked to allowed)'; + -- Update log of account - Счета -CREATE TABLE IF NOT EXISTS ACCOUNT_UPDATE(ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT varchar(12), ACCOUNT_TYPE char(4), RELATION_ID bigint, STATUS char(4)); +CREATE TABLE IF NOT EXISTS ACCOUNT_UPDATE(ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT varchar(12), ACCOUNT_TYPE char(4), RELATION_ID bigint, STATUS char(4), PROCESSING_SIGN char(4)); COMMENT ON TABLE ACCOUNT_UPDATE IS 'Журнал изменений таблицы account'; COMMENT ON COLUMN ACCOUNT_UPDATE.ACCOUNT_ID IS 'Идентификатор записи в таблице ACCOUNT'; COMMENT ON COLUMN ACCOUNT_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -536,8 +586,10 @@ COMMENT ON COLUMN ACCOUNT_UPDATE.RELATION_ID IS 'Идентификатор до COMMENT ON COLUMN ACCOUNT_UPDATE.STATUS IS 'Идентификатор статуса (linked to workflowStatus)'; +COMMENT ON COLUMN ACCOUNT_UPDATE.PROCESSING_SIGN IS 'Признак обработки счета (linked to allowed)'; + -- relation - Договорные отношения -CREATE TABLE IF NOT EXISTS RELATION(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, CONSUMER_ID bigint, SUPPLIER_ID bigint, SERVICE_STATUS char(4), SERVICE_ID bigint, SERVICE_PRODUCT_ID bigint, COMMENT varchar(255)); +CREATE TABLE IF NOT EXISTS RELATION(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, CONSUMER_ID bigint, SUPPLIER_ID bigint, SERVICE_STATUS char(4), SERVICE char(4), SERVICE_PRODUCT char(4), COMMENT varchar(255)); COMMENT ON TABLE RELATION IS 'Договорные отношения'; COMMENT ON COLUMN RELATION.ID IS 'Идентификатор записи'; @@ -552,15 +604,15 @@ COMMENT ON COLUMN RELATION.SUPPLIER_ID IS 'Идентификатор Компа COMMENT ON COLUMN RELATION.SERVICE_STATUS IS 'Идентификатор статуса (linked to workflowStatus)'; -COMMENT ON COLUMN RELATION.SERVICE_ID IS 'Идентификатор сервиса (linked to service)'; +COMMENT ON COLUMN RELATION.SERVICE IS 'Идентификатор сервиса (linked to service)'; -COMMENT ON COLUMN RELATION.SERVICE_PRODUCT_ID IS 'Идентификатор продукта (linked to serviceProduct)'; +COMMENT ON COLUMN RELATION.SERVICE_PRODUCT IS 'Идентификатор продукта (linked to serviceProduct)'; COMMENT ON COLUMN RELATION.COMMENT IS 'Текст причины'; -- Update log of relation - Договорные отношения -CREATE TABLE IF NOT EXISTS RELATION_UPDATE(RELATION_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, CONSUMER_ID bigint, SUPPLIER_ID bigint, SERVICE_STATUS char(4), SERVICE_ID bigint, SERVICE_PRODUCT_ID bigint, COMMENT varchar(255)); +CREATE TABLE IF NOT EXISTS RELATION_UPDATE(RELATION_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, CONSUMER_ID bigint, SUPPLIER_ID bigint, SERVICE_STATUS char(4), SERVICE char(4), SERVICE_PRODUCT char(4), COMMENT varchar(255)); COMMENT ON TABLE RELATION_UPDATE IS 'Журнал изменений таблицы relation'; COMMENT ON COLUMN RELATION_UPDATE.RELATION_ID IS 'Идентификатор записи в таблице RELATION'; COMMENT ON COLUMN RELATION_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -578,15 +630,15 @@ COMMENT ON COLUMN RELATION_UPDATE.SUPPLIER_ID IS 'Идентификатор К COMMENT ON COLUMN RELATION_UPDATE.SERVICE_STATUS IS 'Идентификатор статуса (linked to workflowStatus)'; -COMMENT ON COLUMN RELATION_UPDATE.SERVICE_ID IS 'Идентификатор сервиса (linked to service)'; +COMMENT ON COLUMN RELATION_UPDATE.SERVICE IS 'Идентификатор сервиса (linked to service)'; -COMMENT ON COLUMN RELATION_UPDATE.SERVICE_PRODUCT_ID IS 'Идентификатор продукта (linked to serviceProduct)'; +COMMENT ON COLUMN RELATION_UPDATE.SERVICE_PRODUCT IS 'Идентификатор продукта (linked to serviceProduct)'; COMMENT ON COLUMN RELATION_UPDATE.COMMENT IS 'Текст причины'; --- bankAccount - Банковские счета -CREATE TABLE IF NOT EXISTS BANK_ACCOUNT(ID bigint PRIMARY KEY, ACCOUNT_ID bigint, BANK_IDENTIFICATION_CODE varchar(255), BANK_NAME varchar(255), CORRESPONDENT_ACCOUNT_NAME varchar(255), CURRENCY char(4), DESTINATION varchar(255), IBAN varchar(255), INTERNATIONAL_TRANSFER_SIGN char(4), SWIFT_CODE varchar(255), TAXPAYER_IDENTIFICATION_NUMBER varchar(255), TAX_REGISTRATION_REASON_CODE varchar(255), CORRESPONDENT_ACCOUNT varchar(255)); -COMMENT ON TABLE BANK_ACCOUNT IS 'Банковские счета'; +-- bankAccount - Банковские реквизиты для перечисления денежных средств +CREATE TABLE IF NOT EXISTS BANK_ACCOUNT(ID bigint PRIMARY KEY, ACCOUNT_ID bigint, BANK_IDENTIFICATION_CODE varchar(255), BANK_NAME varchar(255), CORRESPONDENT_ACCOUNT varchar(255), CORRESPONDENT_ACCOUNT_NAME varchar(255), CURRENCY char(4), DESTINATION varchar(255), IBAN varchar(255), INTERNATIONAL_TRANSFER_SIGN char(4), SWIFT_CODE varchar(255), TAXPAYER_IDENTIFICATION_NUMBER varchar(255), TAX_REGISTRATION_REASON_CODE varchar(255), ACCOUNT varchar(12)); +COMMENT ON TABLE BANK_ACCOUNT IS 'Банковские реквизиты для перечисления денежных средств'; COMMENT ON COLUMN BANK_ACCOUNT.ID IS 'Идентификатор записи'; @@ -596,6 +648,8 @@ COMMENT ON COLUMN BANK_ACCOUNT.BANK_IDENTIFICATION_CODE IS 'Банковский COMMENT ON COLUMN BANK_ACCOUNT.BANK_NAME IS 'Наименование банка'; +COMMENT ON COLUMN BANK_ACCOUNT.CORRESPONDENT_ACCOUNT IS 'Корреспондентский счет'; + COMMENT ON COLUMN BANK_ACCOUNT.CORRESPONDENT_ACCOUNT_NAME IS 'Наименование корреспондентского счета'; COMMENT ON COLUMN BANK_ACCOUNT.CURRENCY IS 'Идентификатор валюты (linked to currencyCode)'; @@ -610,13 +664,13 @@ COMMENT ON COLUMN BANK_ACCOUNT.SWIFT_CODE IS 'Код SWIFT'; COMMENT ON COLUMN BANK_ACCOUNT.TAXPAYER_IDENTIFICATION_NUMBER IS 'Идентификационный номер налогоплательщика (ИНН)'; -COMMENT ON COLUMN BANK_ACCOUNT.TAX_REGISTRATION_REASON_CODE IS 'Код причины постановки'; +COMMENT ON COLUMN BANK_ACCOUNT.TAX_REGISTRATION_REASON_CODE IS 'Код причины постановки (КПП)'; -COMMENT ON COLUMN BANK_ACCOUNT.CORRESPONDENT_ACCOUNT IS 'Корреспондентский счет'; +COMMENT ON COLUMN BANK_ACCOUNT.ACCOUNT IS 'Номер счета (linked to account)'; --- Update log of bankAccount - Банковские счета -CREATE TABLE IF NOT EXISTS BANK_ACCOUNT_UPDATE(BANK_ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, ACCOUNT_ID bigint, BANK_IDENTIFICATION_CODE varchar(255), BANK_NAME varchar(255), CORRESPONDENT_ACCOUNT_NAME varchar(255), CURRENCY char(4), DESTINATION varchar(255), IBAN varchar(255), INTERNATIONAL_TRANSFER_SIGN char(4), SWIFT_CODE varchar(255), TAXPAYER_IDENTIFICATION_NUMBER varchar(255), TAX_REGISTRATION_REASON_CODE varchar(255), CORRESPONDENT_ACCOUNT varchar(255)); +-- Update log of bankAccount - Банковские реквизиты для перечисления денежных средств +CREATE TABLE IF NOT EXISTS BANK_ACCOUNT_UPDATE(BANK_ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, ACCOUNT_ID bigint, BANK_IDENTIFICATION_CODE varchar(255), BANK_NAME varchar(255), CORRESPONDENT_ACCOUNT varchar(255), CORRESPONDENT_ACCOUNT_NAME varchar(255), CURRENCY char(4), DESTINATION varchar(255), IBAN varchar(255), INTERNATIONAL_TRANSFER_SIGN char(4), SWIFT_CODE varchar(255), TAXPAYER_IDENTIFICATION_NUMBER varchar(255), TAX_REGISTRATION_REASON_CODE varchar(255), ACCOUNT varchar(12)); COMMENT ON TABLE BANK_ACCOUNT_UPDATE IS 'Журнал изменений таблицы bankAccount'; COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.BANK_ACCOUNT_ID IS 'Идентификатор записи в таблице BANK_ACCOUNT'; COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -630,6 +684,8 @@ COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.BANK_IDENTIFICATION_CODE IS 'Банков COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.BANK_NAME IS 'Наименование банка'; +COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.CORRESPONDENT_ACCOUNT IS 'Корреспондентский счет'; + COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.CORRESPONDENT_ACCOUNT_NAME IS 'Наименование корреспондентского счета'; COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.CURRENCY IS 'Идентификатор валюты (linked to currencyCode)'; @@ -644,27 +700,23 @@ COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.SWIFT_CODE IS 'Код SWIFT'; COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.TAXPAYER_IDENTIFICATION_NUMBER IS 'Идентификационный номер налогоплательщика (ИНН)'; -COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.TAX_REGISTRATION_REASON_CODE IS 'Код причины постановки'; +COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.TAX_REGISTRATION_REASON_CODE IS 'Код причины постановки (КПП)'; -COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.CORRESPONDENT_ACCOUNT IS 'Корреспондентский счет'; +COMMENT ON COLUMN BANK_ACCOUNT_UPDATE.ACCOUNT IS 'Номер счета (linked to account)'; -- clearingAccount - Клиринговые счета -CREATE TABLE IF NOT EXISTS CLEARING_ACCOUNT(ID bigint PRIMARY KEY, ACCOUNT_ID bigint, CASH_ACCOUNT_ID bigint, DEPO_ACCOUNT_ID bigint, SETTLEMENT_CODE varchar(255)); +CREATE TABLE IF NOT EXISTS CLEARING_ACCOUNT(ID bigint PRIMARY KEY, ACCOUNT_ID bigint, ACCOUNT varchar(12)); COMMENT ON TABLE CLEARING_ACCOUNT IS 'Клиринговые счета'; COMMENT ON COLUMN CLEARING_ACCOUNT.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN CLEARING_ACCOUNT.ACCOUNT_ID IS 'Идентификатор счета'; +COMMENT ON COLUMN CLEARING_ACCOUNT.ACCOUNT_ID IS 'Идентификатор счета (linked to account)'; -COMMENT ON COLUMN CLEARING_ACCOUNT.CASH_ACCOUNT_ID IS 'Денежный счет (linked to account)'; - -COMMENT ON COLUMN CLEARING_ACCOUNT.DEPO_ACCOUNT_ID IS 'Счет ДЕПО (linked to account)'; - -COMMENT ON COLUMN CLEARING_ACCOUNT.SETTLEMENT_CODE IS 'Расчетный код'; +COMMENT ON COLUMN CLEARING_ACCOUNT.ACCOUNT IS 'Номер счета (linked to account)'; -- Update log of clearingAccount - Клиринговые счета -CREATE TABLE IF NOT EXISTS CLEARING_ACCOUNT_UPDATE(CLEARING_ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, ACCOUNT_ID bigint, CASH_ACCOUNT_ID bigint, DEPO_ACCOUNT_ID bigint, SETTLEMENT_CODE varchar(255)); +CREATE TABLE IF NOT EXISTS CLEARING_ACCOUNT_UPDATE(CLEARING_ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, ACCOUNT_ID bigint, ACCOUNT varchar(12)); COMMENT ON TABLE CLEARING_ACCOUNT_UPDATE IS 'Журнал изменений таблицы clearingAccount'; COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.CLEARING_ACCOUNT_ID IS 'Идентификатор записи в таблице CLEARING_ACCOUNT'; COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -672,13 +724,37 @@ COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.EVENT_USER_ID IS 'Инициатор COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.ACCOUNT_ID IS 'Идентификатор счета'; +COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.ACCOUNT_ID IS 'Идентификатор счета (linked to account)'; -COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.CASH_ACCOUNT_ID IS 'Денежный счет (linked to account)'; +COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.ACCOUNT IS 'Номер счета (linked to account)'; -COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.DEPO_ACCOUNT_ID IS 'Счет ДЕПО (linked to account)'; +-- informationAccount - Информационные счета +CREATE TABLE IF NOT EXISTS INFORMATION_ACCOUNT(ID bigint PRIMARY KEY, ACCOUNT_ID bigint, ACCOUNT varchar(12), CLEARING_ACCOUNT_ID bigint); +COMMENT ON TABLE INFORMATION_ACCOUNT IS 'Информационные счета'; -COMMENT ON COLUMN CLEARING_ACCOUNT_UPDATE.SETTLEMENT_CODE IS 'Расчетный код'; +COMMENT ON COLUMN INFORMATION_ACCOUNT.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT.ACCOUNT_ID IS 'Идентификатор счета (linked to account)'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT.ACCOUNT IS 'Номер счета (linked to account)'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT.CLEARING_ACCOUNT_ID IS 'Идентификатор клирингового счета (linked to clearingAccount)'; + + +-- Update log of informationAccount - Информационные счета +CREATE TABLE IF NOT EXISTS INFORMATION_ACCOUNT_UPDATE(INFORMATION_ACCOUNT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, ACCOUNT_ID bigint, ACCOUNT varchar(12), CLEARING_ACCOUNT_ID bigint); +COMMENT ON TABLE INFORMATION_ACCOUNT_UPDATE IS 'Журнал изменений таблицы informationAccount'; +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.INFORMATION_ACCOUNT_ID IS 'Идентификатор записи в таблице INFORMATION_ACCOUNT'; +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.EVENT_TIME IS 'Дата и время изменения'; +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.EVENT_USER_ID IS 'Инициатор изменения'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.ACCOUNT_ID IS 'Идентификатор счета (linked to account)'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.ACCOUNT IS 'Номер счета (linked to account)'; + +COMMENT ON COLUMN INFORMATION_ACCOUNT_UPDATE.CLEARING_ACCOUNT_ID IS 'Идентификатор клирингового счета (linked to clearingAccount)'; -- accountRouting - Маршрутизация счета CREATE TABLE IF NOT EXISTS ACCOUNT_ROUTING(ID bigint PRIMARY KEY, DESTINATION_ID bigint, RELATION_ID bigint, SOURCE_ID bigint); @@ -789,7 +865,7 @@ COMMENT ON COLUMN CURRENCY_UPDATE.COUNTRY_CODE IS 'Идентификатор к COMMENT ON COLUMN CURRENCY_UPDATE.CURRENCY_CODE IS 'Идентификатор кода валюты (linked to currencyCode)'; -- moneyMarketSecurity - Инструменты Денежного рынка -CREATE TABLE IF NOT EXISTS MONEY_MARKET_SECURITY(ID bigint PRIMARY KEY, SECURITY_ID bigint, DESCRIPTION varchar(255), START_DATE date, END_DATE date, NOMINAL_VALUE numeric(72,2), NOMINAL_CURRENCY bigint, INSTRUMENT_TYPE char(4), FULL_NAME varchar(255), SECURITY_SYMBOL varchar(255)); +CREATE TABLE IF NOT EXISTS MONEY_MARKET_SECURITY(ID bigint PRIMARY KEY, SECURITY_ID bigint, DESCRIPTION varchar(255), START_DATE date, END_DATE date, NOMINAL_VALUE numeric(72,2), NOMINAL_CURRENCY bigint, INSTRUMENT_TYPE char(4), FULL_NAME varchar(255), SECURITY_SYMBOL varchar(255), TERM_TYPE char(4), ID numeric(72,2) PRIMARY KEY); COMMENT ON TABLE MONEY_MARKET_SECURITY IS 'Инструменты Денежного рынка'; COMMENT ON COLUMN MONEY_MARKET_SECURITY.ID IS 'Идентификатор записи'; @@ -812,9 +888,15 @@ COMMENT ON COLUMN MONEY_MARKET_SECURITY.FULL_NAME IS 'Полное наимен COMMENT ON COLUMN MONEY_MARKET_SECURITY.SECURITY_SYMBOL IS 'Код инструмента'; +COMMENT ON COLUMN MONEY_MARKET_SECURITY.TERM_TYPE IS 'Идентификатор вида инструмента (linked to termType)'; + +COMMENT ON COLUMN MONEY_MARKET_SECURITY.ID IS 'Размер лота (linked to listing)'; + +COMMENT ON COLUMN MONEY_MARKET_SECURITY.ACTIONS IS ''; + -- Update log of moneyMarketSecurity - Инструменты Денежного рынка -CREATE TABLE IF NOT EXISTS MONEY_MARKET_SECURITY_UPDATE(MONEY_MARKET_SECURITY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, SECURITY_ID bigint, DESCRIPTION varchar(255), START_DATE date, END_DATE date, NOMINAL_VALUE numeric(72,2), NOMINAL_CURRENCY bigint, INSTRUMENT_TYPE char(4), FULL_NAME varchar(255), SECURITY_SYMBOL varchar(255), ID numeric(72,2) PRIMARY KEY); +CREATE TABLE IF NOT EXISTS MONEY_MARKET_SECURITY_UPDATE(MONEY_MARKET_SECURITY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, ID bigint PRIMARY KEY, SECURITY_ID bigint, DESCRIPTION varchar(255), START_DATE date, END_DATE date, NOMINAL_VALUE numeric(72,2), NOMINAL_CURRENCY bigint, INSTRUMENT_TYPE char(4), FULL_NAME varchar(255), SECURITY_SYMBOL varchar(255), TERM_TYPE char(4), ID numeric(72,2) PRIMARY KEY); COMMENT ON TABLE MONEY_MARKET_SECURITY_UPDATE IS 'Журнал изменений таблицы moneyMarketSecurity'; COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.MONEY_MARKET_SECURITY_ID IS 'Идентификатор записи в таблице MONEY_MARKET_SECURITY'; COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.EVENT_TIME IS 'Дата и время изменения'; @@ -840,6 +922,8 @@ COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.FULL_NAME IS 'Полное наи COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.SECURITY_SYMBOL IS 'Код инструмента'; +COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.TERM_TYPE IS 'Идентификатор вида инструмента (linked to termType)'; + COMMENT ON COLUMN MONEY_MARKET_SECURITY_UPDATE.ID IS 'Размер лота (linked to listing)'; @@ -915,7 +999,7 @@ COMMENT ON COLUMN MARKET.CODE IS 'Режим'; COMMENT ON COLUMN MARKET.SETTLEMENT_CURRENCY IS 'Валютный код расчетов (linked to currency)'; -COMMENT ON COLUMN MARKET.SECTOR IS 'Идентификатор сектора (linked to sector)'; +COMMENT ON COLUMN MARKET.SECTOR IS 'Идентификатор секции (linked to sector)'; -- Update log of market - Торговые площадки @@ -941,7 +1025,7 @@ COMMENT ON COLUMN MARKET_UPDATE.CODE IS 'Режим'; COMMENT ON COLUMN MARKET_UPDATE.SETTLEMENT_CURRENCY IS 'Валютный код расчетов (linked to currency)'; -COMMENT ON COLUMN MARKET_UPDATE.SECTOR IS 'Идентификатор сектора (linked to sector)'; +COMMENT ON COLUMN MARKET_UPDATE.SECTOR IS 'Идентификатор секции (linked to sector)'; -- accountBalance - Информация об остатках ден. средств CREATE TABLE IF NOT EXISTS ACCOUNT_BALANCE(ID bigint PRIMARY KEY, COMPANY_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT_ID bigint, ACCOUNT_TYPE bigint, ACCOUNT bigint, OPEN_BALANCE_AMOUNT numeric(72,18), START_BALANCE_AMOUNT numeric(72,18), CLOSE_BALANCE_AMOUNT numeric(72,18), TRADE_BALANCE_AMOUNT numeric(72,18), FREE_BALANCE_AMOUNT numeric(72,18), CHANGE_BALANCE_AMOUNT numeric(72,18), CREDIT_AMOUNT numeric(72,18), DEBIT_AMOUNT numeric(72,18), BALANCE_AMOUNT numeric(72,18), BALANCE_ACCOUNT_TYPE char(4), CLEARING_DATE date, CURRENCY_CODE char(4), TRADING_CODE varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255)); @@ -1044,7 +1128,7 @@ COMMENT ON COLUMN ACCOUNT_BALANCE_UPDATE.SHORT_NAME IS 'Короткое наи COMMENT ON COLUMN ACCOUNT_BALANCE_UPDATE.FULL_NAME IS 'Полное наименование Участника (linked to company)'; -- managementJournal - Журнал монитора и контроля -CREATE TABLE IF NOT EXISTS MANAGEMENT_JOURNAL(ID bigint PRIMARY KEY, COMPANY_ID bigint, USER_ID bigint, MANAGEMENT_JOURNAL_TYPE_ID bigint, MANAGEMENT_JOURNAL_PURPOSE_ID bigint, STATUS_ID bigint, TEXT varchar(4096), CHANGE_ACCESS_SIGN char(4), CHANGE_DATA_SIGN char(4), EVENT_DATE timestamp, UPDATED_AT timestamp, CREATED_AT timestamp); +CREATE TABLE IF NOT EXISTS MANAGEMENT_JOURNAL(ID bigint PRIMARY KEY, COMPANY_ID bigint, USER_ID bigint, MANAGEMENT_JOURNAL_TYPE_ID bigint, MANAGEMENT_JOURNAL_PURPOSE_ID bigint, STATUS char(4), TEXT varchar(4096), CHANGE_ACCESS_SIGN char(4), CHANGE_DATA_SIGN char(4), EVENT_DATE timestamp, UPDATED_AT timestamp, CREATED_AT timestamp); COMMENT ON TABLE MANAGEMENT_JOURNAL IS 'Журнал монитора и контроля'; COMMENT ON COLUMN MANAGEMENT_JOURNAL.ID IS 'Идентификатор'; @@ -1057,7 +1141,7 @@ COMMENT ON COLUMN MANAGEMENT_JOURNAL.MANAGEMENT_JOURNAL_TYPE_ID IS 'Тип мо COMMENT ON COLUMN MANAGEMENT_JOURNAL.MANAGEMENT_JOURNAL_PURPOSE_ID IS 'Цель мониторинга (linked to managementJournalPurpose)'; -COMMENT ON COLUMN MANAGEMENT_JOURNAL.STATUS_ID IS 'Статус (linked to managementJournalStatus)'; +COMMENT ON COLUMN MANAGEMENT_JOURNAL.STATUS IS 'Статус (linked to managementJournalStatus)'; COMMENT ON COLUMN MANAGEMENT_JOURNAL.TEXT IS 'Сообщение'; @@ -1175,59 +1259,95 @@ COMMENT ON COLUMN EXECUTION_DEPOSIT_REGISTER.SESSION_ID IS 'Сессия (linked -- reportRegister - Реестр отчетов -CREATE TABLE IF NOT EXISTS REPORT_REGISTER(ID bigint PRIMARY KEY, CREATED_AT time, UPDATED_AT time, CLEARING_DATE date, SESSION_ID bigint, COMMENT varchar(255), FILE_NAME varchar(255)); +CREATE TABLE IF NOT EXISTS REPORT_REGISTER(ID bigint PRIMARY KEY, CREATED_AT time, UPDATED_AT time, CLEARING_DATE date, COMPANY_FULL_NAME varchar(255), CLEARING_CODE varchar(255), SESSION_ID bigint, COMMENT varchar(255), NAME varchar(255), QUANTITY bigint); COMMENT ON TABLE REPORT_REGISTER IS 'Реестр отчетов'; COMMENT ON COLUMN REPORT_REGISTER.ID IS 'ID записи'; -COMMENT ON COLUMN REPORT_REGISTER.CREATED_AT IS 'Время регистрации сделки'; +COMMENT ON COLUMN REPORT_REGISTER.CREATED_AT IS 'Время регистрации'; -COMMENT ON COLUMN REPORT_REGISTER.UPDATED_AT IS 'Время изменения сделки'; +COMMENT ON COLUMN REPORT_REGISTER.UPDATED_AT IS 'Время изменения'; COMMENT ON COLUMN REPORT_REGISTER.CLEARING_DATE IS 'Дата клиринга'; +COMMENT ON COLUMN REPORT_REGISTER.COMPANY_FULL_NAME IS 'Идентификатор участника'; + +COMMENT ON COLUMN REPORT_REGISTER.CLEARING_CODE IS 'Код клиринга'; + COMMENT ON COLUMN REPORT_REGISTER.SESSION_ID IS 'Сессия (linked to moneyMarketSession)'; COMMENT ON COLUMN REPORT_REGISTER.COMMENT IS 'Комментарий'; -COMMENT ON COLUMN REPORT_REGISTER.FILE_NAME IS 'Наименование файла'; +COMMENT ON COLUMN REPORT_REGISTER.NAME IS 'Наименование'; --- contractRegister - Реестр отчетов -CREATE TABLE IF NOT EXISTS CONTRACT_REGISTER(ID bigint PRIMARY KEY, CREATED_AT time, UPDATED_AT time, CLEARING_DATE date, SESSION_ID bigint, COMPANY_ID bigint, DOCUMENT_TYPE char(4), ISSUE_DATE date, ISSUE_PLACE varchar(255), ISSUER varchar(255), ISSUER_CODE varchar(255), NAME varchar(255), NUMBER varchar(255), PLACE varchar(255), VALID_FROM_DATE date, VALID_TO_DATE date); -COMMENT ON TABLE CONTRACT_REGISTER IS 'Реестр отчетов'; +COMMENT ON COLUMN REPORT_REGISTER.QUANTITY IS 'Количество записей'; -COMMENT ON COLUMN CONTRACT_REGISTER.ID IS 'ID записи'; +-- contractRegister - Журнал регистрации договоров +CREATE TABLE IF NOT EXISTS CONTRACT_REGISTER(ID bigint PRIMARY KEY, CREATED_AT time, UPDATED_AT time, NAME varchar(255), NUMBER varchar(255), ISSUE_DATE date, COMPANY_FULL_NAME bigint, COMPANY_ID bigint, DOCUMENT_TYPE char(4), ISSUE_PLACE varchar(255), ISSUER varchar(255), ISSUER_CODE varchar(255), PLACE varchar(255), VALID_FROM_DATE date, VALID_TO_DATE date, CLOSE_DATE date, COMMENT varchar(255)); +COMMENT ON TABLE CONTRACT_REGISTER IS 'Журнал регистрации договоров'; -COMMENT ON COLUMN CONTRACT_REGISTER.CREATED_AT IS 'Время регистрации сделки'; +COMMENT ON COLUMN CONTRACT_REGISTER.ID IS 'Номер записи'; + +COMMENT ON COLUMN CONTRACT_REGISTER.CREATED_AT IS 'Дата и время регистрации документа'; COMMENT ON COLUMN CONTRACT_REGISTER.UPDATED_AT IS 'Время изменения сделки'; -COMMENT ON COLUMN CONTRACT_REGISTER.CLEARING_DATE IS 'Дата клиринга'; +COMMENT ON COLUMN CONTRACT_REGISTER.NAME IS 'Наименование документа'; -COMMENT ON COLUMN CONTRACT_REGISTER.SESSION_ID IS 'Сессия (linked to moneyMarketSession)'; +COMMENT ON COLUMN CONTRACT_REGISTER.NUMBER IS 'Номер документа'; -COMMENT ON COLUMN CONTRACT_REGISTER.COMPANY_ID IS 'Идентификатор Компании'; +COMMENT ON COLUMN CONTRACT_REGISTER.ISSUE_DATE IS 'Дата составления'; + +COMMENT ON COLUMN CONTRACT_REGISTER.COMPANY_FULL_NAME IS 'Наименование лица'; + +COMMENT ON COLUMN CONTRACT_REGISTER.COMPANY_ID IS 'Идентификатор Компании (linked to company)'; COMMENT ON COLUMN CONTRACT_REGISTER.DOCUMENT_TYPE IS 'Идентификатор типа документа (linked to documentType)'; -COMMENT ON COLUMN CONTRACT_REGISTER.ISSUE_DATE IS 'Дата выдачи'; - COMMENT ON COLUMN CONTRACT_REGISTER.ISSUE_PLACE IS 'Место выдачи'; COMMENT ON COLUMN CONTRACT_REGISTER.ISSUER IS 'Кем выдан'; COMMENT ON COLUMN CONTRACT_REGISTER.ISSUER_CODE IS 'Код выдавшего органа'; -COMMENT ON COLUMN CONTRACT_REGISTER.NAME IS 'Наименование'; - -COMMENT ON COLUMN CONTRACT_REGISTER.NUMBER IS 'Номер'; - COMMENT ON COLUMN CONTRACT_REGISTER.PLACE IS 'Место'; COMMENT ON COLUMN CONTRACT_REGISTER.VALID_FROM_DATE IS 'Дата начала срока действия'; COMMENT ON COLUMN CONTRACT_REGISTER.VALID_TO_DATE IS 'Дата окончания срока действия'; +COMMENT ON COLUMN CONTRACT_REGISTER.CLOSE_DATE IS 'Дата расторжения'; + +COMMENT ON COLUMN CONTRACT_REGISTER.COMMENT IS 'Место'; + +-- paymentRegister - Реестра распоряжений +CREATE TABLE IF NOT EXISTS PAYMENT_REGISTER(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, CREDIT_LEG_ACCOUNT_ID bigint, CREDIT_LEG_AMOUNT bigint, CREDIT_LEG_CURRENCY_CODE char(4), CREDIT_LEG_DIRECTION bigint, DEBIT_LEG_ACCOUNT bigint, SENDER_ID bigint, ADDRESSEE_ID bigint, DOCUMENT_NUMBER varchar(255)); +COMMENT ON TABLE PAYMENT_REGISTER IS 'Реестра распоряжений'; + +COMMENT ON COLUMN PAYMENT_REGISTER.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CREATED_AT IS 'Дата и время создания записи'; + +COMMENT ON COLUMN PAYMENT_REGISTER.UPDATED_AT IS 'Дата и время изменения записи'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CLEARING_DATE IS 'Дата расчета'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CREDIT_LEG_ACCOUNT_ID IS 'Идентификатор счета отправителя (linked to account)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CREDIT_LEG_AMOUNT IS 'Сумма отправителя'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CREDIT_LEG_CURRENCY_CODE IS 'Код валюты отправителя (linked to currency)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.CREDIT_LEG_DIRECTION IS 'Направление отправителя (linked to inOutDirection)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.DEBIT_LEG_ACCOUNT IS 'Счет получателя (linked to Account)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.SENDER_ID IS 'Идентификатор участника отправителя (linked to company)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.ADDRESSEE_ID IS 'Идентификатор участника получателя (linked to company)'; + +COMMENT ON COLUMN PAYMENT_REGISTER.DOCUMENT_NUMBER IS 'Номер документа в сторонней системе'; + -- liabilitiesClaimsMoney - Требования и обязательства денежных средств CREATE TABLE IF NOT EXISTS LIABILITIES_CLAIMS_MONEY(ID bigint PRIMARY KEY, COMPANY_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT_ID bigint, ACCOUNT_TYPE bigint, ACCOUNT bigint, LIABILITIES_AMOUNT numeric(72,2), REFUND_INTEREST numeric(72,2), ACCRUED_INTEREST numeric(72,2), CLAIMS_AMOUNT numeric(72,2), SETTLEMENT_DATE date, TRADING_DATE date, CURRENCY char(4), TRADING_CODE varchar(255), SHORT_NAME varchar(255), FULL_NAME varchar(255)); COMMENT ON TABLE LIABILITIES_CLAIMS_MONEY IS 'Требования и обязательства денежных средств'; @@ -1267,7 +1387,7 @@ COMMENT ON COLUMN LIABILITIES_CLAIMS_MONEY.SHORT_NAME IS 'Короткое на COMMENT ON COLUMN LIABILITIES_CLAIMS_MONEY.FULL_NAME IS 'Полное наименование Участника (linked to company)'; -- liabilitiesClaimsAssets - Требования и обязательства финансовых активов -CREATE TABLE IF NOT EXISTS LIABILITIES_CLAIMS_ASSETS(ID bigint PRIMARY KEY, COMPANY_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT_ID bigint, ACCOUNT_TYPE bigint, ACCOUNT bigint, LIABILITIES_QUANTITY numeric(72,18), CLAIMS_QUANTITY numeric(72,18), CURRENCY char(4), SETTLEMENT_DATE date, TRADING_DATE date, REFUND_DATE date, PRICE numeric(72,18), SECURITY_ID bigint, TRADING_CODE varchar(255), SHORT_NAME varchar(255), CONTRACT varchar(255), COMMENT varchar(255), FULL_NAME varchar(255), PARENT_ID bigint, LIABILITIES_CLAIMS_MONEY_ID bigint, INTEREST_STATUS bigint, CLEARING_STATUS bigint, PAYMENT_ID bigint, REFUND_PAYMENT_ID bigint); +CREATE TABLE IF NOT EXISTS LIABILITIES_CLAIMS_ASSETS(ID bigint PRIMARY KEY, COMPANY_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, ACCOUNT_ID bigint, ACCOUNT_TYPE bigint, ACCOUNT bigint, LIABILITIES_QUANTITY numeric(72,18), CLAIMS_QUANTITY numeric(72,18), CURRENCY char(4), SETTLEMENT_DATE date, TRADING_DATE date, REFUND_DATE date, PRICE numeric(72,18), SECURITY_ID bigint, TRADING_CODE varchar(255), CLEARING_CODE varchar(255), SHORT_NAME varchar(255), CONTRACT varchar(255), COMMENT varchar(255), FULL_NAME varchar(255), PARENT_ID bigint, LIABILITIES_CLAIMS_MONEY_ID bigint, INTEREST_STATUS bigint, CLEARING_STATUS bigint, PAYMENT_ID bigint, REFUND_PAYMENT_ID bigint); COMMENT ON TABLE LIABILITIES_CLAIMS_ASSETS IS 'Требования и обязательства финансовых активов'; COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.ID IS 'Идентификатор записи'; @@ -1302,6 +1422,8 @@ COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.SECURITY_ID IS 'Инструмент COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.TRADING_CODE IS 'Торговый код Участника (linked to company)'; +COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.CLEARING_CODE IS 'Клиринговый код Участника (linked to company)'; + COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.SHORT_NAME IS 'Короткое наименование Участника (linked to company)'; COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.CONTRACT IS 'Номер договора'; @@ -1323,7 +1445,7 @@ COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.PAYMENT_ID IS 'Платеж'; COMMENT ON COLUMN LIABILITIES_CLAIMS_ASSETS.REFUND_PAYMENT_ID IS 'Обратный платежа'; -- statement - Денежные средства от расчетной организации -CREATE TABLE IF NOT EXISTS STATEMENT(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, STATEMENT_TYPE_ID bigint, COMMENT varchar(255), ACCOUNT_ID bigint, ACCOUNT bigint, IN_OUT_DIRECTION bigint, SETTLEMENT_DATE date, AMOUNT numeric(72,2), CASH_MOVEMENTCURRENCY_CODE char(4), STATUS_ID bigint); +CREATE TABLE IF NOT EXISTS STATEMENT(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, STATEMENT_TYPE_ID bigint, COMMENT varchar(255), ACCOUNT_ID bigint, ACCOUNT bigint, IN_OUT_DIRECTION bigint, SETTLEMENT_DATE date, AMOUNT numeric(72,2), CASH_MOVEMENT_CURRENCY_CODE char(4), STATUS char(4), ERROR_CODE char(4), ERROR_TEXT char(4), IN_S_DF_ID bigint, OUT_S_DF_ID bigint); COMMENT ON TABLE STATEMENT IS 'Денежные средства от расчетной организации'; COMMENT ON COLUMN STATEMENT.ID IS 'Идентификатор записи'; @@ -1338,7 +1460,7 @@ COMMENT ON COLUMN STATEMENT.UPDATED_AT IS 'Дата и время изменен COMMENT ON COLUMN STATEMENT.CLEARING_DATE IS 'Дата расчета'; -COMMENT ON COLUMN STATEMENT.STATEMENT_TYPE_ID IS 'Тип поступления средств (linked to account)'; +COMMENT ON COLUMN STATEMENT.STATEMENT_TYPE_ID IS 'Тип поступления средств (linked to statementType)'; COMMENT ON COLUMN STATEMENT.COMMENT IS 'Комментарий'; @@ -1352,12 +1474,20 @@ COMMENT ON COLUMN STATEMENT.SETTLEMENT_DATE IS 'Дата расчетов'; COMMENT ON COLUMN STATEMENT.AMOUNT IS 'Объем'; -COMMENT ON COLUMN STATEMENT.CASH_MOVEMENTCURRENCY_CODE IS 'Код валюты (linked to currency)'; +COMMENT ON COLUMN STATEMENT.CASH_MOVEMENT_CURRENCY_CODE IS 'Код валюты (linked to currency)'; -COMMENT ON COLUMN STATEMENT.STATUS_ID IS 'Cтатус обработки (linked to operationStatus)'; +COMMENT ON COLUMN STATEMENT.STATUS IS 'Cтатус обработки (linked to operationStatus)'; + +COMMENT ON COLUMN STATEMENT.ERROR_CODE IS 'Код ошибки (linked to errorCode)'; + +COMMENT ON COLUMN STATEMENT.ERROR_TEXT IS 'Полный текст ошибки (linked to errorText)'; + +COMMENT ON COLUMN STATEMENT.IN_S_DF_ID IS 'Идентификатор записи, инициирующей изменения этой таблицы'; + +COMMENT ON COLUMN STATEMENT.OUT_S_DF_ID IS 'Идентификатор записи, формируемой в результате изменения этой таблицы'; -- tradeSettlement - Проводки на базе сделок торговой системы -CREATE TABLE IF NOT EXISTS TRADE_SETTLEMENT(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, AMOUNT numeric(72,2), CURRENCY_CODE char(4), IN_OUT_DIRECTION bigint, ACCOUNT_ID bigint, ACCOUNT bigint, STATUS_ID bigint); +CREATE TABLE IF NOT EXISTS TRADE_SETTLEMENT(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, AMOUNT numeric(72,2), CURRENCY_CODE char(4), IN_OUT_DIRECTION bigint, ACCOUNT_ID bigint, ACCOUNT bigint, STATUS char(4)); COMMENT ON TABLE TRADE_SETTLEMENT IS 'Проводки на базе сделок торговой системы'; COMMENT ON COLUMN TRADE_SETTLEMENT.ID IS 'Идентификатор записи'; @@ -1382,10 +1512,10 @@ COMMENT ON COLUMN TRADE_SETTLEMENT.ACCOUNT_ID IS 'Идентификатор с COMMENT ON COLUMN TRADE_SETTLEMENT.ACCOUNT IS 'Счет (linked to account)'; -COMMENT ON COLUMN TRADE_SETTLEMENT.STATUS_ID IS 'Cтатус обработки (linked to operationStatus)'; +COMMENT ON COLUMN TRADE_SETTLEMENT.STATUS IS 'Cтатус обработки (linked to operationStatus)'; -- operation - Проводки -CREATE TABLE IF NOT EXISTS OPERATION(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, OPERATION_TYPE_ID bigint, STATUS_ID bigint); +CREATE TABLE IF NOT EXISTS OPERATION(ID bigint PRIMARY KEY, ADDRESSEE_ID bigint, SENDER_ID bigint, CREATED_AT timestamp, UPDATED_AT timestamp, CLEARING_DATE date, OPERATION_TYPE_ID bigint, STATUS char(4)); COMMENT ON TABLE OPERATION IS 'Проводки'; COMMENT ON COLUMN OPERATION.ID IS 'Идентификатор записи'; @@ -1402,7 +1532,65 @@ COMMENT ON COLUMN OPERATION.CLEARING_DATE IS 'Дата расчета'; COMMENT ON COLUMN OPERATION.OPERATION_TYPE_ID IS 'Тип проводки (linked to operationType)'; -COMMENT ON COLUMN OPERATION.STATUS_ID IS 'Cтатус обработки (linked to operationStatus)'; +COMMENT ON COLUMN OPERATION.STATUS IS 'Cтатус обработки (linked to operationStatus)'; + +-- paymentInstruction - Информация о денежных средствах +CREATE TABLE IF NOT EXISTS PAYMENT_INSTRUCTION(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, SENDER_ID bigint, ADDRESSEE_ID bigint, ADRESSEE_B_I_C varchar(255), PAYEE_BANK_NAME bigint, PAYEE_B_I_C varchar(255), ADDRESSEE_BANK_NAME bigint, PAYMENT_DATE timestamp, _PAYMENT_PURPOSE varchar(255), SETTLEMENT_DATE date, CREDIT_LEG_AMOUNT bigint, DEBIT_LEG_AMOUNT bigint, CREDIT_LEG_ACCOUNT_ID bigint, CREDIT_CS_ACCOUNT varchar(255), CREDIT_LEG_ACCOUNT bigint, DEBIT_LEG_ACCOUNT_ID bigint, DEBIT_CS_ACCOUNT varchar(255), DEBIT_LEG_ACCOUNT bigint, CREDIT_LEG_DIRECTION bigint, DEBIT_LEG_DIRECTION bigint, CREDIT_LEG_CURRENCY_CODE char(4), DEBIT_LEG_CURRENCY_CODE char(4), CLEARING_DATE date, TRANSACTION_STATUS_ID bigint, DOCUMENT_NUMBER varchar(255)); +COMMENT ON TABLE PAYMENT_INSTRUCTION IS 'Информация о денежных средствах'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREATED_AT IS 'Дата и время создания записи'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.UPDATED_AT IS 'Дата и время изменения записи'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.SENDER_ID IS 'Идентификатор участника отправителя (linked to company)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.ADDRESSEE_ID IS 'Идентификатор участника получателя (linked to company)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.ADRESSEE_B_I_C IS 'Банковский идентификационный код (БИК) получателя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.PAYEE_BANK_NAME IS 'Банк отправителя (linked to bankAccount)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.PAYEE_B_I_C IS 'Банковский идентификационный код (БИК) отправителя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.ADDRESSEE_BANK_NAME IS 'Банк получателя (linked to bankAccount)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.PAYMENT_DATE IS 'Дата и время платежа'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION._PAYMENT_PURPOSE IS 'Назначение платежа'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.SETTLEMENT_DATE IS 'Дата расчетов'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_LEG_AMOUNT IS 'Сумма отправителя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_LEG_AMOUNT IS 'Сумма получателя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_LEG_ACCOUNT_ID IS 'Идентификатор счета отправителя (linked to account)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_CS_ACCOUNT IS 'Корреспондентский счет отправителя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_LEG_ACCOUNT IS 'Счет отправителя (linked to Account)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_LEG_ACCOUNT_ID IS 'Идентификатор счета отправителя (linked to account)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_CS_ACCOUNT IS 'Корреспондентский счет получателя'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_LEG_ACCOUNT IS 'Счет получателя (linked to Account)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_LEG_DIRECTION IS 'Направление отправителя (linked to inOutDirection)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_LEG_DIRECTION IS 'Направление получателя (linked to inOutDirection)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CREDIT_LEG_CURRENCY_CODE IS 'Код валюты отправителя (linked to currency)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DEBIT_LEG_CURRENCY_CODE IS 'Код валюты получателя (linked to currency)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.CLEARING_DATE IS 'Дата расчета'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.TRANSACTION_STATUS_ID IS 'Cтатус транзакции (linked to transactionStatus)'; + +COMMENT ON COLUMN PAYMENT_INSTRUCTION.DOCUMENT_NUMBER IS 'Номер документа в сторонней системе'; -- marketData - Итоги торгов CREATE TABLE IF NOT EXISTS MARKET_DATA(ID bigint PRIMARY KEY, SECURITIES_DEPOSIT_ID bigint, COMPANY_NAME varchar(255), MARKET_ID bigint, COUNTER_PARTY_NUM bigint, TRADES_NUM bigint, AMOUNT numeric(72,2), OPEN_PRICE numeric(72,18), MAX_PRICE numeric(72,18), MIN_PRICE numeric(72,18), CLOSE_PRICE numeric(72,18), AVG_PRICE numeric(72,18), DURATION bigint, CREATED_AT time, UPDATED_AT time, TRADING_DATE date); @@ -1578,43 +1766,113 @@ COMMENT ON COLUMN COMPANY_TARIFF.UPDATED_AT IS 'Изменено'; COMMENT ON COLUMN COMPANY_TARIFF.COMPANY_ID IS 'Участник (linked to company)'; --- sDf01 - ДФ 02 - Направление уведомлений об операциях загрузки -CREATE TABLE IF NOT EXISTS S_DF01(ID bigint PRIMARY KEY, DATE date, CURR_CODE char(4), ACCOUNT varchar(25), REMAINDER_SUM varchar(20), DEAL char(4), ACC_CODE varchar(5), DAT varchar(8), MARKET varchar(1), ACC_NAME varchar(1), ACC_TYPE varchar(1), SUMENGAGE varchar(22), SUMUNBLOCK varchar(22), FILE_TYPE varchar(1), RESULT_CODE varchar(1), ERROR_TEXT varchar(255), EXT_ERROR_CODE char(4)); -COMMENT ON TABLE S_DF01 IS 'ДФ 02 - Направление уведомлений об операциях загрузки'; +-- errorText - Полные тексты ошибок +CREATE TABLE IF NOT EXISTS ERROR_TEXT(ID bigint PRIMARY KEY, CREATED_AT timestamp, UPDATED_AT timestamp, ERROR_CODE char(4), TEXT varchar(255), USER_ID bigint, CLEARING_DATE date); +COMMENT ON TABLE ERROR_TEXT IS 'Полные тексты ошибок'; + +COMMENT ON COLUMN ERROR_TEXT.ID IS 'Идентификатор'; + +COMMENT ON COLUMN ERROR_TEXT.CREATED_AT IS 'Дата и время создания записи'; + +COMMENT ON COLUMN ERROR_TEXT.UPDATED_AT IS 'Дата и время изменения записи'; + +COMMENT ON COLUMN ERROR_TEXT.ERROR_CODE IS 'Код ошибки (linked to errorCode)'; + +COMMENT ON COLUMN ERROR_TEXT.TEXT IS 'Полный текст ошибки'; + +COMMENT ON COLUMN ERROR_TEXT.USER_ID IS 'Автор сообщения (linked to user)'; + +COMMENT ON COLUMN ERROR_TEXT.CLEARING_DATE IS 'Текущая дата'; + +-- sDf01 - ДФ-01 Информация о денежных средствах, находящихся на торговых банковских счетах Участников клиринга +CREATE TABLE IF NOT EXISTS S_DF01(ID bigint PRIMARY KEY, CURR_CODE varchar(12), ACCOUNT varchar(35), REMAINDER varchar(22), DEAL varchar(10), ACC_CODE varchar(5), DAT varchar(8), MARKET varchar(1), ACC_NAME varchar(30), ACC_TYPE varchar(2), SUMENGAGE varchar(22), SUMUNBLOCK varchar(22), FILE_TYPE varchar(1), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +COMMENT ON TABLE S_DF01 IS 'ДФ-01 Информация о денежных средствах, находящихся на торговых банковских счетах Участников клиринга'; COMMENT ON COLUMN S_DF01.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN S_DF01.DATE IS 'Дата обработки записи'; - -COMMENT ON COLUMN S_DF01.CURR_CODE IS 'Код волюты (linked to currency)'; +COMMENT ON COLUMN S_DF01.CURR_CODE IS 'Код валюты (linked to currency)'; COMMENT ON COLUMN S_DF01.ACCOUNT IS 'Код счета участника клиринга'; -COMMENT ON COLUMN S_DF01.REMAINDER_SUM IS 'Остаток денежных средств'; +COMMENT ON COLUMN S_DF01.REMAINDER IS 'Остаток денежных средств'; COMMENT ON COLUMN S_DF01.DEAL IS 'Биржевой код участника клиринга'; -COMMENT ON COLUMN S_DF01.ACC_CODE IS ''; +COMMENT ON COLUMN S_DF01.ACC_CODE IS 'Не используется в Системе'; COMMENT ON COLUMN S_DF01.DAT IS 'Дата расчетов'; COMMENT ON COLUMN S_DF01.MARKET IS 'Биржевая секция'; -COMMENT ON COLUMN S_DF01.ACC_NAME IS 'Наименования участника клиринга'; +COMMENT ON COLUMN S_DF01.ACC_NAME IS 'Наименование участника клиринга'; COMMENT ON COLUMN S_DF01.ACC_TYPE IS 'Признак счета'; -COMMENT ON COLUMN S_DF01.SUMENGAGE IS ''; +COMMENT ON COLUMN S_DF01.SUMENGAGE IS 'Не используется в Системе'; -COMMENT ON COLUMN S_DF01.SUMUNBLOCK IS ''; +COMMENT ON COLUMN S_DF01.SUMUNBLOCK IS 'Не используется в Системе'; -COMMENT ON COLUMN S_DF01.FILE_TYPE IS ''; +COMMENT ON COLUMN S_DF01.FILE_TYPE IS 'Не используется в Системе'; -COMMENT ON COLUMN S_DF01.RESULT_CODE IS 'Результат обработки записи'; +COMMENT ON COLUMN S_DF01.FILE_NAME IS 'Наименование входящего файла'; -COMMENT ON COLUMN S_DF01.ERROR_TEXT IS 'Текст ошибки'; +COMMENT ON COLUMN S_DF01.GENERATION_TIME IS 'Дата и время обработки файла'; -COMMENT ON COLUMN S_DF01.EXT_ERROR_CODE IS 'Внешний код ошибки'; +COMMENT ON COLUMN S_DF01.GENERATION_ID IS 'Идентификатор взаимодействия'; + +-- sDf02 - ДФ-02 Уведомление об исполнении операции загрузки денежных средств или уведомление об ошибке +CREATE TABLE IF NOT EXISTS S_DF02(ID bigint PRIMARY KEY, CURR_CODE varchar(12), ACCOUNT varchar(35), REMAINDER varchar(22), DEAL varchar(10), ACC_CODE varchar(5), DAT varchar(8), MARKET varchar(1), ACC_NAME varchar(30), ACC_TYPE varchar(2), SUMENGAGE varchar(22), SUMUNBLOCK varchar(22), FILE_TYPE varchar(1), RESULT varchar(3), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +COMMENT ON TABLE S_DF02 IS 'ДФ-02 Уведомление об исполнении операции загрузки денежных средств или уведомление об ошибке'; + +COMMENT ON COLUMN S_DF02.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN S_DF02.CURR_CODE IS 'Код валюты (linked to currency)'; + +COMMENT ON COLUMN S_DF02.ACCOUNT IS 'Код счета участника клиринга'; + +COMMENT ON COLUMN S_DF02.REMAINDER IS 'Остаток денежных средств'; + +COMMENT ON COLUMN S_DF02.DEAL IS 'Биржевой код участника клиринга'; + +COMMENT ON COLUMN S_DF02.ACC_CODE IS 'Не используется в Системе'; + +COMMENT ON COLUMN S_DF02.DAT IS 'Дата расчетов'; + +COMMENT ON COLUMN S_DF02.MARKET IS 'Биржевая секция'; + +COMMENT ON COLUMN S_DF02.ACC_NAME IS 'Наименование участника клиринга'; + +COMMENT ON COLUMN S_DF02.ACC_TYPE IS 'Признак счета'; + +COMMENT ON COLUMN S_DF02.SUMENGAGE IS 'Не используется в Системе'; + +COMMENT ON COLUMN S_DF02.SUMUNBLOCK IS 'Не используется в Системе'; + +COMMENT ON COLUMN S_DF02.FILE_TYPE IS 'Не используется в Системе'; + +COMMENT ON COLUMN S_DF02.RESULT IS 'Результат обработки каждой записи исходного файла ДФ-01'; + +COMMENT ON COLUMN S_DF02.FILE_NAME IS 'Наименование исходящего файла'; + +COMMENT ON COLUMN S_DF02.GENERATION_TIME IS 'Дата и время обработки файла'; + +COMMENT ON COLUMN S_DF02.GENERATION_ID IS 'Идентификатор взаимодействия'; + +-- sDf08 - ДФ-08 Запрос остатков по всем счетам +CREATE TABLE IF NOT EXISTS S_DF08(ID bigint PRIMARY KEY, NUMBER numeric(72,18), DATETIME numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +COMMENT ON TABLE S_DF08 IS 'ДФ-08 Запрос остатков по всем счетам'; + +COMMENT ON COLUMN S_DF08.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN S_DF08.NUMBER IS 'Номер запроса остатков по счетам (linked to currency)'; + +COMMENT ON COLUMN S_DF08.DATETIME IS 'Дата и время сообщения'; + +COMMENT ON COLUMN S_DF08.FILE_NAME IS 'Наименование исходящего файла'; + +COMMENT ON COLUMN S_DF08.GENERATION_TIME IS 'Дата и время обработки файла'; + +COMMENT ON COLUMN S_DF08.GENERATION_ID IS 'Идентификатор взаимодействия'; -- requestDf03 - Платежное поручение CREATE TABLE IF NOT EXISTS REQUEST_DF03(ID bigint PRIMARY KEY, REQUEST_DATE timestamp, RESPONSE_DATE timestamp, DOC_TYPE char(4), DOCNM_REF varchar(16), DOCNMPREV varchar(1), PRIORITY varchar(12), SBANKCODE varchar(12), C_ACC_DEB varchar(255), SBANKNAM1 varchar(255), SBANKNAM2 varchar(12), SBANKNAM3 varchar(12), SBANKNAM4 varchar(12), SBANKNAM5 varchar(12), RBANKCODE varchar(12), C_ACC_CRED varchar(255), RBANKNAM1 varchar(255), RBANKNAM2 varchar(12), RBANKNAM3 varchar(12), RBANKNAM4 varchar(12), RBANKNAM5 varchar(12), PAY_DATE date, EXT_DATE varchar(12), PAY_VAL varchar(4), SUM_DEB numeric(72,18), SCLIENTN1 varchar(12), SCLIENTN2 varchar(12), SCLIENTN3 varchar(12), SCLIENTN4 varchar(12), SC_CODE varchar(12), ACC_DEB varchar(12), RCLIENTN1 varchar(12), RCLIENTN2 varchar(12), RCLIENTN3 varchar(12), RCLIENTN4 varchar(12), ACC_KR_1 varchar(12), ACC_KR_2 varchar(12), SP_CODE varchar(12), SPECIF_1 varchar(255), SPECIF_2 varchar(12), SPECIF_3 varchar(12), SPECIF_4 varchar(12), SPECIF_5 varchar(12), SPECIF_6 varchar(12), SEND_TYPE varchar(12), SERVDATE varchar(12), DOC_RESULT varchar(2), SEND_RESULT varchar(1), ERROR_TEXT varchar(1), RESPONSE_RESULT varchar(1)); @@ -1721,56 +1979,79 @@ COMMENT ON COLUMN REQUEST_DF03.ERROR_TEXT IS 'Текст ошибки'; COMMENT ON COLUMN REQUEST_DF03.RESPONSE_RESULT IS 'Результат обработки на стороне ПРЦ'; -- requestDf05 - ДФ 05 - Уведомление о завершении расчетов в ПРЦ -CREATE TABLE IF NOT EXISTS REQUEST_DF05(ID bigint PRIMARY KEY, DT date, TM time, TP char(4), PR varchar(2)); +CREATE TABLE IF NOT EXISTS REQUEST_DF05(ID bigint PRIMARY KEY, TP numeric(72,18), DT date, TM time, PR varchar(1), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); COMMENT ON TABLE REQUEST_DF05 IS 'ДФ 05 - Уведомление о завершении расчетов в ПРЦ'; COMMENT ON COLUMN REQUEST_DF05.ID IS 'Идентификатор записи'; +COMMENT ON COLUMN REQUEST_DF05.TP IS 'Тип документа'; + COMMENT ON COLUMN REQUEST_DF05.DT IS 'Дата завершения расчетов'; COMMENT ON COLUMN REQUEST_DF05.TM IS 'Время завершения расчетов'; -COMMENT ON COLUMN REQUEST_DF05.TP IS 'Тип документа'; - COMMENT ON COLUMN REQUEST_DF05.PR IS 'Результат обработки запроса'; --- sDf06 - ДФ 07 - Ответ КС на запрос на дозачисление/списание денежных средств -CREATE TABLE IF NOT EXISTS S_DF06(ID bigint PRIMARY KEY, DATE timestamp, ACCOUNT varchar(25), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(1), NUMBER bigint, RESULT_CODE varchar(1), ERROR_TEXT varchar(255), EXT_ERROR_CODE char(4)); -COMMENT ON TABLE S_DF06 IS 'ДФ 07 - Ответ КС на запрос на дозачисление/списание денежных средств'; +COMMENT ON COLUMN REQUEST_DF05.FILE_NAME IS 'Наименование входящего/исходящего файла'; -COMMENT ON COLUMN S_DF06.ID IS 'Идентификатор записи'; +COMMENT ON COLUMN REQUEST_DF05.GENERATION_TIME IS 'Дата и время обработки файла'; -COMMENT ON COLUMN S_DF06.DATE IS 'Дата обработки записи'; +COMMENT ON COLUMN REQUEST_DF05.GENERATION_ID IS 'Идентификатор взаимодействия'; -COMMENT ON COLUMN S_DF06.ACCOUNT IS 'Номер счета участника торгов'; +-- sDf16 - ДФ 16 - Ответ КС на запрос на дозачисление/списание денежных средств +CREATE TABLE IF NOT EXISTS S_DF16(ID bigint PRIMARY KEY, DATE timestamp, ACCOUNT varchar(20), SUM numeric(72,18), MARKET varchar(1), TYPE varchar(1), _I_N_N numeric(72,18), _B_I_C numeric(72,18), _S_P_E_C varchar(255), NUMBER numeric(72,18), RESULT_CODE varchar(1), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +COMMENT ON TABLE S_DF16 IS 'ДФ 16 - Ответ КС на запрос на дозачисление/списание денежных средств'; -COMMENT ON COLUMN S_DF06.SUM IS 'Сумма платежного документа (операции)'; +COMMENT ON COLUMN S_DF16.ID IS 'Идентификатор записи'; -COMMENT ON COLUMN S_DF06.MARKET IS 'Код сегмента рынка'; +COMMENT ON COLUMN S_DF16.DATE IS 'Дата обработки записи'; -COMMENT ON COLUMN S_DF06.TYPE IS 'Код типа платежного документа (операции)'; +COMMENT ON COLUMN S_DF16.ACCOUNT IS 'Номер счета участника торгов'; -COMMENT ON COLUMN S_DF06.NUMBER IS 'Номер платежного документа (операции)'; +COMMENT ON COLUMN S_DF16.SUM IS 'Сумма платежного документа (операции)'; -COMMENT ON COLUMN S_DF06.RESULT_CODE IS 'Результат обработки записи'; +COMMENT ON COLUMN S_DF16.MARKET IS 'Код сегмента рынка'; -COMMENT ON COLUMN S_DF06.ERROR_TEXT IS 'Текст ошибки'; +COMMENT ON COLUMN S_DF16.TYPE IS 'Код типа платежного документа (операции)'; -COMMENT ON COLUMN S_DF06.EXT_ERROR_CODE IS 'Внешний код ошибки (linked to extError)'; +COMMENT ON COLUMN S_DF16._I_N_N IS 'ИНН'; --- requestDf08 - ДФ 08 – Запрос остатков по всем счетам -CREATE TABLE IF NOT EXISTS REQUEST_DF08(ID bigint PRIMARY KEY, DATETIME timestamp, NUMBER bigint, RESULT varchar(2)); -COMMENT ON TABLE REQUEST_DF08 IS 'ДФ 08 – Запрос остатков по всем счетам'; +COMMENT ON COLUMN S_DF16._B_I_C IS 'БИК'; -COMMENT ON COLUMN REQUEST_DF08.ID IS 'Идентификатор записи'; +COMMENT ON COLUMN S_DF16._S_P_E_C IS 'Назначение'; -COMMENT ON COLUMN REQUEST_DF08.DATETIME IS 'Дата отправки запроса'; +COMMENT ON COLUMN S_DF16.NUMBER IS 'Номер платежного документа (операции)'; -COMMENT ON COLUMN REQUEST_DF08.NUMBER IS 'Номер запроса'; +COMMENT ON COLUMN S_DF16.RESULT_CODE IS 'Результат обработки записи'; -COMMENT ON COLUMN REQUEST_DF08.RESULT IS 'Результат обработки запроса'; +COMMENT ON COLUMN S_DF16.FILE_NAME IS 'Наименование входящего/исходящего файла'; -/* views */ +COMMENT ON COLUMN S_DF16.GENERATION_TIME IS 'Дата и время обработки файла'; --- Data types - \ No newline at end of file +COMMENT ON COLUMN S_DF16.GENERATION_ID IS 'Идентификатор взаимодействия'; + +-- requestDf18 - ДФ18 – Запрос остатков по всем счетам +CREATE TABLE IF NOT EXISTS REQUEST_DF18(ID bigint PRIMARY KEY, DATETIME timestamp, ACCOUNT varchar(25), DEAL varchar, STATUS numeric(72,18), RESULT numeric(72,18), FILE_NAME varchar(255), GENERATION_TIME timestamp, GENERATION_ID bigint); +COMMENT ON TABLE REQUEST_DF18 IS 'ДФ18 – Запрос остатков по всем счетам'; + +COMMENT ON COLUMN REQUEST_DF18.ID IS 'Идентификатор записи'; + +COMMENT ON COLUMN REQUEST_DF18.DATETIME IS 'Дата отправки запроса'; + +COMMENT ON COLUMN REQUEST_DF18.ACCOUNT IS 'Код счета участника клиринга'; + +COMMENT ON COLUMN REQUEST_DF18.DEAL IS 'Биржевой код участника клиринга'; + +COMMENT ON COLUMN REQUEST_DF18.STATUS IS 'Идентификатор статуса (linked to workflowStatus)'; + +COMMENT ON COLUMN REQUEST_DF18.RESULT IS 'Результат обработки запроса'; + +COMMENT ON COLUMN REQUEST_DF18.FILE_NAME IS 'Наименование входящего/исходящего файла'; + +COMMENT ON COLUMN REQUEST_DF18.GENERATION_TIME IS 'Дата и время обработки файла'; + +COMMENT ON COLUMN REQUEST_DF18.GENERATION_ID IS 'Идентификатор взаимодействия'; + + --/* views */ + + -- Data types diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/SimpleObjectMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/SimpleObjectMapStore.java index aa8e5342a..d2f079e89 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/SimpleObjectMapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/SimpleObjectMapStore.java @@ -28,7 +28,7 @@ import java.util.*; public abstract class SimpleObjectMapStore implements MapStore { protected final Logger log = LoggerFactory.getLogger(this.getClass()); - protected SimpleDateFormat FIREBIRD_DATE_FORMATTER = new SimpleDateFormat("yyyy-MM-dd"); + protected SimpleDateFormat FIREBIRD_DATE_FORMATTER = new SimpleDateFormat("yyyy-MM-dd");//todo уже не firebird, а PostgreSQL protected final JdbcTemplate jdbcTemplate; private final int bathSize = 1000; diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/TemplateEventMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/TemplateEventMapStore.java new file mode 100644 index 000000000..c0b36e742 --- /dev/null +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/base/TemplateEventMapStore.java @@ -0,0 +1,77 @@ +package ru.spcex.clearing.imdg.base; + +import org.springframework.jdbc.core.JdbcTemplate; +import ru.clearing.classes.objects.BusinessEvent; +import ru.clearing.classes.objects.BusinessObject; +import ru.spcex.clearing.imdg.utils.DbUtilsHelper; + +import java.util.*; + +public abstract class TemplateEventMapStore> + extends ObjectBaseMapStore + implements AutoconfiguredMap { + + protected final int validateSize = getFields().length; + protected final String insertStatement = DbUtilsHelper.createUpdateOrInsert(getTableName(), getFields(), "id"); + + public TemplateEventMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + public final Iterable loadAllKeys() { + return Collections.emptyList(); + } + + @Override + public final T load(Long id) { + return null; + } + + @Override + public final Collection load(Collection keys) { + return Collections.emptyList(); + } + + @Override + public final Map loadAll(Collection keys) { + return Collections.emptyMap(); + } + + @Override + public String[] getIndexingField() { + return null; + } + +// @Override +// public String getTableName() { +// return "COMPANY_ROLE_SET"; +// } + +// @Override +// public String[] getFields() { +// return new String[]{"id", "roleid", "companyid"}; +// } + + /** + * Сериализатор + * @param resultSet + * @return Object[] args + */ + protected abstract Object[] objectToField(T resultSet); + + @Override + public void store(Map map) { + List batchArgs = new ArrayList<>(); + for (Map.Entry entry : map.entrySet()) { + T obj = entry.getValue(); + Object[] args = objectToField(obj); + if (args.length != validateSize) { + throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize); + } + batchArgs.add(args); + } + batchInsertUpdate(insertStatement, batchArgs); + } + +}