using AsbCloudApp.Data.GTR; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Repositories { /// <summary> /// данные ГТИ /// </summary> public interface IGtrRepository { /// <summary> /// добавить данные (для панели бурильщика) /// </summary> /// <param name="idTelemetry"></param> /// <param name="dtos"></param> /// <param name="token"></param> /// <returns></returns> Task SaveDataAsync(int idTelemetry, IEnumerable<WitsRecordDto> dtos, CancellationToken token); /// <summary> /// получить данные для клиента /// </summary> /// <param name="idWell"></param> /// <param name="dateBegin"></param> /// <param name="intervalSec"></param> /// <param name="approxPointsCount">кол-во элементов до которых эти данные прореживаются</param> /// <param name="token"></param> /// <returns></returns> Task<IEnumerable<WitsRecordDto>> GetAsync(int idWell, DateTime? dateBegin, double intervalSec = 600d, int approxPointsCount = 1024, CancellationToken token = default); /// <summary> /// получение последних данных ГТИ по record id /// </summary> /// <param name="idWell"></param> /// <param name="idRecord"></param> /// <returns></returns> IEnumerable<WitsItemRecordDto> GetLastDataByRecordId(int idWell, int idRecord); /// <summary> /// Последние полученные параметры /// </summary> /// <param name="idWell"></param> /// <returns></returns> IEnumerable<WitsItemRecordDto> GetLastData(int idWell); } }