From 930968ab4101290b4ed6a01f706cb57bac3878d6 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 03 Jul 2026 15:57:54 +0800
Subject: [PATCH] fix(payment): 修复BSPAY支付验证逻辑问题
---
src/main/java/cc/mrbird/febs/pay/service/BsPayService.java | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/pay/service/BsPayService.java b/src/main/java/cc/mrbird/febs/pay/service/BsPayService.java
index f7192aa..334a786 100644
--- a/src/main/java/cc/mrbird/febs/pay/service/BsPayService.java
+++ b/src/main/java/cc/mrbird/febs/pay/service/BsPayService.java
@@ -56,7 +56,7 @@
/** BSPAY 配置字典 type */
private static final String DICT_TYPE = "BSPAY_CONFIG";
/** BSPAY 下单接口路径 */
- private static final String APPLY_ORDER_PATH = "/api/settle/applyOrder";
+ private static final String APPLY_ORDER_PATH = "/api/pay/applyOrder";
/** OkHttp JSON MediaType */
private static final MediaType JSON_MEDIA_TYPE = MediaType.parse("application/json;charset=UTF-8");
@@ -98,7 +98,7 @@
TreeMap<String, String> params = new TreeMap<>();
params.put("member_id", memberId);
params.put("out_trade_no", order.getOrderNo());
- params.put("body", "商品订单-" + order.getOrderNo());
+ params.put("body", "日用品-商品订单-" + order.getOrderNo());
params.put("total_fee", totalFee);
params.put("fee_type", FEE_TYPE_BRL);
params.put("notify_url", notifyUrl);
@@ -134,7 +134,7 @@
+ (errCode != null ? " [" + errCode + ":" + errCodeDes + "]" : ""));
}
- // 验证签名
+ // 验证签名(sign 不参与签名)
String respSign = json.getString("sign");
if (StrUtil.isNotBlank(respSign)) {
TreeMap<String, String> verifyParams = new TreeMap<>();
@@ -151,9 +151,9 @@
}
}
- // 检查业务结果
+ // 检查业务结果:部分版本有 result_code,部分版本只有 return_code
String resultCode = json.getString("result_code");
- if (!"SUCCESS".equals(resultCode)) {
+ if (StrUtil.isNotBlank(resultCode) && !"SUCCESS".equals(resultCode)) {
throw new RuntimeException("BSPAY 下单业务失败: " + json.getString("err_code_des"));
}
--
Gitblit v1.9.1