package com.zhgd.xmgl.task; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord; import com.zhgd.xmgl.modules.video.service.IAiAnalyseHardWareAlarmRecordService; import lombok.extern.slf4j.Slf4j; import net.javacrumbs.shedlock.core.SchedulerLock; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.util.Date; /** * @author 邱平毅 * @ClassName DeleteDataTask * @date 2022/8/29 14:44 * @Version 1.0 * 大屏数据定时清理 */ @Slf4j @Component public class DeleteDataTask { @Autowired IAiAnalyseHardWareAlarmRecordService aiAnalyseHardWareAlarmRecordService; /** * 每天十点清除超过两周的数据 */ @SchedulerLock(name = "deleteData", lockAtMostFor = 1000 * 60 * 60, lockAtLeastFor = 1000 * 60 * 5) @Scheduled(cron = "0 0 10 * * ?") public void deleteData() { log.info("DeleteDataTask#deleteData定时删除过时数据"); String removeDate = DateUtil.offsetMonth(new Date(), -3).toString(); aiAnalyseHardWareAlarmRecordService.remove(Wrappers.query().eq("status", 1).le("create_time", removeDate)); } }