From 3eaa323545e3d4f781bfeb16c68a30cc610a69b9 Mon Sep 17 00:00:00 2001
From: phpcjl <phpcjl@gmail.com>
Date: 星期二, 03 十二月 2024 11:13:58 +0800
Subject: [PATCH] 1.分佣延迟队列

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index a59f576..d31cc5b 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -26,10 +26,13 @@
 import com.ruoyi.system.api.model.LoginUser;
 import model.Order;
 import model.OrderGood;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -54,6 +57,8 @@
     private TokenService tokenService;
     @Resource
     private TechnicianClient technicianClient;
+    @Resource
+    private RedisTemplate<String, String> redisTemplate;
 
     @Override
     public List<OrderVO> selectOrderListByUserId(Integer status, Long userId) {
@@ -184,4 +189,17 @@
             }
         }
     }
+
+
+    /**
+     * 返佣延迟队列
+     *
+     * @param orderId           订单ID
+     * @param afterSalesDeadline 售后截止日期(计算日期)
+     */
+    private void addToCommissionDelayQueue(Long orderId, LocalDateTime afterSalesDeadline) {
+        // 获取订单售后截止日期时间戳(秒)
+        long deadlineTimestamp = afterSalesDeadline.atZone(ZoneId.systemDefault()).toEpochSecond();
+        redisTemplate.opsForZSet().add("delay_queue:commission", orderId.toString(), deadlineTimestamp);
+    }
 }

--
Gitblit v1.7.1