DD.WellWorkover.Cloud/AsbCloudApp/Services/IWellFinalDocumentsService.cs

69 lines
2.4 KiB
C#

using AsbCloudApp.Data;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace AsbCloudApp.Services
{
/// <summary>
/// Сервис "Дело скважины"
/// </summary>
public interface IWellFinalDocumentsService : ICrudService<WellFinalDocumentsDBDto>
{
/// <summary>
/// Получение всех записей
/// </summary>
/// <param name = "idWell" ></param >
/// <param name="token"></param>
/// <returns></returns>
Task<List<WellFinalDocumentsDto>> GetByWellId(int idWell, CancellationToken token);
/// <summary>
/// Получение списка ответственных
/// </summary>
/// <param name="idWell"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<List<UserExtendedDto>> GetListResponsiblesAsync(int idWell, CancellationToken token);
/// <summary>
/// Добавление записи
/// </summary>
/// <param name="dtos"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<int> InsertRangeAsync(List<WellFinalDocumentsDBDto> dtos, CancellationToken token);
/// <summary>
/// Удалить запись
/// </summary>
/// <param name="dtoId"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<int> DeleteAsync(int dtoId, CancellationToken token);
/// <summary>
/// Получение истории файлов
/// </summary>
/// <param name="idWell"></param>
/// <param name="idCategory"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<WellFinalDocumentsHistoryDto> GetHistoryFileByIdCategory(int idWell, int idCategory, CancellationToken token);
/// <summary>
/// Сохранение файла
/// </summary>
/// <param name="idDto"></param>
/// <param name="fileStream"></param>
/// <param name="fileName"></param>
/// <param name="token"></param>
/// <returns></returns>
Task<int> SaveCategoryFile(int idDto, Stream fileStream, string fileName, CancellationToken token);
}
}