using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; using Datory; using GxPress.Common.Page; using GxPress.Request.App.Collection; using GxPress.Result.App.Collection; namespace GxPress.Repository.Interface.Collection { public interface ICollectionRepository : IRepository { /// <summary> /// 添加收藏 /// </summary> /// <param name="collection"></param> /// <returns></returns> Task<int> InsertAsync(Entity.Collection collection); /// <summary> /// 查询结果 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<PagedList<CollectionListPageResult>> PageListAsync(CollectionPageSearchRequest request); /// <summary> /// 根据ID获取收藏数据 /// </summary> /// <param name="id"></param> /// <returns></returns> Task<Entity.Collection> GetAsync(int id); Task<Entity.Collection> GetAsync(SqlKata.Query query); Task<bool> DeleteAsync(SqlKata.Query query); Task<bool> DeleteAsync(int id); Task<IEnumerable<Entity.Collection>> GetAllAsync(SqlKata.Query query); /// <summary> /// 递归删除收藏包括文件夹下面的数据 /// </summary> /// <param name="middleIds"></param> /// <returns></returns> Task<bool> RecursionDeleteAsync(List<int> middleIds); /// <summary> /// 收藏无文件夹分页列表 /// </summary> /// <param name="request"></param> /// <returns></returns> Task<PagedList<CollectionNoFolderResult>> GetCollectionNoFolderPageListAsync(CollectionPageSearchRequest request); /// <summary> /// 设置收藏置顶 /// </summary> /// <param name="collection"></param> /// <returns></returns> Task<bool> SetTopAsync(int id); } }