添加员工用户名不能重复
在前面业务异常类新增一个用户名存在异常处理类

package com.sky.exception;
/**
* 用户名存在异常
*/
public class UserNameExistException extends BaseException{
public UserNameExistException(String msg) {
super(msg);
}
}
在com.sky.constant 包里的 MessageConstant 信息提示常量类里添加一条 用户名存在提示常量信息

添加
public static final String USER_NAME_EXIST="用户名已经存在!!";
最后在 EmployeeServiceImpl 实现类的 员工添加方法上处理
添加员工完整代码如下
/**
* 新增员工
* @param employeeDTO
*/
@Override
public void add(EmployeeDTO employeeDTO) {
//我要做什么 -> 添加员工
//操作数据库需要一个员工对象实体类
//判断添加的当前用户名是否已经存在
String username = employeeDTO.getUsername();
//根据用户名查询数据库
Employee name = employeeMapper.getByUsername(username);
//判断当前用户名重复
if (name != null){
//当前名称已经存在 抛出业务异常
throw new UserNameExistException(MessageConstant.USER_NAME_EXIST);
}
//不存在就正常执行添加操作
Employee employee = new Employee();
//属性拷贝 拷贝前端传过来的属性
BeanUtils.copyProperties(employeeDTO,employee);
//做这件事需要什么 -> 账号默认密码 123456 进行md5加密 账号默认状态 1
employee.setPassword(DigestUtils.md5DigestAsHex(PasswordConstant.DEFAULT_PASSWORD.getBytes()));
employee.setStatus(StatusConstant.ENABLE);
//账号的创建时间 当前系统时间
employee.setCreateTime(LocalDateTime.now());
employee.setUpdateTime(LocalDateTime.now());
//后续完成 创建人
employee.setCreateUser(BaseContext.getCurrentId());
employee.setUpdateUser(BaseContext.getCurrentId());
employeeMapper.add(employee);
}
效果

785

被折叠的 条评论
为什么被折叠?



