From fe95f471666d93e7822a4886c1c69dafbd6b2a1e Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期一, 22 九月 2025 17:57:31 +0800
Subject: [PATCH] feat:更新保存

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/evaluation/EvaluationController.java |   52 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 50 insertions(+), 2 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/evaluation/EvaluationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/evaluation/EvaluationController.java
index a65988f..2786bef 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/evaluation/EvaluationController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/evaluation/EvaluationController.java
@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.evaluation;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import javax.servlet.http.HttpServletRequest;
@@ -156,6 +157,38 @@
     private String wechatAppSecret;
 
     /**
+     * 鐢熸垚寰俊鎺堟潈URL
+     */
+    @Anonymous
+    @GetMapping("/wechat/authurl")
+    public AjaxResult getWechatAuthUrl(String redirectUri, String state) {
+        try {
+            if (StringUtils.isEmpty(redirectUri)) {
+                return error("鍥炶皟鍦板潃涓嶈兘涓虹┖");
+            }
+            
+            logger.info("鐢熸垚寰俊鎺堟潈URL - 鍘熷redirectUri: {}", redirectUri);
+            
+            // 鐢熸垚寰俊鎺堟潈URL锛屼娇鐢╯nsapi_userinfo鑾峰彇鐢ㄦ埛淇℃伅
+            String authUrl = WechatUtils.generateAuthUrl(wechatAppId, redirectUri, "snsapi_userinfo", state);
+            if (authUrl == null) {
+                return error("鐢熸垚寰俊鎺堟潈URL澶辫触");
+            }
+            
+            logger.info("鐢熸垚寰俊鎺堟潈URL鎴愬姛: {}", authUrl);
+            
+            Map<String, String> result = new HashMap<>();
+            result.put("authUrl", authUrl);
+            result.put("originalRedirectUri", redirectUri);
+            result.put("appId", wechatAppId);
+            return success(result);
+        } catch (Exception e) {
+            logger.error("鐢熸垚寰俊鎺堟潈URL澶辫触", e);
+            return error("鐢熸垚寰俊鎺堟潈URL澶辫触: " + e.getMessage());
+        }
+    }
+
+    /**
      * 鑾峰彇寰俊鐢ㄦ埛淇℃伅
      */
     @Anonymous
@@ -163,7 +196,7 @@
     public AjaxResult getWechatUserInfo(String code, HttpServletRequest request) {
         try {
             
-            if (StringUtils.isEmpty(code)) {
+            if (code.isEmpty()) {
                 return error("鎺堟潈鐮佷笉鑳戒负绌�");
             }
 
@@ -182,7 +215,22 @@
                 return error("鑾峰彇寰俊鐢ㄦ埛淇℃伅澶辫触");
             }
 
-            return success(userInfo);
+            // 澶勭悊鐢ㄦ埛淇℃伅锛岀‘淇濆瓧娈靛悕绉颁竴鑷�
+            Map<String, Object> result = new HashMap<>();
+            result.put("openid", userInfo.getString("openid"));
+            result.put("nickname", userInfo.getString("nickname"));
+            result.put("headimgurl", userInfo.getString("headimgurl"));
+            result.put("sex", userInfo.getInteger("sex"));
+            result.put("province", userInfo.getString("province"));
+            result.put("city", userInfo.getString("city"));
+            result.put("country", userInfo.getString("country"));
+            result.put("unionid", userInfo.getString("unionid"));
+            // 娉ㄦ剰锛氬井淇$綉椤垫巿鏉冩棤娉曠洿鎺ヨ幏鍙栨墜鏈哄彿锛岄渶瑕侀�氳繃鍏朵粬鏂瑰紡
+            // 濡傞渶鑾峰彇鎵嬫満鍙凤紝闇�瑕佷娇鐢ㄥ井淇″皬绋嬪簭鐨刧etPhoneNumber鎺ュ彛鎴栧井淇″紑鏀惧钩鍙扮殑鎵嬫満鍙峰揩閫熼獙璇佺粍浠�
+            result.put("phone", "");
+            result.put("phoneNote", "寰俊缃戦〉鎺堟潈鏃犳硶鐩存帴鑾峰彇鎵嬫満鍙凤紝璇锋墜鍔ㄨ緭鍏�");
+
+            return success(result);
         } catch (Exception e) {
             logger.error("鑾峰彇寰俊鐢ㄦ埛淇℃伅澶辫触", e);
             return error("鑾峰彇寰俊鐢ㄦ埛淇℃伅澶辫触");

--
Gitblit v1.9.1