Sfoglia il codice sorgente

卡包优惠权益状态筛选,优惠券过期处理定时任务

skyline 1 anno fa
parent
commit
e47d22e23e

+ 64 - 0
miniapp/src/main/java/com/kym/miniapp/jobs/UserDiscountExpiredJob.java

@@ -0,0 +1,64 @@
+package com.kym.miniapp.jobs;
+
+import com.kym.common.utils.CommUtil;
+import com.kym.entity.miniapp.UserCoupon;
+import com.kym.entity.miniapp.UserRechargeRights;
+import com.kym.service.miniapp.UserCouponService;
+import com.kym.service.miniapp.UserRechargeRightsService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.time.LocalDateTime;
+
+/**
+ * @author skyline
+ * @description 用户优惠权益到期处理
+ * @date 2023-11-15 14:00
+ */
+@Component
+@Slf4j
+public class UserDiscountExpiredJob {
+
+    private final UserRechargeRightsService userRechargeRightsService;
+
+    private final UserCouponService userCouponService;
+
+    public UserDiscountExpiredJob(UserRechargeRightsService userRechargeRightsService, UserCouponService userCouponService) {
+        this.userRechargeRightsService = userRechargeRightsService;
+        this.userCouponService = userCouponService;
+    }
+
+    // 每天凌晨0点执行一次
+    @Scheduled(cron = "0 0 0 * * ?")
+    public void executeUserRechargeRightsJob() {
+        log.info("用户权益卡到期处理启动...");
+        var list = userRechargeRightsService.lambdaQuery()
+                .eq(UserRechargeRights::getStatus, UserRechargeRights.STATUS_有效)
+                .le(UserRechargeRights::getEndTime, LocalDateTime.now())
+                .list();
+        if (!CommUtil.isEmptyOrNull(list)) {
+            userRechargeRightsService.lambdaUpdate()
+                    .set(UserRechargeRights::getStatus, UserRechargeRights.STATUS_无效)
+                    .in(UserRechargeRights::getId, list.stream().map(UserRechargeRights::getId).toList())
+                    .update();
+        }
+        log.info("用户权益卡到期处理结束,共处理{}条数据", list.size());
+    }
+
+    @Scheduled(cron = "0 0 0 * * ?")
+    public void executeUserCouponJob() {
+        log.info("用户优惠券到期处理启动...");
+        var list = userCouponService.lambdaQuery()
+                .eq(UserCoupon::getStatus, UserCoupon.STATUS_有效)
+                .le(UserCoupon::getEndTime, LocalDateTime.now())
+                .list();
+        if (!CommUtil.isEmptyOrNull(list)) {
+            userCouponService.lambdaUpdate()
+                    .set(UserCoupon::getStatus, UserCoupon.STATUS_无效)
+                    .in(UserCoupon::getId, list.stream().map(UserCoupon::getId).toList())
+                    .update();
+        }
+        log.info("用户优惠券到期处理结束,共处理{}条数据", list.size());
+    }
+}

+ 0 - 43
miniapp/src/main/java/com/kym/miniapp/jobs/UserRechargeRightsJob.java

@@ -1,43 +0,0 @@
-package com.kym.miniapp.jobs;
-
-import com.kym.common.utils.CommUtil;
-import com.kym.entity.miniapp.UserRechargeRights;
-import com.kym.service.miniapp.UserRechargeRightsService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Component;
-
-import java.time.LocalDateTime;
-
-/**
- * @author skyline
- * @description 用户权益到期处理
- * @date 2023-11-15 14:00
- */
-@Component
-@Slf4j
-public class UserRechargeRightsJob {
-
-    private final UserRechargeRightsService userRechargeRightsService;
-
-    public UserRechargeRightsJob(UserRechargeRightsService userRechargeRightsService) {
-        this.userRechargeRightsService = userRechargeRightsService;
-    }
-
-    // 每天凌晨0点执行一次
-    @Scheduled(cron = "0 0 0 * * ?")
-    public void execute() {
-        log.info("用户权益到期处理启动...");
-        var list = userRechargeRightsService.lambdaQuery()
-                .eq(UserRechargeRights::getStatus, UserRechargeRights.STATUS_有效)
-                .le(UserRechargeRights::getEndTime, LocalDateTime.now())
-                .list();
-        if (!CommUtil.isEmptyOrNull(list)) {
-            userRechargeRightsService.lambdaUpdate()
-                    .set(UserRechargeRights::getStatus, UserRechargeRights.STATUS_无效)
-                    .in(UserRechargeRights::getId, list.stream().map(UserRechargeRights::getId).toList())
-                    .update();
-        }
-        log.info("用户权益到期处理结束,共处理{}条数据", list.size());
-    }
-}

+ 1 - 1
service/src/main/java/com/kym/service/miniapp/impl/AccountServiceImpl.java

@@ -60,7 +60,7 @@ public class AccountServiceImpl extends MPJBaseServiceImpl<AccountMapper, Accoun
         // 当前用户有效的优惠券列表
         var usesrCouponList = userCouponService.lambdaQuery()
                 .eq(UserCoupon::getUserId, userId)
-                .eq(UserCoupon::getStatus, UserCoupon.STATUS_有效)
+//                .eq(UserCoupon::getStatus, UserCoupon.STATUS_有效)
                 .orderByAsc(UserCoupon::getEndTime).list();
         vo.setUserCouponList(usesrCouponList);