using System; using System.Threading; using System.Threading.Tasks; using AsbCloudApp.Data; using AsbCloudApp.Data.DailyReport; using AsbCloudApp.Data.DailyReport.Blocks; using AsbCloudApp.Requests; namespace AsbCloudApp.Services.DailyReport; public interface IDailyReportService { /// /// Создать отчёт /// /// /// /// /// Task InsertAsync(int idWell, DateTime dateStart, CancellationToken cancellationToken); /// /// Обновить блок /// /// /// /// /// /// /// Task UpdateBlockAsync(int idDailyReport, int idUser, TBlock editableBlock, CancellationToken cancellationToken) where TBlock : EditableBlock; /// /// Получить сформированный суточный отчёт /// /// /// /// /// Task GetAsync(int idWell, DateTime dateStart, CancellationToken cancellationToken); /// /// Получить список суточных отчётов по скважине /// /// /// /// /// Task> GetAsync(int idWell, FileReportRequest request, CancellationToken cancellationToken); /// /// Получить диапазон дат по которым возможно сформировать суточный отчёты /// /// /// /// Task GetDatesRangeAsync(int idWell, CancellationToken cancellationToken); }