From c6901af945ffbabafb4d50f39d2beb3b6a4af677 Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期三, 09 七月 2025 17:20:32 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java | 30 ++++++++++++++++++++++++------ 1 files changed, 24 insertions(+), 6 deletions(-) diff --git a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java index 7690a1c..0e472ea 100644 --- a/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java +++ b/multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java @@ -14,7 +14,9 @@ import com.gkhy.exam.common.utils.RedisUtils; import com.gkhy.exam.common.utils.SecurityUtils; import com.gkhy.exam.common.utils.StringUtils; +import com.gkhy.exam.system.domain.SysUserRole; import com.gkhy.exam.system.mapper.SysUserMapper; +import com.gkhy.exam.system.mapper.SysUserRoleMapper; import com.gkhy.exam.system.service.SysConfigService; import com.gkhy.exam.system.service.SysUserService; import org.springframework.beans.factory.annotation.Autowired; @@ -45,6 +47,8 @@ private SysConfigService configService; @Autowired private Validator validator; + @Autowired + private SysUserRoleMapper userRoleMapper; @Override public CommonPage<SysUser> selectUserList(SysUser user) { @@ -54,7 +58,7 @@ if(!currentUser.getUserType().equals(UserTypeEnum.SYSTEM_USER.getCode())){ user.setCompanyId(currentUser.getCompanyId()); Map<String,Object> paramsMap=new HashMap<>(); - paramsMap.put("userType",currentUser.getUserType()); +// paramsMap.put("userType",currentUser.getUserType()); user.setParams(paramsMap); } PageUtils.startPage(); @@ -120,6 +124,9 @@ @Override public int deleteUserById(Long userId) { SysUser user=checkUserDataScope(userId); + if (user.getId().toString().equals("1")){ + throw new ApiException("管理员用户不能被删除"); + } delCacheByUsername(user.getUsername()); return baseMapper.deleteUserById(userId); } @@ -131,6 +138,13 @@ user.setCreateBy(SecurityUtils.getUsername()); user.setPassword(SecurityUtils.encryptPassword(Base64.decodeStr(user.getPassword()))); int row=baseMapper.insert(user); + List<SysUserRole> userRoleList = new ArrayList<>(); + SysUserRole sysUserRole = new SysUserRole(); + sysUserRole.setUserId(user.getId()); + sysUserRole.setRoleId(2L); + userRoleList.add(sysUserRole); + userRoleMapper.batchUserRole(userRoleList); + if(row<1){ throw new ApiException("新增用户失败"); } @@ -216,11 +230,15 @@ Integer currentUserType=currentUser.getUserType(); Integer userType=user.getUserType(); //校验权限,规则:上一级用户可以增加下一级用户类型的用户 - if(currentUserType.equals(UserTypeEnum.SYSTEM_USER.getCode())){ - if( !userType.equals(UserTypeEnum.SYSTEM_USER.getCode())&&!userType.equals(UserTypeEnum.OTHER_USER.getCode()) &&!userType.equals(UserTypeEnum.COMPANY_USER.getCode())){ - throw new ApiException("管理员只能操作管理员、企业级和其他类型的用户"); - } - }else{ +// if(currentUserType.equals(UserTypeEnum.SYSTEM_USER.getCode())){ +// if( !userType.equals(UserTypeEnum.SYSTEM_USER.getCode())&&!userType.equals(UserTypeEnum.OTHER_USER.getCode()) &&!userType.equals(UserTypeEnum.COMPANY_USER.getCode())){ +// throw new ApiException("管理员只能操作管理员、企业级和其他类型的用户"); +// } +// if (user.getId().toString().equals("1")){ +// throw new ApiException("管理员用户不能被删除"); +// } +// }else{ + if(!currentUserType.equals(UserTypeEnum.SYSTEM_USER.getCode())){ if(userType.equals(UserTypeEnum.OTHER_USER.getCode())){ throw new ApiException("没有权限操作或者更新上级用户类型的用户"); } -- Gitblit v1.9.2