package cn.lili.job; import cn.lili.modules.lmk.domain.vo.CollectTypeNumVO; import cn.lili.modules.lmk.enums.general.CollectTypeEnum; import cn.lili.modules.lmk.service.MyCollectService; import cn.lili.modules.lmk.service.VideoCommentService; import cn.lili.modules.lmk.service.VideoService; import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.handler.annotation.XxlJob; import lombok.RequiredArgsConstructor; import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Component; import java.util.List; /** * 视频相关的定时任务 * * @author:xp * @date:2025/5/23 9:13 */ @Component @RequiredArgsConstructor public class VideoJob { private final VideoService videoService; private final MyCollectService myCollectService; private final VideoCommentService videoCommentService; /** * 视频收藏数统计 * * @throws Exception */ @XxlJob("videoCollectNumJob") public void videoCollectNumJob() throws Exception { XxlJobHelper.log("开始执行:视频收藏数统计"); List numList = myCollectService.countNumGroupByType(CollectTypeEnum.VIDEO.getValue()); if (CollectionUtils.isNotEmpty(numList)) { videoService.updateCollectNumBatch(numList); } } /** * 视频评论数统计 * * @throws Exception */ @XxlJob("videoCommentNumJob") public void videoCommentNumJob() throws Exception { XxlJobHelper.log("开始执行:视频评论数统计"); List numList = videoCommentService.countNumGroupByVideo(); if (CollectionUtils.isNotEmpty(numList)) { videoService.updateCommentNumBatch(numList); } } }