using DataSharing.Province.SendTask.ProvinceOther;
using DataSharing.Province.SendTask.SubmitCaseInfo;
using DataSharing.Share.Dtos.Statistics;
using SqlSugar;
using XF.Domain.Repository;

namespace DataSharing.Province.SendTask
{
    public interface IWaitSendTaskRepository : IRepository<DsWaitSendTaskProvinceOther>
    {
        ISugarQueryable<T> UnionAll<T>(params ISugarQueryable<T>[] queryables) where T : class;

        /// <summary>
        /// 汇聚数据查询
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        List<DataAggregationSituationDto> GetDataAggregationSituation(string sql);

        /// <summary>
        /// 根据sql查询分页数据
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        ISugarQueryable<DsSendTaskSubmitCaseInfo> GetDataBySql(string sql);

        /// <summary>
        /// 根据sql查询分页数据
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        ISugarQueryable<GetOverdueDetailsDto> GetGetOverdueDetailsBySql(string sql);
    }
}
