ql_apimanager_backend/Apimanager_backend/Services/IApiService.cs

77 lines
2.5 KiB
C#

using Apimanager_backend.Dtos;
using Apimanager_backend.Models;
namespace Apimanager_backend.Services
{
public interface IApiService
{
/// <summary>
/// 获取api信息
/// </summary>
/// <param name="apiId"></param>
/// <returns></returns>
public Task<ApiInfoDto> GetApiInfoAsync(int apiId);
/// <summary>
/// 添加api
/// </summary>
/// <param name="apiId"></param>
/// <param name="dto"></param>
/// <returns></returns>
public Task<ApiInfoDto> AddApiAsync(CreateApiInfo dto);
/// <summary>
/// 删除api
/// </summary>
/// <param name="apiId"></param>
/// <returns></returns>
public Task DeleteApiAsync(int apiId);
/// <summary>
/// 更新api信息
/// </summary>
/// <param name="apiId"></param>
/// <param name="dto"></param>
/// <returns></returns>
public Task<ApiInfoDto> UpdateApiAsync(int apiId,UpdateApiDto dto);
/// <summary>
/// 启用
/// </summary>
/// <param name="apiId"></param>
/// <returns></returns>
public Task OnApiAsync(int apiId);
/// <summary>
/// 禁用
/// </summary>
/// <param name="apiId"></param>
/// <returns></returns>
public Task OffApiAsync(int apiId);
/// <summary>
/// 获取APi列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="desc"></param>
/// <returns></returns>
public Task<List<ApiInfoDto>> GetApisAsync(int pageIndex, int pageSize, bool desc);
/// <summary>
/// 获取api数量
/// </summary>
/// <returns></returns>
public Task<int> ApiCountAsync();
/// <summary>
/// 通过api路径获取api信息
/// </summary>
/// <param name="endpoint">api路径</param>
/// <returns></returns>
public Task<ApiInfoDto> GetApiInfoByEndpointAsync(string endpoint);
/// <summary>
/// 获取用于用户展示的api列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="desc"></param>
/// <returns></returns>
public Task<List<ApiInfoDto>> GetUserApisAsync(int pageIndex, int pageSize, bool desc);
public Task<List<Apipackage>> GetApipackageAsync(int[] apiId);
}
}