From 832e892c1af2bfe3648359e2f3175832854fe2d8 Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期一, 13 一月 2025 13:06:50 +0800
Subject: [PATCH] 12.18
---
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/TransferUtil.java | 40 +++++++++++++++-------------------------
1 files changed, 15 insertions(+), 25 deletions(-)
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/TransferUtil.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/TransferUtil.java
index 9525a52..a54b3ec 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/TransferUtil.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/util/payment/TransferUtil.java
@@ -35,14 +35,14 @@
* 平台-报备商户号
*/
public static final String sysTradeMerchantNo = "777168500885852";
-
+
private static final String format = "yyyy-MM-dd HH:mm:ss";
/**
* 支付回调地址
*/
private static final String callbackUrl = "http://221.182.45.100:9000";
-
-
+
+
/**
* 单笔代付
* @param singlePay
@@ -56,7 +56,7 @@
//商户编号
body.put("userNo", merchantNo);
//报备商户号
- body.put("tradeMerchantNo", singlePay.getTradeMerchantNo());
+// body.put("tradeMerchantNo", singlePay.getTradeMerchantNo());
//产品类型
body.put("productCode", "BANK_PAY_DAILY_ORDER");
//交易请求时间
@@ -124,8 +124,8 @@
SinglePayResult uniPayResult = jsonObject.getObject("data", SinglePayResult.class);
return uniPayResult;
}
-
-
+
+
/**
* 单笔代付查询接口
* @param merchantOrderNo 订单号
@@ -169,8 +169,8 @@
SinglePayQueryResult uniPayResult = jsonObject.getObject("data", SinglePayQueryResult.class);
return uniPayResult;
}
-
-
+
+
/**
* 可取余额查询
* @return
@@ -211,22 +211,16 @@
AccountBalanceQueryResult uniPayResult = jsonObject.getObject("data", AccountBalanceQueryResult.class);
return uniPayResult;
}
-
-
-
-
+
+
+
+
public static String sign(JSONObject body) {
+ //构建字段顺序必须按照文档签名顺序
Set<Map.Entry<String, Object>> entries = body.entrySet();
- List<Map.Entry<String, Object>> infoIds = new ArrayList<Map.Entry<String, Object>>(entries);
- // 对所有传入参数按照字段名的 ASCII 码从小到大排序(字典序)
- Collections.sort(infoIds, new Comparator<Map.Entry<String, Object>>() {
- public int compare(Map.Entry<String, Object> o1, Map.Entry<String, Object> o2) {
- return (o1.getKey()).compareTo(o2.getKey());
- }
- });
// 构造签名键值对的格式
StringBuilder sb = new StringBuilder();
- for (Map.Entry<String, Object> item : infoIds) {
+ for (Map.Entry<String, Object> item : entries) {
if (item.getKey() != null || item.getKey() != "") {
Object val = item.getValue();
if (!(val == "" || val == null)) {
@@ -235,12 +229,8 @@
}
}
sb.append(key);
+ log.info("待签名串:{}", sb.toString());
return MD5AndKL.MD5(sb.toString());
- }
-
-
- public static void main(String[] args) {
- TransferUtil.accountBalanceQuery();
}
}
--
Gitblit v1.7.1