Browse Source

修改模型定时任务2

master
sjh 1 year ago
parent
commit
2931c81416
  1. 17
      src/main/java/com/biutag/supervisiondata/service/impl/ModelClueServiceImpl.java
  2. 18
      src/main/java/com/biutag/supervisiondata/task/TaskService.java

17
src/main/java/com/biutag/supervisiondata/service/impl/ModelClueServiceImpl.java

@ -119,7 +119,7 @@ public class ModelClueServiceImpl implements ModelClueService {
getModelCluesForModel22(sql, modelClues);
return modelClues;
} else if (modelId == 23) { // 23号模型:保安员预警
modelClueDataMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 23));
modelClueMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 23));
} else if (modelId == 25) { // 25号模型:重点人员管控人数过多
getModelCluesForModel25(sql, modelClues);
return modelClues;
@ -833,7 +833,7 @@ public class ModelClueServiceImpl implements ModelClueService {
private void getModelCluesForModel22(String param, List<ModelClue> modelClues) {
System.out.println("模型22开始查询数据库");
// 定时任务
String sql = "select * from \"JSDZ_4GDB\".\"v_anomaly_statistics\" where \"CREATETIME\" = " + getSpeDayString(1);
String sql = "select * from \"JSDZ_4GDB\".\"v_anomaly_statistics\" where \"CREATETIME\" = \"" + getYesterdayString() + "\"";
List<Map<String, Object>> sqlList = modelClueDataDMRepository.selectByUniqueKeys(sql);
System.out.println("模型22查询数据库完毕,结果数量:" + sqlList.size());
if (sqlList.isEmpty()) {
@ -911,7 +911,7 @@ public class ModelClueServiceImpl implements ModelClueService {
}
private void getModelCluesForModel25(String sql, List<ModelClue> modelClues) {
modelClueDataMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 25));
modelClueMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 25));
System.out.println("模型25开始查询数据库");
List<Map<String, Object>> sqlList = modelClueDataMapper.selectByUniqueKeys(sql);
System.out.println("模型25查询数据库完毕,结果数量:" + sqlList.size());
@ -1081,7 +1081,7 @@ public class ModelClueServiceImpl implements ModelClueService {
}
newModelClue.setDistributionState("0");
newModelClue.setThingDesc("发现" + newModelClue.getInvolveDepartName()
+ "在" + getDateString(getSpeDayString(30)) + "到" + getDateString(getTodayString())
+ "在" + getSpeDayString(30) + "到" + getDateString(getTodayString())
+ "之间共有" + departAllNumMap.get(department) + "个警情,变更了" + departNumMap.get(department)
+ "个警情的结警性质,超过了该单位总警情的70%,存在大量变更接警性质的异常情况。");
newModelClue.setData(newModelClue.getThingDesc());
@ -1090,7 +1090,7 @@ public class ModelClueServiceImpl implements ModelClueService {
}
private void getModelCluesForModel105(String sql, List<ModelClue> modelClues) {
modelClueDataMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 105));
modelClueMapper.delete(Wrappers.<ModelClue>lambdaUpdate().eq(ModelClue::getModelId, 105));
System.out.println("模型105开始查询数据库");
List<Map<String, Object>> sqlList = modelClueMapper.selectByUniqueKeys(sql);
System.out.println("模型105查询数据库完毕,结果数量:" + sqlList.size());
@ -1261,6 +1261,13 @@ public class ModelClueServiceImpl implements ModelClueService {
return result.format(formatter);
}
private static String getYesterdayString() {
LocalDate today = LocalDate.now();
LocalDate result = today.minusDays(1);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return result.format(formatter);
}
private static String getTodayString() {
LocalDate today = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");

18
src/main/java/com/biutag/supervisiondata/task/TaskService.java

@ -102,8 +102,12 @@ public class TaskService {
public void runModel22To29() {
for (int i = 22; i <= 29; i++) {
log.info("开始执行模型{}", i);
modelClueService.generate(i);
log.info("模型{}执行完毕", i);
try {
modelClueService.generate(i);
log.info("模型{}执行完毕", i);
} catch (Exception e) {
log.error("模型{}执行失败", i, e);
}
}
}
@ -117,12 +121,16 @@ public class TaskService {
@Scheduled(cron = "0 45 3 * * *")
public void runModel100To103() {
for (int i = 100; i <= 103; i++) {
log.info("开始执行模型{}", i);
modelClueService.generate(i);
log.info("模型{}执行完毕", i);
try {
modelClueService.generate(i);
log.info("模型{}执行完毕", i);
} catch (Exception e) {
log.error("模型{}执行失败", i, e);
}
}
}
// 每月1日执行
@Scheduled(cron = "0 50 3 1 * ?")
public void runModel104() {
log.info("开始执行模型104");

Loading…
Cancel
Save