| | |
| | | import com.doumee.biz.zbom.model.zhongtai.ZTUserGetTokenRequest; |
| | | import com.doumee.biz.zbom.model.zhongtai.ZTUserInfoUpdateRequest; |
| | | import com.doumee.biz.zbom.model.zhongtai.response.ZTBaseResponse; |
| | | import com.doumee.biz.zbom.model.zhongtai.response.ZTCustomerBindingUsersRequest; |
| | | import com.doumee.biz.zbom.model.zhongtai.response.ZTSysuserGetTokenResponse; |
| | | import com.doumee.biz.zbom.model.zhongtai.response.ZTUserGetTokenResponse; |
| | | import com.doumee.config.Jwt.JwtPayLoad; |
| | |
| | | |
| | | |
| | | @Override |
| | | public AccountResponse wxLogin(String code,String iamId){ |
| | | public AccountResponse wxLogin(String code,String userId){ |
| | | try { |
| | | // 获取微信敏感数据 |
| | | WxMaJscode2SessionResult session = WxMiniConfig.wxCustomerService.getUserService().getSessionInfo(code); |
| | |
| | | // String openId = code; |
| | | Member member = memberMapper.selectOne(new QueryWrapper<Member>().eq("OPENID", openId).isNotNull("phone")); |
| | | Users users = new Users(); |
| | | if(StringUtils.isNotBlank(iamId)){ |
| | | users = usersMapper.selectOne(new QueryWrapper<Users>().lambda() |
| | | .eq(Users::getIamId,iamId) |
| | | .last("limit 1") |
| | | ); |
| | | if(StringUtils.isNotBlank(userId)){ |
| | | users = usersMapper.selectById(userId); |
| | | } |
| | | if (member == null) { |
| | | member = new Member(); |
| | |
| | | member.setToken(ztUserGetTokenResponse.getToken()); |
| | | } |
| | | memberMapper.insert(member); |
| | | this.saveCustomerUser(users,member.getId()); |
| | | MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member.getId(),member.getOpenid()); |
| | | }else{ |
| | | ZTUserGetTokenResponse ztUserGetTokenResponse = this.syncZhongTaiUser(member); |
| | | if(!Objects.isNull(ztUserGetTokenResponse)){ |
| | | member.setToken(ztUserGetTokenResponse.getToken()); |
| | | memberMapper.updateById(member); |
| | | } |
| | | this.saveCustomerUser(users,member.getId()); |
| | | MemberServiceImpl.saveCustomerUser(zbomZhongTaiService,customerUserMapper,users,member.getId(),member.getOpenid()); |
| | | member = this.getMemberInfo(member.getId()); |
| | | } |
| | | String token = JwtTokenUtil.generateTokenForZb(member.getId(),ZTConstants.CUSTOMER, JSONObject.toJSON(member).toString(),redisTemplate); |
| | |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"微信登录异常!请联系管理员"); |
| | | } |
| | | |
| | | public void saveCustomerUser(Users users,Long memberId){ |
| | | public static void saveCustomerUser(ZbomZhongTaiService zbomZhongTaiService,CustomerUserMapper customerUserMapper,Users users,Long memberId,String openId){ |
| | | if(Objects.nonNull(users)&&Objects.nonNull(memberId)) { |
| | | if (customerUserMapper.selectCount(new QueryWrapper<CustomerUser>().lambda() |
| | | .eq(CustomerUser::getIsdeleted, Constants.ZERO) |
| | |
| | | customerUser.setUsername(users.getIamUsername()); |
| | | customerUser.setAddr(users.getShopAddress()); |
| | | customerUserMapper.insert(customerUser); |
| | | //TODO 等待调起中台接口 |
| | | //等待调起中台接口 |
| | | ZTCustomerBindingUsersRequest ztCustomerBindingUsersRequest = new ZTCustomerBindingUsersRequest(); |
| | | ztCustomerBindingUsersRequest.setOpenId(openId); |
| | | ztCustomerBindingUsersRequest.setSourceCustomerId(memberId.toString()); |
| | | ztCustomerBindingUsersRequest.setDaoGouUserId(users.getId().toString()); |
| | | ztCustomerBindingUsersRequest.setDaoGouAccount(users.getIamUsername()); |
| | | ztCustomerBindingUsersRequest.setDaoGouType(users.getUserTypes()); |
| | | ztCustomerBindingUsersRequest.setUserName(users.getIamId()); |
| | | ztCustomerBindingUsersRequest.setPlatSource(ZTConstants.PLATFORM_MP_WX); |
| | | zbomZhongTaiService.customerBinDingUsers(ztCustomerBindingUsersRequest); |
| | | } |
| | | } |
| | | } |