using System; using AsbCloudApp.Data.DetectedOperation; using AsbCloudApp.Requests; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using AsbCloudApp.Data.WellOperation; namespace AsbCloudApp.Services { /// /// Сервис автоматически определенных по телеметрии операций /// public interface IDetectedOperationService { /// /// Добавление операций /// /// /// /// /// /// Task InsertRangeManualAsync(int idEditor, int idWell, IEnumerable dtos, CancellationToken token); /// /// Редактирование операций /// /// /// /// /// /// Task UpdateRangeManualAsync(int idEditor, int idWell, IEnumerable dtos, CancellationToken token); /// /// Список названий операций. /// Если указан idWell, то возвращается список названий операций найденных на указанной скважине. /// /// /// /// Task> GetCategoriesAsync(int? idWell, CancellationToken token); /// /// Получить автоматически определенные по телеметрии операции с анализом по бурильщикам /// /// /// /// Task GetAsync(DetectedOperationByWellRequest request, CancellationToken token); /// /// Получить автоматически определенные по телеметрии операции /// /// /// /// Task> GetOperationsAsync(DetectedOperationByWellRequest request, CancellationToken token); /// /// Удалить операции /// /// /// /// Task DeleteAsync(DetectedOperationByWellRequest request, CancellationToken token); /// /// Статистика по операциям /// /// /// /// [Obsolete] Task> GetOperationsStatAsync(DetectedOperationByWellRequest request, CancellationToken token); /// /// Определение операций /// /// /// /// /// /// Task<(DateTimeOffset LastDate, IEnumerable Items)> DetectOperationsAsync(int idTelemetry, TelemetryDataRequest request, DetectedOperationDto? lastDetectedOperation, CancellationToken token); } }