package com.ruoyi.system.service.sys; import com.ruoyi.system.domain.pojo.sys.SysMenu; import com.ruoyi.system.domain.vo.RouterVo; import com.ruoyi.system.domain.vo.TreeSelect; import java.util.List; import java.util.Set; /** * 菜单 业务层 * * @author jqs */ public interface ISysMenuService { /** * 根据用户查询系统菜单列表 * * @param userId 用户ID * @return 菜单列表 */ public List selectMenuList(Long userId); /** * 根据用户查询系统菜单列表 * * @param deptId 用户ID * @return 菜单列表 */ public List selectDeptMenuList(Long deptId); /** * 根据用户查询系统菜单列表 * * @param userId 用户ID * @return 菜单列表 */ public List selectStaffMenuList(Long userId); /** * 根据用户查询系统菜单列表 * * @param userId 用户ID * @return 菜单列表 */ public List selectStaffDeptMenuList(Long userId); /** * 根据用户查询系统菜单列表 * * @param menu 菜单信息 * @param userId 用户ID * @return 菜单列表 */ public List selectMenuList(SysMenu menu, Long userId); /** * 根据用户查询系统菜单列表 * * @param menu 菜单信息 * @param userId 用户ID * @return 菜单列表 */ public List selectStaffMenuList(SysMenu menu, Long userId); /** * 根据用户ID查询权限 * * @param userId 用户ID * @return 权限列表 */ public Set selectMenuPermsByUserId(Long userId); /** * 根据用户ID查询权限 * * @param userId 用户ID * @return 权限列表 */ public Set selectStaffClientMenuPermsByUserId(Long userId); /** * 根据角色ID查询权限 * * @param roleId 角色ID * @return 权限列表 */ public Set selectMenuPermsByRoleId(Long roleId); /** * 根据用户ID查询菜单树信息 * * @param userId 用户ID * @return 菜单列表 */ public List selectMenuTreeByUserId(Long userId); public List selectStaffMenuTreeByUserId(Long userId); /** * 根据角色ID查询菜单树信息 * * @param roleId 角色ID * @return 选中菜单列表 */ public List selectMenuListByRoleId(Long roleId); /** * @description selectMenuListByDeptId * @param deptId * @return List * @author jqs34 * @date 2023/6/18 19:13 */ public List selectMenuListByDeptId(Long deptId); /** * @description selectMenuListByDeptId * @param deptId * @return List * @author jqs34 * @date 2023/6/18 19:13 */ public List selectStaffMenuListByDeptId(Long deptId); /** * @description selectMenuListByDeptId * @param deptUserId * @return List * @author jqs34 * @date 2023/6/18 19:13 */ public List selectMenuListByDeptUserId(Long deptUserId); /** * @description selectMenuListByDeptId * @param deptUserId * @return List * @author jqs34 * @date 2023/6/18 19:13 */ public List selectStaffMenuListByDeptUserId(Long deptUserId); /** * 构建前端路由所需要的菜单 * * @param menus 菜单列表 * @return 路由列表 */ public List buildMenus(List menus); /** * 构建前端所需要树结构 * * @param menus 菜单列表 * @return 树结构列表 */ public List buildMenuTree(List menus); /** * 构建前端所需要下拉树结构 * * @param menus 菜单列表 * @return 下拉树结构列表 */ public List buildMenuTreeSelect(List menus); /** * 根据菜单ID查询信息 * * @param menuId 菜单ID * @return 菜单信息 */ public SysMenu selectMenuById(Long menuId); /** * 是否存在菜单子节点 * * @param menuId 菜单ID * @return 结果 true 存在 false 不存在 */ public boolean hasChildByMenuId(Long menuId); /** * 查询菜单是否存在角色 * * @param menuId 菜单ID * @return 结果 true 存在 false 不存在 */ public boolean checkMenuExistRole(Long menuId); /** * 新增保存菜单信息 * * @param menu 菜单信息 * @return 结果 */ public int insertMenu(SysMenu menu); /** * 修改保存菜单信息 * * @param menu 菜单信息 * @return 结果 */ public int updateMenu(SysMenu menu); /** * 删除菜单管理信息 * * @param menuId 菜单ID * @return 结果 */ public int deleteMenuById(Long menuId); /** * 校验菜单名称是否唯一 * * @param menu 菜单信息 * @return 结果 */ public boolean checkMenuNameUnique(SysMenu menu); }