package com.qianwen.smartman.modules.dmpLog.jobHandler; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.handler.annotation.XxlJob; import com.xxl.job.core.log.XxlJobLogger; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.tool.utils.Func; import com.qianwen.smartman.modules.cps.mapper.TdengineMapper; import com.qianwen.smartman.modules.dmpLog.constant.DmpLogSyncConstant; import com.qianwen.smartman.modules.dmpLog.mapper.DmpLogSignalMapper; import org.springframework.stereotype.Component; @Component /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/dmpLog/jobHandler/DmpLogRegularCleanJob.class */ public class DmpLogRegularCleanJob { private static final Logger log = LoggerFactory.getLogger(DmpLogRegularCleanJob.class); private final TdengineMapper tdengineMapper; private final DmpLogSignalMapper dmpLogSignalMapper; public DmpLogRegularCleanJob(final TdengineMapper tdengineMapper, final DmpLogSignalMapper dmpLogSignalMapper) { this.tdengineMapper = tdengineMapper; this.dmpLogSignalMapper = dmpLogSignalMapper; } @XxlJob("dmpLogRegularCleanJobHandler") public ReturnT dmpLogRegularCleanJobHandler(String param) throws Exception { XxlJobLogger.log("XXL-JOB, DMP日志定期清除任务.....开始", new Object[0]); int delTableRange = 3; if (Func.isNotEmpty(param)) { delTableRange = Integer.valueOf(param).intValue(); } LocalDate localDate = LocalDate.now().minusMonths(delTableRange); DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyyMM"); Integer rangeParam = Integer.valueOf(localDate.format(fmt)); List allDeleteTables = this.dmpLogSignalMapper.getTableNamesByMonth(rangeParam); if (Func.isNotEmpty(allDeleteTables)) { allDeleteTables.forEach(tableName -> { if (tableName.startsWith(DmpLogSyncConstant.DMP_TD_TABLE_PREFIX)) { this.tdengineMapper.dropTable(tableName); } }); } XxlJobLogger.log("XXL-JOB, DMP日志定期清除任务.....结束", new Object[0]); return ReturnT.SUCCESS; } }