修复更新秒杀活动时间,秒杀活动商品更新数据问题
This commit is contained in:
parent
0d5f871da7
commit
66b2f1f55d
@ -258,7 +258,7 @@ public class SeckillApplyServiceImpl extends ServiceImpl<SeckillApplyMapper, Sec
|
||||
List<PromotionGoods> promotionGoodsList = new ArrayList<>();
|
||||
LambdaQueryWrapper<SeckillApply> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SeckillApply::getSeckillId, seckill.getId());
|
||||
List<SeckillApply> list = this.list(queryWrapper);
|
||||
List<SeckillApply> list = this.list(queryWrapper).stream().filter(i -> i.getTimeLine() != null && seckill.getHours().contains(i.getTimeLine().toString())).collect(Collectors.toList());
|
||||
for (SeckillApply seckillApply : list) {
|
||||
//获取参与活动的商品信息
|
||||
GoodsSku goodsSku = goodsSkuService.getGoodsSkuByIdFromCache(seckillApply.getSkuId());
|
||||
@ -270,13 +270,20 @@ public class SeckillApplyServiceImpl extends ServiceImpl<SeckillApplyMapper, Sec
|
||||
if (!promotionGoodsList.isEmpty()) {
|
||||
PromotionGoodsSearchParams searchParams = new PromotionGoodsSearchParams();
|
||||
searchParams.setPromotionType(PromotionTypeEnum.SECKILL.name());
|
||||
searchParams.setSkuIds(promotionGoodsList.stream().map(PromotionGoods::getSkuId).collect(Collectors.toList()));
|
||||
searchParams.setPromotionId(seckill.getId());
|
||||
promotionGoodsService.deletePromotionGoods(searchParams);
|
||||
//初始化促销商品
|
||||
PromotionTools.promotionGoodsInit(promotionGoodsList, seckill, PromotionTypeEnum.SECKILL);
|
||||
result = promotionGoodsService.saveBatch(promotionGoodsList);
|
||||
List<PromotionGoods> promotionGoods = PromotionTools.promotionGoodsInit(promotionGoodsList, seckill, PromotionTypeEnum.SECKILL);
|
||||
result = promotionGoodsService.saveBatch(promotionGoods);
|
||||
this.seckillService.updateEsGoodsSeckill(seckill, list);
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<SeckillApply> deleteWrapper = new LambdaQueryWrapper<>();
|
||||
deleteWrapper.eq(SeckillApply::getSeckillId, seckill.getId());
|
||||
deleteWrapper.notIn(SeckillApply::getSkuId, promotionGoodsList.stream().map(PromotionGoods::getSkuId).collect(Collectors.toList()));
|
||||
this.remove(deleteWrapper);
|
||||
seckillService.updateSeckillGoodsNum(seckill.getId());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -144,9 +144,10 @@ public class SeckillServiceImpl extends AbstractPromotionsServiceImpl<SeckillMap
|
||||
* @return 是否更新成功
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean updatePromotions(Seckill promotions) {
|
||||
seckillApplyService.updateSeckillApplyTime(promotions);
|
||||
return super.updatePromotions(promotions);
|
||||
return this.saveOrUpdate(promotions);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user