Przeglądaj źródła

change: 修改订单问题, 未支付取消订单之后, 支付状态为已支付

gaohp 1 rok temu
rodzic
commit
d5d638e447

+ 5 - 0
feifan-module-mall/feifan-module-trade-biz/pom.xml

@@ -33,6 +33,11 @@
             <artifactId>feifan-module-pay-api</artifactId>
             <version>${revision}</version>
         </dependency>
+        <dependency>
+            <groupId>cn.newfeifan.zx</groupId>
+            <artifactId>feifan-module-pay-biz</artifactId>
+            <version>${revision}</version>
+        </dependency>
         <dependency>
             <groupId>cn.newfeifan.zx</groupId>
             <artifactId>feifan-module-promotion-api</artifactId>

+ 13 - 3
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/controller/admin/order/TradeOrderDetailController.java

@@ -3,6 +3,8 @@ package cn.newfeifan.mall.module.trade.controller.admin.order;
 import cn.newfeifan.mall.framework.common.pojo.CommonResult;
 import cn.newfeifan.mall.module.member.api.user.MemberUserApi;
 import cn.newfeifan.mall.module.member.api.user.dto.MemberUserRespDTO;
+import cn.newfeifan.mall.module.pay.dal.dataobject.order.PayOrderDO;
+import cn.newfeifan.mall.module.pay.service.order.PayOrderService;
 import cn.newfeifan.mall.module.trade.controller.admin.aftersale.vo.AfterSaleBaseVO;
 import cn.newfeifan.mall.module.trade.controller.admin.order.vo.*;
 import cn.newfeifan.mall.module.trade.controller.admin.order.vo.detailvo.TradeOrderDeliveryVO;
@@ -53,6 +55,10 @@ public class TradeOrderDetailController {
     private TradeOrderLogService tradeOrderLogService;
     @Resource
     private TradeOrderProperties tradeOrderProperties;
+
+    @Resource
+    private PayOrderService payOrderService;
+
     @Resource
     private MemberUserApi memberUserApi;
     @Resource
@@ -126,13 +132,19 @@ public class TradeOrderDetailController {
         if (order == null) {
             return success(null);
         }
+        // 查询支付状态
+        PayOrderDO payOrderDO = payOrderService.getOrderByTradeOrderId(id);
         TradeOrderPayVo build = TradeOrderPayVo.builder()
                 .userRemark(order.getUserRemark())
                 .payChannelCode(order.getPayChannelCode())
                 .path("")
                 .payPrice(order.getPayPrice())
-                .payStatus(order.getStatus()==0?"未支付":"已支付")
                 .build();
+        if (payOrderDO == null){
+            build.setPayStatus("未支付");
+        }else {
+            build.setPayStatus(payOrderDO.getStatus() == 0 ? "未支付" : "已支付");
+        }
         return success(build);
     }
 
@@ -157,6 +169,4 @@ public class TradeOrderDetailController {
     }
 
 
-
-
 }

+ 7 - 0
feifan-module-pay/feifan-module-pay-biz/src/main/java/cn/newfeifan/mall/module/pay/service/order/PayOrderService.java

@@ -146,4 +146,11 @@ public interface PayOrderService {
      */
     int expireOrder();
 
+    /**
+     * 根据订单ID获取支付ID
+     * @param id
+     * @return
+     */
+    PayOrderDO getOrderByTradeOrderId(Long id);
+
 }

+ 6 - 0
feifan-module-pay/feifan-module-pay-biz/src/main/java/cn/newfeifan/mall/module/pay/service/order/PayOrderServiceImpl.java

@@ -31,6 +31,7 @@ import cn.newfeifan.mall.module.pay.framework.pay.config.PayProperties;
 import cn.newfeifan.mall.module.pay.service.app.PayAppService;
 import cn.newfeifan.mall.module.pay.service.channel.PayChannelService;
 import cn.newfeifan.mall.module.pay.service.notify.PayNotifyService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.google.common.annotations.VisibleForTesting;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
@@ -505,6 +506,11 @@ public class PayOrderServiceImpl implements PayOrderService {
         return count;
     }
 
+    @Override
+    public PayOrderDO getOrderByTradeOrderId(Long id) {
+        return   orderMapper.selectOne(new LambdaQueryWrapper<PayOrderDO>().eq(PayOrderDO::getMerchantOrderId,id));
+    }
+
     /**
      * 同步单个支付单
      *