|
@@ -265,6 +265,9 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
|
|
|
} else if (memberPayParamDto.getLiveGoodsId() == 2){
|
|
|
RBucket<List<Integer>> bucket = redissonClient.getBucket(RedisKeyConstant.LIVE_GOODS_ZERO_CACHE_KEY + memberPayParamDto.getLiveId());
|
|
|
List<Integer> list = bucket.get();
|
|
|
+ if(CollectionUtils.isEmpty(list)){
|
|
|
+ list = new ArrayList<>();
|
|
|
+ }
|
|
|
//当前用户是否购买过免费直播课
|
|
|
if(list.contains(sysUser.getId())){
|
|
|
throw new BizException("您已购买过本轮免费直播课");
|
|
@@ -274,12 +277,12 @@ public class MemberRankSettingServiceImpl extends BaseServiceImpl<Integer, Membe
|
|
|
if(count >= 2){
|
|
|
throw new BizException("免费直播课已达到购买次数上限");
|
|
|
}
|
|
|
+ //保存购买记录
|
|
|
+ tempBuyFreeLiveTheoryCourseDao.insert(new TempBuyFreeLiveTheoryCourse(sysUser.getId()));
|
|
|
//扣减库存
|
|
|
liveGoodsService.reduceGoodsStock(memberPayParamDto.getLiveGoodsId(),memberPayParamDto.getLiveId());
|
|
|
list.add(sysUser.getId());
|
|
|
bucket.set(list);
|
|
|
- //保存购买记录
|
|
|
- tempBuyFreeLiveTheoryCourseDao.insert(new TempBuyFreeLiveTheoryCourse(sysUser.getId()));
|
|
|
return BaseController.succeed();
|
|
|
}else {
|
|
|
throw new BizException("当前商品不可购买");
|