From 92786c58666e6dcb279b29e80fd744067525bc5e Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 28 六月 2024 11:55:57 +0800 Subject: [PATCH] 提交一把 --- server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java | 144 ++++++++++++++++++++++++----------------------- 1 files changed, 74 insertions(+), 70 deletions(-) diff --git a/server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java b/server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java index d0213e8..1bb9727 100644 --- a/server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java +++ b/server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java @@ -177,6 +177,80 @@ } } + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) + public void createCompany(CreateSystemUserDTO systemUser) { + // 楠岃瘉鐢ㄦ埛鍚� + + LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + if(!Constants.equalsInteger(loginUserInfo.getType(),Constants.UserType.SYSTEM.getKey())){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED); + } +// systemUser.setUsername(systemUser.getMobile()); + if(StringUtils.isBlank(systemUser.getMobile()) || StringUtils.isBlank(systemUser.getCaptcha())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + if( systemUser.getCompanyId() == null){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + String phoneAtuh = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.COMPANY_PHONE_AUTH).getCode(); + if(!debugModel && !StringUtils.equals(phoneAtuh,Constants.ONE+"")){ + SmsEmailServiceImpl.isCaptcheValide(smsEmailMapper,systemUser.getMobile(),systemUser.getCaptcha()); + } + Company company = companyService.findById(systemUser.getCompanyId()); + if(company == null ||Constants.equalsInteger(company.getIsdeleted(),Constants.ONE)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝褰撳墠浼佷笟淇℃伅涓嶆纭紒"); + } + + SystemUser queryUserDto = new SystemUser(); + queryUserDto.setUsername(systemUser.getUsername()); + queryUserDto.setDeleted(Boolean.FALSE); +// queryUserDto.setType(Constants.ZERO); + SystemUser user = systemUserService.findOne(queryUserDto); + if (user != null) { + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鐧诲綍璐﹀彿宸插瓨鍦�"); + } + + // 楠岃瘉鎵嬫満鍙� + if (StringUtils.isNotBlank(systemUser.getMobile())) { + queryUserDto = new SystemUser(); + queryUserDto.setDeleted(Boolean.FALSE); + queryUserDto.setMobile(systemUser.getMobile()); + user = systemUserService.findOne(queryUserDto); + if (user != null) { + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙峰凡瀛樺湪"); + } + } + // 鐢熸垚瀵嗙爜鐩� + String salt = RandomStringUtils.randomAlphabetic(6); + // 鐢熸垚瀵嗙爜 + systemUser.setPassword(Utils.Secure.encryptPassword(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.DEFAULT_PASSWORD).getCode(), salt)); + systemUser.setSalt(salt); + systemUser.setType(Constants.equalsInteger(company.getType(),Constants.ONE)?Constants.UserType.ZHUBO.getKey():Constants.UserType.COMPANY.getKey()); + systemUser.setType(loginUserInfo.getType()); + systemUser.setStatus(Constants.ZERO); + Integer userId = systemUserService.create(systemUser); + // 璁剧疆閮ㄩ棬 + if (systemUser.getDepartmentId() != null) { + SystemDepartmentUser systemDepartmentUser = new SystemDepartmentUser(); + systemDepartmentUser.setDepartmentId(systemUser.getDepartmentId()); + systemDepartmentUser.setUserId(userId); + systemDepartmentUser.setOperaUser(systemUser.getCreateUser()); + systemDepartmentUser.setOperaTime(new Date()); + systemDepartmentUserService.create(systemDepartmentUser); + }else { + SystemDepartmentUser systemDepartmentUser = new SystemDepartmentUser(); + QueryWrapper<SystemDepartment> wrapper = new QueryWrapper<>(); + wrapper.lambda().isNull(SystemDepartment::getParentId).last("limit 1"); + SystemDepartment systemDepartment = systemDepartmentService.findOne(wrapper); + systemDepartmentUser.setDepartmentId(systemDepartment.getId()); + systemDepartmentUser.setUserId(userId); + systemDepartmentUser.setOperaUser(systemUser.getCreateUser()); + systemDepartmentUser.setOperaTime(new Date()); + systemDepartmentUserService.create(systemDepartmentUser); + } + + } @Override public void updateById(CreateSystemUserDTO systemUser) { @@ -248,76 +322,6 @@ SystemUserRole newUserRole = new SystemUserRole(); newUserRole.setUserId(dto.getUserId()); newUserRole.setRoleId(roleId); - systemUserRoleService.create(newUserRole); - } - } - - @Override - @Transactional(rollbackFor = {Exception.class,BusinessException.class}) - public void companyCreateUser(CreateCompanyUserDTO createCompanyUserDTO) { - if(Objects.isNull(createCompanyUserDTO) - ||StringUtils.isBlank(createCompanyUserDTO.getUserName()) - ||StringUtils.isBlank(createCompanyUserDTO.getRealName()) - ||StringUtils.isBlank(createCompanyUserDTO.getPassword()) ){ - throw new BusinessException(ResponseStatus.BAD_REQUEST); - } - LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); - SystemUser queryUserDto = new SystemUser(); - queryUserDto.setUsername(createCompanyUserDTO.getUserName()); - queryUserDto.setDeleted(Boolean.FALSE); - SystemUser user = systemUserService.findOne(queryUserDto); - if (user != null) { - throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鐧诲綍璐﹀彿宸插瓨鍦�"); - } - if(createCompanyUserDTO.getType().equals(Constants.UserType.ZHUBO.getKey())){ - Company company = companyService.findById(loginUserInfo.getCompanyId()); - SystemUser zbUserNum = new SystemUser(); - zbUserNum.setCompanyId(loginUserInfo.getCompanyId()); - zbUserNum.setDeleted(Boolean.FALSE); - zbUserNum.setType(Constants.UserType.ZHUBO.getKey()); - } - SystemUser systemUser = new SystemUser(); - BeanUtils.copyProperties(createCompanyUserDTO,systemUser); - systemUser.setCompanyId(loginUserInfo.getCompanyId()); - systemUser.setRealname(createCompanyUserDTO.getRealName()); - systemUser.setUsername(createCompanyUserDTO.getUserName()); - // 鐢熸垚瀵嗙爜鐩� - String salt = RandomStringUtils.randomAlphabetic(6); - // 鐢熸垚瀵嗙爜 - systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getPassword(), salt)); - systemUser.setSalt(salt); - Integer userId = systemUserService.create(systemUser); - if(systemUser.getType().equals(Constants.UserType.COMPANY.getKey())){ - SystemUserRole newUserRole = new SystemUserRole(); - newUserRole.setUserId(userId); - newUserRole.setRoleId(createCompanyUserDTO.getRoleId()); - systemUserRoleService.create(newUserRole); - } - } - - @Override - @Transactional(rollbackFor = {Exception.class,BusinessException.class}) - public void companyUpdUser(CreateCompanyUserDTO updCreateCompanyUserDTO) { - if(Objects.isNull(updCreateCompanyUserDTO) - ||Objects.isNull(updCreateCompanyUserDTO.getId()) - ||StringUtils.isBlank(updCreateCompanyUserDTO.getRealName())){ - throw new BusinessException(ResponseStatus.BAD_REQUEST); - } - SystemUser systemUser = systemUserService.findById(updCreateCompanyUserDTO.getId()); - if(Objects.isNull(systemUser)){ - throw new BusinessException(ResponseStatus.DATA_EMPTY); - } - systemUser.setRealname(updCreateCompanyUserDTO.getRealName()); - systemUser.setMobile(updCreateCompanyUserDTO.getMobile()); - systemUserService.updateById(systemUser); - if(systemUser.getType().equals(Constants.UserType.COMPANY.getKey())){ - // 鍒犻櫎鍏宠仈瑙掕壊 - SystemUserRole deleteDto = new SystemUserRole(); - deleteDto.setUserId(systemUser.getId()); - systemUserRoleService.delete(deleteDto); - SystemUserRole newUserRole = new SystemUserRole(); - newUserRole.setUserId(systemUser.getId()); - newUserRole.setRoleId(updCreateCompanyUserDTO.getRoleId()); systemUserRoleService.create(newUserRole); } } -- Gitblit v1.9.3