using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Datory;
using GxPress.Entity.Topic;
using GxPress.Request.App.Topic;

namespace GxPress.Repository.Interface.Topic
{
   public interface ITopicGroupRepository:IRepository
    {

        Task<TopicGroup> GetAsync(int id);

        Task<bool> DeleteAsync(List<int> ids);

        Task<bool> InsertAsync(TopicGroup topicGroup);

        Task<IEnumerable<TopicGroup>> GetTopicGroupsAsync(int userId);

        /// <summary>
        /// 修改分组名称
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
         Task<bool> UpdateAsync(TopicGroupInRequest request);

        /// <summary>
        /// 排序
        /// </summary>
        /// <param name="firstId"></param>
        /// <param name="secondId"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        Task<bool> MoveSortAsync(int firstId, int secondId,int userId);

        Task<bool> UpdateAsync(SqlKata.Query query);

        
    }
}
