From bd28af9115099b5ea9cc7d3ede5ae1a34899e436 Mon Sep 17 00:00:00 2001 From: AKurakin Date: Wed, 6 Sep 2023 19:19:38 +0300 Subject: [PATCH] =?UTF-8?q?imdg=20=D0=9F=D1=80=D0=B8=D0=BC=D0=B5=D1=80=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=B4=D0=B0,=20=D0=BA=D0=B0=D0=BA=20=D0=BC=D0=BE?= =?UTF-8?q?=D0=B6=D0=BD=D0=BE=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D1=82=D1=8C?= =?UTF-8?q?=20=D0=BD=D0=B0=D0=B4=D1=91=D0=B6=D0=BD=D0=B5=D0=B5=20Security-?= =?UTF-8?q?=D0=BC=D0=B0=D0=BF=D1=81=D1=82=D0=BE=D1=80=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../imdg/businessobject/ASecurityMapStore.java | 13 +++++++++++++ .../imdg/businessobject/EquitySecurityMapStore.java | 9 +++++++-- .../businessobject/FixedIncomeSecurityMapStore.java | 9 +++++++-- .../businessobject/MoneyMarketSecurityMapStore.java | 8 ++++++-- 4 files changed, 33 insertions(+), 6 deletions(-) diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ASecurityMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ASecurityMapStore.java index f6fdd4400..5a8d56640 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ASecurityMapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/ASecurityMapStore.java @@ -6,6 +6,8 @@ import ru.clearing.classes.statics.data.security.Security; import ru.spcex.clearing.imdg.base.TemplateMapStore; import ru.spcex.platform.utils.time.TimeUtil; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -37,6 +39,17 @@ public abstract class ASecurityMapStore extends TemplateMap + @Override + protected final S objectReader(ResultSet resultSet) throws SQLException { + S object = securityObjectReader(resultSet); + fillBySecurity(object, securityIdFromSecurity(object)); + return object; + } + + protected abstract Long securityIdFromSecurity(S object); + + protected abstract S securityObjectReader(ResultSet resultSet) throws SQLException; + protected void fillBySecurity(S object, Long securityId) { List resouts = jdbcTemplate.query( "SELECT * FROM SECURITY WHERE id = ?", new Object[]{securityId}, diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/EquitySecurityMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/EquitySecurityMapStore.java index b03eca856..c11ea7478 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/EquitySecurityMapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/EquitySecurityMapStore.java @@ -3,6 +3,7 @@ package ru.spcex.clearing.imdg.businessobject; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import ru.clearing.classes.statics.data.instrument.issue.EquitySecurity; +import ru.clearing.classes.statics.data.security.MoneyMarketSecurity; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.imdg.base.TemplateMapStore; import ru.spcex.platform.utils.time.TimeUtil; @@ -39,7 +40,7 @@ public class EquitySecurityMapStore extends ASecurityMapStore { @Override - protected EquitySecurity objectReader(ResultSet resultSet) throws SQLException { + protected EquitySecurity securityObjectReader(ResultSet resultSet) throws SQLException { EquitySecurity object = new EquitySecurity(); object.setId(resultSet.getObject("ID", Long.class)); @@ -47,10 +48,14 @@ public class EquitySecurityMapStore extends ASecurityMapStore { object.setShareType(resultSet.getObject("SHARE_TYPE", String.class)); // object.setLotSize(resultSet.getObject("LOT_SIZE", BigDecimal.class)); - fillBySecurity(object, object.getSecurityId()); return object; } + @Override + protected Long securityIdFromSecurity(EquitySecurity object) { + return object.getSecurityId(); + } + @Override protected Object[] objectToField(EquitySecurity equity) { Object[] args = new Object[]{ diff --git a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/FixedIncomeSecurityMapStore.java b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/FixedIncomeSecurityMapStore.java index 4a0d2f652..866d7c8a8 100644 --- a/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/FixedIncomeSecurityMapStore.java +++ b/clearing-parent/imdg/src/main/java/ru/spcex/clearing/imdg/businessobject/FixedIncomeSecurityMapStore.java @@ -3,6 +3,7 @@ package ru.spcex.clearing.imdg.businessobject; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Component; import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity; +import ru.clearing.classes.statics.data.security.MoneyMarketSecurity; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.platform.utils.time.TimeUtil; @@ -35,7 +36,7 @@ public class FixedIncomeSecurityMapStore extends ASecurityMapStore