session 无 unionId 问题
This commit is contained in:
@ -77,11 +77,12 @@ public class AuthService {
|
|||||||
|
|
||||||
wxMaService.setWxMaConfig(wxMaConfig);
|
wxMaService.setWxMaConfig(wxMaConfig);
|
||||||
WxMaJscode2SessionResult session = wxMaService.getUserService().getSessionInfo(code);
|
WxMaJscode2SessionResult session = wxMaService.getUserService().getSessionInfo(code);
|
||||||
|
WxMaUserInfo wxMpUser = wxMaService.getUserService()
|
||||||
String openid = session.getOpenid();
|
.getUserInfo(session.getSessionKey(), encryptedData, iv);
|
||||||
|
String openid = wxMpUser.getOpenId();
|
||||||
//如果开启了UnionId
|
//如果开启了UnionId
|
||||||
if (StrUtil.isNotBlank(session.getUnionid())) {
|
if (StrUtil.isNotBlank(wxMpUser.getUnionId())) {
|
||||||
openid = session.getUnionid();
|
openid = wxMpUser.getUnionId();
|
||||||
}
|
}
|
||||||
|
|
||||||
YxUser yxUser = userService.getOne(Wrappers.<YxUser>lambdaQuery()
|
YxUser yxUser = userService.getOne(Wrappers.<YxUser>lambdaQuery()
|
||||||
@ -90,8 +91,7 @@ public class AuthService {
|
|||||||
long uid = 0;
|
long uid = 0;
|
||||||
if (ObjectUtil.isNull(yxUser)) {
|
if (ObjectUtil.isNull(yxUser)) {
|
||||||
|
|
||||||
WxMaUserInfo wxMpUser = wxMaService.getUserService()
|
|
||||||
.getUserInfo(session.getSessionKey(), encryptedData, iv);
|
|
||||||
//过滤掉表情
|
//过滤掉表情
|
||||||
String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickName());
|
String nickname = EmojiParser.removeAllEmojis(wxMpUser.getNickName());
|
||||||
String ip = IpUtil.getRequestIp();
|
String ip = IpUtil.getRequestIp();
|
||||||
@ -126,10 +126,10 @@ public class AuthService {
|
|||||||
} else {
|
} else {
|
||||||
uid = yxUser.getUid();
|
uid = yxUser.getUid();
|
||||||
WechatUserDto wechatUser = JSON.parseObject(yxUser.getWxProfile(), WechatUserDto.class);
|
WechatUserDto wechatUser = JSON.parseObject(yxUser.getWxProfile(), WechatUserDto.class);
|
||||||
if ((StrUtil.isBlank(wechatUser.getOpenid()) && StrUtil.isNotBlank(session.getOpenid()))
|
if ((StrUtil.isBlank(wechatUser.getOpenid()) && StrUtil.isNotBlank(wxMpUser.getOpenId()))
|
||||||
|| (StrUtil.isBlank(wechatUser.getUnionId()) && StrUtil.isNotBlank(session.getUnionid()))) {
|
|| (StrUtil.isBlank(wechatUser.getUnionId()) && StrUtil.isNotBlank(wxMpUser.getUnionId()))) {
|
||||||
wechatUser.setRoutineOpenid(session.getOpenid());
|
wechatUser.setRoutineOpenid(wxMpUser.getOpenId());
|
||||||
wechatUser.setUnionId(session.getUnionid());
|
wechatUser.setUnionId(wxMpUser.getUnionId());
|
||||||
|
|
||||||
yxUser.setWxProfile(JSON.toJSONString(wechatUser));
|
yxUser.setWxProfile(JSON.toJSONString(wechatUser));
|
||||||
userService.updateById(yxUser);
|
userService.updateById(yxUser);
|
||||||
|
Reference in New Issue
Block a user