imdg http://jira.mfd.msk:8088/browse/CLS-473 поправил ограничение по дате на ExecutionFondMapStore, рефакторинг

This commit is contained in:
AKurakin 2023-08-22 10:50:22 +03:00
parent 91d31132be
commit bc101f6cb4
5 changed files with 9 additions and 38 deletions

View file

@ -126,14 +126,15 @@ public abstract class SimpleObjectMapStore<T extends SpcexObjectBase> implements
* Выгружает ID по таблице по условию dateField >= today * Выгружает ID по таблице по условию dateField >= today
* *
* @param dateField поле даты * @param dateField поле даты
* @param canBeGreat true - используется условие >= today, иначе строгое =
* @return ID's * @return ID's
*/ */
public Iterable<Long> defaultLoadAllKeysOnTodayByField(String dateField) { public Iterable<Long> defaultLoadAllKeysOnTodayByField(String dateField, boolean canBeGreat) {
LocalDate today = LocalDate.now(); LocalDate today = LocalDate.now();
log.debug("loadAllKeys from {} on {} >= today {}", getTableName(), dateField, today); log.debug("loadAllKeys from {} on {} {} today", getTableName(), dateField, canBeGreat ? ">=" : "=");
List<Long> keys; List<Long> keys;
try { try {
keys = jdbcTemplate.query("select id from " + getTableName() + " where " + dateField + " >= ?", keys = jdbcTemplate.query("select id from " + getTableName() + " where " + dateField + (canBeGreat ? " >= ?" : " = ?"),
(resultSet, i) -> resultSet.getLong("id"), (resultSet, i) -> resultSet.getLong("id"),
new Object[]{today}); new Object[]{today});
} catch (Throwable e) { } catch (Throwable e) {
@ -144,7 +145,7 @@ public abstract class SimpleObjectMapStore<T extends SpcexObjectBase> implements
} }
public Iterable<Long> defaultLoadAllKeysOnTodayByTradingDate() { public Iterable<Long> defaultLoadAllKeysOnTodayByTradingDate() {
return defaultLoadAllKeysOnTodayByField("trading_date"); return defaultLoadAllKeysOnTodayByField("trading_date", false);
} }
protected void batchInsertUpdate(@NonNull String insertStatement, @NonNull List<Object[]> args) { protected void batchInsertUpdate(@NonNull String insertStatement, @NonNull List<Object[]> args) {

View file

@ -37,7 +37,7 @@ public class ExecutionFondMapStore extends TemplateMapStore<ExecutionFond> {
@Override @Override
public Iterable<Long> loadAllKeys() { public Iterable<Long> loadAllKeys() {
return defaultLoadAllKeysOnTodayByField("SETTLEMENT_DATE"); return defaultLoadAllKeysOnTodayByField("SETTLEMENT_DATE", true);
} }
@Override @Override

View file

@ -40,17 +40,7 @@ public class StatementMapStore extends TemplateMapStore<Statement> {
@Override @Override
public Iterable<Long> loadAllKeys() { public Iterable<Long> loadAllKeys() {
log.debug("loadAllKeys from " + getTableName()); return defaultLoadAllKeysOnTodayByField("clearing_date", false);
List<Long> keys;
try {
keys = jdbcTemplate.query("select id from " + getTableName() + " where clearing_date = ?",
new Object[]{LocalDate.now()},
(resultSet, i) -> resultSet.getLong("id"));
} catch (Throwable e) {
log.error("{}", ExceptionUtils.getStackTrace(e));
throw e;
}
return keys;
} }
@Override @Override

View file

@ -39,17 +39,7 @@ public class NotificationMapStore extends TemplateMapStore<Notification> {
@Override @Override
public Iterable<Long> loadAllKeys() { public Iterable<Long> loadAllKeys() {
log.debug("loadAllKeys from " + getTableName()); return defaultLoadAllKeysOnTodayByField("clearing_date", false);
List<Long> keys;
try {
keys = jdbcTemplate.query("select id from " + getTableName() + " where clearing_date = ?",
new Object[]{LocalDate.now()},
(resultSet, i) -> resultSet.getLong("id"));
} catch (Throwable e) {
log.error("{}", ExceptionUtils.getStackTrace(e));
throw e;
}
return keys;
} }
@Override @Override

View file

@ -46,17 +46,7 @@ public class STradesMapStore extends TemplateMapStore<STrades> {
@Override @Override
public Iterable<Long> loadAllKeys() { public Iterable<Long> loadAllKeys() {
log.debug("loadAllKeys from " + getTableName()); return defaultLoadAllKeysOnTodayByField("trade_date", false);
List<Long> keys;
try {
keys = jdbcTemplate.query("select id from " + getTableName() + " where trade_date = ?",
new Object[]{LocalDate.now()},
(resultSet, i) -> resultSet.getLong("id"));
} catch (Throwable e) {
log.error("{}", ExceptionUtils.getStackTrace(e));
throw e;
}
return keys;
} }
@Override @Override