diff --git a/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/RoleBindMenuImpl.java b/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/RoleBindMenuImpl.java index b1aadd528..827135adc 100644 --- a/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/RoleBindMenuImpl.java +++ b/kernel-s-system/system-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/role/service/impl/RoleBindMenuImpl.java @@ -61,6 +61,11 @@ public class RoleBindMenuImpl implements RoleAssignOperateAction, RoleBindLimitA Long roleId = roleBindPermissionRequest.getRoleId(); Long menuId = roleBindPermissionRequest.getNodeId(); + // 非法操作 + if (ObjectUtil.isNotEmpty(roleLimitMenuIdsAndOptionIds) && !roleLimitMenuIdsAndOptionIds.contains(menuId)) { + return; + } + // 1. 先取消绑定角色和菜单 LambdaQueryWrapper sysRoleMenuLambdaQueryWrapper = new LambdaQueryWrapper<>(); sysRoleMenuLambdaQueryWrapper.eq(SysRoleMenu::getMenuId, menuId);