|
@@ -46,6 +46,7 @@ import com.zhongzheng.modules.goods.service.IGoodsFreeBankService;
|
|
import com.zhongzheng.modules.goods.service.IGoodsQuestionRelService;
|
|
import com.zhongzheng.modules.goods.service.IGoodsQuestionRelService;
|
|
import com.zhongzheng.modules.goods.service.IGoodsService;
|
|
import com.zhongzheng.modules.goods.service.IGoodsService;
|
|
import com.zhongzheng.modules.goods.service.IQuestionMerchantService;
|
|
import com.zhongzheng.modules.goods.service.IQuestionMerchantService;
|
|
|
|
+import com.zhongzheng.modules.goods.vo.GoodsCourseTreeVo;
|
|
import com.zhongzheng.modules.goods.vo.QuestionOpenImportVo;
|
|
import com.zhongzheng.modules.goods.vo.QuestionOpenImportVo;
|
|
import com.zhongzheng.modules.grade.bo.*;
|
|
import com.zhongzheng.modules.grade.bo.*;
|
|
import com.zhongzheng.modules.grade.domain.*;
|
|
import com.zhongzheng.modules.grade.domain.*;
|
|
@@ -80,9 +81,11 @@ import com.zhongzheng.modules.top.settle.domian.TopInstSettle;
|
|
import com.zhongzheng.modules.top.settle.service.ITopInstSettleService;
|
|
import com.zhongzheng.modules.top.settle.service.ITopInstSettleService;
|
|
import com.zhongzheng.modules.user.domain.User;
|
|
import com.zhongzheng.modules.user.domain.User;
|
|
import com.zhongzheng.modules.user.domain.UserExamGoods;
|
|
import com.zhongzheng.modules.user.domain.UserExamGoods;
|
|
|
|
+import com.zhongzheng.modules.user.domain.UserStudyVideo;
|
|
import com.zhongzheng.modules.user.domain.UserSubscribe;
|
|
import com.zhongzheng.modules.user.domain.UserSubscribe;
|
|
import com.zhongzheng.modules.user.service.IUserExamGoodsService;
|
|
import com.zhongzheng.modules.user.service.IUserExamGoodsService;
|
|
import com.zhongzheng.modules.user.service.IUserService;
|
|
import com.zhongzheng.modules.user.service.IUserService;
|
|
|
|
+import com.zhongzheng.modules.user.service.IUserStudyVideoService;
|
|
import com.zhongzheng.modules.user.service.IUserSubscribeService;
|
|
import com.zhongzheng.modules.user.service.IUserSubscribeService;
|
|
import com.zhongzheng.modules.user.vo.UserVo;
|
|
import com.zhongzheng.modules.user.vo.UserVo;
|
|
import com.zhongzheng.modules.wx.service.IWxPayService;
|
|
import com.zhongzheng.modules.wx.service.IWxPayService;
|
|
@@ -213,6 +216,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
private ISysOldOrgService iSysOldOrgService;
|
|
private ISysOldOrgService iSysOldOrgService;
|
|
@Autowired
|
|
@Autowired
|
|
private ISysTenantService iSysTenantService;
|
|
private ISysTenantService iSysTenantService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IUserStudyVideoService iUserStudyVideoService;
|
|
@Value("${oldStudySys.createExamPath}")
|
|
@Value("${oldStudySys.createExamPath}")
|
|
private String CREATE_EXAM_PATH;
|
|
private String CREATE_EXAM_PATH;
|
|
|
|
|
|
@@ -600,6 +605,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
//暂不计算优惠券
|
|
//暂不计算优惠券
|
|
payPrice = payPrice.add(g.getGoodsPrice());
|
|
payPrice = payPrice.add(g.getGoodsPrice());
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
|
|
+ //二建课程设置课程录像
|
|
|
|
+ setCourseVideo(bo.getUserId(),g.getGoodsId(),orderGoods.getOrderGoodsId());
|
|
boolean canRepeatBuy = false;
|
|
boolean canRepeatBuy = false;
|
|
validUserBeforeBuy(goods, bo.getUserId());
|
|
validUserBeforeBuy(goods, bo.getUserId());
|
|
//判断视频/题库商品是否有购买过,服务期是否过期
|
|
//判断视频/题库商品是否有购买过,服务期是否过期
|
|
@@ -675,6 +682,60 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void setCourseVideo(Long userId, Long goodsId, Long orderGoodsId) {
|
|
|
|
+ String businessName = iGoodsService.getBusinessName(goodsId);
|
|
|
|
+ List<String> list = Arrays.asList("继续教育二级建造师", "继续教育二级造价师");
|
|
|
|
+ if (!list.contains(businessName)){
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ //随便抽取3到5个视频录像
|
|
|
|
+ List<GoodsCourseTreeVo> treeVos = iGoodsService.getGoodsCourseTree(goodsId);
|
|
|
|
+ if (CollectionUtils.isEmpty(treeVos)){
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ int[] numbers = {3, 4, 5, 6}; // 这是你的数字集合
|
|
|
|
+ Random random = new Random();
|
|
|
|
+ // 随机获取一个索引
|
|
|
|
+ int index = random.nextInt(numbers.length);
|
|
|
|
+ // 获取该索引对应的数字
|
|
|
|
+ int randomNumber = numbers[index];
|
|
|
|
+
|
|
|
|
+ List<GoodsCourseTreeVo> treeVoList = new ArrayList<>();
|
|
|
|
+ List<Integer> numList = new ArrayList<>();
|
|
|
|
+ Integer number = treeVos.size() > randomNumber ? randomNumber: treeVos.size();
|
|
|
|
+ for (int i = 0; i < number; i++) {
|
|
|
|
+ Random random2 = new Random();
|
|
|
|
+ // 随机获取一个索引
|
|
|
|
+ int index2 = random2.nextInt(treeVos.size());
|
|
|
|
+ if (CollectionUtils.isNotEmpty(numList)){
|
|
|
|
+ //已存在
|
|
|
|
+ while (numList.contains(index2)){
|
|
|
|
+ Random random3 = new Random();
|
|
|
|
+ // 随机获取一个索引
|
|
|
|
+ index2 = random3.nextInt(treeVos.size());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ treeVoList.add(treeVos.get(index2));
|
|
|
|
+ numList.add(index2);
|
|
|
|
+ }
|
|
|
|
+ List<UserStudyVideo> studyVideos = treeVoList.stream().map(item -> {
|
|
|
|
+ UserStudyVideo video = new UserStudyVideo();
|
|
|
|
+ video.setUserId(userId);
|
|
|
|
+ video.setGoodsId(goodsId);
|
|
|
|
+ video.setOrderGoodsId(orderGoodsId);
|
|
|
|
+ video.setCourseId(item.getCourseId());
|
|
|
|
+ video.setModuleId(item.getModuleId());
|
|
|
|
+ video.setChapterId(item.getChapterId());
|
|
|
|
+ video.setSectionId(item.getSectionId());
|
|
|
|
+ video.setStatus(1);
|
|
|
|
+ video.setCurrentStatus(1);
|
|
|
|
+ video.setCreateTime(DateUtils.getNowTime());
|
|
|
|
+ video.setUpdateTime(DateUtils.getNowTime());
|
|
|
|
+ return video;
|
|
|
|
+ }).collect(Collectors.toList());
|
|
|
|
+ iUserStudyVideoService.saveBatch(studyVideos);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 系统录单
|
|
* 系统录单
|
|
*
|
|
*
|
|
@@ -776,6 +837,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
//已收价格
|
|
//已收价格
|
|
receivedPrice = receivedPrice.add(g.getGoodsReceived());
|
|
receivedPrice = receivedPrice.add(g.getGoodsReceived());
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
|
|
+ //二建课程设置课程录像
|
|
|
|
+ setCourseVideo(bo.getUserId(),g.getGoodsId(),orderGoods.getOrderGoodsId());
|
|
boolean canRepeatBuy = false;
|
|
boolean canRepeatBuy = false;
|
|
validUserBeforeBuy(goods, bo.getUserId());
|
|
validUserBeforeBuy(goods, bo.getUserId());
|
|
//判断是否有购买过
|
|
//判断是否有购买过
|
|
@@ -1450,6 +1513,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
}
|
|
}
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
|
|
+ //二建课程设置课程录像
|
|
|
|
+ setCourseVideo(bo.getUserId(),g.getGoodsId(),orderGoods.getOrderGoodsId());
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
//购买关联题库商品
|
|
//购买关联题库商品
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|
|
@@ -1894,6 +1959,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
}
|
|
}
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
|
|
+ //二建课程设置课程录像
|
|
|
|
+ setCourseVideo(bo.getUserId(),g.getGoodsId(),orderGoods.getOrderGoodsId());
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
//购买关联题库商品
|
|
//购买关联题库商品
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|
|
@@ -2095,6 +2162,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
//暂不计算优惠券
|
|
//暂不计算优惠券
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
payPrice = payPrice.add(goods.getStandPrice());
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
boolean orderGoodsRs = iOrderGoodsService.save(orderGoods);
|
|
|
|
+ //二建课程设置课程录像
|
|
|
|
+ setCourseVideo(bo.getUserId(),g.getGoodsId(),orderGoods.getOrderGoodsId());
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
if (ObjectUtils.isNotNull(g.getRelevanceId())){
|
|
//购买关联题库商品
|
|
//购买关联题库商品
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|
|
questionOrderHandle(g.getRelevanceId(),g.getGoodsId(),orderGoods.getOrderGoodsId(),bo.getUserId());
|