bihs пре 3 недеља
родитељ
комит
9342fe43f6

+ 33 - 33
qmjszx-pay/src/main/java/beilv/wx/pay/controller/WxPayController.java

@@ -71,39 +71,39 @@ public class WxPayController extends BaseController {
         return wxPayService.handleNotify(notifyData, request);
     }
 
-    /**
-     * 取消订单
-     *
-     * @param orderId 订单ID
-     * @return 处理结果
-     */
-    @ApiOperation(value = "取消订单")
-    @GetMapping("app-api/pay/cancel")
-    public AjaxResult cancelOrder(@RequestBody String orderId) {
-        return toAjax(wxPayService.cancelOrder(orderId));
-    }
-
-    /**
-     * <pre>
-     * 微信支付-申请退款
-     * 详见 https://pay.weixin.qq.com/doc/v3/merchant/4012791862
-     * </pre>
-     *
-     * @return 退款操作结果
-     */
-    @ApiOperation(value = "退款")
-    @PostMapping("app-api/pay/refund")
-    public WxPayRefundV3Result refund(@RequestBody AppRefundParam param) throws WxPayException {
-        log.info("收到退款请求,订单号: {}", param.getOrderId());
-        try {
-            WxPayRefundV3Result result = wxPayService.refund(param);
-            log.info("退款处理完成,订单号: {}", param.getOrderId());
-            return result;
-        } catch (WxPayException e) {
-            log.error("退款处理失败,订单号: {}", param.getOrderId(), e);
-            throw e;
-        }
-    }
+//    /**
+//     * 取消订单
+//     *
+//     * @param orderId 订单ID
+//     * @return 处理结果
+//     */
+//    @ApiOperation(value = "取消订单")
+//    @GetMapping("app-api/pay/cancel")
+//    public AjaxResult cancelOrder(@RequestBody String orderId) {
+//        return toAjax(wxPayService.cancelOrder(orderId));
+//    }
+//
+//    /**
+//     * <pre>
+//     * 微信支付-申请退款
+//     * 详见 https://pay.weixin.qq.com/doc/v3/merchant/4012791862
+//     * </pre>
+//     *
+//     * @return 退款操作结果
+//     */
+//    @ApiOperation(value = "退款")
+//    @PostMapping("app-api/pay/refund")
+//    public WxPayRefundV3Result refund(@RequestBody AppRefundParam param) throws WxPayException {
+//        log.info("收到退款请求,订单号: {}", param.getOrderId());
+//        try {
+//            WxPayRefundV3Result result = wxPayService.refund(param);
+//            log.info("退款处理完成,订单号: {}", param.getOrderId());
+//            return result;
+//        } catch (WxPayException e) {
+//            log.error("退款处理失败,订单号: {}", param.getOrderId(), e);
+//            throw e;
+//        }
+//    }
 
     /**
      * <pre>

+ 2 - 6
qmjszx-pay/src/main/java/beilv/wx/pay/domain/vo/AppPayParam.java

@@ -18,9 +18,9 @@ public class AppPayParam implements Serializable {
     @NotBlank(message = "订单单号不能为空")
     private String orderId;
     /***
-     * 订单
+     * 订单
      */
-    @NotBlank(message = "订单价不能为空")
+    @NotBlank(message = "订单价不能为空")
     private BigDecimal totalPrice;
     /***
      * 实际支付金额
@@ -28,10 +28,6 @@ public class AppPayParam implements Serializable {
     @NotBlank(message = "实际支付金额不能为空")
     private BigDecimal payPrice;
     /***
-     * 会员折扣金额
-     */
-    private BigDecimal deductionPrice;
-    /***
      * 登录人id
      */
     @NotBlank(message = "登录人id不能为空")

+ 2 - 2
qmjszx-pay/src/main/java/beilv/wx/pay/domain/vo/AppRefundParam.java

@@ -16,9 +16,9 @@ public class AppRefundParam extends WxPayRefundV3Request {
     @NotBlank(message = "订单单号不能为空")
     private String orderId;
     /***
-     * 订单
+     * 订单
      */
-    @NotBlank(message = "订单价不能为空")
+    @NotBlank(message = "订单价不能为空")
     private BigDecimal totalPrice;
     /***
      * 退款金额

+ 9 - 3
qmjszx-pay/src/main/java/beilv/wx/pay/service/IWxPayService.java

@@ -18,8 +18,13 @@ import com.github.binarywang.wxpay.bean.notify.SignatureHeader;
 import com.github.binarywang.wxpay.bean.notify.WxPayNotifyV3Response;
 import com.github.binarywang.wxpay.bean.notify.WxPayNotifyV3Result;
 import com.github.binarywang.wxpay.bean.notify.WxPayRefundNotifyV3Result;
+import com.github.binarywang.wxpay.bean.request.WxPayOrderQueryRequest;
+import com.github.binarywang.wxpay.bean.request.WxPayOrderQueryV3Request;
 import com.github.binarywang.wxpay.bean.request.WxPayRefundV3Request;
 import com.github.binarywang.wxpay.bean.request.WxPayUnifiedOrderV3Request;
+import com.github.binarywang.wxpay.bean.result.BaseWxPayResult;
+import com.github.binarywang.wxpay.bean.result.WxPayOrderQueryResult;
+import com.github.binarywang.wxpay.bean.result.WxPayOrderQueryV3Result;
 import com.github.binarywang.wxpay.bean.result.WxPayRefundV3Result;
 import com.github.binarywang.wxpay.bean.result.WxPayUnifiedOrderV3Result.JsapiResult;
 import com.github.binarywang.wxpay.bean.result.enums.TradeTypeEnum;
@@ -224,6 +229,7 @@ public class IWxPayService {
                 //调用充值记录服务,更新充值记录状态
                 VipCardLog vipCardLog = new VipCardLog();
                 vipCardLog.setId(decryptRes.getOutTradeNo());
+                vipCardLog.setPaymentStatus("payment_status_have_paid");
                 vipCardLogService.updateVipCardLogByOrderId(vipCardLog);
                 // 成功返回200/204,body无需有内容
                 log.info("订单处理完成,订单号: {}", decryptRes.getOutTradeNo());
@@ -231,7 +237,7 @@ public class IWxPayService {
             } else {
                 log.warn("支付失败,订单号: {},状态: {}", decryptRes.getOutTradeNo(), decryptRes.getTradeState());
                 // 失败返回4xx或5xx,且需要构造body信息
-                return AjaxResult.error();
+                return AjaxResult.error("订单支付失败");
             }
         } catch (WxPayException e) {
             log.error("处理微信支付回调失败", e);
@@ -445,7 +451,7 @@ public class IWxPayService {
      * 定时任务调用此方法检查并处理超时订单
      */
     public void processTimeoutOrders() {
-        log.info("开始处理超时订单");
+//        log.info("开始处理超时订单");
         // 获取当前时间戳
         long currentTime = System.currentTimeMillis();
 
@@ -476,7 +482,7 @@ public class IWxPayService {
                         log.error("处理超时订单 {} 时发生错误", orderId, e);
                     }
                 });
-        log.info("超时订单处理完成");
+//        log.info("超时订单处理完成");
     }
 
     /**

+ 4 - 4
qmjszx-pay/src/main/java/beilv/wx/pay/task/OrderTimeoutTask.java

@@ -18,14 +18,14 @@ public class OrderTimeoutTask {
     private IWxPayService wxPayService;
 
     /**
-     * 每隔10秒检查一次超时订单
+     * 每隔1秒检查一次超时订单
      */
-    @Scheduled(fixedRate = 10000)
+    @Scheduled(fixedRate = 1000)
     public void checkTimeoutOrders() {
         try {
-            log.info("开始检查超时订单...");
+//            log.info("开始检查超时订单...");
             wxPayService.processTimeoutOrders();
-            log.info("超时订单检查完成");
+//            log.info("超时订单检查完成");
         } catch (Exception e) {
             log.error("检查超时订单时发生错误", e);
         }