This commit is contained in:
parent
148870d0c8
commit
781c0645f2
18 changed files with 1117 additions and 5 deletions
|
|
@ -0,0 +1,117 @@
|
|||
package ru.clearing.classes.statics.data.security;
|
||||
|
||||
import ru.clearing.classes.ConstSerializable;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* Цифровые свидетельства
|
||||
* <p>
|
||||
* DB table: DIGITAL_CERTIFICATE_SECURITY
|
||||
**/
|
||||
public class DigitalCertificateSecurity extends Security {
|
||||
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
|
||||
|
||||
private Long securityId;
|
||||
// extend: private String shortName;
|
||||
// extend: private String securitySymbol;
|
||||
// extend: private String fullName;
|
||||
// extend: private String isin;
|
||||
// extend: private String instrumentType;
|
||||
// extend: private Long issuerId;
|
||||
// extend: private String shortNameEng;
|
||||
// extend: private String fullNameEng;
|
||||
// extend: private String workflowStatus;
|
||||
private String baseCode;
|
||||
// extend: private BigDecimal lotSize;
|
||||
private Long baseUnitSize;
|
||||
private BigDecimal priceVarianceLimit;
|
||||
private String nominalTypeCode;
|
||||
private BigDecimal nominalValue;
|
||||
private LocalDate nominalIndexationDate;
|
||||
private String nominalIndexationSign;
|
||||
private String settlementHouse;
|
||||
private String depository;
|
||||
|
||||
|
||||
public Long getSecurityId() {
|
||||
return securityId;
|
||||
}
|
||||
|
||||
public void setSecurityId(Long securityId) {
|
||||
this.securityId = securityId;
|
||||
}
|
||||
|
||||
public String getBaseCode() {
|
||||
return baseCode;
|
||||
}
|
||||
|
||||
public void setBaseCode(String baseCode) {
|
||||
this.baseCode = baseCode;
|
||||
}
|
||||
|
||||
public Long getBaseUnitSize() {
|
||||
return baseUnitSize;
|
||||
}
|
||||
|
||||
public void setBaseUnitSize(Long baseUnitSize) {
|
||||
this.baseUnitSize = baseUnitSize;
|
||||
}
|
||||
|
||||
public BigDecimal getPriceVarianceLimit() {
|
||||
return priceVarianceLimit;
|
||||
}
|
||||
|
||||
public void setPriceVarianceLimit(BigDecimal priceVarianceLimit) {
|
||||
this.priceVarianceLimit = priceVarianceLimit;
|
||||
}
|
||||
|
||||
public String getNominalTypeCode() {
|
||||
return nominalTypeCode;
|
||||
}
|
||||
|
||||
public void setNominalTypeCode(String nominalTypeCode) {
|
||||
this.nominalTypeCode = nominalTypeCode;
|
||||
}
|
||||
|
||||
public BigDecimal getNominalValue() {
|
||||
return nominalValue;
|
||||
}
|
||||
|
||||
public void setNominalValue(BigDecimal nominalValue) {
|
||||
this.nominalValue = nominalValue;
|
||||
}
|
||||
|
||||
public LocalDate getNominalIndexationDate() {
|
||||
return nominalIndexationDate;
|
||||
}
|
||||
|
||||
public void setNominalIndexationDate(LocalDate nominalIndexationDate) {
|
||||
this.nominalIndexationDate = nominalIndexationDate;
|
||||
}
|
||||
|
||||
public String getNominalIndexationSign() {
|
||||
return nominalIndexationSign;
|
||||
}
|
||||
|
||||
public void setNominalIndexationSign(String nominalIndexationSign) {
|
||||
this.nominalIndexationSign = nominalIndexationSign;
|
||||
}
|
||||
|
||||
public String getSettlementHouse() {
|
||||
return settlementHouse;
|
||||
}
|
||||
|
||||
public void setSettlementHouse(String settlementHouse) {
|
||||
this.settlementHouse = settlementHouse;
|
||||
}
|
||||
|
||||
public String getDepository() {
|
||||
return depository;
|
||||
}
|
||||
|
||||
public void setDepository(String depository) {
|
||||
this.depository = depository;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
package ru.clearing.classes.statics.data.security;
|
||||
|
||||
import ru.clearing.classes.ConstSerializable;
|
||||
import ru.clearing.classes.objects.BusinessEvent;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* Изменение состояния объекта Цифровые свидетельства
|
||||
* <p>
|
||||
* DB table: DIGITAL_CERTIFICATE_SECURITY_HISTORY
|
||||
**/
|
||||
public class DigitalCertificateSecurityHistory extends BusinessEvent<DigitalCertificateSecurity> {
|
||||
@Serial
|
||||
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
|
||||
|
||||
private DigitalCertificateSecurity object;
|
||||
|
||||
@Override
|
||||
public DigitalCertificateSecurity getObject() {
|
||||
return object;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setObject(DigitalCertificateSecurity object) {
|
||||
this.object = object;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
package ru.clearing.classes.statics.data.security;
|
||||
|
||||
import ru.clearing.classes.ConstSerializable;
|
||||
import ru.spcex.platform.classes.base.SpcexObjectBase;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* Утилитарные цифровые права
|
||||
*
|
||||
* DB table: UTILITARIAN_DIGITAL_RIGHT
|
||||
**/
|
||||
public class UtilitarianDigitalRight extends SpcexObjectBase {
|
||||
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
|
||||
|
||||
private Long securityId;
|
||||
private String investmentAttractingCompany;
|
||||
private String investmentAttractingInn;
|
||||
private BigDecimal issueAmount;
|
||||
private BigDecimal issuePrice;
|
||||
private Long issueSize;
|
||||
private String nominalIndexation;
|
||||
private String platformOperator;
|
||||
private String platformOperatorCode;
|
||||
private String platformOperatorInn;
|
||||
private String platformOperatorWeb;
|
||||
private String platformProposalWeb;
|
||||
private String rightEssence;
|
||||
private String rightUnit;
|
||||
private String rightUnitMeasurement;
|
||||
|
||||
public Long getSecurityId() {
|
||||
return securityId;
|
||||
}
|
||||
|
||||
public void setSecurityId(Long securityId) {
|
||||
this.securityId = securityId;
|
||||
}
|
||||
|
||||
public String getInvestmentAttractingCompany() {
|
||||
return investmentAttractingCompany;
|
||||
}
|
||||
|
||||
public void setInvestmentAttractingCompany(String investmentAttractingCompany) {
|
||||
this.investmentAttractingCompany = investmentAttractingCompany;
|
||||
}
|
||||
|
||||
public String getInvestmentAttractingInn() {
|
||||
return investmentAttractingInn;
|
||||
}
|
||||
|
||||
public void setInvestmentAttractingInn(String investmentAttractingInn) {
|
||||
this.investmentAttractingInn = investmentAttractingInn;
|
||||
}
|
||||
|
||||
public BigDecimal getIssueAmount() {
|
||||
return issueAmount;
|
||||
}
|
||||
|
||||
public void setIssueAmount(BigDecimal issueAmount) {
|
||||
this.issueAmount = issueAmount;
|
||||
}
|
||||
|
||||
public BigDecimal getIssuePrice() {
|
||||
return issuePrice;
|
||||
}
|
||||
|
||||
public void setIssuePrice(BigDecimal issuePrice) {
|
||||
this.issuePrice = issuePrice;
|
||||
}
|
||||
|
||||
public Long getIssueSize() {
|
||||
return issueSize;
|
||||
}
|
||||
|
||||
public void setIssueSize(Long issueSize) {
|
||||
this.issueSize = issueSize;
|
||||
}
|
||||
|
||||
public String getNominalIndexation() {
|
||||
return nominalIndexation;
|
||||
}
|
||||
|
||||
public void setNominalIndexation(String nominalIndexation) {
|
||||
this.nominalIndexation = nominalIndexation;
|
||||
}
|
||||
|
||||
public String getPlatformOperator() {
|
||||
return platformOperator;
|
||||
}
|
||||
|
||||
public void setPlatformOperator(String platformOperator) {
|
||||
this.platformOperator = platformOperator;
|
||||
}
|
||||
|
||||
public String getPlatformOperatorCode() {
|
||||
return platformOperatorCode;
|
||||
}
|
||||
|
||||
public void setPlatformOperatorCode(String platformOperatorCode) {
|
||||
this.platformOperatorCode = platformOperatorCode;
|
||||
}
|
||||
|
||||
public String getPlatformOperatorInn() {
|
||||
return platformOperatorInn;
|
||||
}
|
||||
|
||||
public void setPlatformOperatorInn(String platformOperatorInn) {
|
||||
this.platformOperatorInn = platformOperatorInn;
|
||||
}
|
||||
|
||||
public String getPlatformOperatorWeb() {
|
||||
return platformOperatorWeb;
|
||||
}
|
||||
|
||||
public void setPlatformOperatorWeb(String platformOperatorWeb) {
|
||||
this.platformOperatorWeb = platformOperatorWeb;
|
||||
}
|
||||
|
||||
public String getPlatformProposalWeb() {
|
||||
return platformProposalWeb;
|
||||
}
|
||||
|
||||
public void setPlatformProposalWeb(String platformProposalWeb) {
|
||||
this.platformProposalWeb = platformProposalWeb;
|
||||
}
|
||||
|
||||
public String getRightEssence() {
|
||||
return rightEssence;
|
||||
}
|
||||
|
||||
public void setRightEssence(String rightEssence) {
|
||||
this.rightEssence = rightEssence;
|
||||
}
|
||||
|
||||
public String getRightUnit() {
|
||||
return rightUnit;
|
||||
}
|
||||
|
||||
public void setRightUnit(String rightUnit) {
|
||||
this.rightUnit = rightUnit;
|
||||
}
|
||||
|
||||
public String getRightUnitMeasurement() {
|
||||
return rightUnitMeasurement;
|
||||
}
|
||||
|
||||
public void setRightUnitMeasurement(String rightUnitMeasurement) {
|
||||
this.rightUnitMeasurement = rightUnitMeasurement;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
package ru.clearing.classes.statics.data.security;
|
||||
|
||||
import ru.clearing.classes.ConstSerializable;
|
||||
import ru.clearing.classes.objects.BusinessEvent;
|
||||
|
||||
import java.io.Serial;
|
||||
|
||||
/**
|
||||
* Изменение состояния объекта Утилитарные цифровые права
|
||||
* <p>
|
||||
* DB table: UTILITARIAN_DIGITAL_RIGHT_HISTORY
|
||||
**/
|
||||
public class UtilitarianDigitalRightHistory extends BusinessEvent<UtilitarianDigitalRight> {
|
||||
@Serial
|
||||
private static final long serialVersionUID = ConstSerializable.serialVersionUID;
|
||||
|
||||
private UtilitarianDigitalRight object;
|
||||
|
||||
@Override
|
||||
public UtilitarianDigitalRight getObject() {
|
||||
return object;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setObject(UtilitarianDigitalRight object) {
|
||||
this.object = object;
|
||||
}
|
||||
}
|
||||
|
|
@ -852,6 +852,32 @@ COMMENT ON COLUMN PRIORITY_DICTIONARY.NAME IS 'Приоритет отображ
|
|||
|
||||
GRANT ALL PRIVILEGES ON TABLE PRIORITY_DICTIONARY TO clearing;
|
||||
|
||||
-- nominalTypeCode - Справочник типов номинала УЦП
|
||||
DROP TABLE IF EXISTS NOMINAL_TYPE_CODE_DICTIONARY;
|
||||
CREATE TABLE NOMINAL_TYPE_CODE_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255));
|
||||
COMMENT ON TABLE NOMINAL_TYPE_CODE_DICTIONARY IS 'Справочник типов номинала УЦП';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.CODE IS 'Код';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.NAME IS 'Наименование';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE NOMINAL_TYPE_CODE_DICTIONARY TO clearing;
|
||||
|
||||
-- unitMeasurement - Справочник единиц измерения
|
||||
DROP TABLE IF EXISTS UNIT_MEASUREMENT_DICTIONARY;
|
||||
CREATE TABLE UNIT_MEASUREMENT_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255));
|
||||
COMMENT ON TABLE UNIT_MEASUREMENT_DICTIONARY IS 'Справочник единиц измерения';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.CODE IS 'Код';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.NAME IS 'Наименование';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UNIT_MEASUREMENT_DICTIONARY TO clearing;
|
||||
|
||||
/* Business objects */
|
||||
|
||||
-- dbVersion - Версия базы данных
|
||||
|
|
@ -5356,6 +5382,153 @@ COMMENT ON COLUMN VALIDATION_SYMBOLS.SYMBOLS IS 'Допустимые симво
|
|||
COMMENT ON COLUMN VALIDATION_SYMBOLS.COMMENT IS 'Описание группы символов';
|
||||
GRANT ALL PRIVILEGES ON TABLE VALIDATION_SYMBOLS TO clearing;
|
||||
|
||||
|
||||
-- digitalCertificateSecurity - Цифровые свидетельства
|
||||
DROP TABLE IF EXISTS DIGITAL_CERTIFICATE_SECURITY;
|
||||
CREATE TABLE DIGITAL_CERTIFICATE_SECURITY(ID bigint PRIMARY KEY, SECURITY_ID bigint, BASE_CODE varchar(50), BASE_UNIT_SIZE bigint, PRICE_VARIANCE_LIMIT numeric(72,18), NOMINAL_TYPE_CODE varchar(4), NOMINAL_VALUE numeric(72,18), NOMINAL_INDEXATION_DATE date, NOMINAL_INDEXATION_SIGN varchar(4), SETTLEMENT_HOUSE varchar(255), DEPOSITORY varchar(255));
|
||||
COMMENT ON TABLE DIGITAL_CERTIFICATE_SECURITY IS 'Цифровые свидетельства';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.SECURITY_ID IS 'Идентификатор инструмента (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.BASE_CODE IS 'Код ЦС, присвоенный депозитарием';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.BASE_UNIT_SIZE IS 'Количество УЦП в одном ЦС';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.PRICE_VARIANCE_LIMIT IS 'Пределы изменения цены';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_TYPE_CODE IS 'Тип индексации номинала (linked to nominalTypeCode)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_VALUE IS 'Индексируемый номинал';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_INDEXATION_DATE IS 'Дата индексации номинала';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_INDEXATION_SIGN IS 'Фактическая индексация (linked to allowed)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.SETTLEMENT_HOUSE IS 'Наименование расчетной организации';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.DEPOSITORY IS 'Наименование депозитария';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE DIGITAL_CERTIFICATE_SECURITY TO clearing;
|
||||
|
||||
|
||||
-- History log of digitalCertificateSecurity - Цифровые свидетельства
|
||||
DROP TABLE IF EXISTS DIGITAL_CERTIFICATE_SECURITY_HISTORY;
|
||||
CREATE TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY(DIGITAL_CERTIFICATE_SECURITY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), ID bigint PRIMARY KEY, SECURITY_ID bigint, BASE_CODE varchar(50), BASE_UNIT_SIZE bigint, PRICE_VARIANCE_LIMIT numeric(72,18), NOMINAL_TYPE_CODE varchar(4), NOMINAL_VALUE numeric(72,18), NOMINAL_INDEXATION_DATE date, NOMINAL_INDEXATION_SIGN varchar(4), SETTLEMENT_HOUSE varchar(255), DEPOSITORY varchar(255));
|
||||
COMMENT ON TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY IS 'История изменений таблицы digitalCertificateSecurity';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.DIGITAL_CERTIFICATE_SECURITY_ID IS 'Идентификатор записи в таблице DIGITAL_CERTIFICATE_SECURITY';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_TIME IS 'Дата и время изменения';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_USER_ID IS 'Инициатор изменения';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_TYPE IS 'Тип изменения';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.SECURITY_ID IS 'Идентификатор инструмента (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.BASE_CODE IS 'Код ЦС, присвоенный депозитарием';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.BASE_UNIT_SIZE IS 'Количество УЦП в одном ЦС';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.PRICE_VARIANCE_LIMIT IS 'Пределы изменения цены';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_TYPE_CODE IS 'Тип индексации номинала (linked to nominalTypeCode)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_VALUE IS 'Индексируемый номинал';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_INDEXATION_DATE IS 'Дата индексации номинала';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_INDEXATION_SIGN IS 'Фактическая индексация (linked to allowed)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.SETTLEMENT_HOUSE IS 'Наименование расчетной организации';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.DEPOSITORY IS 'Наименование депозитария';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY TO clearing;
|
||||
|
||||
-- utilitarianDigitalRight - Утилитарные цифровые права
|
||||
DROP TABLE IF EXISTS UTILITARIAN_DIGITAL_RIGHT;
|
||||
CREATE TABLE UTILITARIAN_DIGITAL_RIGHT(ID bigint PRIMARY KEY, SECURITY_ID bigint, INVESTMENT_ATTRACTING_COMPANY varchar(255), INVESTMENT_ATTRACTING_INN varchar(255), ISSUE_AMOUNT numeric(72,2), ISSUE_PRICE numeric(72,18), ISSUE_SIZE bigint, NOMINAL_INDEXATION varchar(255), PLATFORM_OPERATOR varchar(255), PLATFORM_OPERATOR_CODE varchar(255), PLATFORM_OPERATOR_INN varchar(255), PLATFORM_OPERATOR_WEB varchar(255), PLATFORM_PROPOSAL_WEB varchar(255), RIGHT_ESSENCE varchar(255), RIGHT_UNIT varchar(255), RIGHT_UNIT_MEASUREMENT varchar(4));
|
||||
COMMENT ON TABLE UTILITARIAN_DIGITAL_RIGHT IS 'Утилитарные цифровые права';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.SECURITY_ID IS 'Идентификатор инструмента (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.INVESTMENT_ATTRACTING_COMPANY IS 'Наименование лица, обязанного по УЦП (linked to company)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.INVESTMENT_ATTRACTING_INN IS 'ИНН лица, обязанного по УЦП';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_AMOUNT IS 'Общий объем выпуска';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_PRICE IS 'Цена УЦП в инвестиционном предложении';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_SIZE IS 'Общее количество УЦП в выпуске';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.NOMINAL_INDEXATION IS 'Порядок определения номинала УЦП в случае предусмотренной индексации';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR IS 'Наименование оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_CODE IS 'Код УЦП, присвоенный оператором инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_INN IS 'ИНН оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_WEB IS 'Адрес сайта оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_PROPOSAL_WEB IS 'Ссылка на описание условий инвестиционного предложения';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_ESSENCE IS 'Существо права требования';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_UNIT IS 'Количество единиц существа права (требования)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_UNIT_MEASUREMENT IS 'Единица измерения существа права (требования) (linked to unitMeasurement)';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UTILITARIAN_DIGITAL_RIGHT TO clearing;
|
||||
|
||||
|
||||
-- History log of utilitarianDigitalRight - Утилитарные цифровые права
|
||||
DROP TABLE IF EXISTS UTILITARIAN_DIGITAL_RIGHT_HISTORY;
|
||||
CREATE TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY(UTILITARIAN_DIGITAL_RIGHT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), ID bigint PRIMARY KEY, SECURITY_ID bigint, INVESTMENT_ATTRACTING_COMPANY varchar(255), INVESTMENT_ATTRACTING_INN varchar(255), ISSUE_AMOUNT numeric(72,2), ISSUE_PRICE numeric(72,18), ISSUE_SIZE bigint, NOMINAL_INDEXATION varchar(255), PLATFORM_OPERATOR varchar(255), PLATFORM_OPERATOR_CODE varchar(255), PLATFORM_OPERATOR_INN varchar(255), PLATFORM_OPERATOR_WEB varchar(255), PLATFORM_PROPOSAL_WEB varchar(255), RIGHT_ESSENCE varchar(255), RIGHT_UNIT varchar(255), RIGHT_UNIT_MEASUREMENT varchar(4));
|
||||
COMMENT ON TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY IS 'История изменений таблицы utilitarianDigitalRight';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.UTILITARIAN_DIGITAL_RIGHT_ID IS 'Идентификатор записи в таблице UTILITARIAN_DIGITAL_RIGHT';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_TIME IS 'Дата и время изменения';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_USER_ID IS 'Инициатор изменения';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_TYPE IS 'Тип изменения';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ID IS 'Идентификатор записи';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.SECURITY_ID IS 'Идентификатор инструмента (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.INVESTMENT_ATTRACTING_COMPANY IS 'Наименование лица, обязанного по УЦП (linked to company)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.INVESTMENT_ATTRACTING_INN IS 'ИНН лица, обязанного по УЦП';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_AMOUNT IS 'Общий объем выпуска';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_PRICE IS 'Цена УЦП в инвестиционном предложении';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_SIZE IS 'Общее количество УЦП в выпуске';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.NOMINAL_INDEXATION IS 'Порядок определения номинала УЦП в случае предусмотренной индексации';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR IS 'Наименование оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_CODE IS 'Код УЦП, присвоенный оператором инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_INN IS 'ИНН оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_WEB IS 'Адрес сайта оператора инвестиционной платформы';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_PROPOSAL_WEB IS 'Ссылка на описание условий инвестиционного предложения';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_ESSENCE IS 'Существо права требования';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_UNIT IS 'Количество единиц существа права (требования)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_UNIT_MEASUREMENT IS 'Единица измерения существа права (требования) (linked to unitMeasurement)';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY TO clearing;
|
||||
|
||||
/* views */
|
||||
|
||||
-- Data types
|
||||
|
|
|
|||
|
|
@ -80,6 +80,8 @@ INSERT INTO CONTACT_TYPE_DICTIONARY(ID, CODE, NAME) values (9, 'INFO', 'Конт
|
|||
|
||||
INSERT INTO CONTACT_TYPE_DICTIONARY(ID, CODE, NAME) values (10, 'CMNT', 'Примечание') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO CONTACT_TYPE_DICTIONARY(ID, CODE, NAME) values (11, 'WEB', 'Веб-сайт') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO DOCUMENT_TYPE_DICTIONARY(ID, CODE, NAME) values (1, 'PASP', 'Паспорт') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO DOCUMENT_TYPE_DICTIONARY(ID, CODE, NAME) values (2, 'ICRT', 'Удостоверение личности') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -232,6 +234,8 @@ INSERT INTO INSTRUMENT_TYPE_DICTIONARY(ID, CODE, NAME) values (5, 'MFND', 'ПА
|
|||
|
||||
INSERT INTO INSTRUMENT_TYPE_DICTIONARY(ID, CODE, NAME) values (6, 'CURR', 'Валютная пара') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO INSTRUMENT_TYPE_DICTIONARY(ID, CODE, NAME) values (7, 'DGCT', 'Цифровое свидетельство') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO TERM_TYPE_DICTIONARY(ID, CODE, NAME) values (1, 'S', 'Срочный') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO TERM_TYPE_DICTIONARY(ID, CODE, NAME) values (2, 'K', 'Комбинированный') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -684,6 +688,12 @@ INSERT INTO PRIORITY_DICTIONARY(ID, CODE, NAME) values (1, 'HIGH', 'Высоки
|
|||
|
||||
INSERT INTO PRIORITY_DICTIONARY(ID, CODE, NAME) values (2, 'LOW', 'Низкий') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO NOMINAL_TYPE_CODE_DICTIONARY(ID, CODE, NAME) values (1, 'FIXD', 'Фиксированный') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO NOMINAL_TYPE_CODE_DICTIONARY(ID, CODE, NAME) values (2, 'INDX', 'Индексируемый') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO UNIT_MEASUREMENT_DICTIONARY(ID, CODE, NAME) values (1, 'KG', 'Килограмм') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (1000, 'SECR', 'Общая ошибка модуля securities-service.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (1001, 'SECR', 'Нет прав на проведение данной операции.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -870,6 +880,8 @@ INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (5030, 'ACNT', 'Ком
|
|||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (5031, 'ACNT', 'Для данной валюты в ТКР уже задан счет.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (5032, 'ACNT', 'В поле %s недопустимый символ %s.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (5200, 'BLNC', 'Общая ошибка модуля balance-service.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (5210, 'BLNC', 'Клиринговая сессия неактивна.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -984,6 +996,8 @@ INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (6003, 'GTWA', 'Пре
|
|||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (6004, 'GTWA', 'Получен отрицательный ответ на запрос системы') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (6005, 'GTWA', 'Не удается найти запись %s в dc') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (7000, 'SCHD', 'Общая ошибка модуля scheduler-service.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (7001, 'SCHD', 'Нет прав на проведение данной операции.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -1014,6 +1028,8 @@ INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (7016, 'SCHD', 'Воз
|
|||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (7017, 'SCHD', 'Возможно добавить задачу только на будущее время.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (7018, 'SCHD', 'В поле %s недопустимый символ %s.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (8000, 'CNTR', 'Общая ошибка модуля control-service.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
||||
INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (9000, 'BAPI', 'Ошибка проверки поля %s.') ON CONFLICT (ID) DO UPDATE SET CODE = EXCLUDED.CODE, NAME = EXCLUDED.NAME;
|
||||
|
|
@ -1036,4 +1052,4 @@ INSERT INTO ERROR_CODE_DICTIONARY(ID, CODE, NAME) values (10001, 'TRDI', 'Сде
|
|||
|
||||
/* Business objects */
|
||||
|
||||
INSERT INTO DB_VERSION(ID, DICTIONARY_VERSION) values (1, '3.17.0.98') ON CONFLICT (ID) DO UPDATE SET DICTIONARY_VERSION = EXCLUDED.DICTIONARY_VERSION
|
||||
INSERT INTO DB_VERSION(ID, DICTIONARY_VERSION) values (1, '3.18.0.99') ON CONFLICT (ID) DO UPDATE SET DICTIONARY_VERSION = EXCLUDED.DICTIONARY_VERSION
|
||||
|
|
|
|||
|
|
@ -15,4 +15,181 @@ COMMENT ON COLUMN VALIDATION_SYMBOLS.SYMBOLS IS '
|
|||
COMMENT ON COLUMN VALIDATION_SYMBOLS.COMMENT IS 'Îïèñàíèå ãðóïïû ñèìâîëîâ';
|
||||
GRANT ALL PRIVILEGES ON TABLE VALIDATION_SYMBOLS TO clearing;
|
||||
|
||||
|
||||
-- nominalTypeCode - Ñïðàâî÷íèê òèïîâ íîìèíàëà ÓÖÏ
|
||||
DROP TABLE IF EXISTS NOMINAL_TYPE_CODE_DICTIONARY;
|
||||
CREATE TABLE NOMINAL_TYPE_CODE_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255));
|
||||
COMMENT ON TABLE NOMINAL_TYPE_CODE_DICTIONARY IS 'Ñïðàâî÷íèê òèïîâ íîìèíàëà ÓÖÏ';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.CODE IS 'Êîä';
|
||||
|
||||
COMMENT ON COLUMN NOMINAL_TYPE_CODE_DICTIONARY.NAME IS 'Íàèìåíîâàíèå';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE NOMINAL_TYPE_CODE_DICTIONARY TO clearing;
|
||||
|
||||
-- unitMeasurement - Ñïðàâî÷íèê åäèíèö èçìåðåíèÿ
|
||||
DROP TABLE IF EXISTS UNIT_MEASUREMENT_DICTIONARY;
|
||||
CREATE TABLE UNIT_MEASUREMENT_DICTIONARY(ID bigint PRIMARY KEY, CODE varchar(4), NAME varchar(255));
|
||||
COMMENT ON TABLE UNIT_MEASUREMENT_DICTIONARY IS 'Ñïðàâî÷íèê åäèíèö èçìåðåíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.CODE IS 'Êîä';
|
||||
|
||||
COMMENT ON COLUMN UNIT_MEASUREMENT_DICTIONARY.NAME IS 'Íàèìåíîâàíèå';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UNIT_MEASUREMENT_DICTIONARY TO clearing;
|
||||
|
||||
|
||||
|
||||
|
||||
-- digitalCertificateSecurity - Öèôðîâûå ñâèäåòåëüñòâà
|
||||
DROP TABLE IF EXISTS DIGITAL_CERTIFICATE_SECURITY;
|
||||
CREATE TABLE DIGITAL_CERTIFICATE_SECURITY(ID bigint PRIMARY KEY, SECURITY_ID bigint, BASE_CODE varchar(50), BASE_UNIT_SIZE bigint, PRICE_VARIANCE_LIMIT numeric(72,18), NOMINAL_TYPE_CODE varchar(4), NOMINAL_VALUE numeric(72,18), NOMINAL_INDEXATION_DATE date, NOMINAL_INDEXATION_SIGN varchar(4), SETTLEMENT_HOUSE varchar(255), DEPOSITORY varchar(255));
|
||||
COMMENT ON TABLE DIGITAL_CERTIFICATE_SECURITY IS 'Öèôðîâûå ñâèäåòåëüñòâà';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.SECURITY_ID IS 'Èäåíòèôèêàòîð èíñòðóìåíòà (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.BASE_CODE IS 'Êîä ÖÑ, ïðèñâîåííûé äåïîçèòàðèåì';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.BASE_UNIT_SIZE IS 'Êîëè÷åñòâî ÓÖÏ â îäíîì ÖÑ';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.PRICE_VARIANCE_LIMIT IS 'Ïðåäåëû èçìåíåíèÿ öåíû';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_TYPE_CODE IS 'Òèï èíäåêñàöèè íîìèíàëà (linked to nominalTypeCode)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_VALUE IS 'Èíäåêñèðóåìûé íîìèíàë';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_INDEXATION_DATE IS 'Äàòà èíäåêñàöèè íîìèíàëà';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.NOMINAL_INDEXATION_SIGN IS 'Ôàêòè÷åñêàÿ èíäåêñàöèÿ (linked to allowed)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.SETTLEMENT_HOUSE IS 'Íàèìåíîâàíèå ðàñ÷åòíîé îðãàíèçàöèè';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY.DEPOSITORY IS 'Íàèìåíîâàíèå äåïîçèòàðèÿ';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE DIGITAL_CERTIFICATE_SECURITY TO clearing;
|
||||
|
||||
|
||||
-- History log of digitalCertificateSecurity - Öèôðîâûå ñâèäåòåëüñòâà
|
||||
DROP TABLE IF EXISTS DIGITAL_CERTIFICATE_SECURITY_HISTORY;
|
||||
CREATE TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY(DIGITAL_CERTIFICATE_SECURITY_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), ID bigint PRIMARY KEY, SECURITY_ID bigint, BASE_CODE varchar(50), BASE_UNIT_SIZE bigint, PRICE_VARIANCE_LIMIT numeric(72,18), NOMINAL_TYPE_CODE varchar(4), NOMINAL_VALUE numeric(72,18), NOMINAL_INDEXATION_DATE date, NOMINAL_INDEXATION_SIGN varchar(4), SETTLEMENT_HOUSE varchar(255), DEPOSITORY varchar(255));
|
||||
COMMENT ON TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY IS 'Èñòîðèÿ èçìåíåíèé òàáëèöû digitalCertificateSecurity';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.DIGITAL_CERTIFICATE_SECURITY_ID IS 'Èäåíòèôèêàòîð çàïèñè â òàáëèöå DIGITAL_CERTIFICATE_SECURITY';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_TIME IS 'Äàòà è âðåìÿ èçìåíåíèÿ';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_USER_ID IS 'Èíèöèàòîð èçìåíåíèÿ';
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.EVENT_TYPE IS 'Òèï èçìåíåíèÿ';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.SECURITY_ID IS 'Èäåíòèôèêàòîð èíñòðóìåíòà (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.BASE_CODE IS 'Êîä ÖÑ, ïðèñâîåííûé äåïîçèòàðèåì';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.BASE_UNIT_SIZE IS 'Êîëè÷åñòâî ÓÖÏ â îäíîì ÖÑ';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.PRICE_VARIANCE_LIMIT IS 'Ïðåäåëû èçìåíåíèÿ öåíû';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_TYPE_CODE IS 'Òèï èíäåêñàöèè íîìèíàëà (linked to nominalTypeCode)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_VALUE IS 'Èíäåêñèðóåìûé íîìèíàë';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_INDEXATION_DATE IS 'Äàòà èíäåêñàöèè íîìèíàëà';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.NOMINAL_INDEXATION_SIGN IS 'Ôàêòè÷åñêàÿ èíäåêñàöèÿ (linked to allowed)';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.SETTLEMENT_HOUSE IS 'Íàèìåíîâàíèå ðàñ÷åòíîé îðãàíèçàöèè';
|
||||
|
||||
COMMENT ON COLUMN DIGITAL_CERTIFICATE_SECURITY_HISTORY.DEPOSITORY IS 'Íàèìåíîâàíèå äåïîçèòàðèÿ';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE DIGITAL_CERTIFICATE_SECURITY_HISTORY TO clearing;
|
||||
|
||||
-- utilitarianDigitalRight - Óòèëèòàðíûå öèôðîâûå ïðàâà
|
||||
DROP TABLE IF EXISTS UTILITARIAN_DIGITAL_RIGHT;
|
||||
CREATE TABLE UTILITARIAN_DIGITAL_RIGHT(ID bigint PRIMARY KEY, SECURITY_ID bigint, INVESTMENT_ATTRACTING_COMPANY varchar(255), INVESTMENT_ATTRACTING_INN varchar(255), ISSUE_AMOUNT numeric(72,2), ISSUE_PRICE numeric(72,18), ISSUE_SIZE bigint, NOMINAL_INDEXATION varchar(255), PLATFORM_OPERATOR varchar(255), PLATFORM_OPERATOR_CODE varchar(255), PLATFORM_OPERATOR_INN varchar(255), PLATFORM_OPERATOR_WEB varchar(255), PLATFORM_PROPOSAL_WEB varchar(255), RIGHT_ESSENCE varchar(255), RIGHT_UNIT varchar(255), RIGHT_UNIT_MEASUREMENT varchar(4));
|
||||
COMMENT ON TABLE UTILITARIAN_DIGITAL_RIGHT IS 'Óòèëèòàðíûå öèôðîâûå ïðàâà';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.SECURITY_ID IS 'Èäåíòèôèêàòîð èíñòðóìåíòà (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.INVESTMENT_ATTRACTING_COMPANY IS 'Íàèìåíîâàíèå ëèöà, îáÿçàííîãî ïî ÓÖÏ (linked to company)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.INVESTMENT_ATTRACTING_INN IS 'ÈÍÍ ëèöà, îáÿçàííîãî ïî ÓÖÏ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_AMOUNT IS 'Îáùèé îáúåì âûïóñêà';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_PRICE IS 'Öåíà ÓÖÏ â èíâåñòèöèîííîì ïðåäëîæåíèè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.ISSUE_SIZE IS 'Îáùåå êîëè÷åñòâî ÓÖÏ â âûïóñêå';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.NOMINAL_INDEXATION IS 'Ïîðÿäîê îïðåäåëåíèÿ íîìèíàëà ÓÖÏ â ñëó÷àå ïðåäóñìîòðåííîé èíäåêñàöèè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR IS 'Íàèìåíîâàíèå îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_CODE IS 'Êîä ÓÖÏ, ïðèñâîåííûé îïåðàòîðîì èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_INN IS 'ÈÍÍ îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_OPERATOR_WEB IS 'Àäðåñ ñàéòà îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.PLATFORM_PROPOSAL_WEB IS 'Ññûëêà íà îïèñàíèå óñëîâèé èíâåñòèöèîííîãî ïðåäëîæåíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_ESSENCE IS 'Ñóùåñòâî ïðàâà òðåáîâàíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_UNIT IS 'Êîëè÷åñòâî åäèíèö ñóùåñòâà ïðàâà (òðåáîâàíèÿ)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT.RIGHT_UNIT_MEASUREMENT IS 'Åäèíèöà èçìåðåíèÿ ñóùåñòâà ïðàâà (òðåáîâàíèÿ) (linked to unitMeasurement)';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UTILITARIAN_DIGITAL_RIGHT TO clearing;
|
||||
|
||||
|
||||
-- History log of utilitarianDigitalRight - Óòèëèòàðíûå öèôðîâûå ïðàâà
|
||||
DROP TABLE IF EXISTS UTILITARIAN_DIGITAL_RIGHT_HISTORY;
|
||||
CREATE TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY(UTILITARIAN_DIGITAL_RIGHT_ID BIGINT NOT NULL, EVENT_TIME timestamp, EVENT_USER_ID BIGINT, EVENT_TYPE VARCHAR(4), ID bigint PRIMARY KEY, SECURITY_ID bigint, INVESTMENT_ATTRACTING_COMPANY varchar(255), INVESTMENT_ATTRACTING_INN varchar(255), ISSUE_AMOUNT numeric(72,2), ISSUE_PRICE numeric(72,18), ISSUE_SIZE bigint, NOMINAL_INDEXATION varchar(255), PLATFORM_OPERATOR varchar(255), PLATFORM_OPERATOR_CODE varchar(255), PLATFORM_OPERATOR_INN varchar(255), PLATFORM_OPERATOR_WEB varchar(255), PLATFORM_PROPOSAL_WEB varchar(255), RIGHT_ESSENCE varchar(255), RIGHT_UNIT varchar(255), RIGHT_UNIT_MEASUREMENT varchar(4));
|
||||
COMMENT ON TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY IS 'Èñòîðèÿ èçìåíåíèé òàáëèöû utilitarianDigitalRight';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.UTILITARIAN_DIGITAL_RIGHT_ID IS 'Èäåíòèôèêàòîð çàïèñè â òàáëèöå UTILITARIAN_DIGITAL_RIGHT';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_TIME IS 'Äàòà è âðåìÿ èçìåíåíèÿ';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_USER_ID IS 'Èíèöèàòîð èçìåíåíèÿ';
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.EVENT_TYPE IS 'Òèï èçìåíåíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ID IS 'Èäåíòèôèêàòîð çàïèñè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.SECURITY_ID IS 'Èäåíòèôèêàòîð èíñòðóìåíòà (linked to security)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.INVESTMENT_ATTRACTING_COMPANY IS 'Íàèìåíîâàíèå ëèöà, îáÿçàííîãî ïî ÓÖÏ (linked to company)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.INVESTMENT_ATTRACTING_INN IS 'ÈÍÍ ëèöà, îáÿçàííîãî ïî ÓÖÏ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_AMOUNT IS 'Îáùèé îáúåì âûïóñêà';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_PRICE IS 'Öåíà ÓÖÏ â èíâåñòèöèîííîì ïðåäëîæåíèè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.ISSUE_SIZE IS 'Îáùåå êîëè÷åñòâî ÓÖÏ â âûïóñêå';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.NOMINAL_INDEXATION IS 'Ïîðÿäîê îïðåäåëåíèÿ íîìèíàëà ÓÖÏ â ñëó÷àå ïðåäóñìîòðåííîé èíäåêñàöèè';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR IS 'Íàèìåíîâàíèå îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_CODE IS 'Êîä ÓÖÏ, ïðèñâîåííûé îïåðàòîðîì èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_INN IS 'ÈÍÍ îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_OPERATOR_WEB IS 'Àäðåñ ñàéòà îïåðàòîðà èíâåñòèöèîííîé ïëàòôîðìû';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.PLATFORM_PROPOSAL_WEB IS 'Ññûëêà íà îïèñàíèå óñëîâèé èíâåñòèöèîííîãî ïðåäëîæåíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_ESSENCE IS 'Ñóùåñòâî ïðàâà òðåáîâàíèÿ';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_UNIT IS 'Êîëè÷åñòâî åäèíèö ñóùåñòâà ïðàâà (òðåáîâàíèÿ)';
|
||||
|
||||
COMMENT ON COLUMN UTILITARIAN_DIGITAL_RIGHT_HISTORY.RIGHT_UNIT_MEASUREMENT IS 'Åäèíèöà èçìåðåíèÿ ñóùåñòâà ïðàâà (òðåáîâàíèÿ) (linked to unitMeasurement)';
|
||||
|
||||
GRANT ALL PRIVILEGES ON TABLE UTILITARIAN_DIGITAL_RIGHT_HISTORY TO clearing;
|
||||
|
||||
|
||||
INSERT INTO DB_VERSION(ID, VERSION) values (1, '3.18') ON CONFLICT (ID) DO UPDATE SET VERSION = EXCLUDED.VERSION
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
package ru.clearing.platform.dictionary;
|
||||
|
||||
/**
|
||||
* Справочник типов номинала УЦП
|
||||
*
|
||||
* Dictionary DB table: NOMINAL_TYPE_CODE_DICTIONARY
|
||||
**/
|
||||
public class NominalTypeCodeDictionary extends AbstractDictionary {
|
||||
private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package ru.clearing.platform.dictionary;
|
||||
|
||||
/**
|
||||
* Справочник единиц измерения
|
||||
*
|
||||
* Dictionary DB table: UNIT_MEASUREMENT_DICTIONARY
|
||||
**/
|
||||
public class UnitMeasurementDictionary extends AbstractDictionary {
|
||||
private static final long serialVersionUID = ConstDictionarySerializable.serialVersionUID;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package ru.spcex.clearing.imdg.businessevent;
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.security.DigitalCertificateSecurity;
|
||||
import ru.clearing.classes.statics.data.security.DigitalCertificateSecurityHistory;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.platform.utils.time.TimeUtil;
|
||||
|
||||
@Component
|
||||
public class DigitalCertificateSecurityHistoryMapStore extends ASecurityHistoryMapStore<DigitalCertificateSecurityHistory> {
|
||||
|
||||
public DigitalCertificateSecurityHistoryMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_DigitalCertificateSecurityHistory;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "DIGITAL_CERTIFICATE_SECURITY_HISTORY";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getFields() {
|
||||
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
|
||||
"DIGITAL_CERTIFICATE_SECURITY_ID", "SECURITY_ID", "BASE_CODE", "BASE_UNIT_SIZE", "PRICE_VARIANCE_LIMIT", "NOMINAL_TYPE_CODE", "NOMINAL_VALUE", "NOMINAL_INDEXATION_DATE", "NOMINAL_INDEXATION_SIGN", "SETTLEMENT_HOUSE", "DEPOSITORY"
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] objectToField(DigitalCertificateSecurityHistory historyLog) {
|
||||
DigitalCertificateSecurity object = historyLog.getObject();
|
||||
Object[] args = new Object[]{
|
||||
historyLog.getId(),
|
||||
TimeUtil.toDateFromInstant(historyLog.getEventTime()),
|
||||
historyLog.getUserId(),
|
||||
historyLog.getEventType(),
|
||||
|
||||
object.getId(),
|
||||
object.getSecurityId(),
|
||||
//ext: object.getShortName()
|
||||
//ext: object.getSecuritySymbol()
|
||||
//ext: object.getFullName()
|
||||
//ext: object.getIsin()
|
||||
//ext: object.getInstrumentType()
|
||||
//ext: object.getIssuerId()
|
||||
//ext: object.getShortNameEng()
|
||||
//ext: object.getFullNameEng()
|
||||
//ext: object.getWorkflowStatus(),
|
||||
object.getBaseCode(),
|
||||
//ext: object.getLotSize(),
|
||||
object.getBaseUnitSize(),
|
||||
object.getPriceVarianceLimit(),
|
||||
object.getNominalTypeCode(),
|
||||
object.getNominalValue(),
|
||||
TimeUtil.toDateFromLocalDate(object.getNominalIndexationDate()),
|
||||
object.getNominalIndexationSign(),
|
||||
object.getSettlementHouse(),
|
||||
object.getDepository()
|
||||
};
|
||||
return args;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
package ru.spcex.clearing.imdg.businessevent;
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.security.UtilitarianDigitalRight;
|
||||
import ru.clearing.classes.statics.data.security.UtilitarianDigitalRightHistory;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.imdg.base.TemplateEventMapStore;
|
||||
import ru.spcex.platform.utils.time.TimeUtil;
|
||||
|
||||
@Component
|
||||
public class UtilitarianDigitalRightHistoryMapStore extends TemplateEventMapStore<UtilitarianDigitalRightHistory> {
|
||||
|
||||
public UtilitarianDigitalRightHistoryMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_UtilitarianDigitalRightHistory;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "UTILITARIAN_DIGITAL_RIGHT_HISTORY";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getFields() {
|
||||
return new String[]{"ID", "EVENT_TIME", "EVENT_USER_ID", "EVENT_TYPE",
|
||||
"UTILITARIAN_DIGITAL_RIGHT_ID", "SECURITY_ID", "INVESTMENT_ATTRACTING_COMPANY", "INVESTMENT_ATTRACTING_INN", "ISSUE_AMOUNT", "ISSUE_PRICE", "ISSUE_SIZE", "NOMINAL_INDEXATION", "PLATFORM_OPERATOR", "PLATFORM_OPERATOR_CODE", "PLATFORM_OPERATOR_INN", "PLATFORM_OPERATOR_WEB", "PLATFORM_PROPOSAL_WEB", "RIGHT_ESSENCE", "RIGHT_UNIT", "RIGHT_UNIT_MEASUREMENT"
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] objectToField(UtilitarianDigitalRightHistory historyLog) {
|
||||
UtilitarianDigitalRight object = historyLog.getObject();
|
||||
Object[] args = new Object[]{
|
||||
historyLog.getId(),
|
||||
TimeUtil.toDateFromInstant(historyLog.getEventTime()),
|
||||
historyLog.getUserId(),
|
||||
historyLog.getEventType(),
|
||||
|
||||
object.getId(),
|
||||
object.getSecurityId(),
|
||||
object.getInvestmentAttractingCompany(),
|
||||
object.getInvestmentAttractingInn(),
|
||||
object.getIssueAmount(),
|
||||
object.getIssuePrice(),
|
||||
object.getIssueSize(),
|
||||
object.getNominalIndexation(),
|
||||
object.getPlatformOperator(),
|
||||
object.getPlatformOperatorCode(),
|
||||
object.getPlatformOperatorInn(),
|
||||
object.getPlatformOperatorWeb(),
|
||||
object.getPlatformProposalWeb(),
|
||||
object.getRightEssence(),
|
||||
object.getRightUnit(),
|
||||
object.getRightUnitMeasurement()
|
||||
};
|
||||
return args;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package ru.spcex.clearing.imdg.dictionary;
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.platform.dictionary.NominalTypeCodeDictionary;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.imdg.base.DictionaryTMapStore;
|
||||
|
||||
@Component
|
||||
public class NominalTypeCodeDictionaryMapStore extends DictionaryTMapStore<NominalTypeCodeDictionary> {
|
||||
|
||||
public NominalTypeCodeDictionaryMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_NominalTypeCodeDictionary;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "NOMINAL_TYPE_CODE_DICTIONARY";
|
||||
}
|
||||
|
||||
@Override
|
||||
public NominalTypeCodeDictionary getDictionaryObject() {
|
||||
return new NominalTypeCodeDictionary();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
package ru.spcex.clearing.imdg.dictionary;
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.platform.dictionary.UnitMeasurementDictionary;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.imdg.base.DictionaryTMapStore;
|
||||
|
||||
@Component
|
||||
public class UnitMeasurementDictionaryMapStore extends DictionaryTMapStore<UnitMeasurementDictionary> {
|
||||
|
||||
public UnitMeasurementDictionaryMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_UnitMeasurementDictionary;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "UNIT_MEASUREMENT_DICTIONARY";
|
||||
}
|
||||
|
||||
@Override
|
||||
public UnitMeasurementDictionary getDictionaryObject() {
|
||||
return new UnitMeasurementDictionary();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
package ru.spcex.clearing.imdg.object;
|
||||
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.security.DigitalCertificateSecurity;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.imdg.businessobject.ASecurityMapStore;
|
||||
import ru.spcex.platform.utils.time.TimeUtil;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
|
||||
@Component
|
||||
public class DigitalCertificateSecurityMapStore extends ASecurityMapStore<DigitalCertificateSecurity> {
|
||||
|
||||
public DigitalCertificateSecurityMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_DigitalCertificateSecurity;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "DIGITAL_CERTIFICATE_SECURITY";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getFields() {
|
||||
return new String[]{
|
||||
"ID", "SECURITY_ID", "BASE_CODE", "BASE_UNIT_SIZE", "PRICE_VARIANCE_LIMIT", "NOMINAL_TYPE_CODE", "NOMINAL_VALUE", "NOMINAL_INDEXATION_DATE", "NOMINAL_INDEXATION_SIGN", "SETTLEMENT_HOUSE", "DEPOSITORY"
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public DigitalCertificateSecurity objectReader(ResultSet resultSet) throws SQLException {
|
||||
DigitalCertificateSecurity object = new DigitalCertificateSecurity();
|
||||
object.setId(resultSet.getObject("ID", Long.class));
|
||||
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
|
||||
//ext: object.setShortName(resultSet.getObject("SHORT_NAME", String.class));
|
||||
//ext: object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class));
|
||||
//ext: object.setFullName(resultSet.getObject("FULL_NAME", String.class));
|
||||
//ext: object.setIsin(resultSet.getObject("ISIN", String.class));
|
||||
//ext: object.setInstrumentType(resultSet.getObject("INSTRUMENT_TYPE", String.class));
|
||||
//ext: object.setIssuerId(resultSet.getObject("ISSUER_ID", Long.class));
|
||||
//ext: object.setShortNameEng(resultSet.getObject("SHORT_NAME_ENG", String.class));
|
||||
//ext: object.setFullNameEng(resultSet.getObject("FULL_NAME_ENG", String.class));
|
||||
//ext: object.setWorkflowStatus(resultSet.getObject("WORKFLOW_STATUS", String.class));
|
||||
object.setBaseCode(resultSet.getObject("BASE_CODE", String.class));
|
||||
//ext: object.setLotSize(resultSet.getObject("LOT_SIZE", BigDecimal.class));
|
||||
object.setBaseUnitSize(resultSet.getObject("BASE_UNIT_SIZE", Long.class));
|
||||
object.setPriceVarianceLimit(resultSet.getObject("PRICE_VARIANCE_LIMIT", BigDecimal.class));
|
||||
object.setNominalTypeCode(resultSet.getObject("NOMINAL_TYPE_CODE", String.class));
|
||||
object.setNominalValue(resultSet.getObject("NOMINAL_VALUE", BigDecimal.class));
|
||||
object.setNominalIndexationDate(getLocalDateFromSqlDate(resultSet, "NOMINAL_INDEXATION_DATE"));
|
||||
object.setNominalIndexationSign(resultSet.getObject("NOMINAL_INDEXATION_SIGN", String.class));
|
||||
object.setSettlementHouse(resultSet.getObject("SETTLEMENT_HOUSE", String.class));
|
||||
object.setDepository(resultSet.getObject("DEPOSITORY", String.class));
|
||||
return object;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] objectToField(DigitalCertificateSecurity object) {
|
||||
Object[] args = new Object[]{
|
||||
object.getId(),
|
||||
object.getSecurityId(),
|
||||
//ext: object.getShortName()
|
||||
//ext: object.getSecuritySymbol()
|
||||
//ext: object.getFullName()
|
||||
//ext: object.getIsin()
|
||||
//ext: object.getInstrumentType()
|
||||
//ext: object.getIssuerId()
|
||||
//ext: object.getShortNameEng()
|
||||
//ext: object.getFullNameEng()
|
||||
//ext: object.getWorkflowStatus(),
|
||||
object.getBaseCode(),
|
||||
//ext: object.getLotSize(),
|
||||
object.getBaseUnitSize(),
|
||||
object.getPriceVarianceLimit(),
|
||||
object.getNominalTypeCode(),
|
||||
object.getNominalValue(),
|
||||
TimeUtil.toDateFromLocalDate(object.getNominalIndexationDate()),
|
||||
object.getNominalIndexationSign(),
|
||||
object.getSettlementHouse(),
|
||||
object.getDepository()
|
||||
};
|
||||
return args;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
package ru.spcex.clearing.imdg.object;
|
||||
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.security.UtilitarianDigitalRight;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.imdg.base.TemplateMapStore;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
|
||||
@Component
|
||||
public class UtilitarianDigitalRightMapStore extends TemplateMapStore<UtilitarianDigitalRight> {
|
||||
|
||||
public UtilitarianDigitalRightMapStore(JdbcTemplate jdbcTemplate) {
|
||||
super(jdbcTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getMapName() {
|
||||
return IMDGDistributedNames.Map_UtilitarianDigitalRight;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTableName() {
|
||||
return "UTILITARIAN_DIGITAL_RIGHT";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getFields() {
|
||||
return new String[]{
|
||||
"ID", "SECURITY_ID", "INVESTMENT_ATTRACTING_COMPANY", "INVESTMENT_ATTRACTING_INN", "ISSUE_AMOUNT", "ISSUE_PRICE", "ISSUE_SIZE", "NOMINAL_INDEXATION", "PLATFORM_OPERATOR", "PLATFORM_OPERATOR_CODE", "PLATFORM_OPERATOR_INN", "PLATFORM_OPERATOR_WEB", "PLATFORM_PROPOSAL_WEB", "RIGHT_ESSENCE", "RIGHT_UNIT", "RIGHT_UNIT_MEASUREMENT"
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public UtilitarianDigitalRight objectReader(ResultSet resultSet) throws SQLException {
|
||||
UtilitarianDigitalRight object = new UtilitarianDigitalRight();
|
||||
object.setId(resultSet.getObject("ID", Long.class));
|
||||
object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
|
||||
object.setInvestmentAttractingCompany(resultSet.getObject("INVESTMENT_ATTRACTING_COMPANY", String.class));
|
||||
object.setInvestmentAttractingInn(resultSet.getObject("INVESTMENT_ATTRACTING_INN", String.class));
|
||||
object.setIssueAmount(resultSet.getObject("ISSUE_AMOUNT", BigDecimal.class));
|
||||
object.setIssuePrice(resultSet.getObject("ISSUE_PRICE", BigDecimal.class));
|
||||
object.setIssueSize(resultSet.getObject("ISSUE_SIZE", Long.class));
|
||||
object.setNominalIndexation(resultSet.getObject("NOMINAL_INDEXATION", String.class));
|
||||
object.setPlatformOperator(resultSet.getObject("PLATFORM_OPERATOR", String.class));
|
||||
object.setPlatformOperatorCode(resultSet.getObject("PLATFORM_OPERATOR_CODE", String.class));
|
||||
object.setPlatformOperatorInn(resultSet.getObject("PLATFORM_OPERATOR_INN", String.class));
|
||||
object.setPlatformOperatorWeb(resultSet.getObject("PLATFORM_OPERATOR_WEB", String.class));
|
||||
object.setPlatformProposalWeb(resultSet.getObject("PLATFORM_PROPOSAL_WEB", String.class));
|
||||
object.setRightEssence(resultSet.getObject("RIGHT_ESSENCE", String.class));
|
||||
object.setRightUnit(resultSet.getObject("RIGHT_UNIT", String.class));
|
||||
object.setRightUnitMeasurement(resultSet.getObject("RIGHT_UNIT_MEASUREMENT", String.class));
|
||||
return object;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object[] objectToField(UtilitarianDigitalRight object) {
|
||||
Object[] args = new Object[]{
|
||||
object.getId(),
|
||||
object.getSecurityId(),
|
||||
object.getInvestmentAttractingCompany(),
|
||||
object.getInvestmentAttractingInn(),
|
||||
object.getIssueAmount(),
|
||||
object.getIssuePrice(),
|
||||
object.getIssueSize(),
|
||||
object.getNominalIndexation(),
|
||||
object.getPlatformOperator(),
|
||||
object.getPlatformOperatorCode(),
|
||||
object.getPlatformOperatorInn(),
|
||||
object.getPlatformOperatorWeb(),
|
||||
object.getPlatformProposalWeb(),
|
||||
object.getRightEssence(),
|
||||
object.getRightUnit(),
|
||||
object.getRightUnitMeasurement()
|
||||
};
|
||||
return args;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -235,6 +235,16 @@ public class UpdateMapService extends AbstractUpdateMapService {
|
|||
createBusinessEvent(tradingClearingRegistryListHistory, eventType);
|
||||
tradingClearingRegistryListHistory.setObject((TradingClearingRegistryList) value);
|
||||
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_TradingClearingRegistryListHistory).put(tradingClearingRegistryListHistory.getId(), tradingClearingRegistryListHistory);
|
||||
} else if (value instanceof DigitalCertificateSecurity) {
|
||||
DigitalCertificateSecurityHistory digitalCertificateSecurityHistory = new DigitalCertificateSecurityHistory();
|
||||
createBusinessEvent(digitalCertificateSecurityHistory, eventType);
|
||||
digitalCertificateSecurityHistory.setObject((DigitalCertificateSecurity) value);
|
||||
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_TradingClearingRegistryListHistory).put(digitalCertificateSecurityHistory.getId(), digitalCertificateSecurityHistory);
|
||||
} else if (value instanceof UtilitarianDigitalRight) {
|
||||
UtilitarianDigitalRightHistory utilitarianDigitalRightHistory = new UtilitarianDigitalRightHistory();
|
||||
createBusinessEvent(utilitarianDigitalRightHistory, eventType);
|
||||
utilitarianDigitalRightHistory.setObject((UtilitarianDigitalRight) value);
|
||||
hazelcastServerInstance.getMap(IMDGDistributedNames.Map_TradingClearingRegistryListHistory).put(utilitarianDigitalRightHistory.getId(), utilitarianDigitalRightHistory);
|
||||
|
||||
|
||||
} else if (value instanceof Security) { // Существуют наследники этой таблицы, по этому в последнюю очередь делать эту проверку.
|
||||
|
|
|
|||
|
|
@ -22,10 +22,7 @@ import ru.clearing.classes.statics.data.registry.TradingClearingRegistryList;
|
|||
import ru.clearing.classes.statics.data.registry.TradingClearingRegistryListHistory;
|
||||
import ru.clearing.classes.statics.data.scheduler.*;
|
||||
import ru.clearing.classes.statics.data.sdf.*;
|
||||
import ru.clearing.classes.statics.data.security.CurrencyPairSecurity;
|
||||
import ru.clearing.classes.statics.data.security.CurrencyPairSecurityHistory;
|
||||
import ru.clearing.classes.statics.data.security.MoneyMarketSecurity;
|
||||
import ru.clearing.classes.statics.data.security.MoneyMarketSecurityHistory;
|
||||
import ru.clearing.classes.statics.data.security.*;
|
||||
import ru.clearing.classes.statics.data.statement.Statement;
|
||||
import ru.clearing.classes.statics.data.user.*;
|
||||
import ru.clearing.platform.dictionary.*;
|
||||
|
|
@ -148,6 +145,19 @@ public class RunnableMapNamesForTesting {
|
|||
"object.shortName", "object.shortNameEng",
|
||||
"object.uuid", "object.workflowStatus"
|
||||
)));
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_DigitalCertificateSecurityHistory, DigitalCertificateSecurityHistory.class,
|
||||
usingIgnoringFieldsComparator( // todo поправить тест для ASecurityHistoryMapStore
|
||||
"object.created", "object.updated",
|
||||
"object.fullName", "object.fullNameEng",
|
||||
"object.instrumentType",
|
||||
"object.isin", "object.issuerId",
|
||||
"object.lotSize",
|
||||
"object.securitySymbol",
|
||||
"object.shortName", "object.shortNameEng",
|
||||
"object.uuid", "object.workflowStatus"
|
||||
)));
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_UtilitarianDigitalRightHistory, UtilitarianDigitalRightHistory.class));
|
||||
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_FixedIncomeCashFlowHistory, FixedIncomeCashFlowHistory.class,
|
||||
usingIgnoringFieldsComparator("object.accruedCoupon")
|
||||
/* new SettingOperation("getObject.setAccruedCoupon", new Object[]{new BigDecimal("870.680000000000000000")})*/));
|
||||
|
|
@ -288,6 +298,8 @@ public class RunnableMapNamesForTesting {
|
|||
checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_BalanceDimensionDictionary, BalanceDimensionDictionary.class));
|
||||
checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_DepoAccountTypeDictionary, DepoAccountTypeDictionary.class));
|
||||
checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_ClearingAccountTypeDictionary, ClearingAccountTypeDictionary.class));
|
||||
checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_NominalTypeCodeDictionary, NominalTypeCodeDictionary.class));
|
||||
checkerDictionaryMapStores.add(new CheckerDictionaryMapStore<>(IMDGDistributedNames.Map_UnitMeasurementDictionary, UnitMeasurementDictionary.class));
|
||||
|
||||
//object
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_BankAccount, BankAccount.class));
|
||||
|
|
@ -442,6 +454,8 @@ public class RunnableMapNamesForTesting {
|
|||
new SettingOperation("setOp_type", new Object[]{"OT"})
|
||||
));
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_ValidationSymbols, ValidationSymbols.class));
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_DigitalCertificateSecurity, DigitalCertificateSecurity.class));
|
||||
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_UtilitarianDigitalRight, UtilitarianDigitalRight.class));
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -187,6 +187,13 @@ public final class IMDGDistributedNames {
|
|||
public static final String Map_TradingClearingRegistry = "Map_TradingClearingRegistry";
|
||||
public static final String Map_TradingClearingRegistryHistory = "Map_TradingClearingRegistryHistory";
|
||||
public static final String Map_Registry = "Map_Registry";
|
||||
public static final String Map_NominalTypeCodeDictionary = "Map_NominalTypeCodeDictionary";
|
||||
public static final String Map_UnitMeasurementDictionary = "Map_UnitMeasurementDictionary";
|
||||
public static final String Map_DigitalCertificateSecurity = "Map_DigitalCertificateSecurity";
|
||||
public static final String Map_DigitalCertificateSecurityHistory = "Map_DigitalCertificateSecurityHistory";
|
||||
public static final String Map_UtilitarianDigitalRight = "Map_UtilitarianDigitalRight";
|
||||
public static final String Map_UtilitarianDigitalRightHistory = "Map_UtilitarianDigitalRightHistory";
|
||||
|
||||
//----------------SPECIFIC REGISTRY MAP STORES BY STATUS AND DESIGNATION---------------
|
||||
public static final String Map_OkObligationRegistry = "Map_OkObligationRegistry";
|
||||
public static final String Map_ProcObligationRegistry = "Map_ProcObligationRegistry";
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue