|
@@ -20,19 +20,22 @@ public class ErrorLogTask {
|
|
|
private JdbcTemplate jdbcTemplate;
|
|
private JdbcTemplate jdbcTemplate;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 每天凌晨0点到1点开始执行
|
|
|
|
|
|
|
+ * 每天凌晨0点到2点开始执行
|
|
|
*/
|
|
*/
|
|
|
- @Scheduled(cron = "0 0/5 0,1 1 * ? ")
|
|
|
|
|
|
|
+ @Scheduled(cron = "0 0/5 0,1,2 * * ? ")
|
|
|
public void deleteLogs() {
|
|
public void deleteLogs() {
|
|
|
- // 删除日志明细
|
|
|
|
|
|
|
+ // 先查询最大id
|
|
|
|
|
+ Long maxId = jdbcTemplate.queryForObject("select max(log_id) from log$error where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d')", Long.class);
|
|
|
|
|
+
|
|
|
|
|
+ // 删除日志明细
|
|
|
jdbcTemplate.execute("delete from log$error$detail where log_logid in (select log_id from log$error " +
|
|
jdbcTemplate.execute("delete from log$error$detail where log_logid in (select log_id from log$error " +
|
|
|
- "where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d')) limit 1000");
|
|
|
|
|
|
|
+ "where log_logid <= " + maxId + " limit 10000");
|
|
|
// 删除日志主表信息
|
|
// 删除日志主表信息
|
|
|
jdbcTemplate.execute("delete from log$error " +
|
|
jdbcTemplate.execute("delete from log$error " +
|
|
|
- "where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
|
|
|
|
|
|
|
+ "where log_id <= " + maxId + " limit 10000");
|
|
|
// 删除单据记录
|
|
// 删除单据记录
|
|
|
- jdbcTemplate.execute("delete from erp$orders where date_format(or_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
|
|
|
|
|
|
|
+ jdbcTemplate.execute("delete from erp$orders where date_format(or_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d') limit 10000");
|
|
|
// 删除物料记录
|
|
// 删除物料记录
|
|
|
- jdbcTemplate.execute("delete from erp$products where date_format(pr_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
|
|
|
|
|
|
|
+ jdbcTemplate.execute("delete from erp$products where date_format(pr_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d') limit 10000");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|