From cc72b1bd648bc3baa4ff1e48f50f5594bac5822c Mon Sep 17 00:00:00 2001 From: dfdg <2710245601@qq.com> Date: Tue, 11 Nov 2025 11:52:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/SysMenuController.java | 11 ++++++++++ .../dromara/system/mapper/SysMenuMapper.java | 2 ++ .../system/service/ISysMenuService.java | 2 ++ .../service/impl/SysMenuServiceImpl.java | 7 +++++++ .../resources/mapper/system/SysMenuMapper.xml | 21 +++++++++++++++++++ 5 files changed, 43 insertions(+) diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java index 04cd1466..84cad08a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysMenuController.java @@ -107,6 +107,17 @@ public class SysMenuController extends BaseController { return R.ok(menuService.buildMenuTreeSelect(menus)); } + + /** + * 获取菜单下拉树列表 + */ +// @SaCheckPermission("system:menu:getXzdList") + @GetMapping("/getXzdList") + public R> getXzdList(SysMenuBo menu) { + List menus = menuService.getXzdList(menu); + return R.ok(menus); + } + /** * 加载对应角色菜单列表树 * diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java index e02e0d57..1dbf130e 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysMenuMapper.java @@ -3,6 +3,7 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import jakarta.validation.constraints.Size; import org.apache.ibatis.annotations.Param; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; @@ -74,4 +75,5 @@ public interface SysMenuMapper extends BaseMapperPlus { */ List selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly); + List selectMenuListByPath(@Param("path") String path); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java index cf7eff25..769a88ce 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysMenuService.java @@ -146,4 +146,6 @@ public interface ISysMenuService { * @return 结果 */ boolean checkMenuNameUnique(SysMenuBo menu); + + List getXzdList(SysMenuBo menu); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java index 86206c69..59ddda65 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysMenuServiceImpl.java @@ -359,6 +359,13 @@ public class SysMenuServiceImpl implements ISysMenuService { return !exist; } + @Override + public List getXzdList(SysMenuBo menu) { + List sysMenus = baseMapper.selectMenuListByPath(menu.getPath()); + List menus = getChildPerms(sysMenus, 0); + return buildMenus(menus); + } + /** * 根据父节点的ID获取所有子节点 * diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml index f4a3e082..699a3594 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml @@ -84,5 +84,26 @@ ) order by m.parent_id, m.order_num +