diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java index 13430013e..22aa62389 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java @@ -170,45 +170,47 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer newUser.setAppId(cUser.getAppId()); newUser.setOpenId(cUser.getOpenId()); - TtCUser oldUser = ttCUserMapper.findByOpenId(newUser); + TtCUser user = ttCUserMapper.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()); - ttCUserMapper.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()); + ttCUserMapper.updateById(user); wxCUserFrom.setIsNewUser(EnumYesOrNo.NO.getCode()); } else { + user = new TtCUser(); + 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()); - ttCUserMapper.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()); + ttCUserMapper.insert(user); wxCUserFrom.setIsNewUser(EnumYesOrNo.YES.getCode()); } wxCUserFrom.setCUserId(cUser.getId()); actionMsgAfterLogin(wxCUserFrom); - return cUser; + return user; } @Override diff --git a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java index df6222be6..a14e595a8 100644 --- a/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java +++ b/mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java @@ -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