using System.Threading.Tasks;
using Datory;
using GxPress.Common.Page;
using GxPress.Request.App.Visit;
using GxPress.Result.App.Visit;

namespace GxPress.Repository.Interface.Visit
{
    public interface IVisitRepository:IRepository
    {
         Task<int> InsertAsync(Entity.Visit.Visit request);

        /// <summary>
        /// 通知查询
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task<PagedList<VisitResult>> GetVisitResultAsync(VisitPageSearchRequest request);

        Task<Entity.Visit.Visit> GetAsync(SqlKata.Query query);

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

          Task<int> CountAsync(SqlKata.Query query);
    }
}