using AsbCloudApp.Data; using AsbCloudApp.Data.DrillTestReport; using AsbCloudApp.Requests; using System.IO; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Services { /// <summary> /// сервис по работе с отчетами drill test /// </summary> public interface IDrillTestReportService { /// <summary> /// Список файлов drill test /// </summary> /// <param name="idWell">ключ скважины</param> /// <param name="request">параметры запроса</param> /// <param name="cancellationToken"></param> /// <returns></returns> Task<PaginationContainer<DrillTestReportInfoDto>> GetListAsync(int idWell, FileReportRequest request, CancellationToken cancellationToken); /// <summary> /// Генерация файла с отчётом /// </summary> /// <param name="idWell">ключ скважины</param> /// <param name="id">ключ drill test записи</param> /// <param name="cancellationToken"></param> /// <returns></returns> Task<(string fileName, Stream stream)> GenerateAsync(int idWell, int id, CancellationToken cancellationToken); } }