using AsbCloudApp.Data; using AsbCloudApp.Requests; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Services; /// /// сервис скважин /// public interface IWellService : ICrudRepository { /// /// сервис телеметрии /// ITelemetryService TelemetryService { get; } /// /// Список скважин доступных компании /// /// /// /// Task> GetAsync(WellRequest request, CancellationToken token); /// /// Статистика по скважине /// /// /// /// Task GetOrDefaultStatAsync(int idWell, CancellationToken token); /// /// проверяет доступ к скважине для компании /// /// /// /// /// Task IsCompanyInvolvedInWellAsync(int idCompany, int idWell, CancellationToken token); //TODO: remove that /// /// получить название скважины по id /// /// /// /// Task GetWellCaptionByIdAsync(int idWell, CancellationToken token); /// /// список компаний участвующих в скважине /// /// /// /// Task> GetCompaniesAsync(int idWell, CancellationToken token); //TODO: remove that /// /// /// /// /// string GetStateText(int state); /// /// дата получения последних данных от панели /// /// /// DateTimeOffset GetLastTelemetryDate(int idWell); //TODO: выяснить и удалить отсюда /// /// получение списка скважин куста в котором находится указанная скважина /// /// /// /// Task> GetClusterWellsIdsAsync(int idWell, CancellationToken token); /// /// часовой пояс скважины /// /// /// SimpleTimezoneDto GetTimezone(int idWell); /// /// диапазон дат с данными телеметрии /// /// /// DatesRangeDto GetDatesRange(int idWell); /// /// ВРЕМЕННЫЙ метод /// /// /// /// Task> GetWellTreeAsync(int idCompany, CancellationToken token); }