1.修改部分逻辑
This commit is contained in:
@@ -61,9 +61,14 @@ public class UserServiceImpl extends ServiceImpl<UserDao, UserModel> implements
|
||||
|
||||
@Override
|
||||
public UserModelVO loginWithMail(UserModelDTO model) {
|
||||
if (model.getUserNameOrEmail().isEmpty()){
|
||||
throw new BusinessException(ErrorCode.PARAMS_ERROR,"用户名或邮箱不能为空");
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<UserModel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(UserModel::getEmail,model.getEmail())
|
||||
lambdaQueryWrapper.eq(UserModel::getEmail,model.getUserNameOrEmail())
|
||||
.or()
|
||||
.eq(UserModel::getUserName,model.getUserNameOrEmail())
|
||||
.in(UserModel::getStatus, 0,2);
|
||||
|
||||
UserModel userModel = userDao.selectOne(lambdaQueryWrapper);
|
||||
@@ -130,12 +135,23 @@ public class UserServiceImpl extends ServiceImpl<UserDao, UserModel> implements
|
||||
LambdaQueryWrapper<UserModel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(UserModel::getEmail,userModelDTO.getEmail());
|
||||
UserModel userModel = userDao.selectOne(lambdaQueryWrapper);
|
||||
|
||||
UserModel usernameModel = userDao.selectOne(lambdaQueryWrapper
|
||||
.eq(UserModel::getUserName, userModelDTO.getUserName()));
|
||||
|
||||
if (userModel != null) {
|
||||
throw new BusinessException(ErrorCode.MAIL_ALREADY_EXIST);
|
||||
}
|
||||
if (usernameModel != null) {
|
||||
throw new BusinessException(ErrorCode.USERNAME_ALREADY_EXIST);
|
||||
}
|
||||
if (userModelDTO.getPassword().length() < 6 ){
|
||||
throw new BusinessException(ErrorCode.PARAMS_ERROR,"密码长度不能小于 6 位");
|
||||
}
|
||||
if (userModelDTO.getUserName().isEmpty()){
|
||||
throw new BusinessException(ErrorCode.PARAMS_ERROR,"用户名不能为空");
|
||||
}
|
||||
|
||||
userModelDTO.setPassword(BcryptUtils.encryptPassword(userModelDTO.getPassword()));
|
||||
userModelDTO.setCreateTime(VVTools.currentTimeStamp());
|
||||
//设置状态为待验证
|
||||
@@ -326,12 +342,31 @@ public class UserServiceImpl extends ServiceImpl<UserDao, UserModel> implements
|
||||
throw new BusinessException(ErrorCode.SYSTEM_ERROR,"验证码过期或验证码错误");
|
||||
}
|
||||
LambdaQueryWrapper<UserModel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
|
||||
UserModel duplicateMailUser = userDao.selectOne(lambdaQueryWrapper.eq(UserModel::getEmail, mailModel.getMailAddress()));
|
||||
if (duplicateMailUser != null) {
|
||||
throw new BusinessException(ErrorCode.SYSTEM_ERROR,"邮箱地址已被使用");
|
||||
}
|
||||
|
||||
UserModel userModel = userDao.selectOne(lambdaQueryWrapper
|
||||
.eq(UserModel::getEmail, mail)
|
||||
.eq(UserModel::getStatus, 0));
|
||||
.eq(UserModel::getMailVerification, 0 ));
|
||||
|
||||
if (userModel == null) {
|
||||
throw new BusinessException(ErrorCode.USER_MAIL_NOT_VERIFICATION);
|
||||
}
|
||||
userModel.setEmail(mailModel.getMailAddress());
|
||||
mailService.sendVerificationMail(mailModel.getMailAddress(),userModel.getId());
|
||||
userModel.setMailVerification(1);
|
||||
return userDao.updateById(userModel) == 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean checkUserName(UserModelDTO userModelDTO) {
|
||||
LambdaQueryWrapper<UserModel> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
UserModel userModel = userDao.selectOne(lambdaQueryWrapper
|
||||
.eq(UserModel::getUserName, userModelDTO.getUserName()));
|
||||
return userModel == null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user