35 lines
1.3 KiB
C#
35 lines
1.3 KiB
C#
using Persistence.Models;
|
||
|
||
namespace Persistence.Repositories;
|
||
|
||
/// <summary>
|
||
/// Интерфейс по работе с временными данными
|
||
/// </summary>
|
||
/// <typeparam name="TDto"></typeparam>
|
||
public interface ITimeSeriesDataRepository<TDto> : ISyncRepository<TDto>
|
||
where TDto : class, ITimeSeriesAbstractDto
|
||
{
|
||
/// <summary>
|
||
/// Получить страницу списка объектов
|
||
/// </summary>
|
||
/// <param name="dateBegin">дата начала</param>
|
||
/// <param name="dateEnd">дата окончания</param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<IEnumerable<TDto>> GetAsync(DateTimeOffset dateBegin, DateTimeOffset dateEnd, CancellationToken token);
|
||
|
||
/// <summary>
|
||
/// Получить диапазон дат, для которых есть данные в репозитории
|
||
/// </summary>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<DatesRangeDto> GetDatesRangeAsync(CancellationToken token);
|
||
/// <summary>
|
||
/// Добавление записей
|
||
/// </summary>
|
||
/// <param name="dtos"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<int> InsertRange(IEnumerable<TDto> dtos, CancellationToken token);
|
||
}
|