package com.bizmatics.persistence.mapper.system; import com.bizmatics.model.system.SysMenu; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; import java.util.List; /** * 菜单表 数据层 * * @author yq */ @Repository public interface SysMenuMapper { /** * 查询系统菜单列表 * * @param menu 菜单信息 * @return 菜单列表 */ public List selectMenuList(SysMenu menu); public List getMenuListOne(Long userId, String menuType); public List getMenuListTwo(Long userId, String menuType, Integer tenantId); /** * 根据用户所有权限 * * @return 权限列表 */ public List selectMenuPerms(); /** * 根据用户查询系统菜单列表 * * @param menu 菜单信息 * @return 菜单列表 */ public List selectMenuListByUserId(SysMenu menu); /** * 根据用户ID查询权限 * * @param userId 用户ID * @return 权限列表 */ public List selectMenuPermsByUserId(Long userId); /** * 根据用户ID查询菜单 * * @return 菜单列表 */ public List selectMenuTreeAll(); public List selectMenuTreeAllOne(Integer tenantId); /** * 根据用户ID查询菜单 * * @param userId 用户ID * @return 菜单列表 */ public List selectMenuTreeByUserId(Long userId); /** * 根据菜单名称获取按钮列表 * * @param userId * @return */ public List getButtonlist(Long userId, String menuName, Long roleId); public List getTenantButtonlist(Integer tenantId, String menuName); public List getButtonlistTwo(Long userId, String menuName, Long roleId); public List getButtonlistOne(String menuName); public List getSysMenuList(String menuType); /** * 根据角色ID查询菜单树信息 * * @param roleId 角色ID * @param menuCheckStrictly 菜单树选择项是否关联显示 * @return 选中菜单列表 */ public List selectMenuListByRoleId(@Param("roleId") Long roleId, @Param("menuCheckStrictly") boolean menuCheckStrictly); /** * 根据菜单ID查询信息 * * @param menuId 菜单ID * @return 菜单信息 */ public SysMenu selectMenuById(Long menuId); /** * 是否存在菜单子节点 * * @param menuId 菜单ID * @return 结果 */ public int hasChildByMenuId(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 menuName 菜单名称 * @param parentId 父菜单ID * @return 结果 */ public SysMenu checkMenuNameUnique(@Param("menuName") String menuName, @Param("parentId") Long parentId); }