From 5506edbe54883b31db3cc8e4a1d9d0795a18a3c9 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 27 十二月 2024 14:37:54 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1 --- server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java | 41 +++++++++++++++++++++++++++++++++-------- 1 files changed, 33 insertions(+), 8 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 1bb9727..3e10b1f 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 @@ -9,8 +9,10 @@ import com.doumee.core.model.LoginUserInfo; import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; +import com.doumee.dao.business.CompanyDepartmentMapper; import com.doumee.dao.business.SmsEmailMapper; import com.doumee.dao.business.model.Company; +import com.doumee.dao.business.model.CompanyDepartment; import com.doumee.dao.system.dto.*; import com.doumee.dao.system.model.SystemDepartment; import com.doumee.dao.system.model.SystemDepartmentUser; @@ -46,6 +48,9 @@ private SystemDictDataBiz systemDictDataBiz; @Autowired private CompanyService companyService; + @Autowired + private CompanyDepartmentMapper companyDepartmentMapper; + @Value("${debug_model}") private boolean debugModel; @@ -181,7 +186,6 @@ @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); @@ -205,12 +209,10 @@ 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(); @@ -229,8 +231,17 @@ systemUser.setType(Constants.equalsInteger(company.getType(),Constants.ONE)?Constants.UserType.ZHUBO.getKey():Constants.UserType.COMPANY.getKey()); systemUser.setType(loginUserInfo.getType()); systemUser.setStatus(Constants.ZERO); + + //濡傛灉鏄紒涓氱敤鎴� 蹇呴』濉啓email + if(Constants.equalsInteger(systemUser.getType(),Constants.ONE)){ + if( systemUser.getEmail() == null){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + } + this.dealCompanyDepartmentData(systemUser); Integer userId = systemUserService.create(systemUser); - // 璁剧疆閮ㄩ棬 + + /*// 璁剧疆閮ㄩ棬 if (systemUser.getDepartmentId() != null) { SystemDepartmentUser systemDepartmentUser = new SystemDepartmentUser(); systemDepartmentUser.setDepartmentId(systemUser.getDepartmentId()); @@ -248,7 +259,7 @@ systemDepartmentUser.setOperaUser(systemUser.getCreateUser()); systemDepartmentUser.setOperaTime(new Date()); systemDepartmentUserService.create(systemDepartmentUser); - } + }*/ } @@ -258,7 +269,6 @@ SystemUser queryUserDto = new SystemUser(); SystemUser user = null; if (StringUtils.isNotBlank(systemUser.getUsername())){ - queryUserDto.setUsername(systemUser.getUsername()); queryUserDto.setDeleted(Boolean.FALSE); user = systemUserService.findOne(queryUserDto); @@ -291,12 +301,11 @@ } } } - systemUser.setType(null);//涓嶆敮鎸佷慨鏀� systemUser.setCompanyId(null);//涓嶆敮鎸佷慨鏀� // 淇敼鐢ㄦ埛 systemUserService.updateById(systemUser); // 璁剧疆閮ㄩ棬 - SystemDepartmentUser deleteDepartmentDto = new SystemDepartmentUser(); + /*SystemDepartmentUser deleteDepartmentDto = new SystemDepartmentUser(); deleteDepartmentDto.setUserId(systemUser.getId()); systemDepartmentUserService.delete(deleteDepartmentDto); if (systemUser.getDepartmentId() != null) { @@ -306,7 +315,23 @@ systemDepartmentUser.setOperaUser(systemUser.getUpdateUser()); systemDepartmentUser.setOperaTime(new Date()); systemDepartmentUserService.create(systemDepartmentUser); + }*/ + } + + + public void dealCompanyDepartmentData(CreateSystemUserDTO systemUser){ + if(Objects.isNull(systemUser.getDepartmentId())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); } + //澶勭悊缁勭粐鏁版嵁 + CompanyDepartment companyDepartment = companyDepartmentMapper.selectById(systemUser.getDepartmentId()); + if(Objects.isNull(companyDepartment)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌缁勭粐鏁版嵁"); + } + if(Constants.equalsInteger(companyDepartment.getType(),systemUser.getType())){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"缁勭粐鍖归厤澶辫触,闈炲悓绫诲瀷缁勭粐"); + } + systemUser.setDepartmentId(companyDepartment.getId()); } -- Gitblit v1.9.3