From 3244b550596e0330031b3f4547356927df83b0ad Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 19 五月 2025 11:48:35 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java |   26 +++++++++++++++-----------
 1 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
index 3904f59..6db885e 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
@@ -13,10 +13,12 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.account.ali.Constant.AliConstant;
 import com.ruoyi.account.ali.model.AliProperties;
+import com.ruoyi.account.ali.pojo.AppletUserLogin;
 import com.ruoyi.account.ali.tools.AliAppletTools;
 import com.ruoyi.account.api.model.TAppUser;
 import com.ruoyi.account.service.TAppUserService;
 import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.system.api.model.LoginUserApplet;
@@ -24,10 +26,7 @@
 import io.swagger.annotations.ApiParam;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -51,17 +50,22 @@
     @Autowired
     private TAppUserService appUserService;
     @ApiOperation(value = "通过code获得openid",tags = {"支付宝小程序登录"})
-    @GetMapping("/openIdByJsCode")
-    public AjaxResult<Map<String, Object>> openIdByJsCode(@RequestParam(name = "code")@ApiParam(value = "code", required = true) String code){
-        log.info("<<<<<<<<换取openid开始<<<<<<<<:{}", code);
+    @PostMapping("/openIdByJsCode")
+    public AjaxResult<Map<String, Object>> openIdByJsCode(@RequestBody AppletUserLogin appletUserLogin){
+        log.info("<<<<<<<<换取openid开始<<<<<<<<:{}", appletUserLogin.getCode());
         // 登录
-        AlipaySystemOauthTokenResponse response = new AliAppletTools(aliProperties).login(code);
+        AlipaySystemOauthTokenResponse response = new AliAppletTools(aliProperties).login(appletUserLogin.getCode());
         if (response.isSuccess()) {
             // 获取用户信息
-            AlipayUserInfoShareResponse userInfo = new AliAppletTools(aliProperties).getUserInfo(response.getAccessToken());
-            log.info("获取支付宝用户信息:{}", userInfo);
+//            AlipayUserInfoShareResponse userInfo = new AliAppletTools(aliProperties).getUserInfo(response.getAccessToken());
+            if(StringUtils.isEmpty(appletUserLogin.getToken())){
+                return AjaxResult.success("已拒绝授权");
+            }
+            // 获取用户手机号
+            String phoneNumber = new AliAppletTools(aliProperties).getPhoneNumber(appletUserLogin.getToken());
+            log.info("获取支付宝用户信息:{}", phoneNumber);
             // 用户信息封装
-            return AjaxResult.ok(appUserService.aliLogin(response,userInfo));
+            return AjaxResult.success(appUserService.aliLogin(response,phoneNumber,appletUserLogin.getInviteUserId()));
         } else {
              String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
              log.warn("诊断结果:{}",diagnosisUrl);

--
Gitblit v1.7.1