From b6fde711bf33cede4cb84f85146c32b0c0c61aa5 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期一, 04 十一月 2024 09:06:28 +0800
Subject: [PATCH] 优化需求
---
server/service/src/main/java/com/doumee/biz/system/impl/SystemUserBizImpl.java | 156 +++++++++++++++++++++++++++------------------------
1 files changed, 83 insertions(+), 73 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 107521a..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
@@ -2,6 +2,7 @@
import cn.emay.sdk.core.dto.sms.response.SmsResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.biz.system.SystemUserBiz;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
@@ -41,6 +42,8 @@
@Autowired
private SmsEmailMapper smsEmailMapper;
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Autowired
private CompanyService companyService;
@Value("${debug_model}")
@@ -120,7 +123,8 @@
if(StringUtils.isBlank(systemUser.getMobile()) || StringUtils.isBlank(systemUser.getCaptcha())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
- if(!debugModel){
+ 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());
}
SystemUser queryUserDto = new SystemUser();
@@ -144,12 +148,87 @@
// 鐢熸垚瀵嗙爜鐩�
String salt = RandomStringUtils.randomAlphabetic(6);
// 鐢熸垚瀵嗙爜
- systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getPassword(), salt));
+// systemUser.setPassword(Utils.Secure.encryptPassword(systemUser.getPassword(), salt));
+ systemUser.setPassword(Utils.Secure.encryptPassword(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.DEFAULT_PASSWORD).getCode(), salt));
systemUser.setSalt(salt);
LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
systemUser.setType(loginUserInfo.getType());
systemUser.setStatus(Constants.ZERO);
systemUser.setCompanyId(loginUserInfo.getCompanyId());
+ 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
+ @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) {
@@ -206,7 +285,8 @@
if(StringUtils.isBlank(systemUser.getMobile()) || StringUtils.isBlank(systemUser.getCaptcha())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鐭俊楠岃瘉鐮佷笉鑳戒负绌猴紒");
}
- if(!debugModel){
+ 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());
}
}
@@ -242,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