From c42733812123b4890f882c3b27480b4e3aff3f46 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Wed, 10 May 2023 19:52:08 +0300 Subject: [PATCH] =?UTF-8?q?http://jira.mfd.msk:8088/browse/CLS-293=20meta?= =?UTF-8?q?=204:=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20=D1=80?= =?UTF-8?q?=D0=B5=D0=B3=D0=B8=D1=81=D1=82=D1=80=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../register/AdmittedLiabilitiesRegister.java | 92 ++++++++++ .../register/CoveredLiabilitiesRegister.java | 101 +++++++++++ .../data/register/DepoBalanceRegister.java | 60 +++++++ .../DepoPaymentInstructionRegister.java | 73 ++++++++ .../register/ExcludeLiabilitiesRegister.java | 124 ++++++++++++++ .../data/register/ExecutionRegister.java | 157 ++++++++++++++++++ .../data/register/LiabilitiesRegister.java | 123 ++++++++++++++ .../data/register/MoneyBalanceRegister.java | 97 +++++++++++ .../MoneyPaymentInstructionRegister.java | 74 +++++++++ .../AdmittedLiabilitiesRegisterMapStore.java | 75 +++++++++ .../CoveredLiabilitiesRegisterMapStore.java | 76 +++++++++ .../DepoBalanceRegisterMapStore.java | 67 ++++++++ ...epoPaymentInstructionRegisterMapStore.java | 71 ++++++++ .../ExcludeLiabilitiesRegisterMapStore.java | 84 ++++++++++ .../ExecutionRegisterMapStore.java | 91 ++++++++++ .../LiabilitiesRegisterMapStore.java | 84 ++++++++++ .../MoneyBalanceRegisterMapStore.java | 77 +++++++++ ...neyPaymentInstructionRegisterMapStore.java | 71 ++++++++ .../structure/RunnableMapNamesForTesting.java | 27 +++ .../clearing/imdg/IMDGDistributedNames.java | 9 + 20 files changed, 1633 insertions(+) create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/AdmittedLiabilitiesRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/CoveredLiabilitiesRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoBalanceRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/DepoPaymentInstructionRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExcludeLiabilitiesRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/ExecutionRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/LiabilitiesRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyBalanceRegister.java create mode 100644 clearing-parent/classes/src/main/java/ru/clearing/classes/statics/data/register/MoneyPaymentInstructionRegister.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/AdmittedLiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/CoveredLiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoBalanceRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/DepoPaymentInstructionRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExcludeLiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ExecutionRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/LiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyBalanceRegisterMapStore.java create mode 100644 clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/MoneyPaymentInstructionRegisterMapStore.java 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";