From 718fbfc9999876a6f5fb620e53968b34877149ec Mon Sep 17 00:00:00 2001 From: TanYibin <5491541@qq.com> Date: Thu, 16 Mar 2023 15:48:23 +0800 Subject: [PATCH] 根据创建时间删除指定表记录(2) --- huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/TableCleanTesk.java | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/TableCleanTesk.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/TableCleanTesk.java index f3a8a84..7ecfc81 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/TableCleanTesk.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/monitor/job/TableCleanTesk.java @@ -9,6 +9,7 @@ import java.util.List; import org.apache.ibatis.session.SqlSession; import org.jeecg.common.util.DateUtils; +import org.jeecg.modules.system.mapper.SysLogMapper; import org.jeecg.modules.wms.monitor.job.dto.TableCleanDto; import org.jeecg.utils.LocalDateUtils; import org.quartz.DisallowConcurrentExecution; @@ -23,9 +24,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import cn.hutool.core.util.StrUtil; +import cn.monitor4all.logRecord.annotation.OperationLog; import dm.jdbc.util.ReflectUtil; import lombok.extern.slf4j.Slf4j; +/** + * 根据创建时间删除指定表记录定时任务 + * @author TanYibin + * @createDate 2023年3月16日 + */ @Slf4j @PersistJobDataAfterExecution @DisallowConcurrentExecution @@ -54,7 +61,7 @@ public class TableCleanTesk implements Job { if (createTimeField != null) { QueryWrapper<?> queryWrapper = new QueryWrapper<>(); LocalDateTime createTime = LocalDateUtils.minus(LocalDateTime.now(), tableCleanDto.getRetentionDays(), ChronoUnit.DAYS); - queryWrapper.select("id").lt("create_time", createTime); + queryWrapper.lt("create_time", createTime); BaseMapper baseMapper = (BaseMapper)this.sqlSession.getMapper(mapperClass); Integer deleteCount = baseMapper.delete(queryWrapper); log.info("定时任务 TableCleanTesk 删除 {} {} 天前数据 {} 行", className, tableCleanDto.getRetentionDays(), deleteCount); @@ -66,14 +73,22 @@ public class TableCleanTesk implements Job { } } + /** + * 参数范例 + * @author TanYibin + * @createDate 2023年3月16日 + * @param args + */ public static void main(String[] args) { List<TableCleanDto> tableCleanList = new ArrayList<TableCleanDto>(); - TableCleanDto tableCleanDto = new TableCleanDto(); - tableCleanDto.setMapperName("org.jeecg.modules.system.mapper.SysLogMapper"); - tableCleanDto.setRetentionDays(90); - tableCleanDto.setMapperName("org.jeecg.modules.system.mapper.SysLogMapper"); - tableCleanDto.setRetentionDays(90); - tableCleanList.add(tableCleanDto); + TableCleanDto tableCleanDto1 = new TableCleanDto(); + tableCleanDto1.setMapperName(SysLogMapper.class.getName()); + tableCleanDto1.setRetentionDays(90); + TableCleanDto tableCleanDto2 = new TableCleanDto(); + tableCleanDto2.setMapperName(OperationLog.class.getName()); + tableCleanDto2.setRetentionDays(90); + tableCleanList.add(tableCleanDto1); + tableCleanList.add(tableCleanDto2); System.out.println(JSON.toJSONString(tableCleanList)); } } -- libgit2 0.22.2