From c207fd1454b64f47e2e66cd2f578a2b21b06f019 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期三, 15 七月 2026 17:39:42 +0800
Subject: [PATCH] 分账退款fix
---
ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/IcbcPayController.java | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/IcbcPayController.java b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/IcbcPayController.java
index 52bdbb1..f9b427c 100644
--- a/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/IcbcPayController.java
+++ b/ruoyi-service/ruoyi-payment/src/main/java/com/ruoyi/payment/controller/IcbcPayController.java
@@ -219,6 +219,7 @@
Map<String, String[]> requestParams = new LinkedHashMap<>(request.getParameterMap());
String rawBody = requestParams.isEmpty() ? readRequestBody(request) : "";
mergeJsonBody(requestParams, rawBody);
+ boolean success = false;
log.info("工行支付回调原始请求,method:{},uri:{},query:{},contentType:{},params:{},body:{},headers:{}",
request.getMethod(),
request.getRequestURI(),
@@ -231,10 +232,11 @@
Map<String, String> callback = icbcPayService.parseNotify(requestParams);
log.info("工行支付回调解析结果:{}", JSON.toJSONString(callback));
dispatchChargingOrderCallback(callback);
+ success = true;
} catch (Exception e) {
- log.error("工行支付回调处理失败,已记录原始请求并返回success避免重复通知", e);
+ log.error("工行支付回调处理失败,已记录原始请求并返回fail等待重试", e);
} finally {
- writeCallbackResponse(response);
+ writeCallbackResponse(response, success);
}
}
@@ -316,11 +318,11 @@
return JSON.toJSONString(headers);
}
- private void writeCallbackResponse(HttpServletResponse response) throws Exception {
+ private void writeCallbackResponse(HttpServletResponse response, boolean success) throws Exception {
response.setCharacterEncoding("UTF-8");
response.setContentType("text/plain;charset=UTF-8");
PrintWriter writer = response.getWriter();
- writer.println("success");
+ writer.println(success ? "success" : "fail");
writer.flush();
writer.close();
}
--
Gitblit v1.7.1