zoujiajian 1 年之前
父节点
当前提交
954a67df67
共有 1 个文件被更改,包括 15 次插入1 次删除
  1. 15 1
      netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

+ 15 - 1
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -3952,7 +3952,21 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		checkUserBenefitsStatus(userBenefits, userIdList);
 		OrderDon orderDon = new OrderDon();
 		orderDon.setOrderNo(SEQUENCE.nextId().toString());
-		GoodsDonSku sku = goodsDonSkuMapper.selectById(userBenefits.getSkuId());
+		if (userBenefits.getType() == UserBenefits.Type.COMBO) {
+			if (orderPayRequest.getSkuId() == null) {
+				throw BusinessRuntimeException.getInstance("请选择对应套餐");
+			}
+			String comboSkuIds = userBenefits.getComboSkuIds();
+			if (!Jsons.parseList(comboSkuIds, Long.class).contains(orderPayRequest.getSkuId())) {
+				throw BusinessRuntimeException.getInstance("错误套餐");
+			}
+		}
+		GoodsDonSku sku;
+		if (userBenefits.getType() == UserBenefits.Type.RENEW) {
+			sku = goodsDonSkuMapper.selectById(userBenefits.getSkuId());
+		} else {
+			sku = goodsDonSkuMapper.selectById(orderPayRequest.getSkuId());
+		}
 		orderDon.setMoney(sku.getPrice());
 		GoodsDon goodsDon = goodsDonMapper.selectById(sku.getGoodsId());
 		Long relationId = 0l;