|
|
|
@@ -103,6 +103,7 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer |
|
|
|
WxMaService wxMaService = this.getWxMaService(wxAppinfo, isFmOpen); |
|
|
|
WxMaUserInfo userInfo = wxMaService.getUserService().getUserInfo(cuser.getSessionKey(), encryptedData, iv); |
|
|
|
if (userInfo != null) { |
|
|
|
logger.info("解密用户信息 {}" + userInfo.toString()); |
|
|
|
WxCUser updateUser = new WxCUser(); |
|
|
|
updateUser.setId(cuser.getId()); |
|
|
|
updateUser.updateTenantInfo(cuser); |
|
|
|
@@ -120,6 +121,7 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer |
|
|
|
WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); |
|
|
|
wxCUserBasicInfo.setId(cuser.getUserId()); |
|
|
|
wxCUserBasicInfo.setFinalTenantId(cuser.getFinalTenantId()); |
|
|
|
wxCUserBasicInfo.setNickName(updateUser.getNickName()); |
|
|
|
wxCUserBasicInfo.setSex(updateUser.getGender()); |
|
|
|
wxCUserBasicInfo.setAvatarUrl(updateUser.getAvatarUrl()); |
|
|
|
wxCUserBasicInfoService.update(wxCUserBasicInfo); |
|
|
|
@@ -136,6 +138,7 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer |
|
|
|
WxMaService wxMaService = this.getWxMaService(wxAppinfo, isFmOpen); |
|
|
|
WxMaPhoneNumberInfo phoneNoInfo = wxMaService.getUserService().getPhoneNoInfo(cuser.getSessionKey(), encryptedData, iv); |
|
|
|
if (null != phoneNoInfo) { |
|
|
|
logger.info("解密用户手机号 {}" + phoneNoInfo.toString()); |
|
|
|
if(phoneNoInfo.getPhoneNumber().contains("*")){ |
|
|
|
throw new MallinkException(ErrorCode.PHONE_IS_ENCRYPTED); |
|
|
|
} |
|
|
|
@@ -174,45 +177,47 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer |
|
|
|
newUser.setAppId(cUser.getAppId()); |
|
|
|
newUser.setOpenId(cUser.getOpenId()); |
|
|
|
|
|
|
|
WxCUser oldUser = wxCUserMapper.findByOpenId(newUser); |
|
|
|
WxCUser user = wxCUserMapper.findByOpenId(newUser); |
|
|
|
|
|
|
|
if (oldUser != null) { |
|
|
|
if (user != null) { |
|
|
|
// 已有用户 |
|
|
|
oldUser.createToken(new Date(),oldUser.getTenantId()); |
|
|
|
oldUser.setRegisterIp(cUser.getRegisterIp()); |
|
|
|
oldUser.setSessionKey(cUser.getSessionKey()); |
|
|
|
oldUser.setUnionId(cUser.getUnionId()); |
|
|
|
oldUser.setExtraInfo(cUser.getExtraInfo()); |
|
|
|
oldUser.setLoginCount(oldUser.getLoginCount() + 1); |
|
|
|
oldUser.setActiveTime(new Date()); |
|
|
|
oldUser.setUpdateDate(new Date()); |
|
|
|
wxCUserMapper.updateById(oldUser); |
|
|
|
cUser = oldUser; |
|
|
|
user.createToken(new Date(),user.getTenantId()); |
|
|
|
user.setRegisterIp(cUser.getRegisterIp()); |
|
|
|
user.setSessionKey(cUser.getSessionKey()); |
|
|
|
user.setUnionId(cUser.getUnionId()); |
|
|
|
user.setExtraInfo(cUser.getExtraInfo()); |
|
|
|
user.setLoginCount(user.getLoginCount() + 1); |
|
|
|
user.setActiveTime(new Date()); |
|
|
|
user.setUpdateDate(new Date()); |
|
|
|
wxCUserMapper.updateById(user); |
|
|
|
|
|
|
|
wxCUserFrom.setIsNewUser(EnumYesOrNo.NO.getCode()); |
|
|
|
} else { |
|
|
|
// 新用户 |
|
|
|
user = new WxCUser(); |
|
|
|
user.updateTenantInfo(cUser); |
|
|
|
user.setAppId(cUser.getAppId()); |
|
|
|
user.setOpenId(cUser.getOpenId()); |
|
|
|
final IdWorker idWorker = IdWorker.get(); |
|
|
|
newUser.setId(idWorker.nextId()); |
|
|
|
newUser.createToken(new Date(),newUser.getTenantId()); |
|
|
|
newUser.setRegisterIp(cUser.getRegisterIp()); |
|
|
|
newUser.setSessionKey(cUser.getSessionKey()); |
|
|
|
newUser.setUnionId(cUser.getUnionId()); |
|
|
|
newUser.setSceneAddress(wxCUserFrom.getSceneAddress()); |
|
|
|
newUser.setScene(wxCUserFrom.getScene()); |
|
|
|
newUser.setExtraInfo(cUser.getExtraInfo()); |
|
|
|
newUser.setLoginCount(1); |
|
|
|
newUser.setActiveTime(new Date()); |
|
|
|
newUser.setCreateDate(new Date()); |
|
|
|
newUser.setUpdateDate(new Date()); |
|
|
|
wxCUserMapper.insert(newUser); |
|
|
|
cUser = newUser; |
|
|
|
user.setId(idWorker.nextId()); |
|
|
|
user.createToken(new Date(),user.getTenantId()); |
|
|
|
user.setRegisterIp(cUser.getRegisterIp()); |
|
|
|
user.setSessionKey(cUser.getSessionKey()); |
|
|
|
user.setUnionId(cUser.getUnionId()); |
|
|
|
user.setSceneAddress(wxCUserFrom.getSceneAddress()); |
|
|
|
user.setScene(wxCUserFrom.getScene()); |
|
|
|
user.setExtraInfo(cUser.getExtraInfo()); |
|
|
|
user.setLoginCount(1); |
|
|
|
user.setActiveTime(new Date()); |
|
|
|
user.setCreateDate(new Date()); |
|
|
|
user.setUpdateDate(new Date()); |
|
|
|
wxCUserMapper.insert(user); |
|
|
|
|
|
|
|
wxCUserFrom.setIsNewUser(EnumYesOrNo.YES.getCode()); |
|
|
|
} |
|
|
|
wxCUserFrom.setCUserId(cUser.getId()); |
|
|
|
actionMsgAfterLogin(wxCUserFrom); |
|
|
|
return cUser; |
|
|
|
return user; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
|