From 268b63e607875205e8271b2482f052801723cb39 Mon Sep 17 00:00:00 2001 From: Xiang Date: Sat, 9 May 2026 14:35:54 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B1=9F=E4=BD=93=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/xiang/common/enums/ScheduleEnums.java | 3 + .../schedule/JntyzxMiniappScheduleConfig.java | 42 ++++++++- .../schedule/JntyzxUserInfoConfigTask.java | 2 + .../miniapp/schedule/JtTokenRefreshTask.java | 2 + .../schedule/JtVenueInfoTodayResultTask.java | 94 +++++++++++++++++++ .../JtVenueInfoTomorrowResultTask.java | 94 +++++++++++++++++++ .../miniapp/schedule/JtVenuePullTask.java | 36 ++++--- .../schedule/JtVenueSubscribeTask.java | 3 + .../schedule/JtVenueTomorrowPullTask.java | 27 ++++-- .../service/impl/VenueServiceImpl.java | 9 +- .../jntyzx/miniapp/utils/MsgSendUtils.java | 2 +- .../jntyzx/miniapp/utils/VenueInfoUtils.java | 3 + .../jntyzx/zlb/schedule/ZlbTaskConfig.java | 20 +++- 13 files changed, 301 insertions(+), 36 deletions(-) create mode 100644 src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTodayResultTask.java create mode 100644 src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTomorrowResultTask.java diff --git a/src/main/java/com/xiang/common/enums/ScheduleEnums.java b/src/main/java/com/xiang/common/enums/ScheduleEnums.java index 6ea4c02..bbe9742 100644 --- a/src/main/java/com/xiang/common/enums/ScheduleEnums.java +++ b/src/main/java/com/xiang/common/enums/ScheduleEnums.java @@ -38,6 +38,9 @@ public enum ScheduleEnums { JNTYZX_VENUE_TODAY_SUBSCRIBE_TASK(4, "jt-miniApp", "jntyzxVenueTodaySubscribeTask"), JNTYZX_VENUE_TOMORROW_PULL_TASK(4, "jt-miniApp", "jntyzxVenueTodayPullTask"), JNTYZX_USER_INFO_CONFIG(4, "jt-miniApp", "jntyzxUserInfoConfigTask"), + JNTYZX_VENUE_INFO_TODAY_RESULT_TASK(4, "jt-miniApp", "jtVenueInfoTodayResultTask"), + JNTYZX_VENUE_INFO_TOMORROW_RESULT_TASK(4, "jt-miniApp", "jtVenueInfoTomorrowResultTask"), + ; private final Integer moduleCode; diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxMiniappScheduleConfig.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxMiniappScheduleConfig.java index af70e5a..72a4865 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxMiniappScheduleConfig.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxMiniappScheduleConfig.java @@ -7,6 +7,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; /** + * 定时任务配置器 + * * @Author: xiang * @Date: 2026-05-09 08:56 */ @@ -20,35 +22,69 @@ public class JntyzxMiniappScheduleConfig { private final JtVenueSubscribeTask jtVenueSubscribeTask; private final JtVenueTomorrowPullTask jtVenueTomorrowPullTask; private final JntyzxUserInfoConfigTask jntyzxUserInfoConfigTask; + private final JtVenueInfoTodayResultTask jtVenueInfoTodayResultTask; + private final JtVenueInfoTomorrowResultTask jtVenueInfoTomorrowResultTask; - + /** + * token刷新 + */ @Scheduled(cron = "0 20,50 * * * ?") @GetMapping("/jtTokenRefreshTask") public void jtTokenRefreshTask() { jtTokenRefreshTask.run(); } -// @Scheduled(cron = "0 0/1 10-18 * * ?") + /** + * 每分钟场地信息更新 + */ + @Scheduled(cron = "0 0/1 10-18 * * ?") @GetMapping("/jtVenuePullTask") public void jtVenuePullTask() { jtVenuePullTask.run(); } + /** + * 拉取第二天场地信息 + */ @Scheduled(cron = "0 30 8 * * ?") @GetMapping("/jtVenueTomorrowPullTask") public void jtVenueTomorrowPullTask() { jtVenueTomorrowPullTask.run(); } + /** + * 配置下单用户场地数据 + */ @Scheduled(cron = "0 40 8 * * ?") @GetMapping("/jtUserInfoConfig") public void jtUserInfoConfig() { jntyzxUserInfoConfigTask.run(); } - @Scheduled(cron = "5 0 9 * * ?") + /** + * 下单定时任务 + */ + @Scheduled(cron = "0 0 9 * * ?") @GetMapping("/jtVenueSubscribeTask") public void jtVenueSubscribeTask() { jtVenueSubscribeTask.run(); } + + /** + * 当天场地订阅结果 + */ + @Scheduled(cron = "0 0 17 * * ?") + @GetMapping("/jtVenueInfoTodayResultTask") + public void jtVenueInfoTodayResultTask() { + jtVenueInfoTodayResultTask.run(); + } + + /** + * 第二天场地订阅结果 + */ + @Scheduled(cron = "0 10 9 * * ?") + @GetMapping("/jtVenueInfoTomorrowResultTask") + public void jtVenueInfoTomorrowResultTask() { + jtVenueInfoTomorrowResultTask.run(); + } } diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxUserInfoConfigTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxUserInfoConfigTask.java index 066d356..a17a291 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxUserInfoConfigTask.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JntyzxUserInfoConfigTask.java @@ -26,6 +26,8 @@ import java.util.Comparator; import java.util.List; /** + * 用户场地配置任务 每日8:40运行 + * * @Author: xiang * @Date: 2026-05-09 09:58 */ diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtTokenRefreshTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtTokenRefreshTask.java index db89af1..08f2d5e 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtTokenRefreshTask.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtTokenRefreshTask.java @@ -11,6 +11,8 @@ import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RestController; /** + * 用户token刷新定时任务 每半个小时运行一次 在每个小时的20和50分 + * * @Author: xiang * @Date: 2026-01-15 17:29 */ diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTodayResultTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTodayResultTask.java new file mode 100644 index 0000000..f745d31 --- /dev/null +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTodayResultTask.java @@ -0,0 +1,94 @@ +package com.xiang.service.module.jntyzx.miniapp.schedule; + +import com.google.common.collect.Maps; +import com.xiang.common.enums.ScheduleEnums; +import com.xiang.common.factory.JntyzxDingTalkFactory; +import com.xiang.common.factory.schedule.BaseScheduleTaskTemplate; +import com.xiang.common.pojo.jntyzx.miniapp.resp.query.SitePositionList; +import com.xiang.common.pojo.schedule.TaskResult; +import com.xiang.common.service.IScheduleOpeningConfigService; +import com.xiang.common.service.IScheduleRunLogService; +import com.xiang.common.utils.DateUtils; +import com.xiang.service.module.jntyzx.miniapp.service.IVenueService; +import com.xiang.service.module.jntyzx.miniapp.utils.VenueInfoUtils; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Component; + +import java.time.LocalDate; +import java.util.List; +import java.util.Map; + +/** + * 17:00查询当天的场地预定结果 + * + * @Author: xiang + * @Date: 2026-05-09 14:17 + */ +@Component +@Slf4j +public class JtVenueInfoTodayResultTask extends BaseScheduleTaskTemplate { + + private final IVenueService venueService; + private final JntyzxDingTalkFactory jntyzxDingTalkFactory; + + public JtVenueInfoTodayResultTask(IScheduleOpeningConfigService scheduleOpeningConfigService, + IScheduleRunLogService scheduleRunLogService, + IVenueService venueService, + JntyzxDingTalkFactory jntyzxDingTalkFactory) { + super(scheduleOpeningConfigService, scheduleRunLogService); + this.venueService = venueService; + this.jntyzxDingTalkFactory = jntyzxDingTalkFactory; + } + + @Override + protected String getTaskName() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TODAY_RESULT_TASK.getTaskName(); + } + + @Override + protected Integer getModule() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TODAY_RESULT_TASK.getModuleCode(); + } + + @Override + protected String getModuleName() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TODAY_RESULT_TASK.getModule(); + } + + @Override + protected TaskResult doExecute(Object validatedParams) throws Exception { + + TaskResult taskResult = new TaskResult(); + taskResult.setSuccess(false); + List sitePositionLists = venueService.queryVenueService(); + if (CollectionUtils.isEmpty(sitePositionLists)) { + taskResult.setSummary("场地信息为空"); + return taskResult; + } + List positionListList6_8 = sitePositionLists.stream().filter(VenueInfoUtils::get628VenueInfo).toList(); + sendMsg(positionListList6_8, "18:00-20:00"); + List positionListList8_10 = sitePositionLists.stream().filter(VenueInfoUtils::get8210VenueInfo).toList(); + sendMsg(positionListList8_10, "20:00-22:00"); + taskResult.setSuccess(true); + taskResult.setSummary("场地信息查询定时任务成功"); + return taskResult; + } + + private void sendMsg(List positionListList, String time) { + if (CollectionUtils.isNotEmpty(positionListList)) { + Map map = Maps.newLinkedHashMap(); + for (SitePositionList sitePositionList : positionListList) { + if (map.containsKey(sitePositionList.getPlaceName())) { + continue; + } + map.put(sitePositionList.getPlaceName(), sitePositionList); + } + StringBuilder sb = new StringBuilder(DateUtils.getDateFromDate(LocalDate.now()) + "==>"+ time +"场地信息如下:\n"); + map.forEach((placeName, sitePositionList) -> { + sb.append(placeName).append("订购人:").append(sitePositionList.getContacts()).append("\n"); + }); + jntyzxDingTalkFactory.sendMsg(sb.toString()); + } + } +} diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTomorrowResultTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTomorrowResultTask.java new file mode 100644 index 0000000..265595c --- /dev/null +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueInfoTomorrowResultTask.java @@ -0,0 +1,94 @@ +package com.xiang.service.module.jntyzx.miniapp.schedule; + +import com.google.common.collect.Maps; +import com.xiang.common.enums.ScheduleEnums; +import com.xiang.common.factory.JntyzxDingTalkFactory; +import com.xiang.common.factory.schedule.BaseScheduleTaskTemplate; +import com.xiang.common.pojo.jntyzx.miniapp.resp.query.SitePositionList; +import com.xiang.common.pojo.schedule.TaskResult; +import com.xiang.common.service.IScheduleOpeningConfigService; +import com.xiang.common.service.IScheduleRunLogService; +import com.xiang.common.utils.DateUtils; +import com.xiang.service.module.jntyzx.miniapp.service.IVenueService; +import com.xiang.service.module.jntyzx.miniapp.utils.VenueInfoUtils; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Component; + +import java.time.LocalDate; +import java.util.List; +import java.util.Map; + +/** + * 9:10分查询第二天的场地预定结果 + * + * @Author: xiang + * @Date: 2026-05-09 14:17 + */ +@Component +@Slf4j +public class JtVenueInfoTomorrowResultTask extends BaseScheduleTaskTemplate { + + private final IVenueService venueService; + private final JntyzxDingTalkFactory jntyzxDingTalkFactory; + + public JtVenueInfoTomorrowResultTask(IScheduleOpeningConfigService scheduleOpeningConfigService, + IScheduleRunLogService scheduleRunLogService, + IVenueService venueService, + JntyzxDingTalkFactory jntyzxDingTalkFactory) { + super(scheduleOpeningConfigService, scheduleRunLogService); + this.venueService = venueService; + this.jntyzxDingTalkFactory = jntyzxDingTalkFactory; + } + + @Override + protected String getTaskName() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TOMORROW_RESULT_TASK.getTaskName(); + } + + @Override + protected Integer getModule() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TOMORROW_RESULT_TASK.getModuleCode(); + } + + @Override + protected String getModuleName() { + return ScheduleEnums.JNTYZX_VENUE_INFO_TOMORROW_RESULT_TASK.getModule(); + } + + @Override + protected TaskResult doExecute(Object validatedParams) throws Exception { + + TaskResult taskResult = new TaskResult(); + taskResult.setSuccess(false); + List sitePositionLists = venueService.queryTomorrowVenue(); + if (CollectionUtils.isEmpty(sitePositionLists)) { + taskResult.setSummary("场地信息为空"); + return taskResult; + } + List positionListList6_8 = sitePositionLists.stream().filter(VenueInfoUtils::get628VenueInfo).toList(); + sendMsg(positionListList6_8, "18:00-20:00"); + List positionListList8_10 = sitePositionLists.stream().filter(VenueInfoUtils::get8210VenueInfo).toList(); + sendMsg(positionListList8_10, "20:00-22:00"); + taskResult.setSuccess(true); + taskResult.setSummary("场地信息查询定时任务成功"); + return taskResult; + } + + private void sendMsg(List positionListList, String time) { + if (CollectionUtils.isNotEmpty(positionListList)) { + Map map = Maps.newLinkedHashMap(); + for (SitePositionList sitePositionList : positionListList) { + if (map.containsKey(sitePositionList.getPlaceName())) { + continue; + } + map.put(sitePositionList.getPlaceName(), sitePositionList); + } + StringBuilder sb = new StringBuilder(DateUtils.getDateFromDate(LocalDate.now().plusDays(1)) + "==>"+ time +"场地信息如下:\n"); + map.forEach((placeName, sitePositionList) -> { + sb.append(placeName).append("订购人:").append(sitePositionList.getContacts()).append("\n"); + }); + jntyzxDingTalkFactory.sendMsg(sb.toString()); + } + } +} diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenuePullTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenuePullTask.java index ecde99a..0fcf618 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenuePullTask.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenuePullTask.java @@ -54,15 +54,18 @@ public class JtVenuePullTask extends BaseScheduleTaskTemplate { this.msgSendUtils = msgSendUtils; } - private List handleMsgSendList(List sitePositionLists, int dayOfWeek) { - // 过滤出来8-10的未订购的场地信息 - sitePositionLists = sitePositionLists.stream() - .filter(VenueInfoUtils::get8210VenueInfo) - .filter(item -> StringUtils.equals(item.getContacts(), "0")).toList(); - // 周六周日过滤小馆,不查询当天小馆信息 - if (dayOfWeek == 6 || dayOfWeek == 7) { - return sitePositionLists.stream() + private List handleMsgSendList(List sitePositionLists, Integer type) { + if (type == 1) { + sitePositionLists = sitePositionLists.stream() .filter(item -> !item.getPlaceName().contains("小馆")) + .filter(VenueInfoUtils::get628VenueInfo) + .filter(item -> StringUtils.equals(item.getContacts(), "0")) + .toList(); + } else { + sitePositionLists = sitePositionLists.stream() + .filter(item -> !item.getPlaceName().contains("小馆")) + .filter(VenueInfoUtils::get8210VenueInfo) + .filter(item -> StringUtils.equals(item.getContacts(), "0")) .toList(); } Map mapByName = Maps.newLinkedHashMap(); @@ -91,7 +94,6 @@ public class JtVenuePullTask extends BaseScheduleTaskTemplate { @Override protected TaskResult doExecute(Object validatedParams) throws Exception { - TaskResult taskResult = new TaskResult(); taskResult.setSuccess(false); log.info("【Venue】江体小程序场地数据拉取定时任务启动!!!time:{}", System.currentTimeMillis()); @@ -104,7 +106,6 @@ public class JtVenuePullTask extends BaseScheduleTaskTemplate { } String token; LocalDateTime now = LocalDateTime.now(); - int dayOfWeek = now.getDayOfWeek().getValue(); for (UserTokenInfoDO userTokenInfoDO : availableUser) { if (Objects.isNull(userTokenInfoDO)) { @@ -120,18 +121,15 @@ public class JtVenuePullTask extends BaseScheduleTaskTemplate { } venueService.saveOrUpdateTodayVenueInfo(sitePositionLists); - sitePositionLists = handleMsgSendList(sitePositionLists, dayOfWeek); - if (CollectionUtils.isEmpty(sitePositionLists)) { - taskResult.setSuccess(true); - taskResult.setSummary("当前无场地信息!"); - return taskResult; - } - + List sitePositionLists6_8 = handleMsgSendList(sitePositionLists, 1); StringBuffer msg = new StringBuffer( - "查询到20:00-22:00空闲场地信息=====>\n时间:" + DateUtils.getDateFromDate(LocalDate.now()) + "\n"); - sitePositionLists.forEach(item -> { + "查询到18:00-20:00空闲场地信息=====>\n时间:" + DateUtils.getDateFromDate(LocalDate.now()) + "\n"); + sitePositionLists6_8.forEach(item -> { msg.append(item.getPlaceName()).append("\n"); }); + List sitePositionLists8_10 = handleMsgSendList(sitePositionLists, 2); + msg.append("查询到18:00-20:00空闲场地信息=====>\n时间:").append(DateUtils.getDateFromDate(LocalDate.now())).append("\n"); + sitePositionLists8_10.forEach(item -> msg.append(item.getPlaceName()).append("\n")); String key = RedisKeyConstant.JNTYZX_VENUE_MSG_SEND_KEY + RedisKeyConstant.getDate(); msgSendUtils.sendMsgRestrict1Hours(key, msg.toString()); diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueSubscribeTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueSubscribeTask.java index 3785e3f..cb5ca7f 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueSubscribeTask.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueSubscribeTask.java @@ -32,6 +32,9 @@ import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.stream.Collectors; +/** + * 场地订阅定时任务 每日9:00:00 + */ @Slf4j @Component @RestController diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueTomorrowPullTask.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueTomorrowPullTask.java index be08f35..fce854c 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueTomorrowPullTask.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/schedule/JtVenueTomorrowPullTask.java @@ -26,6 +26,9 @@ import java.util.List; import java.util.Map; import java.util.Objects; +/** + * 场地信息获取定时任务 每日8:30拉取第二天的场地信息 + */ @Slf4j @Component public class JtVenueTomorrowPullTask extends BaseScheduleTaskTemplate { @@ -96,11 +99,25 @@ public class JtVenueTomorrowPullTask extends BaseScheduleTaskTemplate { return taskResult; } venueService.saveTomorrowVenueInfo(sitePositionLists); - sitePositionLists = sitePositionLists.stream().filter(VenueInfoUtils::get8210VenueInfo).toList(); - if (CollectionUtils.isEmpty(sitePositionLists)) { + List sitePositionLists6_8 = sitePositionLists.stream().filter(VenueInfoUtils::get628VenueInfo).toList(); + if (CollectionUtils.isEmpty(sitePositionLists6_8)) { taskResult.setSummary("当前无可用场地信息"); return taskResult; } + buildMsg(sitePositionLists6_8, "18:00-20:00"); + List sitePositionLists8_10 = sitePositionLists.stream().filter(VenueInfoUtils::get8210VenueInfo).toList(); + if (CollectionUtils.isEmpty(sitePositionLists8_10)) { + taskResult.setSummary("当前无可用场地信息"); + return taskResult; + } + buildMsg(sitePositionLists8_10, "20:00-22:00"); + + taskResult.setSuccess(Boolean.TRUE); + taskResult.setSummary("场地信息获取成功!"); + return taskResult; + } + + private void buildMsg(List sitePositionLists, String time) { Map map = Maps.newLinkedHashMap(); for (SitePositionList sitePositionList : sitePositionLists) { if (map.containsKey(sitePositionList.getPlaceName())) { @@ -108,14 +125,10 @@ public class JtVenueTomorrowPullTask extends BaseScheduleTaskTemplate { } map.put(sitePositionList.getPlaceName(), sitePositionList); } - StringBuffer msg = new StringBuffer("查询江体场地信息=====>\n时间:" + DateUtils.getDateFromDate(LocalDate.now().plusDays(1)) + " 20:00-22:00\n"); + StringBuffer msg = new StringBuffer("查询江体场地信息=====>\n时间:" + DateUtils.getDateFromDate(LocalDate.now().plusDays(1)) + time + "\n"); map.forEach((placeName, sitePositionList) -> { msg.append(placeName).append("订购人:").append(sitePositionList.getContacts()).append("\n"); }); jtDingTalkFactory.sendMsg(msg.toString()); - - taskResult.setSuccess(Boolean.TRUE); - taskResult.setSummary("场地信息获取成功!"); - return taskResult; } } diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/service/impl/VenueServiceImpl.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/service/impl/VenueServiceImpl.java index 82dc080..6a02e4f 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/service/impl/VenueServiceImpl.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/service/impl/VenueServiceImpl.java @@ -10,6 +10,7 @@ import com.xiang.service.module.jntyzx.miniapp.service.IJntyzxHttpService; import com.xiang.service.module.jntyzx.miniapp.service.IUserTokenInfoService; import com.xiang.service.module.jntyzx.miniapp.service.IVenueService; import com.xiang.service.module.jntyzx.miniapp.utils.VenueInfoUtils; +import com.xiang.service.module.jntyzx.miniapp.utils.WeekendUtils; import lombok.RequiredArgsConstructor; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -37,11 +38,11 @@ public class VenueServiceImpl implements IVenueService { @Override public List queryVenueService() { - String token = userTokenInfoService.getToken("Xiang"); + String token = userTokenInfoService.getToken("xiang"); if (StringUtils.isBlank(token)) { return Lists.newArrayList(); } - List sitePositionLists = jntyzxHttpService.queryAvailable("1", token); + List sitePositionLists = jntyzxHttpService.queryAvailable(WeekendUtils.isWeekend(), token); if (CollectionUtils.isEmpty(sitePositionLists)) { return Lists.newArrayList(); } @@ -51,11 +52,11 @@ public class VenueServiceImpl implements IVenueService { @Override public List queryTomorrowVenue() { - String token = userTokenInfoService.getToken("Xiang"); + String token = userTokenInfoService.getToken("xiang"); if (StringUtils.isBlank(token)) { return Lists.newArrayList(); } - List sitePositionLists = jntyzxHttpService.queryAvailableTomorrow("1", token); + List sitePositionLists = jntyzxHttpService.queryAvailableTomorrow(WeekendUtils.isWeekend(), token); if (CollectionUtils.isEmpty(sitePositionLists)) { return Lists.newArrayList(); } diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/MsgSendUtils.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/MsgSendUtils.java index ab0b174..a48ea23 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/MsgSendUtils.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/MsgSendUtils.java @@ -30,7 +30,7 @@ public class MsgSendUtils { String cache = (String) redisService.get(redisKey); if (StringUtils.isNotBlank(cache)) { int sendNum = Integer.parseInt(cache); - if (sendNum >= 0 && sendNum <= 5) { + if (sendNum >= 0 && sendNum < 5) { jtDingTalkFactory.sendMsg(msgContent); redisService.set(key, String.valueOf(++sendNum), 1, TimeUnit.HOURS); } diff --git a/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/VenueInfoUtils.java b/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/VenueInfoUtils.java index 8a3ca0a..8d73cf8 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/VenueInfoUtils.java +++ b/src/main/java/com/xiang/service/module/jntyzx/miniapp/utils/VenueInfoUtils.java @@ -27,6 +27,9 @@ public class VenueInfoUtils { public static boolean get628VenueInfo(VenueInfoDO venueInfoDO) { return StringUtils.equals(venueInfoDO.getSjName(), "18:00-19:00") || StringUtils.equals(venueInfoDO.getSjName(), "19:00-20:00"); } + public static boolean get628VenueInfo(SitePositionList sitePositionList) { + return StringUtils.equals(sitePositionList.getSjName(), "18:00-19:00") || StringUtils.equals(sitePositionList.getSjName(), "19:00-20:00"); + } public static boolean get8210VenueInfo(VenueInfoDO venueInfoDO) { return StringUtils.equals(venueInfoDO.getSjName(), "20:00-21:00") || StringUtils.equals(venueInfoDO.getSjName(), "21:00-22:00"); } diff --git a/src/main/java/com/xiang/service/module/jntyzx/zlb/schedule/ZlbTaskConfig.java b/src/main/java/com/xiang/service/module/jntyzx/zlb/schedule/ZlbTaskConfig.java index b8f5040..40ffcd8 100644 --- a/src/main/java/com/xiang/service/module/jntyzx/zlb/schedule/ZlbTaskConfig.java +++ b/src/main/java/com/xiang/service/module/jntyzx/zlb/schedule/ZlbTaskConfig.java @@ -18,41 +18,57 @@ public class ZlbTaskConfig { private final ZlbOrderTask zlbOrderTask; private final ZlbUserConfigTask zlbUserConfigTask; + /** + * token续期 + */ @Scheduled(cron = "0 0/30 * * * ?") @GetMapping("/zlbLoginTask") public void zlbLoginTask() { zlbLoginTask.run(); } + /** + * token校验 + */ @Scheduled(cron = "0 0 8 * * *") @GetMapping("/zlbTokenRefresh") public void zlbTokenRefresh() { zlbTokenRefreshTask.run(); } + /** + * 场地信息拉取 拉取后天的场地信息 + */ @GetMapping("/zlbSiteTask") @Scheduled(cron = "30 30 16 * * ?") public void zlbSiteTask() { zlbSiteTask.run(); } + /** + * 当天场地订阅信息--数据库数据 + */ @GetMapping("/zlbSiteDayTask") @Scheduled(cron = "0 00 17 * * ?") public void zlbSiteDayTask() { zlbSiteDayTask.run(); } + /** + * 下单 + */ @GetMapping("/zlbOrderCreateTask") @Scheduled(cron = "2 0 9 * * ?") public void zlbOrderCreateTask() { zlbOrderTask.run(); } + /** + * 下单用户场地配置信息 + */ @Scheduled(cron = "30 35 16 * * ?") @GetMapping("/zlbUserConfig") public void zlbUserConfig() { zlbUserConfigTask.run(); } - - }