From a8a6760635f0642a2cbf61854b5587d9d0944985 Mon Sep 17 00:00:00 2001 From: heheng <475597332@qq.com> Date: 星期五, 11 七月 2025 17:20:36 +0800 Subject: [PATCH] 新功能加问题修复 --- multi-system/src/main/java/com/gkhy/exam/system/service/impl/SysUserServiceImpl.java | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 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..bf7a2e5 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("没有权限操作或者更新上级用户类型的用户"); } @@ -229,7 +247,7 @@ throw new ApiException("没有权限操作或者更新上级用户类型的用户"); } }else{ - if(userType<=currentUserType){ + if(userType<currentUserType){ throw new ApiException("没有权限操作或者更新上级用户类型的用户"); } } -- Gitblit v1.9.2