Browse Source

增加参与人数

cup 3 years ago
parent
commit
fe92f46fdb
1 changed files with 24 additions and 2 deletions
  1. 24 2
      mp-quartz/src/main/java/com/qs/mp/quartz/task/MarketingTask.java

+ 24 - 2
mp-quartz/src/main/java/com/qs/mp/quartz/task/MarketingTask.java

@@ -1,5 +1,7 @@
 package com.qs.mp.quartz.task;
 
+import cn.hutool.core.date.LocalDateTimeUtil;
+import cn.hutool.core.util.RandomUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -24,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.io.IOException;
+import java.time.LocalDateTime;
 import java.util.Date;
 import java.util.List;
 import java.util.Objects;
@@ -147,10 +150,29 @@ public class MarketingTask {
             distributedLocker.unlock(MARKETING_SEND_KEY);
         }
 
+    }
 
+    /**
+     * 增加活动参与的虚拟人数
+     */
+    public void addFake() {
+        // 获取开始时间大于等于当前时间且未结束和开奖的活动
+        Date now = DateUtils.getNowDate();
+        List<Marketing> marketingList = marketingService.list(new LambdaQueryWrapper<Marketing>()
+                .eq(Marketing::getTriggerStatus, 0)
+                .eq(Marketing::getIsOn, MarketingStatusEnum.ON.getValue())
+                .gt(Marketing::getStartTime, now)
+                .lt(Marketing::getEndTime, now));
+        if (CollectionUtils.isEmpty(marketingList)) {
+            return;
+        }
 
-
+        for (Marketing marketing : marketingList) {
+            // 随机加1-19
+            marketingService.update(new LambdaUpdateWrapper<Marketing>()
+                    .set(Marketing::getFakeNum, marketing.getFakeNum() + RandomUtil.randomInt(1,20))
+                    .eq(Marketing::getId, marketing.getId()));
+        }
     }
 
-
 }