using AsbCloudApp.Data; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Services { public interface ITelemetryService { ITimeZoneService TimeZoneService { get; } ITelemetryTracker TelemetryTracker { get; } int? GetIdWellByTelemetryUid(string uid); int GetOrCreateTelemetryIdByUid(string uid); double GetTimezoneOffsetByTelemetryId(int idTelemetry); Task GetTelemetryTimeZoneOffsetAsync(int idTelemetry, CancellationToken token); IEnumerable GetTransmittingTelemetries(); DateTime GetLastTelemetryDate(string telemetryUid); DateTime GetLastTelemetryDate(int telemetryId); int? GetIdTelemetryByIdWell(int idWell); Task UpdateInfoAsync(string uid, TelemetryInfoDto info, CancellationToken token); Task DatesRangeToTelemetryTimeZoneAsync(int telemetryId, DatesRangeDto result, CancellationToken token); Task UpdateTimeZoneAsync(string uid, TelemetryTimeZoneDto telemetryTimeZoneInfo, CancellationToken token); /// /// Слить данные телеметрии в одну /// /// старая (исходная) /// новая /// Task MergeAsync(int from, int to, CancellationToken token); void SaveRequestDate(string uid, DateTime remoteDate); } }