Browse Source

update: 修复订单支付成功后,订单状态不会更新的问题。

Ben 1 year ago
parent
commit
a7c237112d

+ 10 - 1
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/service/order/TradeOrderUpdateServiceImpl.java

@@ -701,6 +701,9 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
     //只有支付订单id参数payOrderId是有用的。
     public void updateOrderPaid(Long id1, Long payOrderId) {
 
+
+        System.out.println("#########updateOrderPaid####payOrderId:"+payOrderId);
+
         //add by Ben 根据支付订单id,查询所有 支付订单 对应的 订单
         List<TradeOrderDO> TradeOrderDOList = tradeOrderMapper.selectList("pay_order_id", payOrderId);
 
@@ -708,6 +711,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
 
             Long tradeOrderId = tradeOrderDO.getId();
 
+            System.out.println("#########updateOrderPaid####tradeOrderId:"+tradeOrderId);
+
             // 1. 校验并获得交易订单(可支付)
             KeyValue<TradeOrderDO, PayOrderRespDTO> orderResult = validateOrderPayable(tradeOrderId, payOrderId);
 
@@ -718,12 +723,16 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
             int updateCount = tradeOrderMapper.updateByIdAndStatus(tradeOrderId, order.getStatus(),
                     new TradeOrderDO().setStatus(TradeOrderStatusEnum.UNDELIVERED.getStatus()).setPayStatus(true)
                             .setPayTime(LocalDateTime.now()).setPayChannelCode(payOrder.getChannelCode()));
+
+            System.out.println("#########updateOrderPaid####updateCount:"+updateCount);
+
             if (updateCount == 0) {
                 throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID);
             }
 
+            //注释 by Ben ,下面是系统原来的营销部分,和我们业务对不上,注释掉
             // 3. 执行 TradeOrderHandler 的后置处理
-            List<TradeOrderItemDO> orderItems = tradeOrderItemMapper.selectListByOrderId(tradeOrderId);
+//            List<TradeOrderItemDO> orderItems = tradeOrderItemMapper.selectListByOrderId(tradeOrderId);
 
             //注释 by Ben ,下面是系统原来的营销部分,和我们业务对不上,注释掉
 //            tradeOrderHandlers.forEach(handler -> handler.afterPayOrder(order, orderItems));