using AsbCloudApp.Data; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace AsbCloudApp.Services { /// <summary> /// Сервис по работе с контактной информацией по скважине /// </summary> public interface IWellContactService { /// <summary> /// Полуение пользователей по ключу скважины и типу контакта /// </summary> /// <param name="wellId">ключ скважины</param> /// <param name="contactTypeId">тип контакта</param> /// <param name="token"></param> /// <returns></returns> Task<IEnumerable<CompanyWithUsersDto>> GetAsync(int wellId, int contactTypeId, CancellationToken token); /// <summary> /// Получение типов контаков /// </summary> /// <param name="idWell">ключ скважины</param> /// <param name="token"></param> /// <returns></returns> Task<IEnumerable<CompanyTypeDto>> GetTypesAsync(int idWell, CancellationToken token); /// <summary> /// Обновление контактов по ключу скважины, типу контакта и ключам пользователей /// </summary> /// <param name="idWell">ключ скважины</param> /// <param name="contactTypeId">ключ типа контакта</param> /// <param name="userIds">ключи пользователей</param> /// <param name="token"></param> /// <returns></returns> Task<int> UpdateRangeAsync(int idWell, int contactTypeId, IEnumerable<int> userIds, CancellationToken token); } }