zoujiajian há 1 ano atrás
pai
commit
954a67df67

+ 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;