All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cn.stylefeng.roses.kernel.sys.modular.menu.service.SysMenuService Maven / Gradle / Ivy

There is a newer version: 8.1.7
Show newest version
package cn.stylefeng.roses.kernel.sys.modular.menu.service;

import cn.stylefeng.roses.kernel.sys.api.SysMenuServiceApi;
import cn.stylefeng.roses.kernel.sys.modular.menu.entity.SysMenu;
import cn.stylefeng.roses.kernel.sys.modular.menu.pojo.request.SysMenuRequest;
import cn.stylefeng.roses.kernel.sys.modular.menu.pojo.response.AppGroupDetail;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Set;

/**
 * 系统菜单 服务类
 *
 * @author fengshuonan
 * @date 2023/06/10 21:28
 */
public interface SysMenuService extends IService, SysMenuServiceApi {

    /**
     * 新增
     *
     * @param sysMenuRequest 请求参数
     * @author fengshuonan
     * @date 2023/06/10 21:28
     */
    void add(SysMenuRequest sysMenuRequest);

    /**
     * 删除
     *
     * @param sysMenuRequest 请求参数
     * @author fengshuonan
     * @date 2023/06/10 21:28
     */
    void del(SysMenuRequest sysMenuRequest);

    /**
     * 编辑
     *
     * @param sysMenuRequest 请求参数
     * @author fengshuonan
     * @date 2023/06/10 21:28
     */
    void edit(SysMenuRequest sysMenuRequest);

    /**
     * 查询详情
     *
     * @param sysMenuRequest 请求参数
     * @author fengshuonan
     * @date 2023/06/10 21:28
     */
    SysMenu detail(SysMenuRequest sysMenuRequest);

    /**
     * 获取菜单管理界面的每个应用组下的菜单信息
     *
     * @author fengshuonan
     * @date 2023/06/10 21:28
     */
    List getAppMenuGroupDetail(SysMenuRequest sysMenuRequest);

    /**
     * 校验菜单是否绑定到某个app下
     *
     * @return true-该app下有菜单,false-该app下没菜单
     * @author fengshuonan
     * @since 2023/6/12 19:23
     */
    boolean validateMenuBindApp(Set appIdList);

    /**
     * 获取所有的菜单信息,用在角色绑定权限界面
     *
     * @author fengshuonan
     * @since 2023/6/15 9:24
     */
    List getTotalMenus();

    /**
     * 获取所有的菜单信息,用在角色绑定权限界面
     *
     * @param limitMenuIds 指定筛选的菜单的范围
     * @author fengshuonan
     * @since 2023/6/15 9:24
     */
    List getTotalMenus(Set limitMenuIds);

    /**
     * 调整菜单上下级结构和菜单的顺序
     *
     * @author fengshuonan
     * @since 2023/6/15 11:28
     */
    void updateMenuTree(SysMenuRequest sysMenuRequest);

    /**
     * 获取所有菜单id
     * 

* 一般用在项目启动,管理员自动绑定所有菜单 * * @return 结果只包含菜单id和应用id * @author fengshuonan * @since 2023/6/18 20:37 */ List getTotalMenuList(); /** * 获取菜单对应的菜单编码,以及菜单id、父级id,应用id,菜单名称、菜单图标、菜单是否隐藏、菜单激活地址、菜单路由、组件路径、排序信息 *

* 用在用户登录后,获取用户首页信息接口 * * @author fengshuonan * @since 2023/6/19 12:53 */ List getIndexMenuInfoList(List menuIdList); /** * 通过菜单id,获取菜单的编码集合 * * @author fengshuonan * @since 2023/6/21 0:44 */ List getMenuCodeList(List menuIdList); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy