From ff225eded880cea74563368c8c18483efc85ab28 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期五, 22 五月 2026 17:29:36 +0800
Subject: [PATCH] feat:统计相关接口
---
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/SignHelper.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 46 insertions(+), 0 deletions(-)
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/SignHelper.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/SignHelper.java
new file mode 100644
index 0000000..0df5a58
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/utils/SignHelper.java
@@ -0,0 +1,46 @@
+package com.by4cloud.platformx.business.utils;
+
+import javax.crypto.Mac;
+import javax.crypto.spec.SecretKeySpec;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.security.InvalidKeyException;
+import java.security.NoSuchAlgorithmException;
+import java.util.Base64;
+import java.util.Map;
+import java.util.TreeMap;
+
+/**
+ * 璇锋眰寮�鏀惧钩鍙板浠舵巿鏉冪浉鍏虫帴鍙g殑鍔犵绫�
+ * SignHelper
+ *
+ * syt
+ * 2026骞�5鏈�20鏃� 10:31:44
+ */
+public class SignHelper {
+
+
+ /**
+ * 鎸夊弬鏁板悕鎺掑簭鍚庝緷娆℃嫾鎺ュ弬鏁板悕绉颁笌鏁板�硷紝 涔嬪悗瀵硅瀛楃涓蹭娇鐢� HmacSHA256 鍔犵锛� 鍔犵缁撴灉杩涜 base 64 杩斿洖
+ *
+ */
+ public static String sign(Map<String, Object> params, String suiteSecret) throws
+ NoSuchAlgorithmException, UnsupportedEncodingException, InvalidKeyException {
+ Map<String, Object> treeMap;
+ if (params instanceof TreeMap) {
+ treeMap = params;
+ } else {
+ treeMap = new TreeMap<>(params);
+ }
+ StringBuilder stringBuilder = new StringBuilder();
+ for (Map.Entry<String, Object> entry : treeMap.entrySet()) {
+ stringBuilder.append(entry.getKey()).append(entry.getValue());
+ }
+ Mac mac = Mac.getInstance("HmacSHA256");
+ mac.init(new SecretKeySpec(suiteSecret.getBytes(StandardCharsets.UTF_8), "HmacSHA256"));
+ byte[] signData = mac.doFinal(stringBuilder.toString().getBytes(StandardCharsets.UTF_8));
+ String base64String = Base64.getEncoder().encodeToString(signData);
+ return URLEncoder.encode(base64String, "UTF-8");
+ }
+}
--
Gitblit v1.9.1