diff --git a/afis-recall-web/pom.xml b/afis-recall-web/pom.xml index 336f336..f51bb4c 100644 --- a/afis-recall-web/pom.xml +++ b/afis-recall-web/pom.xml @@ -23,6 +23,13 @@ 1.1.22 + + + com.xuxueli + xxl-job-core + 2.3.0 + + com.wabestway.recall afis-recall-api diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/GenVideoJobHandler.java b/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/GenVideoJobHandler.java new file mode 100644 index 0000000..b229a24 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/GenVideoJobHandler.java @@ -0,0 +1,23 @@ +package com.wabestway.recall.jobtask; + +import com.wabestway.recall.trace.service.RecallOrderApiService; +import com.xxl.job.core.biz.model.ReturnT; +import com.xxl.job.core.handler.annotation.XxlJob; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +@Slf4j +@Component +public class GenVideoJobHandler { + @Autowired + private RecallOrderApiService recallOrderApiService; + + @XxlJob("VideoGenJobHandler") + public ReturnT genRecallVideo() { + log.info("[定时器:回溯视频]-开始执行"); + recallOrderApiService.traceVideo(); + log.info("[定时器:回溯视频]-执行完成"); + return ReturnT.SUCCESS; + } +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/XXLJobConfig.java b/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/XXLJobConfig.java new file mode 100644 index 0000000..9a65e8a --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/jobtask/XXLJobConfig.java @@ -0,0 +1,47 @@ +package com.wabestway.recall.jobtask; + +import com.xxl.job.core.executor.impl.XxlJobSpringExecutor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class XXLJobConfig { + + private Logger logger = LoggerFactory.getLogger(XXLJobConfig.class); + + @Value("${xxl.job.admin.addresses}") + private String adminAddresses; + + @Value("${xxl.job.accessToken}") + private String accessToken; + + @Value("${xxl.job.executor.appname}") + private String appname; + + @Value("${xxl.job.executor.port:-1}") + private int port; + + @Value("${xxl.job.executor.logpath}") + private String logPath; + + @Value("${xxl.job.executor.logretentiondays}") + private int logRetentionDays; + + @Bean + public XxlJobSpringExecutor xxlJobExecutor() { + logger.info(">>>>>>>>>>> xxl-job config init."); + XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); + xxlJobSpringExecutor.setAdminAddresses(adminAddresses); + xxlJobSpringExecutor.setAppname(appname); + xxlJobSpringExecutor.setPort(port); + xxlJobSpringExecutor.setAccessToken(accessToken); + xxlJobSpringExecutor.setLogPath(logPath); + xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays); + + return xxlJobSpringExecutor; + } + +} \ No newline at end of file