using Dpz.Core.Public.ViewModel.Request;
using Dpz.Core.Public.ViewModel.Response;

namespace Dpz.Core.Service.RepositoryService;

public interface IAudioService
{
    /// <summary>
    /// 上传音频
    /// </summary>
    /// <param name="request"></param>
    /// <returns></returns>
    Task<AudioResponse> AddAsync(CreateAudioRequest request);

    /// <summary>
    /// 获取音频
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task<AudioResponse?> FindAsync(string id);

    /// <summary>
    /// 获取音频分页信息
    /// </summary>
    /// <param name="pageIndex"></param>
    /// <param name="pageSize"></param>
    /// <param name="uploader"></param>
    /// <returns></returns>
    Task<IPagedList<AudioResponse>> GetPagesAsync(
        int pageIndex,
        int pageSize,
        VmUserInfo? uploader = null
    );

    /// <summary>
    /// 删除音频
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task DeleteAsync(string id);
}
评论加载中...