秒杀活动自动新增bug处理

This commit is contained in:
Chopper 2022-02-23 14:38:23 +08:00
parent b824ee625e
commit 6115ecf673
2 changed files with 10 additions and 3 deletions

View File

@ -8,6 +8,7 @@ import cn.lili.modules.system.entity.dto.SeckillSetting;
import cn.lili.modules.system.entity.enums.SettingEnum;
import cn.lili.modules.system.service.SettingService;
import cn.lili.timetask.handler.EveryDayExecute;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -70,8 +71,14 @@ public class PromotionEverydayExecute implements EveryDayExecute {
log.info("生成秒杀活动设置:{}", seckillSetting);
for (int i = 1; i <= SeckillService.PRE_CREATION; i++) {
Seckill seckill = new Seckill(i, seckillSetting.getHours(), seckillSetting.getSeckillRule());
boolean result = seckillService.savePromotions(seckill);
log.info("生成秒杀活动参数:{},结果:{}", seckill, result);
LambdaQueryWrapper<Seckill> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(Seckill::getStartTime, seckill.getStartTime());
//如果已经存在促销则不再次保存
if (seckillService.list(lambdaQueryWrapper).size() == 0) {
boolean result = seckillService.savePromotions(seckill);
log.info("生成秒杀活动参数:{},结果:{}", seckill, result);
}
}
}
}

View File

@ -59,7 +59,7 @@ public class Seckill extends BasePromotions {
public Seckill(int day, String hours, String seckillRule) {
//默认创建*天后的秒杀活动
DateTime dateTime = DateUtil.beginOfDay(DateUtil.offsetDay(new Date(), day));
this.applyEndTime = DateUtil.offsetHour(new Date(), Integer.parseInt(hours) - 1);
this.applyEndTime = dateTime;
this.hours = hours;
this.seckillRule = seckillRule;
this.goodsNum = 0;