using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using AsbCloudApp.Data.ProcessMapPlan;
using AsbCloudApp.Requests;
namespace AsbCloudApp.Repositories;
///
/// Общий интерфейс для РТК план с учетом истории изменений
///
///
public interface IProcessMapPlanBaseRepository: IChangeLogRepository
where T: ProcessMapPlanBaseDto
{
///
/// Добавление записей с удалением старых (для импорта)
///
///
///
///
///
///
Task ClearAndInsertRange(int idUser, int idWell, IEnumerable dtos, CancellationToken token);
///
/// Получение дат изменений записей
///
///
///
///
Task> GetDatesChange(int idWell, CancellationToken token);
///
/// Получение журнала изменений
///
///
///
///
///
Task> GetChangeLog(int idWell, DateOnly? date, CancellationToken token);
///
/// Получение записей по параметрам
///
///
///
///
///
Task> Get(int idWell, ProcessMapPlanBaseRequest request, CancellationToken token);
}