diff --git a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/pojo/role/request/SysRoleRequest.java b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/pojo/role/request/SysRoleRequest.java index 3ac37df62..0dcbf580e 100644 --- a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/pojo/role/request/SysRoleRequest.java +++ b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/pojo/role/request/SysRoleRequest.java @@ -194,6 +194,12 @@ public class SysRoleRequest extends BaseRequest { @NotNull(message = "全选标识不能为空", groups = {grantAll.class}) private Boolean totalSelectFlag; + /** + * 是否是管理员角色,管理员角色只能管理后台相关菜单 + */ + @ChineseDescription("是否是管理员角色,管理员角色只能管理后台相关菜单") + private String adminFlag; + /** * 参数校验分组:授权菜单和按钮 */ diff --git a/kernel-s-system/system-business-role/src/main/java/cn/stylefeng/roses/kernel/system/modular/role/service/impl/SysRoleServiceImpl.java b/kernel-s-system/system-business-role/src/main/java/cn/stylefeng/roses/kernel/system/modular/role/service/impl/SysRoleServiceImpl.java index 962c2e07d..c71f6873a 100644 --- a/kernel-s-system/system-business-role/src/main/java/cn/stylefeng/roses/kernel/system/modular/role/service/impl/SysRoleServiceImpl.java +++ b/kernel-s-system/system-business-role/src/main/java/cn/stylefeng/roses/kernel/system/modular/role/service/impl/SysRoleServiceImpl.java @@ -201,6 +201,10 @@ public class SysRoleServiceImpl extends ServiceImpl impl @Override public PageResult findPage(SysRoleRequest sysRoleRequest) { LambdaQueryWrapper wrapper = createWrapper(sysRoleRequest); + + // 不查询管理员类型的 + wrapper.eq(SysRole::getRoleSystemFlag, YesOrNotEnum.N.getCode()); + Page sysRolePage = this.page(PageFactory.defaultPage(), wrapper); return PageResultFactory.createPageResult(sysRolePage); } @@ -765,6 +769,8 @@ public class SysRoleServiceImpl extends ServiceImpl impl // 根据编码模糊查询 queryWrapper.like(ObjectUtil.isNotEmpty(sysRoleRequest.getRoleCode()), SysRole::getRoleCode, sysRoleRequest.getRoleCode()); + // 根据是否是管理员类型查询 + queryWrapper.eq(ObjectUtil.isNotEmpty(sysRoleRequest.getAdminFlag()), SysRole::getAdminFlag, sysRoleRequest.getAdminFlag()); return queryWrapper; }