diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuOptionsService.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuOptionsService.java index c0f91131f..c655673d1 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuOptionsService.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuOptionsService.java @@ -15,7 +15,7 @@ import java.util.List; */ public interface SysMenuOptionsService extends IService { - /** + /** * 新增 * * @param sysMenuOptionsRequest 请求参数 @@ -24,7 +24,7 @@ public interface SysMenuOptionsService extends IService { */ void add(SysMenuOptionsRequest sysMenuOptionsRequest); - /** + /** * 删除 * * @param sysMenuOptionsRequest 请求参数 @@ -33,7 +33,7 @@ public interface SysMenuOptionsService extends IService { */ void del(SysMenuOptionsRequest sysMenuOptionsRequest); - /** + /** * 编辑 * * @param sysMenuOptionsRequest 请求参数 @@ -42,7 +42,7 @@ public interface SysMenuOptionsService extends IService { */ void edit(SysMenuOptionsRequest sysMenuOptionsRequest); - /** + /** * 查询详情 * * @param sysMenuOptionsRequest 请求参数 @@ -51,24 +51,34 @@ public interface SysMenuOptionsService extends IService { */ SysMenuOptions detail(SysMenuOptionsRequest sysMenuOptionsRequest); - /** + /** * 获取列表 * - * @param sysMenuOptionsRequest 请求参数 + * @param sysMenuOptionsRequest 请求参数 * @return List 返回结果 * @author fengshuonan * @date 2023/06/10 21:28 */ List findList(SysMenuOptionsRequest sysMenuOptionsRequest); - /** + /** * 获取列表(带分页) * - * @param sysMenuOptionsRequest 请求参数 + * @param sysMenuOptionsRequest 请求参数 * @return PageResult 返回结果 * @author fengshuonan * @date 2023/06/10 21:28 */ PageResult findPage(SysMenuOptionsRequest sysMenuOptionsRequest); + /** + * 获取所有的菜单功能id + *

+ * 一般用在项目启动管理员角色绑定所有的菜单功能 + * + * @author fengshuonan + * @since 2023/6/18 20:37 + */ + List getTotalMenuOptionsList(); + } \ No newline at end of file diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuService.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuService.java index fd71c6214..59346a5ff 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuService.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/SysMenuService.java @@ -93,4 +93,15 @@ public interface SysMenuService extends IService { */ void updateMenuTree(SysMenuRequest sysMenuRequest); + /** + * 获取所有菜单id + *

+ * 一般用在项目启动,管理员自动绑定所有菜单 + * + * @return 结果只包含菜单id和应用id + * @author fengshuonan + * @since 2023/6/18 20:37 + */ + List getTotalMenuList(); + } \ No newline at end of file diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuOptionsServiceImpl.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuOptionsServiceImpl.java index 1d981d8e6..a68bdc66c 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuOptionsServiceImpl.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuOptionsServiceImpl.java @@ -32,7 +32,8 @@ import java.util.Set; * @date 2023/06/10 21:28 */ @Service -public class SysMenuOptionsServiceImpl extends ServiceImpl implements SysMenuOptionsService, RemoveMenuCallbackApi { +public class SysMenuOptionsServiceImpl extends ServiceImpl implements SysMenuOptionsService, + RemoveMenuCallbackApi { @Resource private SysMenuService sysMenuService; @@ -88,12 +89,20 @@ public class SysMenuOptionsServiceImpl extends ServiceImpl wrapper = createWrapper(sysMenuOptionsRequest); // 只查询有用字段 - wrapper.select(SysMenuOptions::getOptionName, SysMenuOptions::getOptionCode, SysMenuOptions::getMenuId, SysMenuOptions::getMenuOptionId); + wrapper.select(SysMenuOptions::getOptionName, SysMenuOptions::getOptionCode, SysMenuOptions::getMenuId, + SysMenuOptions::getMenuOptionId); Page sysRolePage = this.page(PageFactory.defaultPage(), wrapper); return PageResultFactory.createPageResult(sysRolePage); } + @Override + public List getTotalMenuOptionsList() { + LambdaQueryWrapper sysMenuOptionsLambdaQueryWrapper = new LambdaQueryWrapper<>(); + sysMenuOptionsLambdaQueryWrapper.select(SysMenuOptions::getMenuOptionId, SysMenuOptions::getMenuId, SysMenuOptions::getAppId); + return this.list(sysMenuOptionsLambdaQueryWrapper); + } + @Override public List findList(SysMenuOptionsRequest sysMenuOptionsRequest) { LambdaQueryWrapper wrapper = this.createWrapper(sysMenuOptionsRequest); diff --git a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuServiceImpl.java b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuServiceImpl.java index 9fdcb797c..6d94555e1 100644 --- a/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuServiceImpl.java +++ b/kernel-s-sys/sys-business-permission/src/main/java/cn/stylefeng/roses/kernel/sys/modular/menu/service/impl/SysMenuServiceImpl.java @@ -170,6 +170,13 @@ public class SysMenuServiceImpl extends ServiceImpl impl this.updateBatchById(totalMenuList); } + @Override + public List getTotalMenuList() { + LambdaQueryWrapper sysMenuLambdaQueryWrapper = new LambdaQueryWrapper<>(); + sysMenuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getAppId); + return this.list(sysMenuLambdaQueryWrapper); + } + @Override public List getAppMenuGroupDetail(SysMenuRequest sysMenuRequest) {