From fc8b51f40e71aa09bb49f407c1e9f68ac94ceb58 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 29 七月 2024 18:51:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/async/AuctionAsyncMethodService.java |   16 +++++++---------
 1 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/async/AuctionAsyncMethodService.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/async/AuctionAsyncMethodService.java
index 5d335c8..23d8683 100644
--- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/async/AuctionAsyncMethodService.java
+++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/async/AuctionAsyncMethodService.java
@@ -13,6 +13,7 @@
 import java.util.concurrent.TimeUnit;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -28,9 +29,10 @@
     private final RedisService redisService;
     private final SysUserClient sysUserClient;
 
-    // @Async
+    @Async
     @Transactional(rollbackFor = Exception.class)
     public void auctionGoodsScheduleTask(List<AuctionGoods> auctionGoodsList) {
+        log.info("开始执行定时任务");
         for (AuctionGoods auctionGoods : auctionGoodsList) {
             LocalDateTime startTime = auctionGoods.getStartTime();
             LocalDateTime endTime = auctionGoods.getEndTime();
@@ -52,7 +54,7 @@
     }
 
     private boolean isWithinOneHour(LocalDateTime startTime) {
-        LocalDateTime checkTime = LocalDateTime.now().plusHours(1);
+        LocalDateTime checkTime = LocalDateTime.now().plusMinutes(61);
         return checkTime.isAfter(startTime);
     }
 
@@ -92,9 +94,6 @@
     private void handleStartDelayTask(Long id, DelayTaskEnum delayTaskEnum, LocalDateTime startTime,
             Long timeout) {
         String startTaskKey = delayTaskEnum.getCode() + "-" + id;
-        redisService.setCacheObject(
-                startTaskKey,
-                startTime, timeout, TimeUnit.SECONDS);
         // 查询延时任务
         DelayTask startDelayTask = sysUserClient.getDelayTask(
                 startTaskKey, SecurityConstants.INNER).getData();
@@ -108,10 +107,8 @@
             sysUserClient.addDelayTask(startDelayTask, SecurityConstants.INNER);
         } else {
             if (!startDelayTask.getExecuteTime().isEqual(startTime)) {
-                sysUserClient.deleteDelayTask(
-                        startTaskKey, SecurityConstants.INNER);
-                redisService.deleteObject(
-                        startTaskKey);
+                sysUserClient.deleteDelayTask(startTaskKey, SecurityConstants.INNER);
+                redisService.deleteObject(startTaskKey);
                 startDelayTask.setDelFlag(0);
                 startDelayTask.setCreateTime(LocalDateTime.now());
                 startDelayTask.setExecuteTime(LocalDateTime.now().plusSeconds(timeout));
@@ -120,6 +117,7 @@
                 sysUserClient.addDelayTask(startDelayTask, SecurityConstants.INNER);
             }
         }
+        redisService.setCacheObject(startTaskKey, startTime, timeout, TimeUnit.SECONDS);
         log.info(">>>>>>>>>>>>>>>>>>>>延时任务{}执行了<<<<<<<<<<<<<<<<<<<<", startTaskKey);
     }
 }

--
Gitblit v1.7.1