using DMS.Application.DTOs;
namespace DMS.Application.Services;
public interface IMenuManagementService
{
///
/// 异步获取所有菜单DTO列表。
///
Task> GetAllMenusAsync();
///
/// 异步根据ID获取菜单DTO。
///
Task GetMenuByIdAsync(int id);
///
/// 异步创建一个新菜单。
///
Task CreateMenuAsync(MenuBeanDto menuDto);
///
/// 异步更新一个已存在的菜单。
///
Task UpdateMenuAsync(MenuBeanDto menuDto);
///
/// 异步删除一个菜单。
///
Task DeleteMenuAsync(int id);
///
/// 在内存中添加菜单
///
void AddMenuToMemory(MenuBeanDto menuDto);
///
/// 在内存中更新菜单
///
void UpdateMenuInMemory(MenuBeanDto menuDto);
///
/// 在内存中删除菜单
///
void RemoveMenuFromMemory(int menuId);
///
/// 获取根菜单列表
///
List GetRootMenus();
///
/// 根据父级ID获取子菜单列表
///
/// 父级菜单ID
/// 子菜单列表
List GetChildMenus(int parentId);
///
/// 构建菜单树结构
///
void BuildMenuTree();
}