diff --git a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java index cf24e9e..03b167f 100644 --- a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java @@ -51,6 +51,16 @@ public class RoleServiceImpl implements RoleService { if (roleVo.getMenuIds() == null || roleVo.getMenuIds().isEmpty()) { return Result.error("权限为空"); } + else { + if(roleVo.getFatherId() != 2) { + for(Integer menuId : roleVo.getMenuIds()){ + if(menuId == 9){ + return Result.error("上级角色非管理员用户不能赋予权限管理"); + } + } + } + } + try { roleMapper.addRole(roleVo); Role role = roleMapper.selectByRoleName(roleVo.getRoleName()); @@ -74,6 +84,9 @@ public class RoleServiceImpl implements RoleService { if (roleVo.getId() == null) { return Result.error("角色id为空"); } + if(roleVo.getId() == 2){ + return Result.error("管理员不允许删除"); + } try { roleMapper.deleteRoleMenu(roleVo); roleMapper.deleteRole(roleVo);