From 452a8b5cabaef4c92c2e06088af3aa339ccc7fa3 Mon Sep 17 00:00:00 2001 From: JiyangTang Date: Mon, 17 Jun 2024 16:12:29 +0800 Subject: [PATCH] modify apple inventory monitor schedule --- ...ava => AppleInventoryScheduleHandler.java} | 45 ++++++++++--------- 1 file changed, 24 insertions(+), 21 deletions(-) rename baogutang-admin/src/main/java/top/baogutang/admin/schedule/{AppleInventorySchedule.java => AppleInventoryScheduleHandler.java} (94%) diff --git a/baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventorySchedule.java b/baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventoryScheduleHandler.java similarity index 94% rename from baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventorySchedule.java rename to baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventoryScheduleHandler.java index a0799ef..8ab208b 100644 --- a/baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventorySchedule.java +++ b/baogutang-admin/src/main/java/top/baogutang/admin/schedule/AppleInventoryScheduleHandler.java @@ -9,11 +9,13 @@ import cn.hutool.http.HttpResponse; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.xxl.job.core.biz.model.ReturnT; +import com.xxl.job.core.handler.IJobHandler; +import com.xxl.job.core.handler.annotation.XxlJob; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.cloud.context.config.annotation.RefreshScope; -import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import top.baogutang.admin.domain.IphoneProductDto; import top.baogutang.admin.utils.DingTalkMsgPushUtils; @@ -34,7 +36,7 @@ import java.util.stream.Collectors; @Slf4j @Component @RefreshScope -public class AppleInventorySchedule { +public class AppleInventoryScheduleHandler extends IJobHandler { @Value("${baogutang.apple.country_code:cn}") private String countryCode; @@ -57,25 +59,6 @@ public class AppleInventorySchedule { @Resource private DingTalkMsgPushUtils dingTalkMsgPushUtils; - @Scheduled(cron = "0 0/30 * * * ? ") - public void appleInventoryMonitor() { - if (!Boolean.TRUE.equals(appleInventoryMonitorSwitch)) { - log.info(">>>>>>>>>>apple inventory monitor switch closed!<<<<<<<<<<"); - return; - } - // 获取设备信息 - List products = iphoneProductParserUtils.getProducts(deviceCode, countryCode); - //监视机型型号 - products.forEach(product -> { - this.doMonitor(product); - try { - Thread.sleep(2000); - } catch (InterruptedException e) { - log.error(">>>>>>>>>>apple inventory monitor error:{}<<<<<<<<<<", e.getMessage(), e); - } - }); - } - private void doMonitor(IphoneProductDto product) { @@ -190,4 +173,24 @@ public class AppleInventorySchedule { return CharSequenceUtil.format(messageTemplate, twoLineAddress.replace("\n", " "), daytimePhone, location, distanceWithUnit); } + @Override + @XxlJob("appleInventoryScheduleHandler") + public ReturnT execute(String params) throws Exception { + if (!Boolean.TRUE.equals(appleInventoryMonitorSwitch)) { + log.info(">>>>>>>>>>apple inventory monitor switch closed!<<<<<<<<<<"); + return ReturnT.SUCCESS; + } + // 获取设备信息 + List products = iphoneProductParserUtils.getProducts(deviceCode, countryCode); + //监视机型型号 + products.forEach(product -> { + this.doMonitor(product); + try { + Thread.sleep(2000); + } catch (InterruptedException e) { + log.error(">>>>>>>>>>apple inventory monitor error:{}<<<<<<<<<<", e.getMessage(), e); + } + }); + return ReturnT.SUCCESS; + } }