|
@@ -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()));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
-
|
|
|
}
|