using System.Collections.Generic; using System.Threading.Tasks; using GxPress.Common.Page; using GxPress.Entity; using GxPress.Request.Comment; using GxPress.Result.Comment; using Datory; namespace GxPress.Repository.Interface { public interface ICommentRepository : IRepository { /// <summary> /// 添加文章评论 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<int> CommentInAsync(CommentInRequest request); Task<PagedList<CommentPageResult>> GetPagedList(CommentSearchPageRequest request); Task<int> GetCountAsync(CommentSearchPageRequest request); Task<IEnumerable<CommentPageResult>> GetPageListAsync(CommentSearchPageRequest request); Task<List<CommentReplyResult>> GetCommentReplyResultByPid(int pid, List<CommentReplyResult> commentReplyResults); /// <summary> /// 删除评论 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<bool> DeleteCommentAsync(CommentDeleteRequest request); /// <summary> /// 获取文章的评论条数 /// </summary> /// <param name="articleId"></param> /// <returns></returns> Task<int> GetCommentCountAsync(int articleId); Task<Comment> GetAsync(SqlKata.Query query); Task<bool> UpdateAsync(Comment comment); Task<int> CountAsync(SqlKata.Query query); Task<bool> UpdateCommentAsync(CommentUpdateRequest request); /// <summary> /// 后台评论分页列表 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<PagedList<CommentResult>> GetAllAsync(CommentSearchRequest request); } }