mirror of https://gitee.com/stylefeng/roses
【7.0.2】整理antd版本获取左侧菜单接口
parent
42ad8c8038
commit
6446db8316
|
@ -81,7 +81,7 @@ public class SysMenuController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 菜单列表,不带树形结构(layui的菜单管理界面的列表用)
|
||||
* Layui版本--菜单列表,不带树形结构(菜单管理界面的列表用)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2021/1/6 17:09
|
||||
|
@ -92,53 +92,7 @@ public class SysMenuController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 菜单列表,带树形结构(antd vue的菜单管理界面的列表用)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2020/3/20 21:23
|
||||
*/
|
||||
@GetResource(name = "系统菜单列表(树)", path = "/sysMenu/list")
|
||||
public ResponseData list(SysMenuRequest sysMenuRequest) {
|
||||
return new SuccessResponseData(sysMenuService.findListWithTreeStructure(sysMenuRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取系统菜单树,用于新增,编辑时选择上级节点(layui版本,用在新增和编辑菜单选择上级菜单)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2021/1/6 17:09
|
||||
*/
|
||||
@GetResource(name = "获取菜单的树形列表(用于选择上级菜单)(layui版本)", path = "/sysMenu/layuiSelectParentMenuTreeList")
|
||||
public List<ZTreeNode> layuiSelectParentMenuTreeList() {
|
||||
return sysMenuService.layuiSelectParentMenuTreeList();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取系统菜单树,用于新增,编辑时选择上级节点(antd vue版本,用在新增和编辑菜单选择上级菜单)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2020/3/27 15:55
|
||||
*/
|
||||
@GetResource(name = "获取系统菜单树,用于新增,编辑时选择上级节点", path = "/sysMenu/tree")
|
||||
public ResponseData tree(SysMenuRequest sysMenuRequest) {
|
||||
return new SuccessResponseData(sysMenuService.tree(sysMenuRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取系统所有菜单(适用于登录后获取左侧菜单)(适配antd vue版本)
|
||||
*
|
||||
* @author majianguo
|
||||
* @date 2021/1/7 15:17
|
||||
*/
|
||||
@GetResource(name = "获取系统所有菜单(适用于登录后获取左侧菜单)(适配antd vue版本)", path = "/sysMenu/getSystemAllMenusAntdv", requiredPermission = false)
|
||||
public ResponseData getSystemAllMenusAntdv() {
|
||||
List<AntdSysMenuDTO> sysMenuResponses = sysMenuService.getSystemAllMenusAntdv();
|
||||
List<AntdvMenuItem> totalMenus = AntdMenusFactory.createTotalMenus(sysMenuResponses);
|
||||
return new SuccessResponseData(totalMenus);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取系统菜单和按钮的树,用于角色分配菜单按钮(layui版本使用)
|
||||
* Layui版本--获取系统菜单和按钮的树,用于角色分配菜单按钮
|
||||
*
|
||||
* @author majianguo
|
||||
* @date 2021/1/9 17:10
|
||||
|
@ -149,7 +103,53 @@ public class SysMenuController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 获取系统菜单和按钮的树,用于角色分配菜单按钮(antd vue版本使用)
|
||||
* Layui版本--获取系统菜单树,用于新增,编辑时选择上级节点(用在新增和编辑菜单选择上级菜单)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2021/1/6 17:09
|
||||
*/
|
||||
@GetResource(name = "获取菜单的树形列表(用于选择上级菜单)(layui版本)", path = "/sysMenu/layuiSelectParentMenuTreeList")
|
||||
public List<ZTreeNode> layuiSelectParentMenuTreeList() {
|
||||
return sysMenuService.layuiSelectParentMenuTreeList();
|
||||
}
|
||||
|
||||
/**
|
||||
* AntdVue版本--获取系统左侧菜单(适用于登录后获取左侧菜单)
|
||||
*
|
||||
* @author majianguo
|
||||
* @date 2021/1/7 15:17
|
||||
*/
|
||||
@GetResource(name = "获取系统所有菜单(适用于登录后获取左侧菜单)(适配antd vue版本)", path = "/sysMenu/getLeftMenusAntdv", requiredPermission = false)
|
||||
public ResponseData getLeftMenusAntdv() {
|
||||
List<AntdSysMenuDTO> sysMenuResponses = sysMenuService.getLeftMenusAntdv();
|
||||
List<AntdvMenuItem> totalMenus = AntdMenusFactory.createTotalMenus(sysMenuResponses);
|
||||
return new SuccessResponseData(totalMenus);
|
||||
}
|
||||
|
||||
/**
|
||||
* AntdVue版本--菜单列表,带树形结构(菜单管理界面的列表用)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2020/3/20 21:23
|
||||
*/
|
||||
@GetResource(name = "系统菜单列表(树)", path = "/sysMenu/list")
|
||||
public ResponseData list(SysMenuRequest sysMenuRequest) {
|
||||
return new SuccessResponseData(sysMenuService.findListWithTreeStructure(sysMenuRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* AntdVue版本--获取系统菜单树,用于新增,编辑时选择上级节点(用在新增和编辑菜单选择上级菜单)
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2020/3/27 15:55
|
||||
*/
|
||||
@GetResource(name = "获取系统菜单树,用于新增,编辑时选择上级节点", path = "/sysMenu/tree")
|
||||
public ResponseData tree(SysMenuRequest sysMenuRequest) {
|
||||
return new SuccessResponseData(sysMenuService.tree(sysMenuRequest));
|
||||
}
|
||||
|
||||
/**
|
||||
* AntdVue版本--获取系统菜单和按钮的树,用于角色分配菜单按钮
|
||||
*
|
||||
* @author majianguo
|
||||
* @date 2021/1/9 17:10
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package cn.stylefeng.roses.kernel.system.modular.menu.mapper;
|
||||
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdSysMenuDTO;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -23,6 +24,6 @@ public interface SysMenuMapper extends BaseMapper<SysMenu> {
|
|||
* @author majianguo
|
||||
* @date 2021/1/7 15:27
|
||||
*/
|
||||
List<AntdSysMenuDTO> getSystemAllMenus();
|
||||
List<AntdSysMenuDTO> getSystemAllMenus(@Param("menuIdList") List<Long> menuIdList);
|
||||
|
||||
}
|
||||
|
|
|
@ -18,19 +18,25 @@
|
|||
|
||||
<select id="getSystemAllMenus" resultMap="systemMenuAndRole">
|
||||
SELECT sm.menu_id,
|
||||
sm.menu_parent_id,
|
||||
sm.menu_name,
|
||||
sm.antdv_router,
|
||||
sm.antdv_icon,
|
||||
sm.visible,
|
||||
sr.role_id,
|
||||
sr.role_name,
|
||||
sr.role_code
|
||||
sm.menu_parent_id,
|
||||
sm.menu_name,
|
||||
sm.antdv_router,
|
||||
sm.antdv_icon,
|
||||
sm.visible,
|
||||
sr.role_id,
|
||||
sr.role_name,
|
||||
sr.role_code
|
||||
FROM sys_menu sm
|
||||
LEFT JOIN sys_role_menu srm ON sm.menu_id = srm.menu_id
|
||||
LEFT JOIN sys_role sr ON srm.role_id = sr.role_id
|
||||
LEFT JOIN sys_role_menu srm ON sm.menu_id = srm.menu_id
|
||||
LEFT JOIN sys_role sr ON srm.role_id = sr.role_id
|
||||
WHERE sm.del_flag = 'N'
|
||||
AND sm.status_flag = 1
|
||||
AND sm.status_flag = 1
|
||||
<if test="menuIdList != null and menuIdList.size() > 0">
|
||||
and sm.menu_id in
|
||||
<foreach collection="menuIdList" index="index" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
package cn.stylefeng.roses.kernel.system.modular.menu.service;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.tree.ztree.ZTreeNode;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.SysMenuRequest;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdMenuSelectTreeNode;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdSysMenuDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.layui.LayuiAppIndexMenusVO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.layui.LayuiMenuAndButtonTreeResponse;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.role.request.SysRoleRequest;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -109,7 +109,7 @@ public interface SysMenuService extends IService<SysMenu> {
|
|||
* @author majianguo
|
||||
* @date 2021/1/7 15:24
|
||||
*/
|
||||
List<AntdSysMenuDTO> getSystemAllMenusAntdv();
|
||||
List<AntdSysMenuDTO> getLeftMenusAntdv();
|
||||
|
||||
/**
|
||||
* 获取包含按钮的系统菜单
|
||||
|
|
|
@ -21,13 +21,6 @@ import cn.stylefeng.roses.kernel.system.api.RoleServiceApi;
|
|||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.menu.SysMenuExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.user.SysUserExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenuButton;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.factory.AntdMenusFactory;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.factory.LayuiMenusFactory;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.mapper.SysMenuMapper;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.service.SysMenuButtonService;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.service.SysMenuService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.SysMenuRequest;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdMenuSelectTreeNode;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdSysMenuDTO;
|
||||
|
@ -36,6 +29,13 @@ import cn.stylefeng.roses.kernel.system.api.pojo.menu.layui.LayuiMenuAndButtonTr
|
|||
import cn.stylefeng.roses.kernel.system.api.pojo.role.dto.SysRoleMenuButtonDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.role.dto.SysRoleMenuDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.role.request.SysRoleRequest;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenuButton;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.factory.AntdMenusFactory;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.factory.LayuiMenusFactory;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.mapper.SysMenuMapper;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.service.SysMenuButtonService;
|
||||
import cn.stylefeng.roses.kernel.system.modular.menu.service.SysMenuService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
@ -249,8 +249,16 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
}
|
||||
|
||||
@Override
|
||||
public List<AntdSysMenuDTO> getSystemAllMenusAntdv() {
|
||||
return this.baseMapper.getSystemAllMenus();
|
||||
public List<AntdSysMenuDTO> getLeftMenusAntdv() {
|
||||
|
||||
// 如果是超级管理员,则获取所有的菜单
|
||||
if (LoginContext.me().getSuperAdminFlag()) {
|
||||
return this.baseMapper.getSystemAllMenus(null);
|
||||
}
|
||||
|
||||
// 获取当前用户的所有菜单
|
||||
List<Long> menuIdList = getCurrentUserMenuIds();
|
||||
return this.baseMapper.getSystemAllMenus(menuIdList);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue