فهرست منبع

fix 礼品卡无规格

zoujiajian 2 سال پیش
والد
کامیت
6f4b90edac
1فایلهای تغییر یافته به همراه16 افزوده شده و 8 حذف شده
  1. 16 8
      netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

+ 16 - 8
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -616,9 +616,11 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			log.error("回调数据:{}", map);
 			throw BusinessRuntimeException.getInstance("支付成功回调, 校验签名失败.");
 		}
-
-		GoodsDonSku sku = goodsDonSkuMapper.selectById(order.getSkuId());
-		GoodsDon goodsDon = goodsDonMapper.selectById(sku.getGoodsId());
+		GoodsDonSku sku = null;
+		if (order.getSkuId() != null) {
+			sku = goodsDonSkuMapper.selectById(order.getSkuId());
+		}
+		GoodsDon goodsDon = goodsDonMapper.selectById(order.getGoodsId());
 
 		String transactionId = map.get("transaction_id");
 
@@ -935,8 +937,11 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		if (orderDon.getIsNoLogin()) {
 			orderDon.setExCode(exchangeCodeService.getExCode(goodsId, orderDon.getSkuId(), 1));
 		}
-		GoodsDonSku sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
-		GoodsDon goodsDon = goodsDonMapper.selectById(sku.getGoodsId());
+		GoodsDonSku sku = null;
+		if (orderDon.getSkuId() != null) {
+			sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
+		}
+		GoodsDon goodsDon = goodsDonMapper.selectById(orderDon.getGoodsId());
 		Date payTime = DateTime.now();
 		if (StringUtils.isNotBlank(payTimeStr)) {
 			payTime = DateUtil.parse(payTimeStr, "yyyy-MM-dd HH:mm:ss");
@@ -2015,8 +2020,11 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		if (orderDon.getIsNoLogin()) {
 			orderDon.setExCode(exchangeCodeService.getExCode(goodsId, orderDon.getSkuId(), 1));
 		}
-		GoodsDonSku sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
-		GoodsDon goodsDon = goodsDonMapper.selectById(sku.getGoodsId());
+		GoodsDonSku sku = null;
+		if (orderDon.getSkuId() != null) {
+			 sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
+		}
+		GoodsDon goodsDon = goodsDonMapper.selectById(orderDon.getGoodsId());
 		unifiedHandlerOrderNotify(orderDon, goodsDon, sku);
 	}
 
@@ -2038,7 +2046,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			orderDon.setStatus(OrderDon.Status.hasPayment);
 		}
 		Long goodsId = goodsDon.getId();
-		if (!orderDon.getIsNoLogin()) {
+		if (!orderDon.getIsNoLogin() && sku != null) {
 			//更新座位信息
 			updateGroupsTicket(orderDon, goodsDon, sku);
 			if (goodsDon.getType() == 1) {