From ab9c2e08d429c069299f2c34f7bd98e9be8d6e7f Mon Sep 17 00:00:00 2001 From: LionCity <18026623439@163.com> Date: Sun, 28 Jun 2020 10:32:21 +0800 Subject: [PATCH] =?UTF-8?q?session=20=E6=97=A0=20unionId=20=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yixiang/modules/services/AuthService.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java b/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java index 88ea4d25..71e5e59a 100644 --- a/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java +++ b/yshop-app/src/main/java/co/yixiang/modules/services/AuthService.java @@ -77,11 +77,12 @@ public class AuthService { wxMaService.setWxMaConfig(wxMaConfig); WxMaJscode2SessionResult session = wxMaService.getUserService().getSessionInfo(code); - - String openid = session.getOpenid(); + WxMaUserInfo wxMpUser = wxMaService.getUserService() + .getUserInfo(session.getSessionKey(), encryptedData, iv); + String openid = wxMpUser.getOpenId(); //如果开启了UnionId - if (StrUtil.isNotBlank(session.getUnionid())) { - openid = session.getUnionid(); + if (StrUtil.isNotBlank(wxMpUser.getUnionId())) { + openid = wxMpUser.getUnionId(); } YxUser yxUser = userService.getOne(Wrappers.lambdaQuery() @@ -90,8 +91,7 @@ public class AuthService { long uid = 0; if (ObjectUtil.isNull(yxUser)) { - WxMaUserInfo wxMpUser = wxMaService.getUserService() - .getUserInfo(session.getSessionKey(), encryptedData, iv); + //过滤掉表情 String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickName()); String ip = IpUtil.getRequestIp(); @@ -126,10 +126,10 @@ public class AuthService { } else { uid = yxUser.getUid(); WechatUserDto wechatUser = JSON.parseObject(yxUser.getWxProfile(), WechatUserDto.class); - if ((StrUtil.isBlank(wechatUser.getOpenid()) && StrUtil.isNotBlank(session.getOpenid())) - || (StrUtil.isBlank(wechatUser.getUnionId()) && StrUtil.isNotBlank(session.getUnionid()))) { - wechatUser.setRoutineOpenid(session.getOpenid()); - wechatUser.setUnionId(session.getUnionid()); + if ((StrUtil.isBlank(wechatUser.getOpenid()) && StrUtil.isNotBlank(wxMpUser.getOpenId())) + || (StrUtil.isBlank(wechatUser.getUnionId()) && StrUtil.isNotBlank(wxMpUser.getUnionId()))) { + wechatUser.setRoutineOpenid(wxMpUser.getOpenId()); + wechatUser.setUnionId(wxMpUser.getUnionId()); yxUser.setWxProfile(JSON.toJSONString(wechatUser)); userService.updateById(yxUser);