persistence/Persistence/Repositories/ITimeSeriesBaseRepository.cs

30 lines
1011 B
C#
Raw Permalink Normal View History

using Persistence.Models;
namespace Persistence.Repositories;
/// <summary>
/// Интерфейс по работе с прореженными данными
/// </summary>
2024-11-21 17:02:36 +05:00
public interface ITimeSeriesBaseRepository<TDto>
where TDto : class, new()
{
/// <summary>
/// Получить список объектов с прореживанием
/// </summary>
/// <param name="dateBegin">дата начала</param>
/// <param name="approxPointsCount"></param>
/// <returns></returns>
Task<IEnumerable<TDto>> GetResampledData(
DateTimeOffset dateBegin,
double intervalSec = 600d,
int approxPointsCount = 1024,
CancellationToken token = default);
/// <summary>
/// Получить диапазон дат, для которых есть данные в репозитории
/// </summary>
/// <param name="token"></param>
/// <returns></returns>
2024-11-21 17:02:36 +05:00
Task<DatesRangeDto?> GetDatesRange(CancellationToken token);
}