|
@@ -0,0 +1,47 @@
|
|
|
|
|
+package com.mokamrp.privates.task.pangu;
|
|
|
|
|
+
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
+import com.mokamrp.privates.mapper.pangu.pojo.FosterwxCashScheduleTaskList;
|
|
|
|
|
+import com.mokamrp.privates.service.pangu.FosterwxCashScheduleTaskListService;
|
|
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
+import net.javacrumbs.shedlock.core.SchedulerLock;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
+import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
|
|
+import org.springframework.scheduling.annotation.Scheduled;
|
|
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
|
|
+
|
|
|
|
|
+import java.time.LocalDate;
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
|
+import java.time.LocalTime;
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 同步变现任务到缓存 供H5页面展示
|
|
|
|
|
+ */
|
|
|
|
|
+@Component
|
|
|
|
|
+@Slf4j
|
|
|
|
|
+public class SyncFosterwxCash {
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private StringRedisTemplate stringRedisTemplate;
|
|
|
|
|
+
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private FosterwxCashScheduleTaskListService fosterwxCashScheduleTaskListService;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 每隔一分钟扫描今天待发送以及已经发送的任务
|
|
|
|
|
+ */
|
|
|
|
|
+ @Scheduled(cron = "10 */1 * * * ?")
|
|
|
|
|
+ @SchedulerLock(name = "pangu:SyncFosterwxCash", lockAtLeastForString = "PT5S", lockAtMostForString = "PT15M")
|
|
|
|
|
+ public void syncFosterwxCash() {
|
|
|
|
|
+ // 获取当前时间
|
|
|
|
|
+ LocalDateTime minDateTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN);
|
|
|
|
|
+ LocalDateTime localDateTime = LocalDateTime.now();
|
|
|
|
|
+
|
|
|
|
|
+ List<FosterwxCashScheduleTaskList> fosterwxCashScheduleTaskLists = fosterwxCashScheduleTaskListService.list(
|
|
|
|
|
+ new LambdaQueryWrapper<FosterwxCashScheduleTaskList>().
|
|
|
|
|
+ eq(FosterwxCashScheduleTaskList::getType, 1).
|
|
|
|
|
+ between(FosterwxCashScheduleTaskList::getSendTime, minDateTime, localDateTime));
|
|
|
|
|
+
|
|
|
|
|
+ stringRedisTemplate.opsForHash().put("pan_fosterwx_cash_group_id:", null, null);
|
|
|
|
|
+ }
|
|
|
|
|
+}
|