wujian
2024-02-22 268beb4ebc1e5b8d4ad715b71cd64a0944073a87
提交 | 用户 | 时间
268beb 1 package com.jcdm.system.service;
W 2
3 import java.util.List;
4 import java.util.Set;
5 import com.jcdm.common.core.domain.TreeSelect;
6 import com.jcdm.common.core.domain.entity.SysMenu;
7 import com.jcdm.system.domain.vo.RouterVo;
8
9 /**
10  * 菜单 业务层
11  * 
12  * @author jc
13  */
14 public interface ISysMenuService
15 {
16     /**
17      * 根据用户查询系统菜单列表
18      * 
19      * @param userId 用户ID
20      * @return 菜单列表
21      */
22     public List<SysMenu> selectMenuList(Long userId);
23
24     /**
25      * 根据用户查询系统菜单列表
26      * 
27      * @param menu 菜单信息
28      * @param userId 用户ID
29      * @return 菜单列表
30      */
31     public List<SysMenu> selectMenuList(SysMenu menu, Long userId);
32
33     /**
34      * 根据用户ID查询权限
35      * 
36      * @param userId 用户ID
37      * @return 权限列表
38      */
39     public Set<String> selectMenuPermsByUserId(Long userId);
40
41     /**
42      * 根据角色ID查询权限
43      * 
44      * @param roleId 角色ID
45      * @return 权限列表
46      */
47     public Set<String> selectMenuPermsByRoleId(Long roleId);
48
49     /**
50      * 根据用户ID查询菜单树信息
51      * 
52      * @param userId 用户ID
53      * @return 菜单列表
54      */
55     public List<SysMenu> selectMenuTreeByUserId(Long userId);
56
57     /**
58      * 根据角色ID查询菜单树信息
59      * 
60      * @param roleId 角色ID
61      * @return 选中菜单列表
62      */
63     public List<Long> selectMenuListByRoleId(Long roleId);
64
65     /**
66      * 构建前端路由所需要的菜单
67      * 
68      * @param menus 菜单列表
69      * @return 路由列表
70      */
71     public List<RouterVo> buildMenus(List<SysMenu> menus);
72
73     /**
74      * 构建前端所需要树结构
75      * 
76      * @param menus 菜单列表
77      * @return 树结构列表
78      */
79     public List<SysMenu> buildMenuTree(List<SysMenu> menus);
80
81     /**
82      * 构建前端所需要下拉树结构
83      * 
84      * @param menus 菜单列表
85      * @return 下拉树结构列表
86      */
87     public List<TreeSelect> buildMenuTreeSelect(List<SysMenu> menus);
88
89     /**
90      * 根据菜单ID查询信息
91      * 
92      * @param menuId 菜单ID
93      * @return 菜单信息
94      */
95     public SysMenu selectMenuById(Long menuId);
96
97     /**
98      * 是否存在菜单子节点
99      * 
100      * @param menuId 菜单ID
101      * @return 结果 true 存在 false 不存在
102      */
103     public boolean hasChildByMenuId(Long menuId);
104
105     /**
106      * 查询菜单是否存在角色
107      * 
108      * @param menuId 菜单ID
109      * @return 结果 true 存在 false 不存在
110      */
111     public boolean checkMenuExistRole(Long menuId);
112
113     /**
114      * 新增保存菜单信息
115      * 
116      * @param menu 菜单信息
117      * @return 结果
118      */
119     public int insertMenu(SysMenu menu);
120
121     /**
122      * 修改保存菜单信息
123      * 
124      * @param menu 菜单信息
125      * @return 结果
126      */
127     public int updateMenu(SysMenu menu);
128
129     /**
130      * 删除菜单管理信息
131      * 
132      * @param menuId 菜单ID
133      * @return 结果
134      */
135     public int deleteMenuById(Long menuId);
136
137     /**
138      * 校验菜单名称是否唯一
139      * 
140      * @param menu 菜单信息
141      * @return 结果
142      */
143     public boolean checkMenuNameUnique(SysMenu menu);
144 }