From a048a46bf6b6f6afbbc721911646b9c0efa9e823 Mon Sep 17 00:00:00 2001 From: etreshenkov Date: Mon, 16 Oct 2023 18:22:02 +0300 Subject: [PATCH] add search mapstores --- ...earchProxyAdmittedLiabilitiesRegister.java | 19 ++++++++ ...SearchProxyCoveredLiabilitiesRegister.java | 19 ++++++++ .../index/SearchProxyExecutionFond.java | 19 ++++++++ ...chAdmittedLiabilitiesRegisterMapStore.java | 45 +++++++++++++++++++ ...rchCoveredLiabilitiesRegisterMapStore.java | 45 +++++++++++++++++++ .../SearchExecutionFondMapStore.java | 44 ++++++++++++++++++ 6 files changed, 191 insertions(+) create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyAdmittedLiabilitiesRegister.java create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyCoveredLiabilitiesRegister.java create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyExecutionFond.java create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchAdmittedLiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchCoveredLiabilitiesRegisterMapStore.java create mode 100644 clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchExecutionFondMapStore.java diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyAdmittedLiabilitiesRegister.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyAdmittedLiabilitiesRegister.java new file mode 100644 index 000000000..9c2102f03 --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyAdmittedLiabilitiesRegister.java @@ -0,0 +1,19 @@ +package ru.spcex.clearing.historyimdg.index; + +import ru.spcex.clearing.historyimdg.index.field.SearchWithClearingDate; + +import java.time.LocalDate; + +public class SearchProxyAdmittedLiabilitiesRegister extends SearchProxy implements SearchWithClearingDate { + private LocalDate clearingDate; + + @Override + public LocalDate getClearingDate() { + return clearingDate; + } + + @Override + public void setClearingDate(LocalDate clearingDate) { + this.clearingDate = clearingDate; + } +} diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyCoveredLiabilitiesRegister.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyCoveredLiabilitiesRegister.java new file mode 100644 index 000000000..8b3aef3ee --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyCoveredLiabilitiesRegister.java @@ -0,0 +1,19 @@ +package ru.spcex.clearing.historyimdg.index; + +import ru.spcex.clearing.historyimdg.index.field.SearchWithClearingDate; + +import java.time.LocalDate; + +public class SearchProxyCoveredLiabilitiesRegister extends SearchProxy implements SearchWithClearingDate { + private LocalDate clearingDate; + + @Override + public LocalDate getClearingDate() { + return clearingDate; + } + + @Override + public void setClearingDate(LocalDate clearingDate) { + this.clearingDate = clearingDate; + } +} diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyExecutionFond.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyExecutionFond.java new file mode 100644 index 000000000..0da009281 --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/index/SearchProxyExecutionFond.java @@ -0,0 +1,19 @@ +package ru.spcex.clearing.historyimdg.index; + +import ru.spcex.clearing.historyimdg.index.field.SearchWithTradingDate; + +import java.time.LocalDate; + +public class SearchProxyExecutionFond extends SearchProxy implements SearchWithTradingDate { + private LocalDate tradingDate; + + @Override + public LocalDate getTradingDate() { + return tradingDate; + } + + @Override + public void setTradingDate(LocalDate tradingDate) { + this.tradingDate = tradingDate; + } +} diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchAdmittedLiabilitiesRegisterMapStore.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchAdmittedLiabilitiesRegisterMapStore.java new file mode 100644 index 000000000..95d69b972 --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchAdmittedLiabilitiesRegisterMapStore.java @@ -0,0 +1,45 @@ +package ru.spcex.clearing.historyimdg.mapstores; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.spcex.clearing.historyimdg.index.SearchProxyAdmittedLiabilitiesRegister; +import ru.spcex.clearing.imdg.IMDGDistributedNames; + +import java.util.Collection; +import java.util.Collections; +import java.util.Map; + +@Component +public class SearchAdmittedLiabilitiesRegisterMapStore extends AbstractSliceMapLoader { + public SearchAdmittedLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + protected String getTableName() { + return "admitted_liabilities_register"; + } +// + + @Override + public Collection load(Collection keys) { + Map> paramMap = Collections.singletonMap("ids", keys); + return namedParameterJdbcTemplate.query("select * from " + getTableName() + " where id in (:ids)", paramMap, + (rs, rowNum) -> { + SearchProxyAdmittedLiabilitiesRegister proxyRegister = new SearchProxyAdmittedLiabilitiesRegister(); + proxyRegister.setId(rs.getObject("id", Long.class)); + proxyRegister.setClearingDate(getLocalDateFromSqlDate(rs, "clearing_date")); + return proxyRegister; + }); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_SearchAdmittedLiabilitiesRegister; + } + + @Override + public String[] getIndexingField() { + return new String[]{"created"}; + } +} diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchCoveredLiabilitiesRegisterMapStore.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchCoveredLiabilitiesRegisterMapStore.java new file mode 100644 index 000000000..7b6c4fcf7 --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchCoveredLiabilitiesRegisterMapStore.java @@ -0,0 +1,45 @@ +package ru.spcex.clearing.historyimdg.mapstores; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.spcex.clearing.historyimdg.index.SearchProxyCoveredLiabilitiesRegister; +import ru.spcex.clearing.imdg.IMDGDistributedNames; + +import java.util.Collection; +import java.util.Collections; +import java.util.Map; + +@Component +public class SearchCoveredLiabilitiesRegisterMapStore extends AbstractSliceMapLoader { + public SearchCoveredLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + protected String getTableName() { + return "covered_liabilities_register"; + } +// + + @Override + public Collection load(Collection keys) { + Map> paramMap = Collections.singletonMap("ids", keys); + return namedParameterJdbcTemplate.query("select * from " + getTableName() + " where id in (:ids)", paramMap, + (rs, rowNum) -> { + SearchProxyCoveredLiabilitiesRegister proxyRegister = new SearchProxyCoveredLiabilitiesRegister(); + proxyRegister.setId(rs.getObject("id", Long.class)); + proxyRegister.setClearingDate(getLocalDateFromSqlDate(rs, "clearing_date")); + return proxyRegister; + }); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_SearchAdmittedLiabilitiesRegister; + } + + @Override + public String[] getIndexingField() { + return new String[]{"created"}; + } +} diff --git a/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchExecutionFondMapStore.java b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchExecutionFondMapStore.java new file mode 100644 index 000000000..f2c8a7c1e --- /dev/null +++ b/clearing-parent/imdg-hist/src/main/java/ru/spcex/clearing/historyimdg/mapstores/SearchExecutionFondMapStore.java @@ -0,0 +1,44 @@ +package ru.spcex.clearing.historyimdg.mapstores; + +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import ru.spcex.clearing.historyimdg.index.SearchProxyExecutionFond; +import ru.spcex.clearing.imdg.IMDGDistributedNames; + +import java.util.Collection; +import java.util.Collections; +import java.util.Map; + +@Component +public class SearchExecutionFondMapStore extends AbstractSliceMapLoader { + public SearchExecutionFondMapStore(JdbcTemplate jdbcTemplate) { + super(jdbcTemplate); + } + + @Override + protected String getTableName() { + return "execution_fond"; + } + + @Override + public Collection load(Collection keys) { + Map> paramMap = Collections.singletonMap("ids", keys); + return namedParameterJdbcTemplate.query("select * from " + getTableName() + " where id in (:ids)", paramMap, + (rs, rowNum) -> { + SearchProxyExecutionFond proxyFond = new SearchProxyExecutionFond(); + proxyFond.setId(rs.getObject("id", Long.class)); + proxyFond.setTradingDate(getLocalDateFromSqlDate(rs,"trading_date")); + return proxyFond; + }); + } + + @Override + public String getMapName() { + return IMDGDistributedNames.Map_SearchExecutionFond; + } + + @Override + public String[] getIndexingField() { + return new String[]{"tradingDate"}; + } +}