| | |
| | | import com.doumee.service.system.SystemPositionUserService; |
| | | import com.doumee.service.system.SystemUserRoleService; |
| | | import com.doumee.service.system.SystemUserService; |
| | | import com.google.common.base.Objects; |
| | | import org.apache.commons.lang3.RandomStringUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | |
| | | } |
| | | if (Constants.formatIntegerNum(user.getFixed())==Constants.ONE ) { |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "请勿删除" + user.getUsername() + ",因为这是固定用户"); |
| | | } |
| | | if ("admin".equals(user.getUsername())){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "超级管理员账号不允许删除"); |
| | | } |
| | | systemUserService.deleteById(id); |
| | | } |
| | |
| | | @Override |
| | | @Transactional |
| | | public void create(CreateSystemUserDTO systemUser) { |
| | | |
| | | if (StringUtils.isBlank(systemUser.getMobile()) || systemUser.getMobile().length() < 6){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"创建用户参数错误"); |
| | | } |
| | | // 验证用户名 |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | queryUserDto.setUsername(systemUser.getUsername()); |
| | | queryUserDto.setDeleted(Constants.ZERO); |
| | | queryUserDto.setUsername(systemUser.getMobile()); |
| | | SystemUser user = systemUserService.findOne(queryUserDto); |
| | | if (user != null) { |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "用户名已存在"); |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "手机号码已存在"); |
| | | } |
| | | // 验证工号 |
| | | if (StringUtils.isNotBlank(systemUser.getEmpNo())) { |
| | |
| | | // 生成密码盐 |
| | | String salt = RandomStringUtils.randomAlphabetic(6); |
| | | // 生成密码 |
| | | systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getPassword(), salt)); |
| | | systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getMobile().substring(systemUser.getMobile().length() - 6), salt)); |
| | | systemUser.setSalt(salt); |
| | | systemUser.setId(UUID.randomUUID().toString()); |
| | | systemUser.setUsername(systemUser.getMobile()); |
| | | // 创建用户记录 |
| | | systemUserService.create(systemUser); |
| | | // 设置部门 |
| | |
| | | systemDepartmentUser.setOperaUser(systemUser.getCreateUser()); |
| | | systemDepartmentUser.setOperaTime(new Date()); |
| | | systemDepartmentUserService.create(systemDepartmentUser); |
| | | } |
| | | } |
| | | // 设置岗位 |
| | | if (systemUser.getPositionIds() != null && systemUser.getPositionIds().size() > 0) { |
| | | for (Integer positionId : systemUser.getPositionIds()) { |
| | |
| | | public void updateById(CreateSystemUserDTO systemUser) { |
| | | // 验证用户名 |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | // queryUserDto.setId(systemUser.getId()); |
| | | queryUserDto.setUsername(systemUser.getUsername()); |
| | | queryUserDto.setDeleted(Constants.ZERO); |
| | | SystemUser user = systemUserService.findOne(queryUserDto); |
| | | if (user != null && !user.getId().equals(systemUser.getId())) { |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "用户名已存在"); |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "手机号已存在"); |
| | | } |
| | | |
| | | // 验证工号 |
| | | if (StringUtils.isNotBlank(systemUser.getEmpNo())) { |
| | | queryUserDto = new SystemUser(); |
| | | queryUserDto.setEmpNo(systemUser.getEmpNo()); |
| | | queryUserDto.setDeleted(Constants.ZERO); |
| | | user = systemUserService.findOne(queryUserDto); |
| | | if (user != null && !user.getId().equals(systemUser.getId())) { |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "工号已存在"); |
| | | } |
| | | // if (StringUtils.isNotBlank(systemUser.getEmpNo())) { |
| | | // queryUserDto = new SystemUser(); |
| | | // queryUserDto.setEmpNo(systemUser.getEmpNo()); |
| | | // queryUserDto.setDeleted(Constants.ZERO); |
| | | // SystemUser user1 = systemUserService.findOne(queryUserDto); |
| | | // if (user1 != null && !user1.getId().equals(systemUser.getId())) { |
| | | // throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "工号已存在"); |
| | | // } |
| | | // } |
| | | if (user != null && "admin".equals(user.getUsername()) && Objects.equal(systemUser.getStatus(),1)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "超级管理员账号不允许禁用"); |
| | | } |
| | | // 修改用户 |
| | | systemUserService.updateById(systemUser); |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void updateStatusById(CreateSystemUserDTO systemUser) { |
| | | |
| | | SystemUser queryUserDto = new SystemUser(); |
| | | queryUserDto.setId(systemUser.getId()); |
| | | queryUserDto.setDeleted(Constants.ZERO); |
| | | SystemUser user = systemUserService.findOne(queryUserDto); |
| | | |
| | | if ("admin".equals(user.getUsername()) && Objects.equal(systemUser.getStatus(),1)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "超级管理员账号不允许禁用"); |
| | | } |
| | | // 修改用户 |
| | | systemUserService.updateById(systemUser); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public void createUserRole(CreateUserRoleDTO dto) { |