add search mapstores

This commit is contained in:
etreshenkov 2023-10-16 18:22:02 +03:00
parent 6887b627c7
commit a048a46bf6
6 changed files with 191 additions and 0 deletions

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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;
}
}

View file

@ -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<SearchProxyAdmittedLiabilitiesRegister> {
public SearchAdmittedLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
protected String getTableName() {
return "admitted_liabilities_register";
}
//
@Override
public Collection<SearchProxyAdmittedLiabilitiesRegister> load(Collection<Long> keys) {
Map<String, Collection<Long>> 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"};
}
}

View file

@ -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<SearchProxyCoveredLiabilitiesRegister> {
public SearchCoveredLiabilitiesRegisterMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
protected String getTableName() {
return "covered_liabilities_register";
}
//
@Override
public Collection<SearchProxyCoveredLiabilitiesRegister> load(Collection<Long> keys) {
Map<String, Collection<Long>> 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"};
}
}

View file

@ -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<SearchProxyExecutionFond> {
public SearchExecutionFondMapStore(JdbcTemplate jdbcTemplate) {
super(jdbcTemplate);
}
@Override
protected String getTableName() {
return "execution_fond";
}
@Override
public Collection<SearchProxyExecutionFond> load(Collection<Long> keys) {
Map<String, Collection<Long>> 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"};
}
}