ITopicRepository.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using System.Collections.Generic;
  2. using System.Threading.Tasks;
  3. using GxPress.Common.Page;
  4. using GxPress.Request.App.Topic;
  5. using GxPress.Result.App.Topic;
  6. using Datory;
  7. using GxPress.Result.Job;
  8. namespace GxPress.Repository.Interface
  9. {
  10. public interface ITopicRepository : IRepository
  11. {
  12. /// <summary>
  13. /// 通知查询
  14. /// </summary>
  15. /// <param name="request"></param>
  16. /// <returns></returns>
  17. Task<PagedList<Entity.Topic.Topic>> GetTopicByUserIdAsync(TopicPageSearchRequest request);
  18. /// <summary>
  19. /// 根据GroupId获取通知
  20. /// </summary>
  21. /// <param name="request"></param>
  22. /// <returns></returns>
  23. Task<PagedList<TopicListPageResult>> FindTopicByGroupIdAsync(TopicDetailListRequest request);
  24. Task<int> GetGroupTopicCountAsync(int groupId);
  25. /// <summary>
  26. /// 根据ID获取话题
  27. /// </summary>
  28. /// <param name="id"></param>
  29. /// <returns></returns>
  30. Task<Entity.Topic.Topic> GetAsync(int id);
  31. Task<int> CountAsync(SqlKata.Query query);
  32. Task<IEnumerable<Entity.Topic.Topic>> GetAllAsync(SqlKata.Query query);
  33. Task<int> InsertAsync(Entity.Topic.Topic topic);
  34. Task<bool> DeleteAsync(int id);
  35. Task<bool> UpdateAsync(Entity.Topic.Topic topic);
  36. /// <summary>
  37. /// 执行话题
  38. /// </summary>
  39. /// <returns></returns>
  40. Task<List<JobTopicResult>> ExecuteTopic();
  41. Task<PagedList<TopicListPageResult>> GetTopicPage(TopicPageSearchRequest request);
  42. }
  43. }