Compare commits

...
Sign in to create a new pull request.

1 commit

4 changed files with 33 additions and 6 deletions

View file

@ -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 <S extends Security> 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<S> resouts = jdbcTemplate.query(
"SELECT * FROM SECURITY WHERE id = ?", new Object[]{securityId},

View file

@ -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<EquitySecurity> {
@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<EquitySecurity> {
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[]{

View file

@ -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<FixedIncomeSe
}
@Override
protected FixedIncomeSecurity objectReader(ResultSet resultSet) throws SQLException {
protected FixedIncomeSecurity securityObjectReader(ResultSet resultSet) throws SQLException {
FixedIncomeSecurity object = new FixedIncomeSecurity();
object.setId(resultSet.getObject("ID", Long.class));
@ -48,10 +49,14 @@ public class FixedIncomeSecurityMapStore extends ASecurityMapStore<FixedIncomeSe
object.setCoupon(resultSet.getObject("COUPON", BigDecimal.class));
object.setCouponFrequency(resultSet.getObject("COUPON_FREQUENCY", Long.class));
fillBySecurity(object, object.getSecurityId());
return object;
}
@Override
protected Long securityIdFromSecurity(FixedIncomeSecurity object) {
return object.getSecurityId();
}
@Override
protected Object[] objectToField(FixedIncomeSecurity object) {
Object[] args = new Object[]{

View file

@ -41,7 +41,7 @@ public class MoneyMarketSecurityMapStore extends ASecurityMapStore<MoneyMarketSe
}
@Override
protected MoneyMarketSecurity objectReader(ResultSet resultSet) throws SQLException {
protected MoneyMarketSecurity securityObjectReader(ResultSet resultSet) throws SQLException {
MoneyMarketSecurity object = new MoneyMarketSecurity();
// object.setId(resultSet.getObject("id", Long.class));
@ -67,10 +67,14 @@ public class MoneyMarketSecurityMapStore extends ASecurityMapStore<MoneyMarketSe
object.setConvention(resultSet.getObject("CONVENTION", String.class));
object.setClearingOrganization(resultSet.getObject("CLEARING_ORGANIZATION", String.class));
fillBySecurity(object, object.getSecurityId());
return object;
}
@Override
protected Long securityIdFromSecurity(MoneyMarketSecurity object) {
return object.getSecurityId();
}
@Override
protected Object[] objectToField(MoneyMarketSecurity moneyMarketSecurity) {