IRbacMenuAppService.cs 1.13 KB
using FoodLabeling.Application.Contracts.Dtos.RbacMenu;
using Volo.Abp.Application.Services;

namespace FoodLabeling.Application.Contracts.IServices;

/// <summary>
/// 权限(Menu)管理接口(仅用于食品标签-美国版对外)
/// </summary>
public interface IRbacMenuAppService : IApplicationService
{
    /// <summary>
    /// 权限列表(不分页)
    /// </summary>
    Task<List<RbacMenuGetListOutputDto>> GetListAsync(RbacMenuGetListInputVo input);

    /// <summary>
    /// 权限详情
    /// </summary>
    Task<RbacMenuGetListOutputDto> GetAsync(string id);

    /// <summary>
    /// 新增权限
    /// </summary>
    Task<RbacMenuGetListOutputDto> CreateAsync(RbacMenuCreateInputVo input);

    /// <summary>
    /// 编辑权限
    /// </summary>
    Task<RbacMenuGetListOutputDto> UpdateAsync(string id, RbacMenuUpdateInputVo input);

    /// <summary>
    /// 删除权限(逻辑删除)
    /// </summary>
    Task DeleteAsync(List<string> ids);

    /// <summary>
    /// 获取全部权限树(GET)
    /// </summary>
    /// <returns>树状权限列表</returns>
    Task<List<RbacMenuTreeDto>> GetTreeAsync();
}