using System.Collections.Generic; using System.Threading.Tasks; using GxPress.Common.Page; using GxPress.Entity.Article; using GxPress.Request.Admin.Article; using GxPress.Request.Article; using GxPress.Result.Article; using Datory; namespace GxPress.Repository.Interface { public interface IArticleRepository : IRepository { Task<bool> ExistsAsync(int id); Task<PagedList<ArticleResult>> GetListAsync(string keyword, PageParameter parameter); Task<PagedList<ArticleResult>> GetUserListAsync(ArticleSearchRequest request, IEnumerable<Entity.BlacklistArticle> blacklistArticles); Task<Article> GetAsync(int id); Task<bool> DeleteAsync(int id); Task<bool> CloneArticleAsync(CloneArticleRequest request); Task<Article> GetArticleAsync(int id); Task<IEnumerable<Article>> GetAllAsync(); Task<bool> UpdateAsync(Article article); Task<int?> MaxAsync(string sort); Task<int> InsertAsync(Article article); Task<IEnumerable<ArticleResult>> GetArticleResults(); } }