From 7ee466ebc953bb5640bcf42f2b8e2a87aa471c21 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 15 四月 2026 20:12:21 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun
---
server/web/src/main/java/com/doumee/api/web/PaymentCallback.java | 82 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 82 insertions(+), 0 deletions(-)
diff --git a/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java b/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java
new file mode 100644
index 0000000..f537df4
--- /dev/null
+++ b/server/web/src/main/java/com/doumee/api/web/PaymentCallback.java
@@ -0,0 +1,82 @@
+package com.doumee.api.web;
+
+import com.doumee.config.wx.WxMiniConfig;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.utils.ID;
+import com.doumee.service.business.OrdersService;
+import com.github.binarywang.wxpay.bean.notify.WxPayNotifyResponse;
+import com.github.binarywang.wxpay.bean.notify.WxPayOrderNotifyResult;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Date;
+import java.util.Objects;
+
+/**
+ * 鏀粯鍥炶皟
+ *
+ * @Author : Rk
+ * @create 2023/3/24 16:57
+ */
+@Slf4j
+@RestController
+@CrossOrigin
+public class PaymentCallback extends ApiController {
+
+ @Autowired
+ private OrdersService ordersService;
+
+
+ @PostMapping("/web/api/wxPayNotify")
+ public String wxPay_notify(@RequestBody String xmlResult) {
+ String wxId = ID.nextGUID();
+ log.info("鏀粯鍥炶皟淇℃伅("+wxId+") = > " + xmlResult);
+ if (StringUtils.isEmpty(xmlResult)){
+ return null;
+ }
+ try {
+ WxPayOrderNotifyResult result = WxMiniConfig.wxPayService.parseOrderNotifyResult(xmlResult);
+ //鑷畾涔夎鍗曞彿
+ String outTradeNo = result.getOutTradeNo();
+ //寰俊璁㈠崟鍙�
+ String paymentNo = result.getTransactionId();
+
+
+
+ if (Constants.SUCCESS.equals(result.getReturnCode())) {
+ // 鏀粯鎴愬姛
+ switch (result.getAttach()) {
+ //瀵勫瓨璁㈠崟
+ case "storageOrder": {
+ ordersService.handleStorageOrderPayNotify(outTradeNo, paymentNo);
+ break;
+ }
+ //搴楅摵鎶奸噾璁㈠崟
+ case "shopDeposit": {
+
+ break;
+ }
+ //閫炬湡璐圭敤璁㈠崟
+ case "overdueFee": {
+
+ break;
+ }
+ }
+ return WxPayNotifyResponse.success("澶勭悊鎴愬姛!");
+ }
+ return WxPayNotifyResponse.fail(result.getReturnMsg());
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("寰俊鍥炶皟缁撴灉寮傚父,寮傚父鍘熷洜{}", e.getLocalizedMessage());
+ return WxPayNotifyResponse.fail(e.getMessage());
+ }
+ }
+
+
+
+}
--
Gitblit v1.9.3