From 67aa40955df674f33fbf5972c738ee1bfd50d2b0 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期六, 31 八月 2024 17:01:03 +0800
Subject: [PATCH] 8.31
---
ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java | 22 ++++++++++++----------
1 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
index 81ea044..a937505 100644
--- a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
+++ b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/WxPayController.java
@@ -4,6 +4,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.payment.api.vo.PaymentOrder;
+import com.ruoyi.payment.api.vo.WxRefundNotifyResp;
import com.ruoyi.payment.wx.enums.RefundEnum;
import com.ruoyi.payment.api.model.WxPaymentRefundModel;
import com.ruoyi.payment.wx.resp.NotifyV3PayDecodeRespBody;
@@ -149,12 +150,12 @@
* 退款回调
*/
@PostMapping("refund/notify")
- public void refundNotify(HttpServletRequest request) throws IOException {
+ public R<WxRefundNotifyResp> refundNotify(HttpServletRequest request) throws IOException {
try {
Map<String, Object> params = wxV3Pay.verifyNotify(request, new TypeReference<Map<String, Object>>() {
});
// 商户订单号
- String tradeNo = params.get("out_trade_no").toString();
+ String out_trade_no = params.get("out_trade_no").toString();
// 商户退款单号
String out_refund_no = params.get("out_refund_no").toString();
// 微信支付订单号
@@ -167,21 +168,22 @@
// 时间不对的话,可以调用 WxTimeUtils.toRfc3339Date(success_time)转换一下
String success_time = params.get("success_time").toString();
if (tradeState.equals(RefundEnum.SUCCESS.name())) {
- String substring = out_refund_no.substring(0, 2);
- switch (substring){
- case "GW":
- break;
-
- }
- // TODO 退款成功处理
+ WxRefundNotifyResp resp = new WxRefundNotifyResp();
+ resp.setOut_trade_no(out_trade_no);
+ resp.setOut_refund_no(out_refund_no);
+ resp.setTradeState(tradeState);
+ resp.setTransaction_id(transaction_id);
+ resp.setRefund_id(refund_id);
+ resp.setSuccess_time(success_time);
wxV3Pay.ack();
+ return R.ok(resp);
} else {
wxV3Pay.ack(false, "不是成功的退款状态");
}
} catch (Exception e) {
wxV3Pay.ack(false, e.getMessage());
}
-
+ return R.fail();
}
/**
--
Gitblit v1.7.1