diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/AdmittedLiabilitiesRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/AdmittedLiabilitiesRegister.java
new file mode 100644
index 000000000..067ad3e16
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/AdmittedLiabilitiesRegister.java
@@ -0,0 +1,92 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.Instant;
+import java.time.LocalDate;
+
+/**
+ * Реестр обязательств, допущенных к клирингу
+ *
+ * DB table: ADMITTED_LIABILITIES_REGISTER
+ **/
+public class AdmittedLiabilitiesRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private String companyFullName;
+ private Long sessionId;
+ private String securitySymbol;
+ private String securityFullName;
+ private Long companyId;
+ private String clearingCode;
+ private String account;
+ private BigDecimal amount;
+ private LocalDate clearingDate;
+
+ public String getCompanyFullName() {
+ return companyFullName;
+ }
+ public void setCompanyFullName(String value) {
+ this.companyFullName=value;
+ }
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+ public String getSecuritySymbol() {
+ return securitySymbol;
+ }
+ public void setSecuritySymbol(String value) {
+ this.securitySymbol=value;
+ }
+
+ public String getSecurityFullName() {
+ return securityFullName;
+ }
+ public void setSecurityFullName(String value) {
+ this.securityFullName=value;
+ }
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+ public String getClearingCode() {
+ return clearingCode;
+ }
+ public void setClearingCode(String value) {
+ this.clearingCode=value;
+ }
+
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String value) {
+ this.account=value;
+ }
+
+ public BigDecimal getAmount() {
+ return amount;
+ }
+ public void setAmount(BigDecimal value) {
+ this.amount=value;
+ }
+
+ public LocalDate getClearingDate() {
+ return clearingDate;
+ }
+ public void setClearingDate(LocalDate value) {
+ this.clearingDate=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/CoveredLiabilitiesRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/CoveredLiabilitiesRegister.java
new file mode 100644
index 000000000..9fbddd902
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/CoveredLiabilitiesRegister.java
@@ -0,0 +1,101 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.Instant;
+import java.time.LocalDate;
+
+/**
+ * Реестр обязательств, прошедших процедуру контроля обеспечения
+ *
+ * DB table: COVERED_LIABILITIES_REGISTER
+ **/
+public class CoveredLiabilitiesRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private String companyFullName;
+ private Long sessionId;
+ private String securitySymbol;
+ private String securityFullName;
+ private Long companyId;
+ private String clearingCode;
+ private String account;
+ private BigDecimal amount;
+ private LocalDate clearingDate;
+
+ public String getCompanyFullName() {
+ return companyFullName;
+ }
+
+ public void setCompanyFullName(String value) {
+ this.companyFullName = value;
+ }
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+
+ public void setSessionId(Long value) {
+ this.sessionId = value;
+ }
+
+ public String getSecuritySymbol() {
+ return securitySymbol;
+ }
+
+ public void setSecuritySymbol(String value) {
+ this.securitySymbol = value;
+ }
+
+ public String getSecurityFullName() {
+ return securityFullName;
+ }
+
+ public void setSecurityFullName(String value) {
+ this.securityFullName = value;
+ }
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+
+ public void setCompanyId(Long value) {
+ this.companyId = value;
+ }
+
+ public String getClearingCode() {
+ return clearingCode;
+ }
+
+ public void setClearingCode(String value) {
+ this.clearingCode = value;
+ }
+
+ public String getAccount() {
+ return account;
+ }
+
+ public void setAccount(String value) {
+ this.account = value;
+ }
+
+ public BigDecimal getAmount() {
+ return amount;
+ }
+
+ public void setAmount(BigDecimal value) {
+ this.amount = value;
+ }
+
+ public LocalDate getClearingDate() {
+ return clearingDate;
+ }
+
+ public void setClearingDate(LocalDate value) {
+ this.clearingDate = value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoBalanceRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoBalanceRegister.java
new file mode 100644
index 000000000..4b2611694
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoBalanceRegister.java
@@ -0,0 +1,60 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.Instant;
+
+/**
+ * Реестр остатков ценных бумаг
+ *
+ * DB table: DEPO_BALANCE_REGISTER
+ **/
+public class DepoBalanceRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private Long companyId;
+ private Long sessionId;
+ private String depoCode;
+ private BigDecimal quantity;
+ private String securitySymbol;
+
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+ public String getDepoCode() {
+ return depoCode;
+ }
+ public void setDepoCode(String value) {
+ this.depoCode=value;
+ }
+
+ public BigDecimal getQuantity() {
+ return quantity;
+ }
+ public void setQuantity(BigDecimal value) {
+ this.quantity=value;
+ }
+
+ public String getSecuritySymbol() {
+ return securitySymbol;
+ }
+ public void setSecuritySymbol(String value) {
+ this.securitySymbol=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoPaymentInstructionRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoPaymentInstructionRegister.java
new file mode 100644
index 000000000..b67352c33
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoPaymentInstructionRegister.java
@@ -0,0 +1,73 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+
+import java.math.BigDecimal;
+
+/**
+ * Реестр распоряжений, направленных расчетному депозитарию
+ *
+ * DB table: DEPO_PAYMENT_INSTRUCTION_REGISTER
+ **/
+public class DepoPaymentInstructionRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private Long companyId;
+ private String tradingClearingRegistryType;
+ private String tradingClearingRegistry;
+ private String cbCode;
+ private BigDecimal quantity;
+ private Long direction;
+ private Long sessionId;
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+ public String getTradingClearingRegistryType() {
+ return tradingClearingRegistryType;
+ }
+ public void setTradingClearingRegistryType(String value) {
+ this.tradingClearingRegistryType=value;
+ }
+
+ public String getTradingClearingRegistry() {
+ return tradingClearingRegistry;
+ }
+ public void setTradingClearingRegistry(String value) {
+ this.tradingClearingRegistry=value;
+ }
+
+ public String getCbCode() {
+ return cbCode;
+ }
+ public void setCbCode(String value) {
+ this.cbCode=value;
+ }
+
+ public BigDecimal getQuantity() {
+ return quantity;
+ }
+ public void setQuantity(BigDecimal value) {
+ this.quantity=value;
+ }
+
+ public Long getDirection() {
+ return direction;
+ }
+ public void setDirection(Long value) {
+ this.direction=value;
+ }
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExcludeLiabilitiesRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExcludeLiabilitiesRegister.java
new file mode 100644
index 000000000..2a8c8ef71
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExcludeLiabilitiesRegister.java
@@ -0,0 +1,124 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * Реестр обязательств, исключенных из клирингового пула
+ *
+ * DB table: EXCLUDE_LIABILITIES_REGISTER
+ **/
+public class ExcludeLiabilitiesRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private Long sessionId;
+ private LocalDate validFromDate;
+ private LocalDate validToDate;
+ private Long companyId;
+ private String companyFullName;
+ private String inn;
+ private String segment;
+ private String registryCode;
+ private String account;
+ private String registryStatus;
+ private String currency;
+ private BigDecimal sumLiabilities;
+ private LocalDate settlementDate;
+
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+ public LocalDate getValidFromDate() {
+ return validFromDate;
+ }
+ public void setValidFromDate(LocalDate value) {
+ this.validFromDate=value;
+ }
+
+ public LocalDate getValidToDate() {
+ return validToDate;
+ }
+ public void setValidToDate(LocalDate value) {
+ this.validToDate=value;
+ }
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+ public String getCompanyFullName() {
+ return companyFullName;
+ }
+ public void setCompanyFullName(String value) {
+ this.companyFullName=value;
+ }
+
+ public String getInn() {
+ return inn;
+ }
+ public void setInn(String value) {
+ this.inn=value;
+ }
+
+ public String getSegment() {
+ return segment;
+ }
+ public void setSegment(String value) {
+ this.segment=value;
+ }
+
+ public String getRegistryCode() {
+ return registryCode;
+ }
+ public void setRegistryCode(String value) {
+ this.registryCode=value;
+ }
+
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String value) {
+ this.account=value;
+ }
+
+ public String getRegistryStatus() {
+ return registryStatus;
+ }
+ public void setRegistryStatus(String value) {
+ this.registryStatus=value;
+ }
+
+ public String getCurrency() {
+ return currency;
+ }
+ public void setCurrency(String value) {
+ this.currency=value;
+ }
+
+ public BigDecimal getSumLiabilities() {
+ return sumLiabilities;
+ }
+ public void setSumLiabilities(BigDecimal value) {
+ this.sumLiabilities=value;
+ }
+
+ public LocalDate getSettlementDate() {
+ return settlementDate;
+ }
+ public void setSettlementDate(LocalDate value) {
+ this.settlementDate=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExecutionRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExecutionRegister.java
new file mode 100644
index 000000000..3258f0eab
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExecutionRegister.java
@@ -0,0 +1,157 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.Instant;
+import java.time.LocalDate;
+
+/**
+ * Реестр сделок
+ *
+ * DB table: EXECUTION_REGISTER
+ **/
+public class ExecutionRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private LocalDate tradingDate;
+ private Long exchangeExecutionId;
+ private Instant exchangeExecutionTime;
+ private Long securityId;
+ private Long sellerId;
+ private String sellerClearingCode;
+ private String sellerTradingClearingRegister;
+ private String sellerMoneyAccount;
+ private String sellerDepoAccount;
+ private Long buyerId;
+ private String buyerClearingCode;
+ private String buyerTradingClearingRegister;
+ private String buyerMoneyAccount;
+ private String buyerDepoAccount;
+ private BigDecimal amount;
+ private BigDecimal quantity;
+ private LocalDate clearingDate;
+
+ public LocalDate getTradingDate() {
+ return tradingDate;
+ }
+ public void setTradingDate(LocalDate value) {
+ this.tradingDate=value;
+ }
+
+ public Long getExchangeExecutionId() {
+ return exchangeExecutionId;
+ }
+ public void setExchangeExecutionId(Long value) {
+ this.exchangeExecutionId=value;
+ }
+
+ public Instant getExchangeExecutionTime() {
+ return exchangeExecutionTime;
+ }
+ public void setExchangeExecutionTime(Instant value) {
+ this.exchangeExecutionTime=value;
+ }
+
+ public Long getSecurityId() {
+ return securityId;
+ }
+ public void setSecurityId(Long value) {
+ this.securityId=value;
+ }
+
+ public Long getSellerId() {
+ return sellerId;
+ }
+ public void setSellerId(Long value) {
+ this.sellerId=value;
+ }
+
+ public String getSellerClearingCode() {
+ return sellerClearingCode;
+ }
+ public void setSellerClearingCode(String value) {
+ this.sellerClearingCode=value;
+ }
+
+ public String getSellerTradingClearingRegister() {
+ return sellerTradingClearingRegister;
+ }
+ public void setSellerTradingClearingRegister(String value) {
+ this.sellerTradingClearingRegister=value;
+ }
+
+ public String getSellerMoneyAccount() {
+ return sellerMoneyAccount;
+ }
+ public void setSellerMoneyAccount(String value) {
+ this.sellerMoneyAccount=value;
+ }
+
+ public String getSellerDepoAccount() {
+ return sellerDepoAccount;
+ }
+ public void setSellerDepoAccount(String value) {
+ this.sellerDepoAccount=value;
+ }
+
+ public Long getBuyerId() {
+ return buyerId;
+ }
+ public void setBuyerId(Long value) {
+ this.buyerId=value;
+ }
+
+ public String getBuyerClearingCode() {
+ return buyerClearingCode;
+ }
+ public void setBuyerClearingCode(String value) {
+ this.buyerClearingCode=value;
+ }
+
+ public String getBuyerTradingClearingRegister() {
+ return buyerTradingClearingRegister;
+ }
+ public void setBuyerTradingClearingRegister(String value) {
+ this.buyerTradingClearingRegister=value;
+ }
+
+ public String getBuyerMoneyAccount() {
+ return buyerMoneyAccount;
+ }
+ public void setBuyerMoneyAccount(String value) {
+ this.buyerMoneyAccount=value;
+ }
+
+ public String getBuyerDepoAccount() {
+ return buyerDepoAccount;
+ }
+ public void setBuyerDepoAccount(String value) {
+ this.buyerDepoAccount=value;
+ }
+
+ public BigDecimal getAmount() {
+ return amount;
+ }
+ public void setAmount(BigDecimal value) {
+ this.amount=value;
+ }
+
+ public BigDecimal getQuantity() {
+ return quantity;
+ }
+ public void setQuantity(BigDecimal value) {
+ this.quantity=value;
+ }
+
+
+ public LocalDate getClearingDate() {
+ return clearingDate;
+ }
+ public void setClearingDate(LocalDate value) {
+ this.clearingDate=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/LiabilitiesRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/LiabilitiesRegister.java
new file mode 100644
index 000000000..c3a7ef58d
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/LiabilitiesRegister.java
@@ -0,0 +1,123 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+import ru.spcex.platform.classes.base.SpcexObjectBase;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * Реестр учета обязательств
+ *
+ * DB table: LIABILITIES_REGISTER
+ **/
+public class LiabilitiesRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private Long sessionId;
+ private LocalDate validFromDate;
+ private LocalDate validToDate;
+ private Long companyId;
+ private String companyFullName;
+ private String inn;
+ private String segment;
+ private String registryCode;
+ private String account;
+ private String registryStatus;
+ private String currency;
+ private BigDecimal sumLiabilities;
+ private LocalDate settlementDate;
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+ public LocalDate getValidFromDate() {
+ return validFromDate;
+ }
+ public void setValidFromDate(LocalDate value) {
+ this.validFromDate=value;
+ }
+
+ public LocalDate getValidToDate() {
+ return validToDate;
+ }
+ public void setValidToDate(LocalDate value) {
+ this.validToDate=value;
+ }
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+ public String getCompanyFullName() {
+ return companyFullName;
+ }
+ public void setCompanyFullName(String value) {
+ this.companyFullName=value;
+ }
+
+ public String getInn() {
+ return inn;
+ }
+ public void setInn(String value) {
+ this.inn=value;
+ }
+
+ public String getSegment() {
+ return segment;
+ }
+ public void setSegment(String value) {
+ this.segment=value;
+ }
+
+ public String getRegistryCode() {
+ return registryCode;
+ }
+ public void setRegistryCode(String value) {
+ this.registryCode=value;
+ }
+
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String value) {
+ this.account=value;
+ }
+
+ public String getRegistryStatus() {
+ return registryStatus;
+ }
+ public void setRegistryStatus(String value) {
+ this.registryStatus=value;
+ }
+
+ public String getCurrency() {
+ return currency;
+ }
+ public void setCurrency(String value) {
+ this.currency=value;
+ }
+
+ public BigDecimal getSumLiabilities() {
+ return sumLiabilities;
+ }
+ public void setSumLiabilities(BigDecimal value) {
+ this.sumLiabilities=value;
+ }
+
+ public LocalDate getSettlementDate() {
+ return settlementDate;
+ }
+ public void setSettlementDate(LocalDate value) {
+ this.settlementDate=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyBalanceRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyBalanceRegister.java
new file mode 100644
index 000000000..0a46a9e6b
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyBalanceRegister.java
@@ -0,0 +1,97 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+
+import java.math.BigDecimal;
+
+/**
+ * Реестр остатков денежных средств
+ *
+ * DB table: MONEY_BALANCE_REGISTER
+ **/
+public class MoneyBalanceRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private String setHouseName;
+ private String account;
+ private String infoAccount;
+ private BigDecimal remainderSum;
+ private BigDecimal blockedSum;
+ private BigDecimal unblockedSum;
+ private String inn;
+ private Long sessionId;
+ private String companyFullName;
+ private Long companyId;
+
+ public String getSetHouseName() {
+ return setHouseName;
+ }
+ public void setSetHouseName(String value) {
+ this.setHouseName=value;
+ }
+
+ public String getAccount() {
+ return account;
+ }
+ public void setAccount(String value) {
+ this.account=value;
+ }
+
+ public String getInfoAccount() {
+ return infoAccount;
+ }
+ public void setInfoAccount(String value) {
+ this.infoAccount=value;
+ }
+
+ public BigDecimal getRemainderSum() {
+ return remainderSum;
+ }
+ public void setRemainderSum(BigDecimal value) {
+ this.remainderSum=value;
+ }
+
+ public BigDecimal getBlockedSum() {
+ return blockedSum;
+ }
+ public void setBlockedSum(BigDecimal value) {
+ this.blockedSum=value;
+ }
+
+ public BigDecimal getUnblockedSum() {
+ return unblockedSum;
+ }
+ public void setUnblockedSum(BigDecimal value) {
+ this.unblockedSum=value;
+ }
+
+ public String getInn() {
+ return inn;
+ }
+ public void setInn(String value) {
+ this.inn=value;
+ }
+
+ public Long getSessionId() {
+ return sessionId;
+ }
+ public void setSessionId(Long value) {
+ this.sessionId=value;
+ }
+
+ public String getCompanyFullName() {
+ return companyFullName;
+ }
+ public void setCompanyFullName(String value) {
+ this.companyFullName=value;
+ }
+
+ public Long getCompanyId() {
+ return companyId;
+ }
+ public void setCompanyId(Long value) {
+ this.companyId=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyPaymentInstructionRegister.java b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyPaymentInstructionRegister.java
new file mode 100644
index 000000000..c9734d18e
--- /dev/null
+++ b/clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyPaymentInstructionRegister.java
@@ -0,0 +1,74 @@
+package ru.clearing.classes.statics.data.register;
+
+import ru.clearing.classes.ConstSerializable;
+import ru.clearing.classes.objects.BusinessObject;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * Реестр распоряжений, направленных расчетной организации
+ *
+ * DB table: MONEY_PAYMENT_INSTRUCTION_REGISTER
+ **/
+public class MoneyPaymentInstructionRegister extends BusinessObject {
+ private static final long serialVersionUID = ConstSerializable.serialVersionUID;
+
+ private String creditLegAccount;
+ private BigDecimal creditLegAmount;
+ private String creditLegCurrencyCode;
+ private String debitLegAccount;
+ private String sender;
+ private String addressee;
+ private LocalDate clearingDate;
+
+ public String getCreditLegAccount() {
+ return creditLegAccount;
+ }
+ public void setCreditLegAccount(String value) {
+ this.creditLegAccount=value;
+ }
+
+ public BigDecimal getCreditLegAmount() {
+ return creditLegAmount;
+ }
+ public void setCreditLegAmount(BigDecimal value) {
+ this.creditLegAmount=value;
+ }
+
+ public String getCreditLegCurrencyCode() {
+ return creditLegCurrencyCode;
+ }
+ public void setCreditLegCurrencyCode(String value) {
+ this.creditLegCurrencyCode=value;
+ }
+
+ public String getDebitLegAccount() {
+ return debitLegAccount;
+ }
+ public void setDebitLegAccount(String value) {
+ this.debitLegAccount=value;
+ }
+
+ public String getSender() {
+ return sender;
+ }
+ public void setSender(String value) {
+ this.sender=value;
+ }
+
+ public String getAddressee() {
+ return addressee;
+ }
+ public void setAddressee(String value) {
+ this.addressee=value;
+ }
+
+ public LocalDate getClearingDate() {
+ return clearingDate;
+ }
+ public void setClearingDate(LocalDate value) {
+ this.clearingDate=value;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/AdmittedLiabilitiesRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/AdmittedLiabilitiesRegisterMapStore.java
new file mode 100644
index 000000000..341c7cabe
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/AdmittedLiabilitiesRegisterMapStore.java
@@ -0,0 +1,75 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.clearing.classes.statics.data.register.AdmittedLiabilitiesRegister;
+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 AdmittedLiabilitiesRegisterMapStore extends TemplateMapStore {
+
+ public AdmittedLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_AdmittedLiabilitiesRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "ADMITTED_LIABILITIES_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "COMPANY_FULL_NAME", "SESSION_ID", "SECURITY_SYMBOL", "SECURITY_FULL_NAME", "COMPANY_ID", "CLEARING_CODE", "ACCOUNT", "AMOUNT", "ID", "CREATED_AT", "UPDATED_AT", "CLEARING_DATE"
+ };
+ }
+
+ @Override
+ public AdmittedLiabilitiesRegister objectReader(ResultSet resultSet) throws SQLException {
+ AdmittedLiabilitiesRegister object = new AdmittedLiabilitiesRegister();
+ object.setCompanyFullName(resultSet.getObject("COMPANY_FULL_NAME", String.class));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class));
+ object.setSecurityFullName(resultSet.getObject("SECURITY_FULL_NAME", String.class));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setClearingCode(resultSet.getObject("CLEARING_CODE", String.class));
+ object.setAccount(resultSet.getObject("ACCOUNT", String.class));
+ object.setAmount(resultSet.getObject("AMOUNT", BigDecimal.class));
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(AdmittedLiabilitiesRegister object) {
+ Object[] args = new Object[]{
+ object.getCompanyFullName(),
+ object.getSessionId(),
+ object.getSecuritySymbol(),
+ object.getSecurityFullName(),
+ object.getCompanyId(),
+ object.getClearingCode(),
+ object.getAccount(),
+ object.getAmount(),
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ TimeUtil.toDateFromLocalDate(object.getClearingDate())
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CoveredLiabilitiesRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CoveredLiabilitiesRegisterMapStore.java
new file mode 100644
index 000000000..85f1d7956
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CoveredLiabilitiesRegisterMapStore.java
@@ -0,0 +1,76 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.clearing.classes.statics.data.register.CoveredLiabilitiesRegister;
+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 CoveredLiabilitiesRegisterMapStore extends TemplateMapStore {
+
+ public CoveredLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_CoveredLiabilitiesRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "COVERED_LIABILITIES_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "COMPANY_FULL_NAME", "SESSION_ID", "SECURITY_SYMBOL", "SECURITY_FULL_NAME", "COMPANY_ID", "CLEARING_CODE", "ACCOUNT", "AMOUNT", "ID", "CREATED_AT", "UPDATED_AT", "CLEARING_DATE"
+ };
+ }
+
+ @Override
+ public CoveredLiabilitiesRegister objectReader(ResultSet resultSet) throws SQLException {
+ CoveredLiabilitiesRegister object = new CoveredLiabilitiesRegister();
+ object.setCompanyFullName(resultSet.getObject("COMPANY_FULL_NAME", String.class));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class));
+ object.setSecurityFullName(resultSet.getObject("SECURITY_FULL_NAME", String.class));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setClearingCode(resultSet.getObject("CLEARING_CODE", String.class));
+ object.setAccount(resultSet.getObject("ACCOUNT", String.class));
+ object.setAmount(resultSet.getObject("AMOUNT", BigDecimal.class));
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(CoveredLiabilitiesRegister object) {
+ Object[] args = new Object[]{
+ object.getCompanyFullName(),
+ object.getSessionId(),
+ object.getSecuritySymbol(),
+ object.getSecurityFullName(),
+ object.getCompanyId(),
+ object.getClearingCode(),
+ object.getAccount(),
+ object.getAmount(),
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ TimeUtil.toDateFromLocalDate(object.getClearingDate())
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoBalanceRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoBalanceRegisterMapStore.java
new file mode 100644
index 000000000..409bd3b7e
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoBalanceRegisterMapStore.java
@@ -0,0 +1,67 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.clearing.classes.statics.data.register.DepoBalanceRegister;
+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 DepoBalanceRegisterMapStore extends TemplateMapStore {
+
+ public DepoBalanceRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_DepoBalanceRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "DEPO_BALANCE_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "ID", "CREATED_AT", "UPDATED_AT", "COMPANY_ID", "SESSION_ID", "DEPO_CODE", "QUANTITY", "SECURITY_SYMBOL"
+ };
+ }
+
+ @Override
+ public DepoBalanceRegister objectReader(ResultSet resultSet) throws SQLException {
+ DepoBalanceRegister object = new DepoBalanceRegister();
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setDepoCode(resultSet.getObject("DEPO_CODE", String.class));
+ object.setQuantity(resultSet.getObject("QUANTITY", BigDecimal.class));
+ object.setSecuritySymbol(resultSet.getObject("SECURITY_SYMBOL", String.class));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(DepoBalanceRegister object) {
+ Object[] args = new Object[]{
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ object.getCompanyId(),
+ object.getSessionId(),
+ object.getDepoCode(),
+ object.getQuantity(),
+ object.getSecuritySymbol()
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoPaymentInstructionRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoPaymentInstructionRegisterMapStore.java
new file mode 100644
index 000000000..fd1795e76
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoPaymentInstructionRegisterMapStore.java
@@ -0,0 +1,71 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.clearing.classes.statics.data.register.DepoPaymentInstructionRegister;
+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 DepoPaymentInstructionRegisterMapStore extends TemplateMapStore {
+
+ public DepoPaymentInstructionRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_DepoPaymentInstructionRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "DEPO_PAYMENT_INSTRUCTION_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "ID", "CREATED_AT", "UPDATED_AT", "COMPANY_ID", "TRADING_CLEARING_REGISTRY_TYPE", "TRADING_CLEARING_REGISTRY", "CB_CODE", "QUANTITY", "DIRECTION", "SESSION_ID"
+ };
+ }
+
+ @Override
+ public DepoPaymentInstructionRegister objectReader(ResultSet resultSet) throws SQLException {
+ DepoPaymentInstructionRegister object = new DepoPaymentInstructionRegister();
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setTradingClearingRegistryType(resultSet.getObject("TRADING_CLEARING_REGISTRY_TYPE", String.class));
+ object.setTradingClearingRegistry(resultSet.getObject("TRADING_CLEARING_REGISTRY", String.class));
+ object.setCbCode(resultSet.getObject("CB_CODE", String.class));
+ object.setQuantity(resultSet.getObject("QUANTITY", BigDecimal.class));
+ object.setDirection(resultSet.getObject("DIRECTION", Long.class));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(DepoPaymentInstructionRegister object) {
+ Object[] args = new Object[]{
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ object.getCompanyId(),
+ object.getTradingClearingRegistryType(),
+ object.getTradingClearingRegistry(),
+ object.getCbCode(),
+ object.getQuantity(),
+ object.getDirection(),
+ object.getSessionId()
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExcludeLiabilitiesRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExcludeLiabilitiesRegisterMapStore.java
new file mode 100644
index 000000000..01046555b
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExcludeLiabilitiesRegisterMapStore.java
@@ -0,0 +1,84 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.clearing.classes.statics.data.register.ExcludeLiabilitiesRegister;
+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 ExcludeLiabilitiesRegisterMapStore extends TemplateMapStore {
+
+ public ExcludeLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_ExcludeLiabilitiesRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "EXCLUDE_LIABILITIES_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "ID", "CREATED_AT", "UPDATED_AT", "SESSION_ID", "VALID_FROM_DATE", "VALID_TO_DATE", "COMPANY_ID", "COMPANY_FULL_NAME", "INN", "SEGMENT", "REGISTRY_CODE", "ACCOUNT", "REGISTRY_STATUS", "CURRENCY", "SUM_LIABILITIES", "SETTLEMENT_DATE"
+ };
+ }
+
+ @Override
+ public ExcludeLiabilitiesRegister objectReader(ResultSet resultSet) throws SQLException {
+ ExcludeLiabilitiesRegister object = new ExcludeLiabilitiesRegister();
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setValidFromDate(getLocalDateFromSqlDate(resultSet, "VALID_FROM_DATE"));
+ object.setValidToDate(getLocalDateFromSqlDate(resultSet, "VALID_TO_DATE"));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setCompanyFullName(resultSet.getObject("COMPANY_FULL_NAME", String.class));
+ object.setInn(resultSet.getObject("INN", String.class));
+ object.setSegment(resultSet.getObject("SEGMENT", String.class));
+ object.setRegistryCode(resultSet.getObject("REGISTRY_CODE", String.class));
+ object.setAccount(resultSet.getObject("ACCOUNT", String.class));
+ object.setRegistryStatus(resultSet.getObject("REGISTRY_STATUS", String.class));
+ object.setCurrency(resultSet.getObject("CURRENCY", String.class));
+ object.setSumLiabilities(resultSet.getObject("SUM_LIABILITIES", BigDecimal.class));
+ object.setSettlementDate(getLocalDateFromSqlDate(resultSet, "SETTLEMENT_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(ExcludeLiabilitiesRegister object) {
+ Object[] args = new Object[]{
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ object.getSessionId(),
+ TimeUtil.toDateFromLocalDate(object.getValidFromDate()),
+ TimeUtil.toDateFromLocalDate(object.getValidToDate()),
+ object.getCompanyId(),
+ object.getCompanyFullName(),
+ object.getInn(),
+ object.getSegment(),
+ object.getRegistryCode(),
+ object.getAccount(),
+ object.getRegistryStatus(),
+ object.getCurrency(),
+ object.getSumLiabilities(),
+ TimeUtil.toDateFromLocalDate(object.getSettlementDate())
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExecutionRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExecutionRegisterMapStore.java
new file mode 100644
index 000000000..1407f4dd2
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExecutionRegisterMapStore.java
@@ -0,0 +1,91 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.clearing.classes.statics.data.register.ExecutionRegister;
+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 ExecutionRegisterMapStore extends TemplateMapStore {
+
+ public ExecutionRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_ExecutionRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "EXECUTION_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "TRADING_DATE", "EXCHANGE_EXECUTION_ID", "EXCHANGE_EXECUTION_TIME", "SECURITY_ID", "SELLER_ID", "SELLER_CLEARING_CODE", "SELLER_TRADING_CLEARING_REGISTER", "SELLER_MONEY_ACCOUNT", "SELLER_DEPO_ACCOUNT", "BUYER_ID", "BUYER_CLEARING_CODE", "BUYER_TRADING_CLEARING_REGISTER", "BUYER_MONEY_ACCOUNT", "BUYER_DEPO_ACCOUNT", "AMOUNT", "QUANTITY", "ID", "CREATED_AT", "UPDATED_AT", "CLEARING_DATE"
+ };
+ }
+
+ @Override
+ public ExecutionRegister objectReader(ResultSet resultSet) throws SQLException {
+ ExecutionRegister object = new ExecutionRegister();
+ object.setTradingDate(getLocalDateFromSqlDate(resultSet, "TRADING_DATE"));
+ object.setExchangeExecutionId(resultSet.getObject("EXCHANGE_EXECUTION_ID", Long.class));
+ object.setExchangeExecutionTime(getInstantFromTimestamp(resultSet, "EXCHANGE_EXECUTION_TIME"));
+ object.setSecurityId(resultSet.getObject("SECURITY_ID", Long.class));
+ object.setSellerId(resultSet.getObject("SELLER_ID", Long.class));
+ object.setSellerClearingCode(resultSet.getObject("SELLER_CLEARING_CODE", String.class));
+ object.setSellerTradingClearingRegister(resultSet.getObject("SELLER_TRADING_CLEARING_REGISTER", String.class));
+ object.setSellerMoneyAccount(resultSet.getObject("SELLER_MONEY_ACCOUNT", String.class));
+ object.setSellerDepoAccount(resultSet.getObject("SELLER_DEPO_ACCOUNT", String.class));
+ object.setBuyerId(resultSet.getObject("BUYER_ID", Long.class));
+ object.setBuyerClearingCode(resultSet.getObject("BUYER_CLEARING_CODE", String.class));
+ object.setBuyerTradingClearingRegister(resultSet.getObject("BUYER_TRADING_CLEARING_REGISTER", String.class));
+ object.setBuyerMoneyAccount(resultSet.getObject("BUYER_MONEY_ACCOUNT", String.class));
+ object.setBuyerDepoAccount(resultSet.getObject("BUYER_DEPO_ACCOUNT", String.class));
+ object.setAmount(resultSet.getObject("AMOUNT", BigDecimal.class));
+ object.setQuantity(resultSet.getObject("QUANTITY", BigDecimal.class));
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(ExecutionRegister object) {
+ Object[] args = new Object[]{
+ TimeUtil.toDateFromLocalDate(object.getTradingDate()),
+ object.getExchangeExecutionId(),
+ TimeUtil.toDateFromInstant(object.getExchangeExecutionTime()),
+ object.getSecurityId(),
+ object.getSellerId(),
+ object.getSellerClearingCode(),
+ object.getSellerTradingClearingRegister(),
+ object.getSellerMoneyAccount(),
+ object.getSellerDepoAccount(),
+ object.getBuyerId(),
+ object.getBuyerClearingCode(),
+ object.getBuyerTradingClearingRegister(),
+ object.getBuyerMoneyAccount(),
+ object.getBuyerDepoAccount(),
+ object.getAmount(),
+ object.getQuantity(),
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ TimeUtil.toDateFromLocalDate(object.getClearingDate())
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/LiabilitiesRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/LiabilitiesRegisterMapStore.java
new file mode 100644
index 000000000..dbc7e7917
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/LiabilitiesRegisterMapStore.java
@@ -0,0 +1,84 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.clearing.classes.statics.data.register.LiabilitiesRegister;
+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 LiabilitiesRegisterMapStore extends TemplateMapStore {
+
+ public LiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_LiabilitiesRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "LIABILITIES_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "ID", "CREATED_AT", "UPDATED_AT", "SESSION_ID", "VALID_FROM_DATE", "VALID_TO_DATE", "COMPANY_ID", "COMPANY_FULL_NAME", "INN", "SEGMENT", "REGISTRY_CODE", "ACCOUNT", "REGISTRY_STATUS", "CURRENCY", "SUM_LIABILITIES", "SETTLEMENT_DATE"
+ };
+ }
+
+ @Override
+ public LiabilitiesRegister objectReader(ResultSet resultSet) throws SQLException {
+ LiabilitiesRegister object = new LiabilitiesRegister();
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setValidFromDate(getLocalDateFromSqlDate(resultSet, "VALID_FROM_DATE"));
+ object.setValidToDate(getLocalDateFromSqlDate(resultSet, "VALID_TO_DATE"));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setCompanyFullName(resultSet.getObject("COMPANY_FULL_NAME", String.class));
+ object.setInn(resultSet.getObject("INN", String.class));
+ object.setSegment(resultSet.getObject("SEGMENT", String.class));
+ object.setRegistryCode(resultSet.getObject("REGISTRY_CODE", String.class));
+ object.setAccount(resultSet.getObject("ACCOUNT", String.class));
+ object.setRegistryStatus(resultSet.getObject("REGISTRY_STATUS", String.class));
+ object.setCurrency(resultSet.getObject("CURRENCY", String.class));
+ object.setSumLiabilities(resultSet.getObject("SUM_LIABILITIES", BigDecimal.class));
+ object.setSettlementDate(getLocalDateFromSqlDate(resultSet, "SETTLEMENT_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(LiabilitiesRegister object) {
+ Object[] args = new Object[]{
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ object.getSessionId(),
+ TimeUtil.toDateFromLocalDate(object.getValidFromDate()),
+ TimeUtil.toDateFromLocalDate(object.getValidToDate()),
+ object.getCompanyId(),
+ object.getCompanyFullName(),
+ object.getInn(),
+ object.getSegment(),
+ object.getRegistryCode(),
+ object.getAccount(),
+ object.getRegistryStatus(),
+ object.getCurrency(),
+ object.getSumLiabilities(),
+ TimeUtil.toDateFromLocalDate(object.getSettlementDate())
+ };
+ return args;
+ }
+
+}
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyBalanceRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyBalanceRegisterMapStore.java
new file mode 100644
index 000000000..d770db1a8
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyBalanceRegisterMapStore.java
@@ -0,0 +1,77 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.clearing.classes.statics.data.register.MoneyBalanceRegister;
+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 MoneyBalanceRegisterMapStore extends TemplateMapStore {
+
+ public MoneyBalanceRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_MoneyBalanceRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "MONEY_BALANCE_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "SET_HOUSE_NAME", "ACCOUNT", "INFO_ACCOUNT", "REMAINDER_SUM", "BLOCKED_SUM", "UNBLOCKED_SUM", "INN", "SESSION_ID", "COMPANY_FULL_NAME", "COMPANY_ID", "ID", "CREATED_AT", "UPDATED_AT"
+ };
+ }
+
+ @Override
+ public MoneyBalanceRegister objectReader(ResultSet resultSet) throws SQLException {
+ MoneyBalanceRegister object = new MoneyBalanceRegister();
+ object.setSetHouseName(resultSet.getObject("SET_HOUSE_NAME", String.class));
+ object.setAccount(resultSet.getObject("ACCOUNT", String.class));
+ object.setInfoAccount(resultSet.getObject("INFO_ACCOUNT", String.class));
+ object.setRemainderSum(resultSet.getObject("REMAINDER_SUM", BigDecimal.class));
+ object.setBlockedSum(resultSet.getObject("BLOCKED_SUM", BigDecimal.class));
+ object.setUnblockedSum(resultSet.getObject("UNBLOCKED_SUM", BigDecimal.class));
+ object.setInn(resultSet.getObject("INN", String.class));
+ object.setSessionId(resultSet.getObject("SESSION_ID", Long.class));
+ object.setCompanyFullName(resultSet.getObject("COMPANY_FULL_NAME", String.class));
+ object.setCompanyId(resultSet.getObject("COMPANY_ID", Long.class));
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(MoneyBalanceRegister object) {
+ Object[] args = new Object[]{
+ object.getSetHouseName(),
+ object.getAccount(),
+ object.getInfoAccount(),
+ object.getRemainderSum(),
+ object.getBlockedSum(),
+ object.getUnblockedSum(),
+ object.getInn(),
+ object.getSessionId(),
+ object.getCompanyFullName(),
+ object.getCompanyId(),
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated())
+ };
+ return args;
+ }
+
+}
\ No newline at end of file
diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyPaymentInstructionRegisterMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyPaymentInstructionRegisterMapStore.java
new file mode 100644
index 000000000..9f9b59ba9
--- /dev/null
+++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyPaymentInstructionRegisterMapStore.java
@@ -0,0 +1,71 @@
+package ru.spcex.clearing.imdg.businessobject;
+
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Component;
+import ru.spcex.clearing.imdg.IMDGDistributedNames;
+import ru.clearing.classes.statics.data.register.MoneyPaymentInstructionRegister;
+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 MoneyPaymentInstructionRegisterMapStore extends TemplateMapStore {
+
+ public MoneyPaymentInstructionRegisterMapStore(JdbcTemplate jdbcTemplate) {
+ super(jdbcTemplate);
+ }
+
+ @Override
+ public String getMapName() {
+ return IMDGDistributedNames.Map_MoneyPaymentInstructionRegister;
+ }
+
+ @Override
+ public String getTableName() {
+ return "MONEY_PAYMENT_INSTRUCTION_REGISTER";
+ }
+
+ @Override
+ public String[] getFields() {
+ return new String[]{
+ "CREDIT_LEG_ACCOUNT", "CREDIT_LEG_AMOUNT", "CREDIT_LEG_CURRENCY_CODE", "DEBIT_LEG_ACCOUNT", "SENDER", "ADDRESSEE", "ID", "CREATED_AT", "UPDATED_AT", "CLEARING_DATE"
+ };
+ }
+
+ @Override
+ public MoneyPaymentInstructionRegister objectReader(ResultSet resultSet) throws SQLException {
+ MoneyPaymentInstructionRegister object = new MoneyPaymentInstructionRegister();
+ object.setCreditLegAccount(resultSet.getObject("CREDIT_LEG_ACCOUNT", String.class));
+ object.setCreditLegAmount(resultSet.getObject("CREDIT_LEG_AMOUNT", BigDecimal.class));
+ object.setCreditLegCurrencyCode(resultSet.getObject("CREDIT_LEG_CURRENCY_CODE", String.class));
+ object.setDebitLegAccount(resultSet.getObject("DEBIT_LEG_ACCOUNT", String.class));
+ object.setSender(resultSet.getObject("SENDER", String.class));
+ object.setAddressee(resultSet.getObject("ADDRESSEE", String.class));
+ object.setId(resultSet.getObject("ID", Long.class));
+ object.setCreated(getInstantFromTimestamp(resultSet, "CREATED_AT"));
+ object.setUpdated(getInstantFromTimestamp(resultSet, "UPDATED_AT"));
+ object.setClearingDate(getLocalDateFromSqlDate(resultSet, "CLEARING_DATE"));
+ return object;
+ }
+
+ @Override
+ public Object[] objectToField(MoneyPaymentInstructionRegister object) {
+ Object[] args = new Object[]{
+ object.getCreditLegAccount(),
+ object.getCreditLegAmount(),
+ object.getCreditLegCurrencyCode(),
+ object.getDebitLegAccount(),
+ object.getSender(),
+ object.getAddressee(),
+ object.getId(),
+ TimeUtil.toDateFromInstant(object.getCreated()),
+ TimeUtil.toDateFromInstant(object.getUpdated()),
+ TimeUtil.toDateFromLocalDate(object.getClearingDate())
+ };
+ return args;
+ }
+
+}
diff --git a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java
index 55c19946c..7a261636b 100644
--- a/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java
+++ b/clearing-parent/imdg/src/test/java/ru/spcex/clearing/imdg/structure/RunnableMapNamesForTesting.java
@@ -253,6 +253,33 @@ public class RunnableMapNamesForTesting {
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_ContractRegister, ContractRegister.class,
new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_AdmittedLiabilitiesRegister, AdmittedLiabilitiesRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_CoveredLiabilitiesRegister, CoveredLiabilitiesRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_DepoBalanceRegister, DepoBalanceRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_DepoPaymentInstructionRegister, DepoPaymentInstructionRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_ExcludeLiabilitiesRegister, ExcludeLiabilitiesRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_ExecutionRegister, ExecutionRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_LiabilitiesRegister, LiabilitiesRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_MoneyBalanceRegister, MoneyBalanceRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
+ checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_MoneyPaymentInstructionRegister, MoneyPaymentInstructionRegister.class,
+ new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
+ new SettingOperation("setUpdated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)})));
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_Currency, Currency.class));
checkerBusinessMapStores.add(new CheckerBusinessMapStore<>(IMDGDistributedNames.Map_ExecutionDeposit, ExecutionDeposit.class,
new SettingOperation("setCreated", new Class[]{Instant.class}, new Object[]{generatingRandomInstant(true)}),
diff --git a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java
index ab6bcf7ad..2d027ab6c 100644
--- a/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java
+++ b/platform-parent/platform-imdg-api/src/main/java/ru/spcex/clearing/imdg/IMDGDistributedNames.java
@@ -125,6 +125,15 @@ public final class IMDGDistributedNames {
public static final String Map_ExecutionDepositHistory = "Map_ExecutionDepositHistory";
public static final String Map_ReportRegister = "Map_ReportRegister";
public static final String Map_ContractRegister = "Map_ContractRegister";
+ public static final String Map_AdmittedLiabilitiesRegister = "Map_AdmittedLiabilitiesRegister";
+ public static final String Map_CoveredLiabilitiesRegister = "Map_CoveredLiabilitiesRegister";
+ public static final String Map_DepoBalanceRegister = "Map_DepoBalanceRegister";
+ public static final String Map_DepoPaymentInstructionRegister = "Map_DepoPaymentInstructionRegister";
+ public static final String Map_ExcludeLiabilitiesRegister = "Map_ExcludeLiabilitiesRegister";
+ public static final String Map_ExecutionRegister = "Map_ExecutionRegister";
+ public static final String Map_LiabilitiesRegister = "Map_LiabilitiesRegister";
+ public static final String Map_MoneyBalanceRegister = "Map_MoneyBalanceRegister";
+ public static final String Map_MoneyPaymentInstructionRegister = "Map_MoneyPaymentInstructionRegister";
public static final String Map_VerificationResult = "Map_VerificationResult";
public static final String Map_STrades = "Map_STrades";
public static final String Map_SectionDictionary = "Map_SectionDictionary";