This commit is contained in:
AKurakin 2023-03-30 19:10:33 +03:00
parent 611801e965
commit 3ed83781f2
44 changed files with 5413 additions and 4065 deletions

View file

@ -1,9 +1,110 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!--?xml-stylesheet type="text/xsl" href="\..\corp-reports\src\data\meta\meta.server.xslt"?--> <!--?xml-stylesheet type="text/xsl" href="\..\corp-reports\src\data\meta\meta.server.xslt"?-->
<meta version="2.4.0.14"> <meta version="3.5.0.15">
<!-- _xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" _xsi:noNamespaceSchemaLocation="file:///E:/d/projects/meta/from/meta.xsd" --> <!-- _xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" _xsi:noNamespaceSchemaLocation="file:///E:/d/projects/meta/from/meta.xsd" -->
<!--Здесь словари--> <!--Здесь словари-->
<enums> <enums>
<allowed name="Справочник признаков допустимости использования объектов" class="com.spicex.platform.dictionary.AllowedDictionary" table="allowed_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Признак допустимости" shortname="Допустимость" type="2" length="50"/>
</allowed>
<workflowStatus name="Справочник статусов бизнес-процессов" class="com.spicex.dictionary." table="workflow_status_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</workflowStatus>
<errorCode name="Коды ошибок" class="com.spicex.dictionary." table="error_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Текст ошибки" shortname="Ошибка" type="2" length="255"/>
</errorCode>
<countryCode name="Справочник кодов стран" class="ru.clearing.platform.dictionary.CountryCodeDictionary" table="country_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" type="2" length="255"/>
</countryCode>
<section name="Справочник секций" class="com.spicex.dictionary." table="section_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</section>
<userRole name="Роли пользователей" class="com.spicex.dictionary.UserRole" table="user_role_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Роль пользователя" shortname="Роль" type="2" length="50"/>
</userRole>
<connectionState name="Справочник состояний соединений" class="com.spicex.dictionary.ConnectionStateDictionary" table="connection_state_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Состояние" type="2" length="50"/>
</connectionState>
<legalKind name="Справочник видов субъекта" class="com.spicex.dictionary." table="legal_kind_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Вид" type="2" length="255"/>
</legalKind>
<organizationType name="Справочник типов организаций" class="com.spicex.dictionary." table="organization_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</organizationType>
<corporationSoleType name="Справочник единоличных исполнительных органов" class="com.spicex.dictionary." table="corporation_sole_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</corporationSoleType>
<clearingCategory name="Справочник категорий участника клиринга" class="com.spicex.dictionary.ClearingMemberCategoryDictionary" table="clearing_category_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</clearingCategory>
<contactType name="Справочник типов контактов компании" class="com.spicex.dictionary." table="contact_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</contactType>
<documentType name="Справочник типов документов" class="com.spicex.dictionary." table="document_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</documentType>
<companySymbol name="Справочник имен компании" class="com.spicex.dictionary." logUpdates="true" table="company_symbol_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Полное имя" type="2" length="255"/>
<shortname name="Краткое наименование" shortname="Имя" type="2" length="255"/>
</companySymbol>
<companyRole name="Справочник ролей компаний" class="com.spicex.dictionary." table="company_role_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Роль Участника" shortname="Роль" type="2" length="255"/>
</companyRole>
<currencyCode name="Справочник кодов валют" class="com.spicex.dictionary." table="currency_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</currencyCode>
<instrumentType name="Справочник типов инструментов" class="com.spicex.dictionary." table="instrument_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</instrumentType>
<termType name="Справочник видов инструментов Денежного рынка" class="com.spicex.dictionary." table="term_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</termType>
<shareType name="Справочник типов акций" class="com.spicex.dictionary." table="share_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код акции" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</shareType>
<bondType name="Справочник типов облигаций" class="com.spicex.dictionary." table="bond_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код облигации" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</bondType>
<chargeDirection name="Направление начисления комиссии" class="ru.clearing.platform.dictionary." table="charge_direction_dictionary"> <chargeDirection name="Направление начисления комиссии" class="ru.clearing.platform.dictionary." table="charge_direction_dictionary">
<id name="Идентификатор" shortname="ID" type="1"/> <id name="Идентификатор" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
@ -19,11 +120,6 @@
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Способ доставки" shortname="Способ доставки" type="2" length="50"/> <name name="Способ доставки" shortname="Способ доставки" type="2" length="50"/>
</courierType> </courierType>
<termType name="Справочник видов инструментов денежного рынка" class="com.spicex.dictionary." table="term_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</termType>
<task name="Справочник задач" class="com.spicex.dictionary.TaskDictionary" table="task_dictionary"> <task name="Справочник задач" class="com.spicex.dictionary.TaskDictionary" table="task_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/> <id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
@ -54,21 +150,11 @@
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/> <name name="Наименование" shortname="Тип" type="2" length="255"/>
</clearingStatus> </clearingStatus>
<workflowStatus name="Справочник статусов бизнес-процессов" class="com.spicex.dictionary." table="workflow_status_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</workflowStatus>
<accountStatus name="Справочник статусов счетов" class="com.spicex.dictionary.AccountStatus" table="account_status_dictionary"> <accountStatus name="Справочник статусов счетов" class="com.spicex.dictionary.AccountStatus" table="account_status_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/> <id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="50"/> <name name="Наименование" shortname="Тип" type="2" length="50"/>
</accountStatus> </accountStatus>
<allowed name="Справочник признаков допустимости использования объектов" class="com.spicex.platform.dictionary.AllowedDictionary" table="allowed_dictionary">
<id name="Идентификатор" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Признак допустимости" shortname="Допустимость" type="2" length="50"/>
</allowed>
<moneyFlowSide name="Направление заявки" class="ru.clearing.platform.dictionary.MoneyFlowSideDictionary" table="money_flow_side_dictionary"> <moneyFlowSide name="Направление заявки" class="ru.clearing.platform.dictionary.MoneyFlowSideDictionary" table="money_flow_side_dictionary">
<id name="Идентификатор" shortname="ID" type="1"/> <id name="Идентификатор" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
@ -99,77 +185,11 @@
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Тип лимитов" shortname="Тип" type="2" length="50"/> <name name="Тип лимитов" shortname="Тип" type="2" length="50"/>
</balanceAccountType> </balanceAccountType>
<countryCode name="Справочник кодов стран" class="ru.clearing.platform.dictionary.CountryCodeDictionary" table="country_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" type="2" length="255"/>
</countryCode>
<clearingCategory name="Справочник категорий участника клиринга" class="com.spicex.dictionary.ClearingMemberCategoryDictionary" table="clearing_category_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</clearingCategory>
<contactType name="Справочник типов контактов Компании" class="com.spicex.dictionary." table="contact_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</contactType>
<corporationSoleType name="Единоличный исполнительный орган" class="com.spicex.dictionary." table="corporation_sole_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</corporationSoleType>
<connectionState name="Справочник состояний соединений" class="com.spicex.dictionary.ConnectionStateDictionary" table="connection_state_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Состояние" type="2" length="50"/>
</connectionState>
<documentType name="Справочник типов документов" class="com.spicex.dictionary." table="document_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</documentType>
<legalKind name="Справочник видов субъекта" class="com.spicex.dictionary." table="legal_kind_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Вид" type="2" length="255"/>
</legalKind>
<organizationType name="Справочник типов организаций" class="com.spicex.dictionary." table="organization_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</organizationType>
<companySymbol name="Справочник имен Компании" class="com.spicex.dictionary." logUpdates="true" table="company_symbol_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Полное имя" type="2" length="255"/>
<shortname name="Краткое наименование" shortname="Имя" type="2" length="255"/>
</companySymbol>
<companyRole name="Справочник ролей Компаний" class="com.spicex.dictionary." table="company_role_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Роль Участника" shortname="Роль" type="2" length="255"/>
</companyRole>
<userRole name="Роли пользователей" class="com.spicex.dictionary.UserRole" table="user_role_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Роль пользователя" shortname="Роль" type="2" length="50"/>
</userRole>
<accountType name="Справочник типов счетов" class="com.spicex.dictionary.AccountTypeDictionary" table="account_type_dictionary"> <accountType name="Справочник типов счетов" class="com.spicex.dictionary.AccountTypeDictionary" table="account_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/> <id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/> <name name="Наименование" shortname="Наименование" type="2" length="255"/>
</accountType> </accountType>
<instrumentType name="Справочник типов инструмента" class="com.spicex.dictionary." table="instrument_type_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Тип" type="2" length="255"/>
</instrumentType>
<currencyCode name="Справочник кодов валют" class="com.spicex.dictionary." table="currency_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</currencyCode>
<serviceStatus name="Справочник услуги" class="com.spicex.dictionary." table="service_status_dictionary"> <serviceStatus name="Справочник услуги" class="com.spicex.dictionary." table="service_status_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/> <id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
@ -185,21 +205,11 @@
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/> <name name="Наименование" shortname="Наименование" type="2" length="255"/>
</serviceProduct> </serviceProduct>
<sector name="Справочник секций" class="com.spicex.dictionary." table="sector_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Наименование" shortname="Наименование" type="2" length="255"/>
</sector>
<resultStatus name="Статус обработки" class="com.spicex.dictionary." table="result_status_dictionary"> <resultStatus name="Статус обработки" class="com.spicex.dictionary." table="result_status_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/> <id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
<name name="Статус обработки" shortname="Статус" type="2" length="255"/> <name name="Статус обработки" shortname="Статус" type="2" length="255"/>
</resultStatus> </resultStatus>
<errorCode name="Коды ошибок" class="com.spicex.dictionary." table="error_code_dictionary">
<id name="Идентификатор записи" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/>
<name name="Текст ошибки" shortname="Ошибка" type="2" length="255"/>
</errorCode>
<managementJournalStatus name="Справочник статусов журнала мониторинга и контроля" class="ru.clearing.platform.dictionary.managementJournalStatusDictionary" table="management_journal_status_dictionary"> <managementJournalStatus name="Справочник статусов журнала мониторинга и контроля" class="ru.clearing.platform.dictionary.managementJournalStatusDictionary" table="management_journal_status_dictionary">
<id name="Идентификатор" shortname="ID" type="1"/> <id name="Идентификатор" shortname="ID" type="1"/>
<code name="Код" shortname="Код" type="12"/> <code name="Код" shortname="Код" type="12"/>
@ -243,9 +253,9 @@
</enums> </enums>
<objects> <objects>
<userCls name="Пользователь" destination="users" class="ru.clearing.classes.statics.data.user.User" logUpdates="true" table="user_cls"> <userCls name="Пользователь" destination="users" class="ru.clearing.classes.statics.data.user.User" logUpdates="true" table="user_cls">
<id type="1" name="Идентификатор" shortname="ID" searchable="true" sortable="true"/> <id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Создано" shortname="Создано" searchable="true" sortable="true"/> <createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt field="updated" type="4" name="Изменено" shortname="Изменено" searchable="true" sortable="true"/> <updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
<identifier type="2" length="250" name="Внешний идентификатор" shortname="Идентификатор" searchable="true" sortable="true" visible="true"/> <identifier type="2" length="250" name="Внешний идентификатор" shortname="Идентификатор" searchable="true" sortable="true" visible="true"/>
<name type="2" length="250" name="Имя и фамилия пользователя" shortname="Имя и фамилия" searchable="true" sortable="true" visible="true"/> <name type="2" length="250" name="Имя и фамилия пользователя" shortname="Имя и фамилия" searchable="true" sortable="true" visible="true"/>
<firstName type="2" length="250" name="Имя пользователя" shortname="Имя" searchable="true" sortable="true" visible="true"/> <firstName type="2" length="250" name="Имя пользователя" shortname="Имя" searchable="true" sortable="true" visible="true"/>
@ -261,38 +271,370 @@
</userCls> </userCls>
<userRoleSession name="Набор ролей" destination="user-role-sessions" class="ru.clearing.classes.statics.data.user.UserRoleSession" table="user_role_session"> <userRoleSession name="Набор ролей" destination="user-role-sessions" class="ru.clearing.classes.statics.data.user.UserRoleSession" table="user_role_session">
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/> <id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<userId type="1" name="Идентификатор пользователя" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/> <userId type="1" dbname="Идентификатор пользователя" name="Имя и фамилия пользователя" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/>
<userRole type="12" name="Идентификатор роли" shortname="Роль" searchable="true" sortable="true" visible="true" link="userRole"/> <userRole type="12" dbname="Код роли пользователя" name="Роль пользователя" shortname="Роль" searchable="true" sortable="true" visible="true" link="userRole"/>
<companyId type="1" name="Идентификатор компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company"/> <companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company"/>
<status type="12" name="Статус" shortname="Статус" searchable="true" sortable="true" link="workflowStatus"/> <status type="12" dbname="Код статуса" name="Наименование статуса" shortname="Статус" searchable="true" sortable="true" link="workflowStatus"/>
</userRoleSession> </userRoleSession>
<userSettings name="Настройки пользователя" destination="utilities/user-settings" class="ru.clearing.classes.statics.data.user.UserSettings" table="user_settings"> <userSettings name="Настройки пользователя" destination="utilities/user-settings" class="ru.clearing.classes.statics.data.user.UserSettings" table="user_settings">
<id type="1" name="Идентификатор" shortname="ID" searchable="true" sortable="true"/> <id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<userId type="1" name="Пользователь" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/> <userId type="1" dbname="Идентификатор пользователя" name="Имя и фамилия пользователя" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/>
<version type="2" length="50" name="Версия настроек пользователя" shortname="Версия" searchable="false" sortable="false" visible="true"/> <version type="2" length="50" name="Версия настроек пользователя" shortname="Версия" searchable="false" sortable="false" visible="true"/>
<json type="2" length="200000" name="Данные конфигурации" shortname="Конфигурация" searchable="false" sortable="false" visible="true"/> <json type="2" length="200000" name="Данные конфигурации" shortname="Настройки" searchable="false" sortable="false" visible="true"/>
<actions> <actions>
<put name="Изменение настроек пользователя"> <put name="Изменение настроек пользователя">
<userId type="1" name="Пользователь" required="false" link="userCls"/> <userId type="1" name="Имя и фамилия пользователя" shortname="Пользователь" required="false" link="userCls"/>
<version type="2" length="50" name="Версия" required="false"/> <version type="2" length="50" name="Версия настроек пользователя" shortname="Версия" required="false"/>
<json type="2" length="200000" name="Настройки" required="false"/> <json type="2" length="200000" name="Данные конфигурации" shortname="Настройки" required="false"/>
</put> </put>
</actions> </actions>
</userSettings> </userSettings>
<userConnect name="Активность пользователей в системе" class="ru.clearing.classes.statics.data.user.UserConnect" logUpdates="true" table="user_connect"> <userConnect name="Активность пользователей в системе" class="ru.clearing.classes.statics.data.user.UserConnect" logUpdates="true" table="user_connect">
<id type="1" name="Идентификатор" shortname="ID" searchable="true" sortable="true"/> <id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Создано" shortname="Создано" searchable="true" sortable="true"/> <createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt field="updated" type="4" name="Изменено" shortname="Изменено" searchable="true" sortable="true"/> <updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
<userId type="1" name="Пользователь" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/> <userId type="1" dbname="Идентификатор пользователя" name="Имя и фамилия пользователя" shortname="Пользователь" searchable="true" sortable="true" visible="true" link="userCls"/>
<connectionTime type="4" name="Последнее соединение" shortname="Вход" searchable="true" sortable="true"/> <connectionTime type="4" name="Последнее соединение" shortname="Вход" searchable="true" sortable="true"/>
<disconnectionTime type="4" name="Разрыв соединения" shortname="Выход" searchable="true" sortable="true"/> <disconnectionTime type="4" name="Разрыв соединения" shortname="Выход" searchable="true" sortable="true"/>
<serverIp type="2" name="IP адрес сервера" shortname="IP сервера" searchable="true" sortable="true" visible="true" length="250"/> <serverIp type="2" length="250" name="IP адрес сервера" shortname="IP сервера" searchable="true" sortable="true" visible="true"/>
<clientIp type="2" name="IP адрес клиента" shortname="IP клиента" searchable="true" sortable="true" visible="true" length="250"/> <clientIp type="2" length="250" name="IP адрес клиента" shortname="IP клиента" searchable="true" sortable="true" visible="true"/>
<connectionState type="12" name="Статус соединения" shortname="Статус" searchable="true" sortable="true" visible="true" link="connectionState"/> <connectionState type="12" dbname="Код статуса соединения" name="Статус соединения" shortname="Статус" searchable="true" sortable="true" visible="true" link="connectionState"/>
<clearingDate type="6" name="Дата" shortname="Дата" searchable="true" sortable="true"/> <clearingDate type="6" name="Дата" shortname="Дата" searchable="true" sortable="true"/>
<errorCode type="1" name="Код ошибки" shortname="Код ошибки" searchable="true" sortable="true" link="errorCode" linkCode="code"/> <errorCodeId type="1" name="Код ошибки" shortname="Код ошибки" searchable="true" sortable="true" link="errorCode" linkCode="code"/>
<errorText type="12" name="Полный текст ошибки" shortname="Ошибка" searchable="true" sortable="true" link="errorText" linkCode="text"/> <errorTextId type="1" dbname="Идентификатор полного текста ошибки" name="Полный текст ошибки" shortname="Ошибка" searchable="true" sortable="true" link="errorText" linkCode="text"/>
</userConnect> </userConnect>
<company name="Компании" destination="companies" class="ru.clearing.classes.statics.data.company.Company" logUpdates="true" table="company">
<shortName type="2" length="255" name="Краткое наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true"/>
<fullName type="2" length="255" name="Полное наименование компании" shortname="Полное наименование" searchable="true" sortable="true" visible="true"/>
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Биржевой код" searchable="true" sortable="true" visible="true"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код" searchable="true" sortable="true" visible="true"/>
<workflowStatus type="12" dbname="Код статуса" name="Наименование статуса" shortname="Статус" searchable="true" sortable="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
<actions>
<post name="Добавление компании" confirmation="shortName,tradingCode">
<shortName type="2" length="255" name="Краткое наименование Компании" shortname="Компания" required="true"/>
<fullName type="2" length="255" name="Полное наименование Компании" shortname="Полное наименование"/>
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Торговый код" required="true"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код"/>
</post>
<delete name="Удаление компании" confirmation="shortName,tradingCode">
<id type="1" name="Идентификатор записи" shortname="ID" link="company" linkCode="id" required="true"/>
</delete>
</actions>
</company>
<companyInfo name="Профили компаний" destination="company-infos" class="ru.clearing.classes.statics.data.profile.CompanyInfo" logUpdates="true" table="company_info">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<corporationSoleType type="12" dbname="Код единоличного исполнительного органа" name="Единоличный исполнительный орган" shortname="Исполнительный орган" searchable="true" sortable="true" visible="true" link="corporationSoleType"/>
<countryCode type="12" dbname="Код юрисдикции" name="Юрисдикция" shortname="Юрисдикция" searchable="true" sortable="true" visible="true" link="countryCode"/>
<description type="2" length="255" name="Описание компании" shortname="Описание" searchable="true" sortable="true" visible="true"/>
<professionalSign type="12" dbname="Код признака профессионального участника" name="Признак профессионального участника" shortname="Проф. участник" searchable="true" sortable="true" visible="true" link="allowed"/>
<legalKind type="12" dbname="Код вида субъекта" name="Вид субъекта" shortname="Юр. лицо/Физ. лицо" searchable="true" sortable="true" visible="true" link="legalKind"/>
<organizationType type="12" dbname="Код типа организации" name="Тип организации" shortname="Тип организации" searchable="true" sortable="true" visible="true" link="organizationType"/>
<residence type="12" dbname="Код резиденции" name="Резиденция" shortname="Резиденция" searchable="true" sortable="true" visible="true" link="countryCode"/>
<shortNameEng type="2" length="255" name="Краткое наименование компании на английском" shortname="Краткое наименование на английском" searchable="true" sortable="true" visible="true"/>
<fullNameEng type="2" length="255" name="Полное наименование компании на английском" shortname="Полное наименование на английском" searchable="true" sortable="true" visible="true"/>
<shortName type="2" length="255" name="Краткое наименование компании" shortname="Краткое наименование" searchable="true" sortable="true" visible="true" extends="company"/>
<fullName type="2" length="255" name="Полное наименование компании" shortname="Полное наименование" searchable="true" sortable="true" visible="true" extends="company"/>
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Биржевой код" searchable="true" sortable="true" visible="true" extends="company"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true" extends="company"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код" searchable="true" sortable="true" visible="true" extends="company"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение профиля компании" confirmation="fullName,countryCode,corporationSoleType,legalKind,organizationType,residence,fullNameEng,shortNameEng,professionalSign,description,clearingCode,registrationCode">
<id type="1" name="Идентификатор записи" shortname="ID" link="companyInfo" linkCode="id" required="true"/>
<shortName type="2" length="255" name="Краткое наименование компании" shortname="Краткое наименование"/>
<fullName type="2" length="255" name="Полное наименование компании" shortname="Полное наименование"/>
<countryCode type="12" name="Юрисдикция" shortname="Юрисдикция" link="countryCode"/>
<corporationSoleType type="12" name="Единоличный исполнительный орган" shortname="Исполнительный орган" link="corporationSoleType"/>
<legalKind type="12" name="Вид субъекта" shortname="Юр. лицо/Физ. лицо" link="legalKind"/>
<organizationType type="12" name="Тип организации" shortname="Тип организации" link="organizationType"/>
<residence type="12" name="Резиденция" shortname="Резиденция" link="countryCode"/>
<fullNameEng type="2" length="255" name="Полное наименование компании на английском" shortname="Полное наименование на английском"/>
<shortNameEng type="2" length="255" name="Краткое наименование компании на английском" shortname="Краткое наименование на английском"/>
<professionalSign type="12" name="Признак профессионального участника" shortname="Проф. участника" link="allowed"/>
<description type="2" length="255" name="Описание компании" shortname="Описание компании"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код"/>
</put>
</actions>
</companyInfo>
<clearingMemberCategory name="Категории участника клиринга" destination="clearing-member-categories" class="ru.clearing.classes.statics.data.generated.ClearingMemberCategory" table="clearing_member_category">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<clearingMemberCategory type="12" dbname="Код категории участника клиринга" name="Категория участника клиринга" shortname="Категория" searchable="true" sortable="true" visible="true" link="clearingCategory"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление категории участника клиринга">
<companyId type="1" name="Наименование Компании" shortname="Компания" link="company" linkCode="shortName" required="true"/>
<clearingMemberCategory type="12" name="Категория участника клиринга" shortname="Категория" link="clearingCategory" required="true"/>
</post>
<put name="Изменение категории участника клиринга">
<id type="1" name="Идентификатор записи" shortname="ID" link="clearingCategory" linkCode="id" required="true"/>
<clearingMemberCategory type="12" name="Категория участника клиринга" shortname="Категория" link="clearingCategory"/>
</put>
<delete name="Удаление категории участника клиринга">
<id type="1" name="Идентификатор записи" shortname="ID" link="clearingCategory" linkCode="id" required="true"/>
</delete>
</actions>
</clearingMemberCategory>
<contact name="Контакты компании" destination="contacts" class="ru.clearing.classes.statics.data.profile.Contact" table="contact">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<contactType type="12" dbname="Код типа контакта" name="Наименование типа контакта" shortname="Тип контакта" searchable="true" sortable="true" visible="true" link="contactType"/>
<contactValue type="2" length="255" name="Значение контакта" shortname="Значение" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение контактов компании">
<id type="1" name="Идентификатор записи" shortname="ID" link="contact" linkCode="id" required="true"/>
<contactType type="12" name="Наименование типа контакта" shortname="Тип контакта" link="contactType"/>
<contactValue type="2" length="255" name="Значение контакта" shortname="Значение"/>
</put>
</actions>
</contact>
<profileDocument name="Досье компании" destination="profile-documents" class="ru.clearing.classes.statics.data.profile.ProfileDocument" table="profile_document">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<documentType type="12" dbname="Код типа документа" name="Наименование типа документа" shortname="Тип документа" searchable="true" sortable="true" visible="true" link="documentType"/>
<issueDate type="6" name="Дата выдачи" shortname="Дата выдачи" searchable="true" sortable="true"/>
<issuePlace type="2" length="255" name="Место выдачи" shortname="Место выдачи" searchable="true" sortable="true" visible="true"/>
<issuer type="2" length="255" name="Кем выдан" shortname="Кем выдан" searchable="true" sortable="true" visible="true"/>
<issuerCode type="2" length="255" name="Код выдавшего органа" shortname="Выдавший орган" searchable="true" sortable="true" visible="true"/>
<name type="2" length="255" name="Наименование документа" shortname="Документ" searchable="true" sortable="true" visible="true"/>
<number type="2" length="255" name="Номер документа" shortname="Номер" searchable="true" sortable="true" visible="true"/>
<place type="2" length="255" name="Место" shortname="Место" searchable="true" sortable="true" visible="true"/>
<validFromDate type="6" name="Дата начала срока действия" shortname="Начало" searchable="true" sortable="true"/>
<validToDate type="6" name="Дата окончания срока действия" shortname="Окончание" searchable="true" sortable="true"/>
<link type="2" length="255" name="Ссылка на документ" shortname="Ссылка на документ" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление документов" confirmation="number,companyId">
<companyId type="1" name="Наименование компании" shortname="Компании" link="company" linkCode="shortName" required="true"/>
<documentType type="12" name="Наименование типа документа" shortname="Тип документа" link="documentType" required="true"/>
<issueDate type="6" name="Дата выдачи" shortname="Дата выдачи" required="true"/>
<issuePlace type="2" length="255" name="Место выдачи" shortname="Место выдачи" required="true"/>
<issuer type="2" length="255" name="Кем выдан" shortname="Кем выдан" required="true"/>
<issuerCode type="2" length="255" name="Код выдавшего органа" shortname="Выдавший орган" required="true"/>
<name type="2" length="255" name="Наименование документа" shortname="Документ" required="true"/>
<number type="2" length="255" name="Номер документа" shortname="Номер" required="true"/>
<place type="2" length="255" name="Место" shortname="Место" required="true"/>
<validFromDate type="6" name="Дата начала срока действия" shortname="Начало" required="true"/>
<validToDate type="6" name="Дата окончания срока действия" shortname="Окончание" required="true"/>
<link type="2" length="255" name="Ссылка на документ" shortname="Ссылка на документ"/>
</post>
</actions>
</profileDocument>
<companySymbols name="Реквизиты компании" destination="company-symbols" class="ru.clearing.classes.statics.data.company.CompanySymbols" table="company_symbols">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<companySymbol type="12" dbname="Код типа реквизита" name="Наименование типа реквизита" shortname="Тип реквизита" searchable="true" sortable="true" visible="true" link="companySymbol" linkCode="shortName"/>
<companySymbolValue type="2" length="255" name="Значение реквизита" shortname="Значение" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение реквизитов компании">
<id type="1" name="Идентификатор записи" shortname="ID" link="companySymbols" linkCode="id" required="true"/>
<companySymbol type="12" name="Наименование типа реквизита" shortname="Тип реквизита" link="companySymbol"/>
<companySymbolValue type="2" length="255" name="Значение реквизита" shortname="Значение"/>
</put>
</actions>
</companySymbols>
<companyRoleSet name="Таблица ролей компании" destination="company-role-sets" class="ru.clearing.classes.statics.data.company.CompanyRoleSet" table="company_role_set">
<companyId type="1" dbname="Идентификатор компании" name="Наименование компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<companyRole type="12" dbname="Код роли компании" name="Наименование роли компании" shortname="Роль" searchable="true" sortable="true" visible="true" link="companyRole"/>
<workflowStatus type="12" dbname="Код статуса" name="Наименование статуса" shortname="Статус" searchable="true" sortable="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</companyRoleSet>
<security name="Инструменты" destination="securities" class="ru.clearing.classes.statics.data.security.Security" logUpdates="true" table="security">
<instrumentType type="12" dbname="Код типа инструмента" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType"/>
<issuerId type="1" dbname="Идентификатор эмитента" name="Наименование эмитента" shortname="Эмитент" searchable="true" sortable="true" link="company"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" searchable="true" sortable="true" visible="true"/>
<fullName type="2" length="255" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" visible="true"/>
<shortNameEng type="2" length="255" name="Краткое наименование инструмента на английском" shortname="Краткое наименование на английском" searchable="true" sortable="true" visible="true"/>
<fullNameEng type="2" length="255" name="Полное наименование инструмента на английском" shortname="Наименование на английском" searchable="true" sortable="true" visible="true"/>
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" searchable="true" sortable="true" visible="true"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN" searchable="true" sortable="true" visible="true"/>
<workflowStatus type="12" dbname="Код статуса" name="Наименование статуса" shortname="Статус" searchable="true" sortable="true" visible="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
</security>
<currency name="Валюты" destination="currencies" class="ru.clearing.classes.statics.data.misc.Currency" logUpdates="true" table="currency">
<countryCode type="12" dbname="Код страны" name="Наименование страны" shortname="Страна" searchable="true" sortable="true" visible="true" link="countryCode"/>
<currencyCode type="12" dbname="Код валюты" name="Наименование валюты" shortname="Валюта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</currency>
<moneyMarketSecurity name="Инструменты Денежного рынка" destination="securities/money-securities" class="ru.clearing.classes.statics.data.misc.MoneyMarketSecurity" logUpdates="true" table="money_market_security">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<description type="2" length="255" name="Описание" shortname="Описание" searchable="true" sortable="false"/>
<startDate type="6" name="Дата начала действия" shortname="Дата начала" searchable="true" sortable="true"/>
<endDate type="6" name="Дата окончания действия" shortname="Дата окончания" searchable="true" sortable="true"/>
<nominalValue type="10" name="Номинал" shortname="Номинал" searchable="true" sortable="true"/>
<nominalCurrency type="12" dbname="Код валюты номинала" name="Наименование валюты номинала" shortname="Валюта номинала" searchable="true" sortable="true" link="currencyCode" linkCode="code"/>
<instrumentType type="12" dbname="Код типа инструмента" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType" extends="security"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<fullName type="2" length="255" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" searchable="true" sortable="true" visible="true" extends="security"/>
<termType type="12" dbname="Код вида инструмента" name="Наименование вида инструмента" shortname="Вид инструмента" searchable="true" sortable="true" visible="false" link="termType" ignore="true"/>
<lotSize field="securityId" type="11" name="Размер лота" shortname="Лот" searchable="true" sortable="true" visible="true" linkKeyCode="securityId" linkCode="lotSize" link="listing" extends="listing"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление инструмента" confirmation="securitySymbol,shortName,fullName,lotSize,nominalValue,nominalCurrency,startDate,endDate">
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" required="true"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<lotSize type="11" name="Размер лота" shortname="Лот" required="true"/>
<nominalValue type="10" name="Номинал" shortname="Номинал" required="true"/>
<nominalCurrency type="12" name="Наименование валюты номинала" shortname="Валюта номинала" link="currencyCode" linkCode="code" required="true"/>
<startDate type="6" name="Дата начала действия" shortname="Дата начала" required="true"/>
<endDate type="6" name="Дата окончания действия" shortname="Дата окончания" required="true"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType" required="true"/>
</post>
<put name="Изменение инструмента" confirmation="securitySymbol,shortName,fullName,lotSize,nominalValue,nominalCurrency,startDate,endDate">
<id type="1" name="Идентификатор записи" shortname="ID" link="moneyMarketSecurity" linkCode="id" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<lotSize type="11" name="Размер лота" shortname="Лот"/>
<nominalValue type="10" name="Номинал" shortname="Номинал"/>
<nominalCurrency type="12" name="Наименование валюты номинала" shortname="Валюта номинала" link="currencyCode" linkCode="code"/>
<startDate type="6" name="Дата начала действия" shortname="Дата начала"/>
<endDate type="6" name="Дата окончания действия" shortname="Дата окончания"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType"/>
</put>
<delete name="Удаление инструмента" confirmation="securitySymbol,shortName">
<id type="1" name="Идентификатор записи" shortname="ID" link="moneyMarketSecurity" linkCode="id" required="true"/>
</delete>
</actions>
</moneyMarketSecurity>
<equitySecurity name="Акции" destination="securities/equity-securities" class="com.spicex.platform.classes.StaticData.Instrument.Issue.Equity" table="equity_security">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" searchable="true" sortable="true" visible="true" extends="security"/>
<fullName type="2" length="255" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN" searchable="true" sortable="true" visible="true" extends="security"/>
<instrumentType type="12" dbname="Код типа инструмента" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType" extends="security"/>
<shareType type="12" dbname="Код типа акции" name="Наименование типа акции" shortname="Тип акции" searchable="true" sortable="true" visible="true" link="shareType"/>
<lotSize field="securityId" type="11" name="Размер лота" shortname="Лот" searchable="true" sortable="true" visible="true" linkKeyCode="securityId" linkCode="lotSize" link="listing" extends="listing"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление акции" confirmation="securitySymbol,shortName,fullName,isin,shareType,lotSize">
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" required="true"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN"/>
<shareType type="12" dbname="Код типа акции" name="Наименование типа акции" shortname="Тип акции" link="shareType"/>
<lotSize type="11" name="Размер лота" shortname="Лот" required="true"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType" required="true"/>
</post>
<put name="Изменение акции" confirmation="securitySymbol,shortName,fullName,isin,shareType,lotSize">
<id type="1" name="Идентификатор записи" shortname="ID" link="equitySecurity" linkCode="id" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN"/>
<shareType type="12" dbname="Код типа акции" name="Наименование типа акции" shortname="Тип акции" link="shareType"/>
<lotSize type="11" name="Размер лота" shortname="Лот"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType"/>
</put>
<delete name="Удаление акции" confirmation="securitySymbol,shortName">
<id type="1" name="Идентификатор записи" shortname="ID" link="equitySecurity" linkCode="id" required="true"/>
</delete>
</actions>
</equitySecurity>
<fixedIncomeSecurity name="Облигации" destination="securities/fixed-income-securities" class="com.spicex.platform.classes.StaticData.Instrument.Issue.FixedIncome" table="fixed_income_security">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" searchable="true" sortable="true" visible="true" extends="security"/>
<fullName type="2" length="255" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" visible="true" extends="security"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN" searchable="true" sortable="true" visible="true" extends="security"/>
<instrumentType type="12" dbname="Код типа инструмента" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType" extends="security"/>
<bondType type="12" dbname="Код типа облигации" name="Наименование типа облигации" shortname="Тип облигации" searchable="true" sortable="true" visible="true" link="bondType"/>
<maturityDate type="6" name="Дата погашения" shortname="Погашение" searchable="true" sortable="true"/>
<nominalValue type="10" name="Номинал" shortname="Номинал" searchable="true" sortable="true"/>
<nominalCurrency type="12" dbname="Код валюты номинала" name="Наименование валюты номинала" shortname="Валюта номинала" searchable="true" sortable="true" link="currencyCode"/>
<coupon type="10" name="Купон" shortname="Купон" searchable="true" sortable="true"/>
<couponFrequency type="3" name="Длительность купона" shortname="Длительность" searchable="true" sortable="true"/>
<lotSize field="securityId" type="11" name="Размер лота" shortname="Лот" searchable="true" sortable="true" visible="true" linkKeyCode="securityId" linkCode="lotSize" link="listing" extends="listing"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление облигации" confirmation="securitySymbol,shortName,fullName,isin,bondType,lotSize,nominalValue,nominalCurrency,maturityDate,coupon,couponFrequency,instrumentType">
<securitySymbol type="2" length="255" name="Код инструмента" shortname="Код" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование" required="true"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN"/>
<bondType type="12" dbname="Код типа облигации" name="Наименование типа облигации" shortname="Тип облигации" link="bondType"/>
<lotSize type="11" name="Размер лота" shortname="Лот" required="true"/>
<nominalValue type="10" name="Номинал" shortname="Номинал"/>
<nominalCurrency type="12" name="Наименование валюты номинала" shortname="Валюта номинала" link="currencyCode" linkCode="code"/>
<maturityDate type="6" name="Дата погашения" shortname="Погашение"/>
<coupon type="10" name="Купон" shortname="Купон"/>
<couponFrequency type="3" name="Длительность купона" shortname="Длительность"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType" required="true"/>
</post>
<put name="Изменение облигации" confirmation="securitySymbol,shortName,fullName,isin,bondType,lotSize,nominalValue,nominalCurrency,maturityDate,coupon,couponFrequency,instrumentType">
<id type="1" name="Идентификатор записи" shortname="ID" link="fixedIncomeSecurity" linkCode="id" required="true"/>
<shortName type="2" length="255" name="Краткое наименование инструмента" shortname="Краткое наименование"/>
<fullName type="2" length="255" name="Краткое наименование инструмента" shortname="Наименование"/>
<isin type="2" length="50" name="Наименование инструмента ISIN" shortname="ISIN"/>
<bondType type="12" dbname="Код типа облигации" name="Наименование типа облигации" shortname="Тип облигации" link="bondType"/>
<lotSize type="11" name="Размер лота" shortname="Лот"/>
<nominalValue type="10" name="Номинал" shortname="Номинал"/>
<nominalCurrency type="12" name="Наименование валюты номинала" shortname="Валюта номинала" link="currencyCode" linkCode="code"/>
<maturityDate type="6" name="Дата погашения" shortname="Погашение"/>
<coupon type="10" name="Купон" shortname="Купон"/>
<couponFrequency type="3" name="Длительность купона" shortname="Длительность"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType"/>
</put>
<delete name="Удаление облигации" confirmation="securitySymbol,shortName">
<id type="1" name="Идентификатор записи" shortname="ID" link="fixedIncomeSecurity" linkCode="id" required="true"/>
</delete>
</actions>
</fixedIncomeSecurity>
<fixedIncomeCashFlow name="Выплаты по купонам" destination="securities/fixed-income-cash-flows" class="com.spicex.platform.classes.StaticData.Instrument.Issue.FixedIncome" table="fixed_income_cash_flow">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<accruedCoupon type="11" name="Купон" shortname="Купон" searchable="true" sortable="true" visible="true" extends="security"/>
<nominalValue type="10" name="Номинал" shortname="Номинал" searchable="true" sortable="true"/>
<number type="3" name="Номер купона" shortname="Номер" searchable="true" sortable="true" visible="true" extends="security"/>
<valueDate type="6" name="Дата выплаты купона" shortname="Выплата" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</fixedIncomeCashFlow>
<couponPeriod name="Купонное расписание" destination="securities/coupon-periods" class="com.spicex.platform.classes.StaticData.Instrument.Issue.FixedIncome" table="coupon_period">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<couponRate type="11" name="Купонная ставка" shortname="Ставка" searchable="true" sortable="true" visible="true" extends="security"/>
<number type="3" name="Номер купона" shortname="Номер" searchable="true" sortable="true" visible="true" extends="security"/>
<periodEndDate type="6" name="Начало периода действия" shortname="Начало" searchable="true" sortable="true" visible="true"/>
<periodStartDate type="6" name="Окончание периода действия" shortname="Окончание" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</couponPeriod>
<listing name="Листинг инструментов" destination="listings" class="ru.clearing.classes.statics.data.misc.Listing" logUpdates="true" table="listing">
<securityId type="1" dbname="Идентификатор инструмента" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<lotSize type="11" name="Размер лота" shortname="Лот" searchable="true" sortable="true"/>
<market type="12" dbname="Код торговой секции" name="Наименование торговой секции" shortname="Секция" searchable="true" sortable="true" link="market" linkCode="name"/>
<symbolCode type="2" length="255" name="Код инструмента на торговой площадке" shortname="Код инструмента на торговой площадке" searchable="true" sortable="true"/>
<symbolName type="2" length="255" name="Наименование инструмента на торговой площадке" shortname="Инструмента на торговой площадке" searchable="true" sortable="true"/>
<tradingCurrency type="12" dbname="Код валюты расчета" name="Наименование валюты расчета" shortname="Валюта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<workflowStatus type="12" dbname="Код статуса листинга в системе" name="Наименование статуса листинга в системе" shortname="Статус" searchable="true" sortable="true" visible="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
</listing>
<market name="Торговые секции" destination="markets" class="ru.clearing.classes.statics.data.misc.Market" logUpdates="true" table="market">
<description type="2" length="255" name="Описание" shortname="Описание" searchable="true" sortable="true"/>
<exchangeId type="1" dbname="Идентификатор площадки" name="Наименование площадки" shortname="Площадка" searchable="true" sortable="true" link="company"/>
<name type="2" length="255" name="Наименование рынка" shortname="Рынок" searchable="true" sortable="true"/>
<code type="12" name="Код рынка" shortname="Код" searchable="true" sortable="true"/>
<settlementCurrency type="12" dbname="Код валюты расчета" name="Наименование валюты расчета" shortname="Валюта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<section type="12" dbname="Код секции" name="Наименование секции" shortname="Секция" searchable="true" sortable="true" visible="true" link="section"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
</market>
<errorText name="Полные тексты ошибок" destination="error-texts" class="ru.clearing.classes.statics.data.messages.ErrorText" table="error_text">
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt type="4" webtype="5" dbname="Дата-время создания записи" name="Время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt type="4" webtype="5" dbname="Дата-время изменения записи" name="Время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
<errorCodeId type="1" dbname="Идентификатор кода ошибки" name="Код ошибки" shortname="Код" searchable="true" sortable="true" visible="true" link="errorCode"/>
<text type="2" length="255" name="Полный текст ошибки" shortname="Ошибка" searchable="true" sortable="true" visible="true"/>
<userId type="1" dbname="Идентификатор автора сообщения" name="Автор сообщения" shortname="Сотрудник" searchable="true" sortable="true" visible="true" link="userCls" ignore="true"/>
<clearingDate type="6" name="Текущая дата" shortname="Дата" visible="false" searchable="true" sortable="true" ignore="true"/>
</errorText>
<plannerTemplate name="Шаблон расписания операционного дня" destination="schedule/planner-templates" class="ru.clearing.classes.statics.data.scheduler.PlannerTemplate" table="planner_template"> <plannerTemplate name="Шаблон расписания операционного дня" destination="schedule/planner-templates" class="ru.clearing.classes.statics.data.scheduler.PlannerTemplate" table="planner_template">
<task type="12" name="Наименование задачи" shortname="Задача" searchable="false" sortable="false" visible="true" link="task"/> <task type="12" name="Наименование задачи" shortname="Задача" searchable="false" sortable="false" visible="true" link="task"/>
<taskTime type="5" name="Время задачи" shortname="Время задачи" searchable="false" sortable="false" visible="true"/> <taskTime type="5" name="Время задачи" shortname="Время задачи" searchable="false" sortable="false" visible="true"/>
@ -446,131 +788,6 @@
</post> </post>
</actions> </actions>
</launcher> </launcher>
<company name="Компании" destination="companies" class="ru.clearing.classes.statics.data.company.Company" logUpdates="true" table="company">
<shortName type="2" length="255" name="Краткое наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true"/>
<fullName type="2" length="255" name="Полное наименование Компании" shortname="Полное наименование" searchable="true" sortable="true" visible="true"/>
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Торговый код" searchable="true" sortable="true" visible="true"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код" searchable="true" sortable="true" visible="true"/>
<workflowStatus type="12" name="Статус" shortname="Статус" searchable="true" sortable="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Дата и время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt field="updated" type="4" name="Дата и время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
<actions>
<delete name="Удаление компании" confirmation="shortName,tradingCode">
<id type="1" name="Идентификатор записи" shortname="ID" link="company" linkCode="id" required="true"/>
</delete>
</actions>
</company>
<companyInfo name="Профили Компаний" destination="company-infos" class="ru.clearing.classes.statics.data.profile.CompanyInfo" logUpdates="true" table="company_info">
<companyId type="1" name="Наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<corporationSoleType type="12" name="Единоличный исполнительный орган" shortname="Исполнительный орган" searchable="true" sortable="true" visible="true" link="corporationSoleType"/>
<countryCode type="12" name="Юрисдикция" shortname="Юрисдикция" searchable="true" sortable="true" visible="true" link="countryCode"/>
<description type="2" length="255" name="Описание Участника" shortname="Описание" searchable="true" sortable="true" visible="true"/>
<professionalSign type="12" name="Признак проф. Участника" shortname="Проф. Участник" searchable="true" sortable="true" visible="true" link="allowed"/>
<legalKind type="12" name="Вид субъекта" shortname="Юр. лицо/Физ. Лицо" searchable="true" sortable="true" visible="true" link="legalKind"/>
<organizationType type="12" name="Тип организации" shortname="Тип организации" searchable="true" sortable="true" visible="true" link="organizationType"/>
<residence type="12" name="Резиденция" shortname="Резиденция" searchable="true" sortable="true" visible="true" link="countryCode"/>
<shortNameEng type="2" length="255" name="Краткое наименование Компании на английском" shortname="Краткое наименование на английском" searchable="true" sortable="true" visible="true"/>
<fullNameEng type="2" length="255" name="Полное наименование Компании на английском" shortname="Полное наименование на английском" searchable="true" sortable="true" visible="true"/>
<shortName type="2" length="255" name="Краткое наименование Компании" shortname="Краткое наименование" searchable="true" sortable="true" visible="true" extends="company"/>
<fullName type="2" length="255" name="Полное наименование Компании" shortname="Полное наименование" searchable="true" sortable="true" visible="true" extends="company"/>
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Торговый код" searchable="true" sortable="true" visible="true" extends="company"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true" extends="company"/>
<registrationCode type="2" length="255" name="Регистрационный код участника" shortname="Регистрационный код" searchable="true" sortable="true" visible="true" extends="company"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение профиля компании">
<id type="1" name="Идентификатор записи" shortname="ID" link="companyInfo" linkCode="id" required="true"/>
<corporationSoleType type="12" name="Единоличный исполнительный орган" shortname="Исполнительный орган" link="corporationSoleType"/>
<countryCode type="12" name="Юрисдикция" shortname="Юрисдикция" link="countryCode"/>
<description type="2" name="Описание" shortname="Описание Участника"/>
<professionalSign type="12" name="Признак проф. Участника" shortname="Признак проф. Участника" link="allowed"/>
<legalKind type="12" name="Вид субъекта" shortname="Юр. лицо/Физ. Лицо" link="legalKind"/>
<organizationType type="12" name="Тип организации" shortname="Тип организации" link="organizationType"/>
<residence type="12" name="Резиденция" shortname="Резиденция" link="countryCode"/>
<shortNameEng type="2" length="255" name="Краткое наименование Компании на английском" shortname="Краткое наименование на английском"/>
<fullNameEng type="2" length="255" name="Полное наименование Компании на английском" shortname="Полное наименование на английском"/>
<shortName type="2" length="255" name="Краткое наименование Компании" shortname="Краткое наименование"/>
<fullName type="2" length="255" name="Полное наименование Компании" shortname="Полное наименование"/>
</put>
</actions>
</companyInfo>
<clearingMemberCategory name="Категории Участника клиринга" destination="clearing-member-categories" class="ru.clearing.classes.statics.data.generated.ClearingMemberCategory" table="clearing_member_category">
<companyId type="1" name="Наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<clearingMemberCategory type="12" name="Категория участника клиринга" shortname="Категория" searchable="true" sortable="true" visible="true" link="clearingCategory"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление категории участника клиринга">
<companyId type="1" name="Наименование Компании" shortname="Компания" link="company" linkCode="shortName" required="true"/>
<clearingMemberCategory type="12" name="Категория участника клиринга" shortname="Категория" link="clearingCategory" required="true"/>
</post>
<put name="Изменение категории участника клиринга">
<id type="1" name="Идентификатор записи" shortname="ID" link="clearingCategory" linkCode="id" required="true"/>
<clearingMemberCategory type="12" name="Категория участника клиринга" shortname="Категория" link="clearingCategory"/>
</put>
<delete name="Удаление категории участника клиринга">
<id type="1" name="Идентификатор записи" shortname="ID" link="clearingCategory" linkCode="id" required="true"/>
</delete>
</actions>
</clearingMemberCategory>
<contact name="Контакты Компании" destination="contacts" class="ru.clearing.classes.statics.data.profile.Contact" table="contact">
<companyId type="1" name="Наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<contactType type="12" name="Наименование справочника" shortname="Тип контакта" searchable="true" sortable="true" visible="true" link="contactType"/>
<contactValue type="2" length="255" name="Значение справочника" shortname="Значение" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение контактов компании">
<id type="1" name="Идентификатор записи" shortname="ID" link="contact" linkCode="id" required="true"/>
<contactType type="12" name="Наименование справочника" shortname="Тип контакта" link="contactType"/>
<contactValue type="2" length="255" name="Значение справочника" shortname="Значение"/>
</put>
</actions>
</contact>
<profileDocument name="Досье Компании" destination="profile-documents" class="ru.clearing.classes.statics.data.profile.ProfileDocument" table="profile_document">
<companyId type="1" name="Наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<documentType type="12" name="Тип документа" shortname="Тип документа" searchable="true" sortable="true" visible="true" link="documentType"/>
<issueDate type="6" name="Дата выдачи" shortname="Дата выдачи" searchable="true" sortable="true"/>
<issuePlace type="2" length="255" name="Место выдачи" shortname="Место выдачи" searchable="true" sortable="true" visible="true"/>
<issuer type="2" length="255" name="Кем выдан" shortname="Кем выдан" searchable="true" sortable="true" visible="true"/>
<issuerCode type="2" length="255" name="Код выдавшего органа" shortname="Код выдавшего органа" searchable="true" sortable="true" visible="true"/>
<name type="2" length="255" name="Наименование" shortname="Наименование" searchable="true" sortable="true" visible="true"/>
<number type="2" length="255" name="Номер документа" shortname="Номер" searchable="true" sortable="true" visible="true"/>
<place type="2" length="255" name="Место" shortname="Место" searchable="true" sortable="true" visible="true"/>
<validFromDate type="6" name="Дата начала срока действия" shortname="Дата начала срока действия" searchable="true" sortable="true"/>
<validToDate type="6" name="Дата окончания срока действия" shortname="Дата окончания срока действия" searchable="true" sortable="true"/>
<link type="2" length="255" name="Ссылка на документ" shortname="Ссылка на документ" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление документов" confirmation="number,companyId">
<companyId type="1" name="Наименование Компании" shortname="Компании" link="company" linkCode="shortName" required="true"/>
<documentType type="12" name="Тип документа" shortname="Тип документа" link="documentType" required="true"/>
<issueDate type="6" name="Дата выдачи" shortname="Дата выдачи" required="true"/>
<issuePlace type="2" length="255" name="Место выдачи" shortname="Место выдачи" required="true"/>
<issuer type="2" length="255" name="Кем выдан" shortname="Кем выдан" required="true"/>
<issuerCode type="2" length="255" name="Код выдавшего органа" shortname="Код выдавшего органа" required="true"/>
<name type="2" length="255" name="Наименование" shortname="Наименование" required="true"/>
<number type="2" length="255" name="Номер документа" shortname="Номер документа" required="true"/>
<place type="2" length="255" name="Место" shortname="Место" required="true"/>
<validFromDate type="6" name="Дата начала срока действия" shortname="Дата начала срока действия" required="true"/>
<validToDate type="6" name="Дата окончания срока действия" shortname="Дата окончания срока действия" required="true"/>
<link type="2" length="255" name="Ссылка на документ" shortname="Ссылка на документ"/>
</post>
</actions>
</profileDocument>
<companySymbols name="Реквизиты Компании" destination="company-symbols" class="ru.clearing.classes.statics.data.company.CompanySymbols" table="company_symbols">
<companyId type="1" name="Наименование Компании" shortname="Компания" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<companySymbol type="12" name="Справочник" shortname="Тип реквизита" searchable="true" sortable="true" visible="true" link="companySymbol" linkCode="shortName"/>
<companySymbolValue type="2" length="255" name="Значение справочника" shortname="Значение" searchable="true" sortable="true" visible="true"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<put name="Изменение реквизитов компании">
<id type="1" name="Идентификатор записи" shortname="ID" link="companySymbols" linkCode="id" required="true"/>
<companySymbol type="12" name="Справочник" shortname="Тип реквизита" link="companySymbol"/>
<companySymbolValue type="2" length="255" name="Значение справочника" shortname="Значение"/>
</put>
</actions>
</companySymbols>
<clearmemberRegister name="Реестр участников клиринга" destination="clearmember-registers" serviceProduct="MKR" class="ru.clearing.classes.statics.data.misc.ClearMemberRegister" table="clearmember_register"> <clearmemberRegister name="Реестр участников клиринга" destination="clearmember-registers" serviceProduct="MKR" class="ru.clearing.classes.statics.data.misc.ClearMemberRegister" table="clearmember_register">
<tradingCode type="2" length="255" name="Код участника торгов" shortname="Торговый код" searchable="true" sortable="true" visible="true"/> <tradingCode type="2" length="255" name="Код участника торгов" shortname="Торговый код" searchable="true" sortable="true" visible="true"/>
<clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true"/> <clearingCode type="2" length="255" name="Код участника клиринга" shortname="Клиринговый код" searchable="true" sortable="true" visible="true"/>
@ -632,11 +849,6 @@
</delete> </delete>
</actions> </actions>
</keyRate> </keyRate>
<companyRoleSet name="Таблица ролей Компании" destination="company-role-sets" class="ru.clearing.classes.statics.data.company.CompanyRoleSet" table="company_role_set">
<companyId type="1" name="Список ролей Компании" shortname="Роли Компании" searchable="true" sortable="true" visible="true" link="company" linkCode="shortName"/>
<roleId type="1" name="Значение справочника" shortname="Значение" searchable="true" sortable="true" visible="true" link="companyRole"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</companyRoleSet>
<account name="Счета" destination="accounting/accounts" class="ru.clearing.classes.statics.data.account.Account" logUpdates="true" table="account"> <account name="Счета" destination="accounting/accounts" class="ru.clearing.classes.statics.data.account.Account" logUpdates="true" table="account">
<account type="2" length="50" name="Номер счета" shortname="Счёт" searchable="true" sortable="true" visible="true"/> <account type="2" length="50" name="Номер счета" shortname="Счёт" searchable="true" sortable="true" visible="true"/>
<accountType type="12" name="Тип счета" shortname="Тип" searchable="true" sortable="true" visible="true" link="accountType"/> <accountType type="12" name="Тип счета" shortname="Тип" searchable="true" sortable="true" visible="true" link="accountType"/>
@ -724,86 +936,6 @@
<relationId type="1" name="Договорные отношения" shortname="Договор" searchable="true" sortable="true" visible="true" link="relation"/> <relationId type="1" name="Договорные отношения" shortname="Договор" searchable="true" sortable="true" visible="true" link="relation"/>
<sourceId type="1" name="Счет-источник (списания)" shortname="Списания" searchable="true" sortable="true" visible="true" link="account"/> <sourceId type="1" name="Счет-источник (списания)" shortname="Списания" searchable="true" sortable="true" visible="true" link="account"/>
</accountRouting> </accountRouting>
<security name="Инструменты" destination="securities" class="ru.clearing.classes.statics.data.security.Security" logUpdates="true" table="security">
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType"/>
<issuerId type="1" name="Наименование эмитента" shortname="Эмитент" searchable="true" sortable="true" link="company"/>
<shortName type="2" name="Краткое наименование инструмента" shortname="Краткое наименование" searchable="true" sortable="true" length="255" visible="true"/>
<fullName type="2" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" length="255" visible="true"/>
<shortNameEng type="2" name="Краткое наименование инструмента на английском" shortname="Краткое наименование на английском" searchable="true" sortable="true" length="255" visible="true"/>
<fullNameEng type="2" name="Полное наименование инструмента на английском" shortname="Наименование на английском" searchable="true" sortable="true" length="255" visible="true"/>
<securitySymbol type="2" name="Код инструмента" shortname="Код" searchable="true" sortable="true" length="255" visible="true"/>
<workflowStatus type="12" name="Наименование статуса" shortname="Статус" searchable="true" sortable="true" visible="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Дата и время создания записи" shortname="Создано" searchable="true" sortable="true"/>
<updatedAt field="updated" type="4" name="Дата и время изменения записи" shortname="Изменено" searchable="true" sortable="true"/>
</security>
<currency name="Инструменты Валюты" destination="currencies" class="ru.clearing.classes.statics.data.misc.Currency" logUpdates="true" table="currency">
<countryCode type="12" name="Код страны" shortname="Страна" searchable="true" sortable="true" visible="true" link="countryCode"/>
<currencyCode type="12" name="Код валюты" shortname="Валюта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
</currency>
<moneyMarketSecurity name="Инструменты Денежного рынка" destination="securities/money-securities" class="ru.clearing.classes.statics.data.misc.MoneyMarketSecurity" logUpdates="true" table="money_market_security">
<securityId type="1" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<description type="2" length="255" name="Описание" shortname="Описание" searchable="true" sortable="false"/>
<startDate type="6" name="Дата начала действия" shortname="Начальная дата" searchable="true" sortable="true"/>
<endDate type="6" name="Дата окончания действия" shortname="Конечная дата" searchable="true" sortable="true"/>
<nominalValue field="nominalValue" type="11" name="Номинал" shortname="Номинал" searchable="true" sortable="true"/>
<nominalCurrency type="12" name="Валюта номинала" shortname="Валюта номинала" searchable="true" sortable="true" link="currencyCode" linkCode="code"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" searchable="true" sortable="true" visible="true" link="instrumentType" extends="security"/>
<fullName type="2" name="Полное наименование инструмента" shortname="Наименование" searchable="true" sortable="true" length="255" visible="true" extends="security"/>
<securitySymbol type="2" name="Код инструмента" shortname="Код" searchable="true" sortable="true" length="255" visible="true" extends="security"/>
<termType type="12" name="Наименование вида инструмента" shortname="Вид инструмента" searchable="true" sortable="true" visible="false" link="termType" ignore="true"/>
<lotSize field="securityId" type="11" name="Размер лота" shortname="Размер лота" searchable="true" sortable="true" visible="true" linkKeyCode="securityId" linkCode="lotSize" link="listing"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<actions>
<post name="Добавление инструмента">
<securitySymbol type="2" name="Код инструмента" shortname="Код" length="255" required="true"/>
<fullName type="2" name="Полное наименование инструмента" shortname="Наименование" length="255" required="true"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" required="true" link="instrumentType"/>
<lotSize type="11" name="Размер лота" shortname="Лот" required="true"/>
<nominalValue field="nominalValue" type="11" name="Номинал" shortname="Номинал" required="true"/>
<nominalCurrency type="12" name="Валюта номинала" shortname="Валюта номинала" required="true" link="currencyCode" linkCode="code"/>
<startDate type="6" name="Дата начала действия" shortname="Начальная дата" required="true"/>
<endDate type="6" name="Дата окончания действия" shortname="Конечная дата" required="true"/>
</post>
<put name="Изменение инструмента">
<id type="1" name="Идентификатор записи" shortname="ID" link="moneyMarketSecurity" linkCode="id" required="true"/>
<fullName type="2" name="Полное наименование инструмента" shortname="Наименование" length="255"/>
<instrumentType type="12" name="Наименование типа инструмента" shortname="Тип инструмента" link="instrumentType"/>
<lotSize type="11" name="Размер лота" shortname="Лот"/>
<nominalValue field="nominalValue" type="11" name="Номинал" shortname="Номинал"/>
<nominalCurrency type="12" name="Валюта номинала" shortname="Валюта номинала" link="currencyCode" linkCode="code"/>
<startDate type="6" name="Дата начала действия" shortname="Начальная дата"/>
<endDate type="6" name="Дата окончания действия" shortname="Конечная дата"/>
</put>
<delete name="Удаление инструмента" confirmation="securitySymbol,fullName">
<id type="1" name="Идентификатор записи" shortname="ID" link="moneyMarketSecurity" linkCode="id" required="true"/>
</delete>
</actions>
</moneyMarketSecurity>
<listing name="Листинг инструментов" destination="listings" class="ru.clearing.classes.statics.data.misc.Listing" logUpdates="true" table="listing">
<securityId type="1" name="Наименование инструмента" shortname="Инструмент" searchable="true" sortable="true" link="security" linkCode="fullName"/>
<lotSize type="11" name="Размер лота" shortname="Размер лота" searchable="true" sortable="true"/>
<market type="12" name="Секция" shortname="Секция" searchable="true" sortable="true" link="market" linkCode="name"/>
<symbolCode type="2" length="255" name="Код инструмента на торговой площадке" shortname="Код инструмента на торговой площадке" searchable="true" sortable="true"/>
<symbolName type="2" length="255" name="Название инструмента на торговой площадке" shortname="Название инструмента на торговой площадке" searchable="true" sortable="true"/>
<tradingCurrency type="12" name="Наименование кода валюты расчета" shortname="Валюта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<workflowStatus type="12" name="Наименование статуса листинга в системе" shortname="Статус" searchable="true" sortable="true" visible="true" link="workflowStatus"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Дата и время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt field="updated" type="4" name="Дата и время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
</listing>
<market name="Торговые секции" destination="markets" class="ru.clearing.classes.statics.data.misc.Market" logUpdates="true" table="market">
<description type="2" length="255" name="Описание" shortname="Описание" searchable="true" sortable="true"/>
<exchangeId type="1" name="Наименование площадки" shortname="Площадка" searchable="true" sortable="true" link="company"/>
<name type="2" length="255" name="Наименование" shortname="Наименование" searchable="true" sortable="true"/>
<code type="12" name="Секция" shortname="Секция" searchable="true" sortable="true"/>
<settlementCurrency type="12" name="Валютный код расчетов" shortname="Валюта расчёта" searchable="true" sortable="true" visible="true" link="currencyCode" linkCode="code"/>
<sector type="12" name="Наименование секции" shortname="Секция" searchable="true" sortable="true" visible="true" link="sector"/>
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Дата и время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt field="updated" type="4" name="Дата и время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
</market>
<accountBalance name="Информация об остатках ден. средств" destination="account-balances" class="ru.clearing.classes.statics.data.account.AccountBalance" logUpdates="true" table="account_balance"> <accountBalance name="Информация об остатках ден. средств" destination="account-balances" class="ru.clearing.classes.statics.data.account.AccountBalance" logUpdates="true" table="account_balance">
<companyId type="1" name="Наименование участника" shortname="Участник" searchable="true" sortable="true" link="company" linkCode="shortName" ignore="true"/> <companyId type="1" name="Наименование участника" shortname="Участник" searchable="true" sortable="true" link="company" linkCode="shortName" ignore="true"/>
<shortName type="2" name="Короткое наименование Участника" shortname="Участник" searchable="true" sortable="true" visible="true" length="255"/> <shortName type="2" name="Короткое наименование Участника" shortname="Участник" searchable="true" sortable="true" visible="true" length="255"/>
@ -1236,15 +1368,6 @@
<updatedAt field="updated" type="4" name="Изменено" shortname="Изменено" searchable="true" sortable="true"/> <updatedAt field="updated" type="4" name="Изменено" shortname="Изменено" searchable="true" sortable="true"/>
<companyId type="1" name="Участник" shortname="Участник" searchable="true" sortable="true" link="company" linkCode="shortName"/> <companyId type="1" name="Участник" shortname="Участник" searchable="true" sortable="true" link="company" linkCode="shortName"/>
</companyTariff> </companyTariff>
<errorText name="Полные тексты ошибок" destination="error-texts" class="ru.clearing.classes.statics.data.messages.ErrorText" table="error_text">
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<createdAt field="created" type="4" name="Дата и время создания записи" shortname="Создано" searchable="true" sortable="true" ignore="true"/>
<updatedAt field="updated" type="4" name="Дата и время изменения записи" shortname="Изменено" searchable="true" sortable="true" ignore="true"/>
<errorCode type="12" name="Код ошибки" shortname="Код" searchable="true" sortable="true" visible="true" link="errorCode"/>
<text type="2" length="255" name="Полный текст ошибки" shortname="Ошибка" searchable="true" sortable="true" visible="true"/>
<userId type="1" name="Автор сообщения" shortname="Сотрудник" searchable="true" sortable="true" visible="true" link="userCls" ignore="true"/>
<clearingDate type="6" name="Текущая дата" shortname="Дата" visible="false" searchable="true" sortable="true" ignore="true"/>
</errorText>
<sDf01 name="ДФ-01 Информация о денежных средствах, находящихся на торговых банковских счетах Участников клиринга" class="ru.clearing.classes.statics.data.sdf.SDf01" table="s_df_01"> <sDf01 name="ДФ-01 Информация о денежных средствах, находящихся на торговых банковских счетах Участников клиринга" class="ru.clearing.classes.statics.data.sdf.SDf01" table="s_df_01">
<id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/> <id type="1" name="Идентификатор записи" shortname="ID" searchable="true" sortable="true"/>
<curr_code type="2" length="12" name="Код валюты" shortname="Код валюты" searchable="true" sortable="true" visible="true"/> <curr_code type="2" length="12" name="Код валюты" shortname="Код валюты" searchable="true" sortable="true" visible="true"/>

View file

@ -30,38 +30,41 @@
</xsl:template> </xsl:template>
<xsl:template match="type" mode="types"> <xsl:template match="type" mode="types">
-- <xsl:value-of select="@id"/>. <xsl:value-of select="name()"/> : <xsl:value-of select="@type"/> - <xsl:value-of select="@name"/> <xsl:variable name="dbNameComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
-- <xsl:value-of select="@id"/>. <xsl:value-of select="name()"/> : <xsl:value-of select="@type"/> - <xsl:value-of select="$dbNameComment"/>
<xsl:if test="position() != last()">,</xsl:if> <xsl:if test="position() != last()">,</xsl:if>
</xsl:template> </xsl:template>
<xsl:template match="*" mode="enums"> <xsl:template match="*" mode="enums">
-- <xsl:value-of select="name()"/> - <xsl:value-of select="@name"/> <xsl:variable name="dbNameComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
-- <xsl:value-of select="name()"/> - <xsl:value-of select="$dbNameComment"/>
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='concat(name(),"Dictionary")'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='concat(name(),"Dictionary")'/></xsl:call-template></xsl:variable>
DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>; DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>;
CREATE TABLE <xsl:value-of select="$dbTableName"/>(<xsl:apply-templates select="*" mode="field"/>); CREATE TABLE <xsl:value-of select="$dbTableName"/>(<xsl:apply-templates select="*" mode="field"/>);
COMMENT ON TABLE <xsl:value-of select="$dbTableName"/> IS '<xsl:value-of select="@name"/>'; COMMENT ON TABLE <xsl:value-of select="$dbTableName"/> IS '<xsl:value-of select="$dbNameComment"/>';
<xsl:apply-templates select="*" mode="comment-enums"/> <xsl:apply-templates select="*" mode="comment-enums"/>
</xsl:template> </xsl:template>
<xsl:template match="*" mode="objects"> <xsl:template match="*" mode="objects">
-- <xsl:value-of select="name()"/> - <xsl:value-of select="@name"/> <xsl:variable name="dbNameTComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
-- <xsl:value-of select="name()"/> - <xsl:value-of select="$dbNameTComment"/>
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template></xsl:variable>
DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>; DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>;
CREATE TABLE <xsl:value-of select="$dbTableName"/>(<xsl:apply-templates select="*[@name or @type]" mode="field"/>); CREATE TABLE <xsl:value-of select="$dbTableName"/>(<xsl:apply-templates select="*[@name or @dbname or @type]" mode="field"/>);
COMMENT ON TABLE <xsl:value-of select="$dbTableName"/> IS '<xsl:value-of select="@name"/>'; COMMENT ON TABLE <xsl:value-of select="$dbTableName"/> IS '<xsl:value-of select="$dbNameTComment"/>';
<xsl:apply-templates select="*[@name or @type]" mode="comment-objects"/> <xsl:apply-templates select="*[@name or @dbname or @type]" mode="comment-objects"/>
<xsl:if test="@logUpdates"> <xsl:if test="@logUpdates">
-- History log of <xsl:value-of select="name()"/> - <xsl:value-of select="@name"/> -- History log of <xsl:value-of select="name()"/> - <xsl:value-of select="$dbNameTComment"/>
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template></xsl:variable>
DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>_HISTORY; DROP TABLE IF EXISTS <xsl:value-of select="$dbTableName"/>_HISTORY;
CREATE TABLE <xsl:value-of select="$dbTableName"/>_HISTORY(<xsl:value-of select="$dbTableName"/>_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), <xsl:apply-templates select="*[@name or @type]" mode="field"/>); CREATE TABLE <xsl:value-of select="$dbTableName"/>_HISTORY(<xsl:value-of select="$dbTableName"/>_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), <xsl:apply-templates select="*[@name or @dbname or @type]" mode="field"/>);
COMMENT ON TABLE <xsl:value-of select="$dbTableName"/>_HISTORY IS 'История изменений таблицы <xsl:value-of select="name()"/>'; COMMENT ON TABLE <xsl:value-of select="$dbTableName"/>_HISTORY IS 'История изменений таблицы <xsl:value-of select="name()"/>';
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.<xsl:value-of select="$dbTableName"/>_ID IS 'Идентификатор записи в таблице <xsl:value-of select="$dbTableName"/>'; COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.<xsl:value-of select="$dbTableName"/>_ID IS 'Идентификатор записи в таблице <xsl:value-of select="$dbTableName"/>';
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_TIME IS 'Дата и время изменения'; COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_TIME IS 'Дата и время изменения';
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_USER_ID IS 'Инициатор изменения'; COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_USER_ID IS 'Инициатор изменения';
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_TYPE IS 'Тип изменения'; COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_TYPE IS 'Тип изменения';
<xsl:apply-templates select="*[@name or @type]" mode="comment-history-objects"/> <xsl:apply-templates select="*[@name or @dbname or @type]" mode="comment-history-objects"/>
</xsl:if> </xsl:if>
</xsl:template> </xsl:template>
@ -86,7 +89,8 @@ COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.EVENT_TYPE IS '
<xsl:template match="*" mode="comment-enums"> <xsl:template match="*" mode="comment-enums">
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='concat(name(parent::*),"Dictionary")'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='concat(name(parent::*),"Dictionary")'/></xsl:call-template></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="@name"><xsl:value-of select="@name"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>'; <xsl:variable name="dbNameComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="$dbNameComment"><xsl:value-of select="$dbNameComment"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>';
</xsl:template> </xsl:template>
@ -96,7 +100,8 @@ COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name=
<xsl:when test="@extends"></xsl:when> <xsl:when test="@extends"></xsl:when>
<xsl:otherwise> <xsl:otherwise>
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name(parent::*)'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name(parent::*)'/></xsl:call-template></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="@name"><xsl:value-of select="@name"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>'; <xsl:variable name="dbNameComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="$dbNameComment"><xsl:value-of select="$dbNameComment"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>';
</xsl:otherwise></xsl:choose></xsl:template> </xsl:otherwise></xsl:choose></xsl:template>
<xsl:template match="*" mode="comment-history-objects"><!-- todo похож на comment-objects только именем таблицы различается попробовать объединить --> <xsl:template match="*" mode="comment-history-objects"><!-- todo похож на comment-objects только именем таблицы различается попробовать объединить -->
@ -105,7 +110,8 @@ COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>.<xsl:call-template name=
<xsl:when test="@extends"></xsl:when> <xsl:when test="@extends"></xsl:when>
<xsl:otherwise> <xsl:otherwise>
<xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name(parent::*)'/></xsl:call-template></xsl:variable> <xsl:variable name="dbTableName"><xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name(parent::*)'/></xsl:call-template></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="@name"><xsl:value-of select="@name"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>'; <xsl:variable name="dbNameComment"><xsl:choose><xsl:when test="@dbname"><xsl:value-of select="@dbname"/></xsl:when><xsl:otherwise><xsl:value-of select="@name"/></xsl:otherwise></xsl:choose></xsl:variable>
COMMENT ON COLUMN <xsl:value-of select="$dbTableName"/>_HISTORY.<xsl:call-template name='convertDbStyle'><xsl:with-param name='toconvert' select='name()'/></xsl:call-template> IS '<xsl:if test="$dbNameComment"><xsl:value-of select="$dbNameComment"/></xsl:if> <xsl:if test="@link"> (linked to <xsl:value-of select="@link"/>)</xsl:if>';
</xsl:otherwise> </xsl:otherwise>
</xsl:choose> </xsl:choose>
</xsl:template> </xsl:template>

View file

@ -19,7 +19,7 @@ class CompanyRoleSetControllerTest extends AbstractControllerTest {
//ARRANGE //ARRANGE
CompanyRoleSet existBankAccount = new CompanyRoleSet(); CompanyRoleSet existBankAccount = new CompanyRoleSet();
existBankAccount.setCompanyId(11L); existBankAccount.setCompanyId(11L);
existBankAccount.setRoleId(12L); existBankAccount.setCompanyRole("CLRM");
existBankAccount.setId(currentId.get()); existBankAccount.setId(currentId.get());

View file

@ -24,7 +24,7 @@ class MarketControllerTest extends AbstractControllerTest {
liabilitiesClaimsAssets.setName("name"); liabilitiesClaimsAssets.setName("name");
liabilitiesClaimsAssets.setCode("man"); liabilitiesClaimsAssets.setCode("man");
liabilitiesClaimsAssets.setSettlementCurrency("res"); liabilitiesClaimsAssets.setSettlementCurrency("res");
liabilitiesClaimsAssets.setSector("sec"); liabilitiesClaimsAssets.setSection("sec");
//ACT and ASSERT //ACT and ASSERT
checkGettingAllFromRestApi(IMDGDistributedNames.Map_Market, liabilitiesClaimsAssets, REST_URL); checkGettingAllFromRestApi(IMDGDistributedNames.Map_Market, liabilitiesClaimsAssets, REST_URL);

View file

@ -10,23 +10,32 @@ public class CompanyRoleSet extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID; private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Long companyId; private Long companyId;
private Long roleId; private String companyRole;
private String workflowStatus;
public Long getCompanyId() { public Long getCompanyId() {
return companyId; return companyId;
} }
public void setCompanyId(Long companyId) { public void setCompanyId(Long value) {
this.companyId = companyId; this.companyId = value;
} }
public Long getRoleId() { public String getCompanyRole() {
return roleId; return companyRole;
} }
public void setRoleId(Long roleId) { public void setCompanyRole(String value) {
this.roleId = roleId; this.companyRole = value;
}
public String getWorkflowStatus() {
return workflowStatus;
}
public void setWorkflowStatus(String value) {
this.workflowStatus = value;
} }
} }

View file

@ -0,0 +1,58 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* Купонное расписание
*
* DB table: COUPON_PERIOD
**/
public class CouponPeriod extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Long securityId;
private BigDecimal couponRate;
private Long number;
private LocalDate periodEndDate;
private LocalDate periodStartDate;
public Long getSecurityId() {
return securityId;
}
public void setSecurityId(Long value) {
this.securityId=value;
}
public BigDecimal getCouponRate() {
return couponRate;
}
public void setCouponRate(BigDecimal value) {
this.couponRate=value;
}
public Long getNumber() {
return number;
}
public void setNumber(Long value) {
this.number=value;
}
public LocalDate getPeriodEndDate() {
return periodEndDate;
}
public void setPeriodEndDate(LocalDate value) {
this.periodEndDate=value;
}
public LocalDate getPeriodStartDate() {
return periodStartDate;
}
public void setPeriodStartDate(LocalDate value) {
this.periodStartDate=value;
}
}

View file

@ -0,0 +1,43 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.statics.data.security.Security;
import java.math.BigDecimal;
/**
* Equity
* Акции
*
* DB table: EQUITY_SECURITY
**/
public class EquitySecurity extends Security {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Long securityId;
private String shareType;
private BigDecimal lotSize;
public Long getSecurityId() {
return securityId;
}
public void setSecurityId(Long value) {
this.securityId=value;
}
public String getShareType() {
return shareType;
}
public void setShareType(String value) {
this.shareType=value;
}
public BigDecimal getLotSize() {
return lotSize;
}
public void setLotSize(BigDecimal value) {
this.lotSize=value;
}
}

View file

@ -0,0 +1,63 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.spcex.platform.classes.base.SpcexObjectBase;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* Выплаты по купонам
* <p>
* DB table: FIXED_INCOME_CASH_FLOW
**/
public class FixedIncomeCashFlow extends SpcexObjectBase {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Long securityId;
private BigDecimal accruedCoupon;
private BigDecimal nominalValue;
private Long number;
private LocalDate valueDate;
public Long getSecurityId() {
return securityId;
}
public void setSecurityId(Long value) {
this.securityId = value;
}
public BigDecimal getAccruedCoupon() {
return accruedCoupon;
}
public void setAccruedCoupon(BigDecimal value) {
this.accruedCoupon = value;
}
public BigDecimal getNominalValue() {
return nominalValue;
}
public void setNominalValue(BigDecimal value) {
this.nominalValue = value;
}
public Long getNumber() {
return number;
}
public void setNumber(Long value) {
this.number = value;
}
public LocalDate getValueDate() {
return valueDate;
}
public void setValueDate(LocalDate value) {
this.valueDate = value;
}
}

View file

@ -0,0 +1,83 @@
package ru.clearing.classes.statics.data.instrument.issue;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.statics.data.security.Security;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* FixedIncome
* Облигации
*
* DB table: FIXED_INCOME_SECURITY
**/
public class FixedIncomeSecurity extends Security {
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Long securityId;
private String bondType;
private LocalDate maturityDate;
private BigDecimal nominalValue;
private String nominalCurrency;
private BigDecimal coupon;
private Long couponFrequency;
private BigDecimal lotSize;
public Long getSecurityId() {
return securityId;
}
public void setSecurityId(Long value) {
this.securityId=value;
}
public String getBondType() {
return bondType;
}
public void setBondType(String value) {
this.bondType=value;
}
public LocalDate getMaturityDate() {
return maturityDate;
}
public void setMaturityDate(LocalDate value) {
this.maturityDate=value;
}
public BigDecimal getNominalValue() {
return nominalValue;
}
public void setNominalValue(BigDecimal value) {
this.nominalValue=value;
}
public String getNominalCurrency() {
return nominalCurrency;
}
public void setNominalCurrency(String value) {
this.nominalCurrency=value;
}
public BigDecimal getCoupon() {
return coupon;
}
public void setCoupon(BigDecimal value) {
this.coupon=value;
}
public Long getCouponFrequency() {
return couponFrequency;
}
public void setCouponFrequency(Long value) {
this.couponFrequency=value;
}
public BigDecimal getLotSize() {
return lotSize;
}
public void setLotSize(BigDecimal value) {
this.lotSize=value;
}
}

View file

@ -13,17 +13,17 @@ import java.time.LocalDate;
public class ErrorText extends BusinessObject { public class ErrorText extends BusinessObject {
private static final long serialVersionUID = ConstSerializable.serialVersionUID; private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private String errorCode; private Long errorCodeId;
private String text; private String text;
private Long userId; private Long userId;
private LocalDate clearingDate; private LocalDate clearingDate;
public String getErrorCode() { public Long getErrorCodeId() {
return errorCode; return errorCodeId;
} }
public void setErrorCode(String value) { public void setErrorCodeId(Long errorCodeId) {
this.errorCode = value; this.errorCodeId = errorCodeId;
} }
public String getText() { public String getText() {

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.misc;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* Изменение состояния объекта Валюты
*
* DB table: CURRENCY_HISTORY
**/
public class CurrencyHistory extends BusinessEvent<Currency> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Currency object;
@Override
public Currency getObject() {
return object;
}
@Override
public void setObject(Currency object) {
this.object = object;
}
}

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.misc;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* Изменение состояния объекта Листинг инструментов
*
* DB table: LISTING_HISTORY
**/
public class ListingHistory extends BusinessEvent<Listing> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Listing object;
@Override
public Listing getObject() {
return object;
}
@Override
public void setObject(Listing object) {
this.object = object;
}
}

View file

@ -9,7 +9,7 @@ public class Market extends BusinessObject {
private String name; private String name;
private String code; private String code;
private String settlementCurrency; private String settlementCurrency;
private String sector; private String section;
public String getDescription() { public String getDescription() {
return description; return description;
@ -51,11 +51,11 @@ public class Market extends BusinessObject {
this.settlementCurrency = settlementCurrency; this.settlementCurrency = settlementCurrency;
} }
public String getSector() { public String getSection() {
return sector; return section;
} }
public void setSector(String sector) { public void setSection(String section) {
this.sector = sector; this.section = section;
} }
} }

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.misc;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* Изменение состояния объекта Торговые секции
*
* DB table: MARKET_HISTORY
**/
public class MarketHistory extends BusinessEvent<Market> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private Market object;
@Override
public Market getObject() {
return object;
}
@Override
public void setObject(Market object) {
this.object = object;
}
}

View file

@ -18,6 +18,7 @@ public class MoneyMarketSecurity extends Security {
private BigDecimal nominalValue; private BigDecimal nominalValue;
private String nominalCurrency; // (linked to currencyCode) private String nominalCurrency; // (linked to currencyCode)
private String termType; private String termType;
private BigDecimal lotSize;
public Long getSecurityId() { public Long getSecurityId() {
return securityId; return securityId;
@ -74,4 +75,12 @@ public class MoneyMarketSecurity extends Security {
public void setTermType(String termType) { public void setTermType(String termType) {
this.termType = termType; this.termType = termType;
} }
public BigDecimal getLotSize() {
return lotSize;
}
public void setLotSize(BigDecimal lotSize) {
this.lotSize = lotSize;
}
} }

View file

@ -0,0 +1,26 @@
package ru.clearing.classes.statics.data.misc;
import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessEvent;
import java.io.Serial;
/**
* DB table: MONEY_MARKET_SECURITY_HISTORY
**/
public class MoneyMarketSecurityHistory extends BusinessEvent<MoneyMarketSecurity> {
@Serial
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
private MoneyMarketSecurity object;
@Override
public MoneyMarketSecurity getObject() {
return object;
}
@Override
public void setObject(MoneyMarketSecurity object) {
this.object = object;
}
}

View file

@ -3,8 +3,6 @@ package ru.clearing.classes.statics.data.security;
import ru.clearing.classes.ConstSerializable; import ru.clearing.classes.ConstSerializable;
import ru.clearing.classes.objects.BusinessObject; import ru.clearing.classes.objects.BusinessObject;
import java.time.Instant;
/** /**
* Инструменты * Инструменты
* <p> * <p>
@ -20,6 +18,7 @@ public class Security extends BusinessObject {
private String shortNameEng; private String shortNameEng;
private String fullNameEng; private String fullNameEng;
private String securitySymbol; private String securitySymbol;
private String isin;
private String workflowStatus; private String workflowStatus;
public String getInstrumentType() { public String getInstrumentType() {
@ -78,6 +77,14 @@ public class Security extends BusinessObject {
this.securitySymbol = value; this.securitySymbol = value;
} }
public String getIsin() {
return isin;
}
public void setIsin(String value) {
this.isin = value;
}
public String getWorkflowStatus() { public String getWorkflowStatus() {
return workflowStatus; return workflowStatus;
} }

View file

@ -21,8 +21,8 @@ public class UserConnect extends BusinessObject {
private String clientIp; private String clientIp;
private String connectionState; private String connectionState;
private LocalDate clearingDate; private LocalDate clearingDate;
private Long errorCode; private Long errorCodeId;
private String errorText; private Long errorTextId;
public Long getUserId() { public Long getUserId() {
return userId; return userId;
@ -80,20 +80,20 @@ public class UserConnect extends BusinessObject {
this.clearingDate = value; this.clearingDate = value;
} }
public Long getErrorCode() { public Long getErrorCodeId() {
return errorCode; return errorCodeId;
} }
public void setErrorCode(Long value) { public void setErrorCodeId(Long errorCodeId) {
this.errorCode = value; this.errorCodeId = errorCodeId;
} }
public String getErrorText() { public Long getErrorTextId() {
return errorText; return errorTextId;
} }
public void setErrorText(String value) { public void setErrorTextId(Long errorTextId) {
this.errorText = value; this.errorTextId = errorTextId;
} }
} }

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,11 @@
package ru.clearing.platform.dictionary;
/**
* Справочник типов облигаций
*
* Dictionary DB table: BOND_TYPE_DICTIONARY
**/
public class BondTypeDictionary extends AbstractDictionary {
private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID;
}

View file

@ -0,0 +1,12 @@
package ru.clearing.platform.dictionary;
/**
* Справочник секций
*
* Dictionary DB table: SECTION_DICTIONARY
**/
public class SectionDictionary extends AbstractDictionary {
private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID;
}

View file

@ -0,0 +1,9 @@
package ru.clearing.platform.dictionary;
/**
* Dictionary DB table: SHARE_TYPE_DICTIONARY
**/
public class ShareTypeDictionary extends AbstractDictionary {
private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID;
}

View file

@ -0,0 +1,51 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.misc.Currency;
import ru.clearing.classes.statics.data.misc.CurrencyHistory;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
@Component
public class CurrencyHistoryMapStore extends TemplateEventMapStore<CurrencyHistory> {
public CurrencyHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_CurrencyHistory;
}
@Override
public String getTableName() {
return "CURRENCY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID","EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"CURRENCY_ID", "COUNTRY_CODE", "CURRENCY_CODE"
};
}
@Override
public Object[] objectToField(CurrencyHistory historyLog) {
Currency object=historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
object.getCountryCode(),
object.getCurrencyCode(),
};
return args;
}
}

View file

@ -0,0 +1,58 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.misc.Listing;
import ru.clearing.classes.statics.data.misc.ListingHistory;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component
public class ListingHistoryMapStore extends TemplateEventMapStore<ListingHistory> {
public ListingHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_ListingHistory;
}
@Override
public String getTableName() {
return "LISTING_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID","EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"LISTING_ID", "CREATED_AT", "UPDATED_AT", "SECURITY_ID", "LOT_SIZE", "MARKET", "SYMBOL_CODE", "SYMBOL_NAME", "TRADING_CURRENCY", "WORKFLOW_STATUS"
};
}
@Override
public Object[] objectToField(ListingHistory historyLog) {
Listing object=historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getSecurityId(),
object.getLotSize(),
object.getMarket(),
object.getSymbolCode(),
object.getSymbolName(),
object.getTradingCurrency(),
object.getWorkflowStatus()
};
return args;
}
}

View file

@ -0,0 +1,56 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.misc.Market;
import ru.clearing.classes.statics.data.misc.MarketHistory;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
@Component
public class MarketHistoryMapStore extends TemplateEventMapStore<MarketHistory> {
public MarketHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_MarketHistory;
}
@Override
public String getTableName() {
return "MARKET_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"MARKET_ID", "CREATED_AT", "UPDATED_AT", "DESCRIPTION", "EXCHANGE_ID", "NAME", "CODE", "SETTLEMENT_CURRENCY", "SECTION",
};
}
@Override
public Object[] objectToField(MarketHistory historyLog) {
Market object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getDescription(),
object.getExchangeId(),
object.getName(),
object.getCode(),
object.getSettlementCurrency(),
object.getSection(),
};
return args;
}
}

View file

@ -0,0 +1,113 @@
package ru.spcex.clearing.imdg.businessevent;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.clearing.classes.statics.data.misc.MoneyMarketSecurity;
import ru.clearing.classes.statics.data.misc.MoneyMarketSecurityHistory;
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Component
public class MoneyMarketSecurityHistoryMapStore extends TemplateEventMapStore<MoneyMarketSecurityHistory> {
public MoneyMarketSecurityHistoryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_MoneyMarketSecurityHistory;
}
@Override
public String getTableName() {
return "MONEY_MARKET_SECURITY_HISTORY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"MONEY_MARKET_SECURITY_ID", "SECURITY_ID", "DESCRIPTION", "START_DATE", "END_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "TERM_TYPE", "LOT_SIZE"};
}
public String[] getFieldsSecurity() {
return new String[]{
"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
"SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected Object[] objectToField(MoneyMarketSecurityHistory historyLog) {
MoneyMarketSecurity moneyMarketSecurity = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
moneyMarketSecurity.getId(),
moneyMarketSecurity.getSecurityId(),
moneyMarketSecurity.getDescription(),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getStartDate()),
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getEndDate()),
moneyMarketSecurity.getNominalValue(),
moneyMarketSecurity.getNominalCurrency(),
moneyMarketSecurity.getTermType(),
moneyMarketSecurity.getLotSize()
};
return args;
}
protected Object[] securityField(MoneyMarketSecurityHistory historyLog) {
MoneyMarketSecurity object = historyLog.getObject();
Object[] args = new Object[]{
historyLog.getId(),
historyLog.getEventTime(),
historyLog.getUserId(),
historyLog.getEventType(),
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, MoneyMarketSecurityHistory> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, MoneyMarketSecurityHistory> entry : map.entrySet()) {
MoneyMarketSecurityHistory obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -28,7 +28,7 @@ public class SecurityHistoryMapStore extends TemplateEventMapStore<SecurityHisto
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_TYPE", "EVENT_USER_ID", return new String[]{"ID", "EVENT_TIME", "EVENT_TYPE", "EVENT_USER_ID",
"SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "WORKFLOW_STATUS" "SECURITY_ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"
}; };
} }
@ -51,6 +51,7 @@ public class SecurityHistoryMapStore extends TemplateEventMapStore<SecurityHisto
object.getShortNameEng(), object.getShortNameEng(),
object.getFullNameEng(), object.getFullNameEng(),
object.getSecuritySymbol(), object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus() object.getWorkflowStatus()
}; };
return args; return args;

View file

@ -28,7 +28,7 @@ public class UserConnectHistoryMapStore extends TemplateEventMapStore<UserConnec
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{"ID", "EVENT_TIME", "EVENT_TYPE", "EVENT_USER_ID", return new String[]{"ID", "EVENT_TIME", "EVENT_TYPE", "EVENT_USER_ID",
"USER_CONNECT_ID", "CREATED_AT", "UPDATED_AT", "USER_ID", "CONNECTION_TIME", "DISCONNECTION_TIME", "SERVER_IP", "CLIENT_IP", "CONNECTION_STATE", "CLEARING_DATE", "ERROR_CODE", "ERROR_TEXT" "USER_CONNECT_ID", "CREATED_AT", "UPDATED_AT", "USER_ID", "CONNECTION_TIME", "DISCONNECTION_TIME", "SERVER_IP", "CLIENT_IP", "CONNECTION_STATE", "CLEARING_DATE", "ERROR_CODE_ID", "ERROR_TEXT_ID"
}; };
} }
@ -51,8 +51,8 @@ public class UserConnectHistoryMapStore extends TemplateEventMapStore<UserConnec
object.getClientIp(), object.getClientIp(),
object.getConnectionState(), object.getConnectionState(),
TimeUtil.toDateFromLocalDate(object.getClearingDate()), TimeUtil.toDateFromLocalDate(object.getClearingDate()),
object.getErrorCode(), object.getErrorCodeId(),
object.getErrorText() object.getErrorTextId()
}; };
return args; return args;
} }

View file

@ -0,0 +1,131 @@
package ru.spcex.clearing.imdg.businessobject;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
@Component
public class EquitySecurityMapStore extends TemplateMapStore<EquitySecurity> {
public EquitySecurityMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_EquitySecurity;
}
@Override
public String getTableName() {
return "EQUITY_SECURITY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "SECURITY_ID", "SHARE_TYPE"
};
}
public String[] getFieldsSecurity() {
return new String[]{"ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected EquitySecurity objectReader(ResultSet resultSet) throws SQLException {
EquitySecurity object = new EquitySecurity();
object.setId(resultSet.getObject("ID", Long.class));
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
object.setShareType(resultSet.getObject("SHARE_TYPE", String.class));
fillBySecurity(object, object.getSecurityId());
return object;
}
private void fillBySecurity(EquitySecurity object, Long securityId) {
List<EquitySecurity> resouts = jdbcTemplate.query(
"SELECT * FROM SECURITY WHERE id = ?", new Object[]{securityId},
(rs, rowNum) -> {
object.setCreated(getInstantFromTimestamp(rs, "CREATED_AT"));
object.setUpdated(getInstantFromTimestamp(rs, "UPDATED_AT"));
object.setInstrumentType(rs.getObject("INSTRUMENT_TYPE", String.class));
object.setIssuerId(rs.getObject("issuer_id", Long.class));
object.setShortName(rs.getObject("short_name", String.class));
object.setFullName(rs.getObject("FULL_NAME", String.class));
object.setShortNameEng(rs.getObject("short_name_eng", String.class));
object.setFullNameEng(rs.getObject("full_name_eng", String.class));
object.setSecuritySymbol(rs.getObject("SECURITY_SYMBOL", String.class));
object.setIsin(rs.getObject("ISIN", String.class));
object.setWorkflowStatus(rs.getObject("workflow_status", String.class));
return object;
}
);
if (resouts.size() != 1) {
log.warn("Result size={} not expected for table MONEY_MARKET_SECURITY where id={}", resouts.size(), securityId);
}
}
@Override
protected Object[] objectToField(EquitySecurity equity) {
Object[] args = new Object[]{
equity.getId(),
equity.getSecurityId(),
equity.getShareType()
};
return args;
}
protected Object[] securityField(EquitySecurity object) {
Object[] args = new Object[]{
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, EquitySecurity> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, EquitySecurity> entry : map.entrySet()) {
EquitySecurity obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -30,7 +30,7 @@ public class ErrorTextMapStore extends TemplateMapStore<ErrorText> {
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{ return new String[]{
"ID", "CREATED_AT", "UPDATED_AT", "ERROR_CODE", "TEXT", "USER_ID", "CLEARING_DATE" "ID", "CREATED_AT", "UPDATED_AT", "ERROR_CODE_ID", "TEXT", "USER_ID", "CLEARING_DATE"
}; };
} }
@ -40,7 +40,7 @@ public class ErrorTextMapStore extends TemplateMapStore<ErrorText> {
object.setId(resultSet.getObject("ID", Long.class)); object.setId(resultSet.getObject("ID", Long.class));
object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT")); object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT")); object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
object.setErrorCode(resultSet.getObject("ERROR_CODE", String.class)); object.setErrorCodeId(resultSet.getObject("ERROR_CODE_ID", Long.class));
object.setText(resultSet.getObject("TEXT", String.class)); object.setText(resultSet.getObject("TEXT", String.class));
object.setUserId(resultSet.getObject("USER_ID", Long.class)); object.setUserId(resultSet.getObject("USER_ID", Long.class));
object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE")); object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
@ -53,7 +53,7 @@ public class ErrorTextMapStore extends TemplateMapStore<ErrorText> {
object.getId(), object.getId(),
TimeUtil.toDateFromInstant(object.getCreated()), TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()), TimeUtil.toDateFromInstant(object.getUpdated()),
object.getErrorCode(), object.getErrorCodeId(),
object.getText(), object.getText(),
object.getUserId(), object.getUserId(),
TimeUtil.toDateFromLocalDate(object.getClearingDate()) TimeUtil.toDateFromLocalDate(object.getClearingDate())

View file

@ -0,0 +1,139 @@
package ru.spcex.clearing.imdg.businessobject;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
@Component
public class FixedIncomeSecurityMapStore extends TemplateMapStore<FixedIncomeSecurity> {
public FixedIncomeSecurityMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_FixedIncomeSecurity;
}
@Override
public String getTableName() {
return "FIXED_INCOME_SECURITY";
}
@Override
public String[] getFields() {
return new String[]{
"ID", "SECURITY_ID", "BOND_TYPE", "MATURITY_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "COUPON", "COUPON_FREQUENCY"
};
}
public String[] getFieldsSecurity() {
return new String[]{"ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
}
private final String insertToSecurityStatement = makeInsertSql("SECURITY",
getFieldsSecurity(), "id");
@Override
protected FixedIncomeSecurity objectReader(ResultSet resultSet) throws SQLException {
FixedIncomeSecurity object = new FixedIncomeSecurity();
object.setId(resultSet.getObject("ID", Long.class));
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
object.setBondType(resultSet.getObject("BOND_TYPE", String.class));
object.setMaturityDate(getLocalDateFromSqlDate(resultSet, "MATURITY_DATE"));
object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class));
object.setNominalCurrency(resultSet.getObject("NOMINAL_CURRENCY", String.class));
object.setCoupon(resultSet.getObject("COUPON", BigDecimal.class));
object.setCouponFrequency(resultSet.getObject("COUPON_FREQUENCY", Long.class));
fillBySecurity(object, object.getSecurityId());
return object;
}
private void fillBySecurity(FixedIncomeSecurity object, Long securityId) {
List<FixedIncomeSecurity> resouts = jdbcTemplate.query(
"SELECT * FROM SECURITY WHERE id = ?", new Object[]{securityId},
(rs, rowNum) -> {
object.setCreated(getInstantFromTimestamp(rs, "CREATED_AT"));
object.setUpdated(getInstantFromTimestamp(rs, "UPDATED_AT"));
object.setInstrumentType(rs.getObject("INSTRUMENT_TYPE", String.class));
object.setIssuerId(rs.getObject("issuer_id", Long.class));
object.setShortName(rs.getObject("short_name", String.class));
object.setFullName(rs.getObject("FULL_NAME", String.class));
object.setShortNameEng(rs.getObject("short_name_eng", String.class));
object.setFullNameEng(rs.getObject("full_name_eng", String.class));
object.setSecuritySymbol(rs.getObject("SECURITY_SYMBOL", String.class));
object.setIsin(rs.getObject("ISIN", String.class));
object.setWorkflowStatus(rs.getObject("workflow_status", String.class));
return object;
}
);
if (resouts.size() != 1) {
log.warn("Result size={} not expected for table MONEY_MARKET_SECURITY where id={}", resouts.size(), securityId);
}
}
@Override
protected Object[] objectToField(FixedIncomeSecurity equity) {
Object[] args = new Object[]{
equity.getId(),
equity.getSecurityId(),
equity.getBondType(),
TimeUtil.toDateFromLocalDate(equity.getMaturityDate()),
equity.getNominalValue(),
equity.getNominalCurrency(),
equity.getCoupon(),
equity.getCouponFrequency()
};
return args;
}
protected Object[] securityField(FixedIncomeSecurity object) {
Object[] args = new Object[]{
object.getSecurityId(),
TimeUtil.toDateFromInstant(object.getCreated()),
TimeUtil.toDateFromInstant(object.getUpdated()),
object.getInstrumentType(),
object.getIssuerId(),
object.getShortName(),
object.getFullName(),
object.getShortNameEng(),
object.getFullNameEng(),
object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus()
};
return args;
}
@Override
public void store(Map<Long, FixedIncomeSecurity> map) {
List<Object[]> moneyMarketArgs = new ArrayList<>();
List<Object[]> securityArgs = new ArrayList<>();
for (Map.Entry<Long, FixedIncomeSecurity> entry : map.entrySet()) {
FixedIncomeSecurity obj = entry.getValue();
Object[] args = objectToField(obj);
if (args.length != validateSize) {
throw new IllegalArgumentException("objectToField return " + args.length + " arguments, but expected " + validateSize);
}
moneyMarketArgs.add(args);
securityArgs.add(securityField(obj));
}
batchInsertUpdate(insertStatement, moneyMarketArgs);
batchInsertUpdate(insertToSecurityStatement, securityArgs);
}
}

View file

@ -38,7 +38,7 @@ public class MarketMapStore extends TemplateMapStore<Market> {
"name", "name",
"code", "code",
"settlement_currency", "settlement_currency",
"sector" "section"
}; };
} }
@ -53,7 +53,7 @@ public class MarketMapStore extends TemplateMapStore<Market> {
object.setName(resultSet.getObject("NAME", String.class)); object.setName(resultSet.getObject("NAME", String.class));
object.setCode(resultSet.getObject("CODE", String.class)); object.setCode(resultSet.getObject("CODE", String.class));
object.setSettlementCurrency(resultSet.getObject("SETTLEMENT_CURRENCY", String.class)); object.setSettlementCurrency(resultSet.getObject("SETTLEMENT_CURRENCY", String.class));
object.setSector(resultSet.getObject("SECTOR", String.class)); object.setSection(resultSet.getObject("SECTION", String.class));
return object; return object;
} }
@ -68,7 +68,7 @@ public class MarketMapStore extends TemplateMapStore<Market> {
object.getName(), object.getName(),
object.getCode(), object.getCode(),
object.getSettlementCurrency(), object.getSettlementCurrency(),
object.getSector() object.getSection()
}; };
return args; return args;
} }

View file

@ -30,7 +30,7 @@ public class SecurityMapStore extends TemplateMapStore<Security> {
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{ return new String[]{
"ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "WORKFLOW_STATUS" "ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"
}; };
} }
@ -47,6 +47,7 @@ public class SecurityMapStore extends TemplateMapStore<Security> {
object.setShortNameEng(resultSet.getObject("SHORT_NAME_ENG", String.class)); object.setShortNameEng(resultSet.getObject("SHORT_NAME_ENG", String.class));
object.setFullNameEng(resultSet.getObject("FULL_NAME_ENG", String.class)); object.setFullNameEng(resultSet.getObject("FULL_NAME_ENG", String.class));
object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class)); object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class));
object.setIsin(resultSet.getObject("ISIN", String.class));
object.setWorkflowStatus(resultSet.getObject("WORKFLOW_STATUS", String.class)); object.setWorkflowStatus(resultSet.getObject("WORKFLOW_STATUS", String.class));
return object; return object;
} }
@ -64,7 +65,8 @@ public class SecurityMapStore extends TemplateMapStore<Security> {
object.getShortNameEng(), object.getShortNameEng(),
object.getFullNameEng(), object.getFullNameEng(),
object.getSecuritySymbol(), object.getSecuritySymbol(),
object.getWorkflowStatus() object.getIsin(),
object.getWorkflowStatus(),
}; };
return args; return args;
} }

View file

@ -30,7 +30,7 @@ public class UserConnectMapStore extends TemplateMapStore<UserConnect> {
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{ return new String[]{
"ID", "CREATED_AT", "UPDATED_AT", "USER_ID", "CONNECTION_TIME", "DISCONNECTION_TIME", "SERVER_IP", "CLIENT_IP", "CONNECTION_STATE", "CLEARING_DATE", "ERROR_CODE", "ERROR_TEXT" "ID", "CREATED_AT", "UPDATED_AT", "USER_ID", "CONNECTION_TIME", "DISCONNECTION_TIME", "SERVER_IP", "CLIENT_IP", "CONNECTION_STATE", "CLEARING_DATE", "ERROR_CODE_ID", "ERROR_TEXT_ID"
}; };
} }
@ -47,8 +47,8 @@ public class UserConnectMapStore extends TemplateMapStore<UserConnect> {
object.setClientIp(resultSet.getObject("CLIENT_IP", String.class)); object.setClientIp(resultSet.getObject("CLIENT_IP", String.class));
object.setConnectionState(resultSet.getObject("CONNECTION_STATE", String.class)); object.setConnectionState(resultSet.getObject("CONNECTION_STATE", String.class));
object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE")); object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
object.setErrorCode(resultSet.getObject("ERROR_CODE", Long.class)); object.setErrorCodeId(resultSet.getObject("ERROR_CODE_ID", Long.class));
object.setErrorText(resultSet.getObject("ERROR_TEXT", String.class)); object.setErrorTextId(resultSet.getObject("ERROR_TEXT_ID", Long.class));
return object; return object;
} }
@ -65,8 +65,8 @@ public class UserConnectMapStore extends TemplateMapStore<UserConnect> {
object.getClientIp(), object.getClientIp(),
object.getConnectionState(), object.getConnectionState(),
TimeUtil.toDateFromLocalDate(object.getClearingDate()), TimeUtil.toDateFromLocalDate(object.getClearingDate()),
object.getErrorCode(), object.getErrorCodeId(),
object.getErrorText() object.getErrorTextId()
}; };
return args; return args;
} }

View file

@ -0,0 +1,31 @@
package ru.spcex.clearing.imdg.dictionary;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.platform.dictionary.BondTypeDictionary;
import ru.spcex.clearing.imdg.base.DictionaryTMapStore;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
@Component
public class BondTypeDictionaryMapStore extends DictionaryTMapStore<BondTypeDictionary> {
public BondTypeDictionaryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_BondTypeDictionary;
}
@Override
public String getTableName() {
return "BOND_TYPE_DICTIONARY";
}
@Override
public BondTypeDictionary getDictionaryObject() {
return new BondTypeDictionary();
}
}

View file

@ -0,0 +1,31 @@
package ru.spcex.clearing.imdg.dictionary;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.platform.dictionary.SectionDictionary;
import ru.spcex.clearing.imdg.base.DictionaryTMapStore;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
@Component
public class SectionDictionaryMapStore extends DictionaryTMapStore<SectionDictionary> {
public SectionDictionaryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_SectionDictionary;
}
@Override
public String getTableName() {
return "SECTION_DICTIONARY";
}
@Override
public SectionDictionary getDictionaryObject() {
return new SectionDictionary();
}
}

View file

@ -0,0 +1,31 @@
package ru.spcex.clearing.imdg.dictionary;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.platform.dictionary.ShareTypeDictionary;
import ru.spcex.clearing.imdg.base.DictionaryTMapStore;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
@Component
public class ShareTypeDictionaryMapStore extends DictionaryTMapStore<ShareTypeDictionary> {
public ShareTypeDictionaryMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_ShareTypeDictionary;
}
@Override
public String getTableName() {
return "SHARE_TYPE_DICTIONARY";
}
@Override
public ShareTypeDictionary getDictionaryObject() {
return new ShareTypeDictionary();
}
}

View file

@ -28,30 +28,33 @@ public class CompanyRoleSetMapStore extends TemplateMapStore<CompanyRoleSet> {
@Override @Override
public String[] getIndexingField() { public String[] getIndexingField() {
return new String[]{};// список индексируемых полей return new String[]{"companyId"};// список индексируемых полей
} }
// IMDGDistributedNames.Map_CompanyRoleSet
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{"ID", "ROLE_ID", "COMPANY_ID"}; return new String[]{
"COMPANY_ID", "COMPANY_ROLE", "WORKFLOW_STATUS", "ID"
};
} }
@Override @Override
protected CompanyRoleSet objectReader(ResultSet resultSet) throws SQLException { public CompanyRoleSet objectReader(ResultSet resultSet) throws SQLException {
CompanyRoleSet companyRoleSet = new CompanyRoleSet(); CompanyRoleSet object = new CompanyRoleSet();
companyRoleSet.setId(resultSet.getObject("ID", Long.class)); object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
companyRoleSet.setRoleId(resultSet.getObject("ROLE_ID", Long.class)); object.setCompanyRole(resultSet.getObject("COMPANY_ROLE", String.class));
companyRoleSet.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class)); object.setWorkflowStatus(resultSet.getObject("WORKFLOW_STATUS", String.class));
return companyRoleSet; object.setId(resultSet.getObject("ID", Long.class));
return object;
} }
@Override @Override
protected Object[] objectToField(CompanyRoleSet partnerList) { public Object[] objectToField(CompanyRoleSet object) {
Object[] args = new Object[]{ Object[] args = new Object[]{
partnerList.getId(), object.getCompanyId(),
partnerList.getRoleId(), object.getCompanyRole(),
partnerList.getCompanyId(), object.getWorkflowStatus(),
object.getId()
}; };
return args; return args;
} }

View file

@ -0,0 +1,63 @@
package ru.spcex.clearing.imdg.object;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.CouponPeriod;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
@Component
public class CouponPeriodMapStore extends TemplateMapStore<CouponPeriod> {
public CouponPeriodMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_CouponPeriod;
}
@Override
public String getTableName() {
return "COUPON_PERIOD";
}
@Override
public String[] getFields() {
return new String[]{
"SECURITY_ID", "COUPON_RATE", "NUMBER", "PERIOD_END_DATE", "PERIOD_START_DATE", "ID"
};
}
@Override
public CouponPeriod objectReader(ResultSet resultSet) throws SQLException {
CouponPeriod object = new CouponPeriod();
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
object.setCouponRate(resultSet.getObject("COUPON_RATE", BigDecimal.class));
object.setNumber(resultSet.getObject("NUMBER", Long.class));
object.setPeriodEndDate(getLocalDateFromSqlDate(resultSet, "PERIOD_END_DATE"));
object.setPeriodStartDate(getLocalDateFromSqlDate(resultSet, "PERIOD_START_DATE"));
object.setId(resultSet.getObject("ID", Long.class));
return object;
}
@Override
public Object[] objectToField(CouponPeriod object) {
Object[] args = new Object[]{
object.getSecurityId(),
object.getCouponRate(),
object.getNumber(),
TimeUtil.toDateFromLocalDate(object.getPeriodEndDate()),
TimeUtil.toDateFromLocalDate(object.getPeriodStartDate()),
object.getId()
};
return args;
}
}

View file

@ -0,0 +1,63 @@
package ru.spcex.clearing.imdg.object;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.imdg.base.TemplateMapStore;
import ru.spcex.platform.utils.time.TimeUtil;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
@Component
public class FixedIncomeCashFlowMapStore extends TemplateMapStore<FixedIncomeCashFlow> {
public FixedIncomeCashFlowMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
public String getMapName() {
return IMDGDistributedNames.Map_FixedIncomeCashFlow;
}
@Override
public String getTableName() {
return "FIXED_INCOME_CASH_FLOW";
}
@Override
public String[] getFields() {
return new String[]{
"SECURITY_ID", "ACCRUED_COUPON", "NOMINAL_VALUE", "NUMBER", "VALUE_DATE", "ID"
};
}
@Override
public FixedIncomeCashFlow objectReader(ResultSet resultSet) throws SQLException {
FixedIncomeCashFlow object = new FixedIncomeCashFlow();
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
object.setAccruedCoupon(resultSet.getObject("ACCRUED_COUPON", BigDecimal.class));
object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class));
object.setNumber(resultSet.getObject("NUMBER", Long.class));
object.setValueDate(getLocalDateFromSqlDate(resultSet, "VALUE_DATE"));
object.setId(resultSet.getObject("ID", Long.class));
return object;
}
@Override
public Object[] objectToField(FixedIncomeCashFlow object) {
Object[] args = new Object[]{
object.getSecurityId(),
object.getAccruedCoupon(),
object.getNominalValue(),
object.getNumber(),
TimeUtil.toDateFromLocalDate(object.getValueDate()),
object.getId()
};
return args;
}
}

View file

@ -41,11 +41,11 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
@Override @Override
public String[] getFields() { public String[] getFields() {
return new String[]{"ID", "SECURITY_ID", "DESCRIPTION", "START_DATE", "END_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "TERM_TYPE"}; return new String[]{"ID", "SECURITY_ID", "DESCRIPTION", "START_DATE", "END_DATE", "NOMINAL_VALUE", "NOMINAL_CURRENCY", "TERM_TYPE", "LOT_SIZE"};
} }
public String[] getFieldsSecurity() { public String[] getFieldsSecurity() {
return new String[]{"ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "WORKFLOW_STATUS"}; return new String[]{"ID", "CREATED_AT", "UPDATED_AT", "INSTRUMENT_TYPE", "ISSUER_ID", "SHORT_NAME", "FULL_NAME", "SHORT_NAME_ENG", "FULL_NAME_ENG", "SECURITY_SYMBOL", "ISIN", "WORKFLOW_STATUS"};
} }
@Override @Override
@ -72,6 +72,7 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class)); object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class));
object.setNominalCurrency(resultSet.getObject("NOMINAL_CURRENCY", String.class)); object.setNominalCurrency(resultSet.getObject("NOMINAL_CURRENCY", String.class));
object.setTermType(resultSet.getObject("TERM_TYPE", String.class)); object.setTermType(resultSet.getObject("TERM_TYPE", String.class));
object.setTermType(resultSet.getObject("LOT_SIZE", String.class));
fillBySecurity(object, object.getSecurityId()); fillBySecurity(object, object.getSecurityId());
return object; return object;
} }
@ -89,6 +90,7 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
object.setShortNameEng(rs.getObject("short_name_eng", String.class)); object.setShortNameEng(rs.getObject("short_name_eng", String.class));
object.setFullNameEng(rs.getObject("full_name_eng", String.class)); object.setFullNameEng(rs.getObject("full_name_eng", String.class));
object.setSecuritySymbol(rs.getObject("SECURITY_SYMBOL", String.class)); object.setSecuritySymbol(rs.getObject("SECURITY_SYMBOL", String.class));
object.setIsin(rs.getObject("ISIN", String.class));
object.setWorkflowStatus(rs.getObject("workflow_status", String.class)); object.setWorkflowStatus(rs.getObject("workflow_status", String.class));
return object; return object;
} }
@ -108,7 +110,8 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getEndDate()), TimeUtil.toDateFromLocalDate(moneyMarketSecurity.getEndDate()),
moneyMarketSecurity.getNominalValue(), moneyMarketSecurity.getNominalValue(),
moneyMarketSecurity.getNominalCurrency(), moneyMarketSecurity.getNominalCurrency(),
moneyMarketSecurity.getTermType() moneyMarketSecurity.getTermType(),
moneyMarketSecurity.getLotSize()
}; };
return args; return args;
} }
@ -125,6 +128,7 @@ public class MoneyMarketSecurityMapStore extends TemplateMapStore<MoneyMarketSec
object.getShortNameEng(), object.getShortNameEng(),
object.getFullNameEng(), object.getFullNameEng(),
object.getSecuritySymbol(), object.getSecuritySymbol(),
object.getIsin(),
object.getWorkflowStatus() object.getWorkflowStatus()
}; };
return args; return args;

View file

@ -12,6 +12,7 @@ import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanyHistory; import ru.clearing.classes.statics.data.company.CompanyHistory;
import ru.clearing.classes.statics.data.company.relation.Relation; import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.company.relation.RelationHistory; import ru.clearing.classes.statics.data.company.relation.RelationHistory;
import ru.clearing.classes.statics.data.misc.*;
import ru.clearing.classes.statics.data.security.Security; import ru.clearing.classes.statics.data.security.Security;
import ru.clearing.classes.statics.data.security.SecurityHistory; import ru.clearing.classes.statics.data.security.SecurityHistory;
import ru.clearing.classes.statics.data.user.User; import ru.clearing.classes.statics.data.user.User;
@ -41,6 +42,10 @@ public class UpdateMapService extends AbstractUpdateMapService {
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Security).addLocalEntryListener(this, Predicates.alwaysTrue(), true); hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Security).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_UserConnect).addLocalEntryListener(this, Predicates.alwaysTrue(), true); hazelcastServerInstance.getMap(IMDGDistributedNames.Map_UserConnect).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_User).addLocalEntryListener(this, Predicates.alwaysTrue(), true); hazelcastServerInstance.getMap(IMDGDistributedNames.Map_User).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Currency).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MoneyMarketSecurity).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_Listing).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MarketHistory).addLocalEntryListener(this, Predicates.alwaysTrue(), true);
} }
@Override @Override
@ -82,11 +87,6 @@ public class UpdateMapService extends AbstractUpdateMapService {
createBusinessEvent(relationHistory, eventType); createBusinessEvent(relationHistory, eventType);
relationHistory.setObject((Relation) value); relationHistory.setObject((Relation) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_RelationHistory).put(relationHistory.getId(), relationHistory); hazelcastServerInstance.getMap(IMDGDistributedNames.Map_RelationHistory).put(relationHistory.getId(), relationHistory);
} else if (value instanceof Security) {
SecurityHistory securityHistory = new SecurityHistory();
createBusinessEvent(securityHistory, eventType);
securityHistory.setObject((Security) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_SecurityHistory).put(securityHistory.getId(), securityHistory);
} else if (value instanceof UserConnect) { } else if (value instanceof UserConnect) {
UserConnectHistory userConnectHistory = new UserConnectHistory(); UserConnectHistory userConnectHistory = new UserConnectHistory();
createBusinessEvent(userConnectHistory, eventType); createBusinessEvent(userConnectHistory, eventType);
@ -97,6 +97,33 @@ public class UpdateMapService extends AbstractUpdateMapService {
createBusinessEvent(userHistory, eventType); createBusinessEvent(userHistory, eventType);
userHistory.setObject((User) value); userHistory.setObject((User) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_UserHistory).put(userHistory.getId(), userHistory); hazelcastServerInstance.getMap(IMDGDistributedNames.Map_UserHistory).put(userHistory.getId(), userHistory);
} else if (value instanceof Currency) {
CurrencyHistory currencyHistory = new CurrencyHistory();
createBusinessEvent(currencyHistory, eventType);
currencyHistory.setObject((Currency) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_CurrencyHistory).put(currencyHistory.getId(), currencyHistory);
} else if (value instanceof MoneyMarketSecurity) {
MoneyMarketSecurityHistory moneyMarketSecurityHistory = new MoneyMarketSecurityHistory();
createBusinessEvent(moneyMarketSecurityHistory, eventType);
moneyMarketSecurityHistory.setObject((MoneyMarketSecurity) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MoneyMarketSecurityHistory).put(moneyMarketSecurityHistory.getId(), moneyMarketSecurityHistory);
} else if (value instanceof Listing) {
ListingHistory listingHistory = new ListingHistory();
createBusinessEvent(listingHistory, eventType);
listingHistory.setObject((Listing) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_ListingHistory).put(listingHistory.getId(), listingHistory);
} else if (value instanceof Market) {
MarketHistory marketHistory = new MarketHistory();
createBusinessEvent(marketHistory, eventType);
marketHistory.setObject((Market) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_MarketHistory).put(marketHistory.getId(), marketHistory);
} else if (value instanceof Security) { // Существуют наследники этой таблицы, по этому в последнюю очередь делать эту проверку.
SecurityHistory securityHistory = new SecurityHistory();
createBusinessEvent(securityHistory, eventType);
securityHistory.setObject((Security) value);
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_SecurityHistory).put(securityHistory.getId(), securityHistory);
} else { } else {
log.error("unexpected event {}", event); log.error("unexpected event {}", event);
} }

View file

@ -10,6 +10,10 @@ import ru.clearing.classes.statics.data.company.relation.Relation;
import ru.clearing.classes.statics.data.company.relation.RelationHistory; import ru.clearing.classes.statics.data.company.relation.RelationHistory;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit; import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.generated.ClearingMemberCategory; import ru.clearing.classes.statics.data.generated.ClearingMemberCategory;
import ru.clearing.classes.statics.data.instrument.issue.CouponPeriod;
import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
import ru.clearing.classes.statics.data.journal.InDocumentJournal; import ru.clearing.classes.statics.data.journal.InDocumentJournal;
import ru.clearing.classes.statics.data.journal.ManagementJournal; import ru.clearing.classes.statics.data.journal.ManagementJournal;
import ru.clearing.classes.statics.data.journal.OutDocumentJournal; import ru.clearing.classes.statics.data.journal.OutDocumentJournal;
@ -64,6 +68,10 @@ public class RunnableMapNamesForTesting {
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SecurityHistory, SecurityHistory.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_SecurityHistory, SecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserConnectHistory, UserConnectHistory.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserConnectHistory, UserConnectHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserHistory, UserHistory.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserHistory, UserHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CurrencyHistory, CurrencyHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_MoneyMarketSecurityHistory, MoneyMarketSecurityHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_ListingHistory, ListingHistory.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_MarketHistory, MarketHistory.class));
//business object //business object
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class));
@ -89,6 +97,8 @@ public class RunnableMapNamesForTesting {
new SettingOperation("setAmount", new Class[]{BigDecimal.class}, new Object[]{new BigDecimal("23.22")}))); new SettingOperation("setAmount", new Class[]{BigDecimal.class}, new Object[]{new BigDecimal("23.22")})));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserConnect, UserConnect.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_UserConnect, UserConnect.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_User, User.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_User, User.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_EquitySecurity, EquitySecurity.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_FixedIncomeSecurity, FixedIncomeSecurity.class));
//dictionary //dictionary
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_AccountStatusDictionary, AccountStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_AccountStatusDictionary, AccountStatusDictionary.class));
@ -131,6 +141,9 @@ public class RunnableMapNamesForTesting {
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_TermTypeDictionary, TermTypeDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_TermTypeDictionary, TermTypeDictionary.class));
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_UserRoleDictionary, UserRoleDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_UserRoleDictionary, UserRoleDictionary.class));
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_WorkflowStatusDictionary, WorkflowStatusDictionary.class)); dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_WorkflowStatusDictionary, WorkflowStatusDictionary.class));
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_SectionDictionary, SectionDictionary.class));
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_ShareTypeDictionary, ShareTypeDictionary.class));
dictionaryObjectForCheckMapStores.add(new DictionaryObjectForCheckMapStore<>(IMDGDistributedNames.Map_BondTypeDictionary, BondTypeDictionary.class));
//object //object
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountRouting, AccountRouting.class)); businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_AccountRouting, AccountRouting.class));
@ -210,5 +223,7 @@ public class RunnableMapNamesForTesting {
new SettingOperation("setInSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)}), new SettingOperation("setInSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)}),
new SettingOperation("setOutExtSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)}), new SettingOperation("setOutExtSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)}),
new SettingOperation("setOutIntSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)}))); new SettingOperation("setOutIntSum", new Class[]{BigDecimal.class}, new Object[]{generatingRandomBigDecimal(2)})));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_FixedIncomeCashFlow, FixedIncomeCashFlow.class));
businessObjectAndBusinessEventForCheckMapStores.add(new BusinessObjectAndBusinessEventForCheckMapStore<>(IMDGDistributedNames.Map_CouponPeriod, CouponPeriod.class));
} }
} }

View file

@ -122,6 +122,17 @@ public final class IMDGDistributedNames {
public static final String Map_OrderRegister = "Map_OrderRegister"; public static final String Map_OrderRegister = "Map_OrderRegister";
public static final String Map_VerificationResult = "Map_VerificationResult"; public static final String Map_VerificationResult = "Map_VerificationResult";
public static final String Map_STrade = "Map_STrade"; public static final String Map_STrade = "Map_STrade";
public static final String Map_SectionDictionary = "Map_SectionDictionary";
public static final String Map_ShareTypeDictionary = "Map_ShareTypeDictionary";
public static final String Map_BondTypeDictionary = "Map_BondTypeDictionary";
public static final String Map_CurrencyHistory = "Map_CurrencyHistory";
public static final String Map_MoneyMarketSecurityHistory = "Map_MoneyMarketSecurityHistory";
public static final String Map_EquitySecurity = "Map_EquitySecurity";
public static final String Map_FixedIncomeSecurity = "Map_FixedIncomeSecurity";
public static final String Map_FixedIncomeCashFlow = "Map_FixedIncomeCashFlow";
public static final String Map_CouponPeriod = "Map_CouponPeriod";
public static final String Map_ListingHistory = "Map_ListingHistory";
public static final String Map_MarketHistory = "Map_MarketHistory";
public static final String MAP_SEQUENCE_NAME = "MAP_SEQUENCE_NAME"; public static final String MAP_SEQUENCE_NAME = "MAP_SEQUENCE_NAME";