From b87ea2fdb7c5b27c12b67395f3bbf867a559d97f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Thu, 14 Aug 2025 13:47:31 +0800 Subject: [PATCH] =?UTF-8?q?fix(wxlogin):=20=E4=BF=AE=E5=A4=8D=E5=BE=AE?= =?UTF-8?q?=E4=BF=A1=E7=99=BB=E5=BD=95=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在微信登录逻辑中,添加了获取用户详细信息的步骤 - 通过 userService.getByIdRel 方法获取完整的用户信息 - 确保在生成 token 和返回登录结果时使用完整的用户信息 --- .../system/controller/WxLoginController.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java b/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java index ead0f70..4f17252 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java @@ -464,14 +464,15 @@ public class WxLoginController extends BaseController { if (StrUtil.isNotBlank(openid)) { User user = userService.getOne(new LambdaQueryWrapper().eq(User::getOpenid, openid).last("limit 1")); - if (ObjectUtil.isNotEmpty(user)) { - // 签发token - String access_token = JwtUtil.buildToken(new JwtSubject(user.getUsername(), user.getTenantId()), - configProperties.getTokenExpireTime(), configProperties.getTokenKey()); - loginRecordService.saveAsync(user.getUsername(), LoginRecord.TYPE_REGISTER, null, user.getTenantId(), request); - return success("登录成功", new LoginResult(access_token, user)); - } - return fail("用户未注册", openid); + final User userInfo = userService.getByIdRel(user.getUserId()); + if (ObjectUtil.isNotEmpty(userInfo)) { + // 签发token + String access_token = JwtUtil.buildToken(new JwtSubject(user.getUsername(), user.getTenantId()), + configProperties.getTokenExpireTime(), configProperties.getTokenKey()); + loginRecordService.saveAsync(user.getUsername(), LoginRecord.TYPE_REGISTER, null, user.getTenantId(), request); + return success("登录成功", new LoginResult(access_token, userInfo)); + } + return fail("用户未注册", openid); } return fail("openId获取失败"); }