| | |
| | | |
| | | @Override |
| | | public void updateUser(Long userId, AppMemberUserUpdateReqVO reqVO) { |
| | | // 1.1 检测用户是否存在 |
| | | validateUserExists(userId); |
| | | // 1.2 校验手机是否已经被绑定 |
| | | validateEmailUnique(userId, reqVO.getEmail()); |
| | | |
| | | // 2. 更新用户 |
| | | MemberUserDO updateObj = BeanUtils.toBean(reqVO, MemberUserDO.class).setId(userId); |
| | | memberUserMapper.updateById(updateObj); |
| | | } |
| | |
| | | validateUserExists(updateReqVO.getId()); |
| | | // 校验手机唯一 |
| | | validateMobileUnique(updateReqVO.getId(), updateReqVO.getMobile()); |
| | | // 校验邮箱唯一 |
| | | validateEmailUnique(updateReqVO.getId(), updateReqVO.getEmail()); |
| | | |
| | | // 更新 |
| | | MemberUserDO updateObj = MemberUserConvert.INSTANCE.convert(updateReqVO); |
| | |
| | | } |
| | | } |
| | | |
| | | @VisibleForTesting |
| | | void validateEmailUnique(Long id, String email) { |
| | | if (StrUtil.isBlank(email)) { |
| | | return; |
| | | } |
| | | MemberUserDO user = memberUserMapper.selectByEmail(email); |
| | | if (user == null) { |
| | | return; |
| | | } |
| | | // 如果 id 为空,说明不用比较是否为相同 id 的用户 |
| | | if (id == null) { |
| | | throw exception(USER_EMAIL_USED, email); |
| | | } |
| | | if (!user.getId().equals(id)) { |
| | | throw exception(USER_EMAIL_USED, email); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public PageResult<MemberUserDO> getUserPage(MemberUserPageReqVO pageReqVO) { |
| | | return memberUserMapper.selectPage(pageReqVO); |