陶杰
2025-01-02 c239be90bfaab913145ff6019abd4fcb194ae847
src/main/java/com/mzl/flower/service/system/UserService.java
@@ -96,11 +96,13 @@
            , String imgUrl, String nickname,String userType){
        List<String> userTypes = new ArrayList<>();
        userTypes.add(userType);
        User user = userMapper.getByOpenID(openId,userTypes);
        if(user == null){
        List<User> userList = userMapper.getByOpenID(openId,userTypes);
        if(CollectionUtils.isEmpty(userList)){
            throw new ValidationException("请注册账号后至\"个人中心-绑定微信\"后再使用微信登录");
        }
        user.setNickName(nickname);
        User user=userList.get(0);
//        user.setNickName(nickname);
        user.setNickName(user.getLoginName());
        user.setPicture(imgUrl);
        user.update(user.getId());
        userMapper.updateById(user);
@@ -118,6 +120,19 @@
    }
    public void bindWechat(String userId, String openId, String unionId, String sessionKey, BindWechatDTO dto) {
        // 查看微信是否已经绑定过用户
        User user = userMapper.selectById(userId);
        if(ObjectUtils.isEmpty(user)){
            throw new ValidationException("当前用户不存在");
        }
        List<User> userList=wechatMapper.selectUserByOpenId(openId,user.getType());
        if(!CollectionUtils.isEmpty(userList)){
            throw new ValidationException("该微信已绑定其他账号");
        }
        UserWechat wechat = wechatMapper.selectOne(new LambdaQueryWrapper<UserWechat>()
                .eq(UserWechat::getUserId,userId));
        if(wechat == null){
@@ -136,6 +151,8 @@
            wechat.setRealName(dto.getRealName());
            wechatMapper.updateById(wechat);
        }
    }
@@ -503,8 +520,11 @@
    public User getExistUserByOpenId(String openId, String sessionKey, String unionId, String userType) {
        List<String> userTypes = new ArrayList<>();
        userTypes.add(userType);
        User user = userMapper.getByOpenID(openId,userTypes);
        return user;
        List<User> userList = userMapper.getByOpenID(openId,userTypes);
        if(!CollectionUtils.isEmpty(userList)){
            return userList.get(0);
        }
        return null;
    }
    public void registWxUser(CreateWechatUserDTO dto) {
@@ -541,6 +561,7 @@
                    updateCustomerDTO.setUserId(user.getId());
                    if (StringUtils.isNotBlank(dto.getPurePhoneNumber())) {
                        updateCustomerDTO.setName("花满芫-" + dto.getPurePhoneNumber().substring(dto.getPurePhoneNumber().length() - 4));
                    }
                    customerService.addOrUpdateCustomer(updateCustomerDTO);
                }