From e10e8f5fcb5a6a2716d04c152d236109359254a8 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 17 四月 2025 18:23:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/src/main/java/com/doumee/api/web/WebMemberController.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/server/src/main/java/com/doumee/api/web/WebMemberController.java b/server/src/main/java/com/doumee/api/web/WebMemberController.java
index 6121e43..a9c6e23 100644
--- a/server/src/main/java/com/doumee/api/web/WebMemberController.java
+++ b/server/src/main/java/com/doumee/api/web/WebMemberController.java
@@ -9,6 +9,8 @@
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.ApiResponse;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
 import com.doumee.dao.business.dto.WebQwSingatureDto;
 import com.doumee.dao.business.model.Member;
 import com.doumee.dao.business.vo.WebQwSingatureVO;
@@ -18,6 +20,7 @@
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -110,18 +113,18 @@
             String jsapiTicket = systemDictDataBiz.queryByCode(Constants.QYWX,Constants.QYWX_JS_API_TICKET).getCode();
             String noncestr = UUID.randomUUID().toString();
             Long timestamp = System.currentTimeMillis() / 1000;
-            String jsapiTicketStr = jsapiTicket + "&noncestr=" + noncestr + "&timestamp=" + timestamp + "&url=" + param.getUrl();
-            MessageDigest instance = MessageDigest.getInstance("SHA-1");
-            instance.update(jsapiTicketStr.getBytes());
-            byte[] digest = instance.digest();
-            BigInteger bigInteger = new BigInteger(1, digest);
-            String string = bigInteger.toString();
+            String jsapiTicketStr = "jsapi_ticket="+jsapiTicket + "&noncestr=" + noncestr + "&timestamp=" + timestamp + "&url=" + param.getUrl();
+//            MessageDigest instance = MessageDigest.getInstance("SHA-1");
+//            instance.update(jsapiTicketStr.getBytes());
+//            byte[] digest = instance.digest();
+//            BigInteger bigInteger = new BigInteger(1, digest);
+//            String string = bigInteger.toString();
             WebQwSingatureVO result = new WebQwSingatureVO();
             result.setNoncestr(  noncestr);
-            result.setSignature(  string);
+            result.setSignature(  getSHA1(jsapiTicketStr));
             result.setTimestamp( timestamp);
             result.setUrl( param.getUrl());
-//            result.put("ticket", jsapiTicket);
+            result.setTicket(jsapiTicket);
             return ApiResponse.success( result);
         } catch ( Exception e) {
             e.printStackTrace();
@@ -130,4 +133,41 @@
 
         return ApiResponse.failed("鑾峰彇绛惧悕澶辫触");
     }
+
+
+    @LoginRequired
+    @ApiOperation("鏌ヨ鍙鎶勯�佷汉鍒嗛〉")
+    @PostMapping("/getCopySendUserPage")
+    public ApiResponse<PageData<Member>> getCopySendUserPage (@RequestBody PageWrap<Member> pageWrap) {
+        pageWrap.getModel().setIsSendCopy(Constants.ONE);
+        return ApiResponse.success(memberService.findPage(pageWrap));
+    }
+
+
+
+    public static String getSHA1(String input) {
+        try {
+            // 鑾峰彇MessageDigest绫荤殑瀹炰緥锛屾寚瀹氫娇鐢⊿HA-1绠楁硶
+            MessageDigest md = MessageDigest.getInstance("SHA-1");
+
+            // 浣跨敤鎸囧畾鐨勫瓧鑺傛洿鏂版憳瑕�
+            md.update(input.getBytes());
+
+            // 鑾峰彇瀵嗘枃锛堝搱甯屽�硷級
+            byte[] digest = md.digest();
+
+            // 灏嗗瓧鑺傛暟缁勮浆鎹负鍗佸叚杩涘埗瀛楃涓�
+            StringBuilder hexString = new StringBuilder();
+            for (byte b : digest) {
+                String hex = Integer.toHexString(0xff & b);
+                if (hex.length() == 1) hexString.append('0');
+                hexString.append(hex);
+            }
+
+            return hexString.toString();
+        } catch (NoSuchAlgorithmException e) {
+            throw new RuntimeException(e);
+        }
+    }
+
 }
\ No newline at end of file

--
Gitblit v1.9.3