zoujiajian %!s(int64=2) %!d(string=hai) anos
pai
achega
08615f81d6

+ 10 - 19
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -1682,7 +1682,6 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 	 * 查询第三放接口订单是否已支付
 	 */
 	public OrderDon.Status isHasPaid(OrderDon orderDon) {
-		OrderDon.Status noPayment = OrderDon.Status.noPayment;
 		GoodsDon goodsDon = goodsDonMapper.selectById(orderDon.getGoodsId());
 		if (orderDon.getType() == OrderDon.Type.WeChat) {
 			try {
@@ -1692,7 +1691,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 					if ("SUCCESS".equals(orderStatus)) {
 						orderDon.setStatus(goodsDon.getType() == 1 && goodsDon.getSecondType() == 2 ? OrderDon.Status.complete : OrderDon.Status.hasPayment);
 						orderDon.setTransactionId(reMap.get("transaction_id"));
-						return updateNoPayment(noPayment, orderDon, goodsDon);
+						return updateNoPayment(orderDon, goodsDon);
 					}
 				}
 			} catch (Exception e) {
@@ -1706,7 +1705,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 					if ("TRADE_SUCCESS".equals(tradeStatus)) {
 						orderDon.setStatus(goodsDon.getType() == 1 && goodsDon.getSecondType() == 2 ? OrderDon.Status.complete : OrderDon.Status.hasPayment);
 						orderDon.setTransactionId(zfbOrderDetail.getTradeNo());
-						return updateNoPayment(noPayment, orderDon, goodsDon);
+						return updateNoPayment(orderDon, goodsDon);
 					}
 				}
 			} catch (Exception e) {
@@ -1716,21 +1715,13 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		return orderDon.getStatus();
 	}
 
-	private OrderDon.Status updateNoPayment(OrderDon.Status noPayment, OrderDon orderDon, GoodsDon goodsDon) {
-		boolean isSuccess = update(Wrappers.lambdaUpdate(OrderDon.class)
-				.set(OrderDon::getStatus, orderDon.getStatus())
-				.set(OrderDon::getTransactionId, orderDon.getTransactionId())
-				.eq(OrderDon::getStatus, noPayment)
-				.eq(OrderDon::getId, orderDon.getId()));
-		if (isSuccess) {
-			GoodsDonSku sku = null;
-			if (orderDon.getSkuId() != null) {
-				sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
-			}
-			unifiedHandlerOrderNotify(orderDon, goodsDon, sku);
-			return orderDon.getStatus();
+	private OrderDon.Status updateNoPayment(OrderDon orderDon, GoodsDon goodsDon) {
+		GoodsDonSku sku = null;
+		if (orderDon.getSkuId() != null) {
+			sku = goodsDonSkuMapper.selectById(orderDon.getSkuId());
 		}
-		return noPayment;
+		unifiedHandlerOrderNotify(orderDon, goodsDon, sku);
+		return orderDon.getStatus();
 	}
 
 	public void checkIsSameUser(Long relationUserId, Long userId, String openId, String loginPhone) {
@@ -2035,6 +2026,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 	 * 统一订单信息回调
 	 */
 	public void unifiedHandlerOrderNotify(OrderDon orderDon, GoodsDon goodsDon, GoodsDonSku sku) {
+		orderDon.setStatus(goodsDon.getType() == 1 && goodsDon.getSecondType() == 2 ? OrderDon.Status.complete : OrderDon.Status.hasPayment);
 		boolean isSuccess = update(Wrappers.lambdaUpdate(OrderDon.class)
 				.set(OrderDon::getStatus, orderDon.getStatus())
 				.in(OrderDon::getStatus, List.of(OrderDon.Status.noPayment, OrderDon.Status.close))
@@ -2043,7 +2035,6 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 			log.info("支付宝回调商家订单号:{}订单状态已修改", orderDon.getOrderNo());
 			return;
 		}
-		orderDon.setStatus(goodsDon.getType() == 1 && goodsDon.getSecondType() == 2 ? OrderDon.Status.complete : OrderDon.Status.hasPayment);
 
 		if (orderDon.getIsNoLogin()) {
 			orderDon.setStatus(OrderDon.Status.hasPayment);
@@ -2195,7 +2186,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 				giftCardUserRecordService.saveBatch(gcUserPayRecords);
 			}
 		} catch (Exception e) {
-			log.info("用户userId:{}礼品订单orderId:{}支付成功,记录购买成功记录错误,e:", orderDon.getUserId(), orderDon.getId(), StringUtil.getErrorText(e));
+			log.info("用户userId:{}礼品订单orderId:{}支付成功,记录购买成功记录错误,e:{}", orderDon.getUserId(), orderDon.getId(), StringUtil.getErrorText(e));
 		}
 	}
 }