forked from ddrilling/AsbCloudServer
50 lines
2.1 KiB
C#
50 lines
2.1 KiB
C#
using AsbCloudApp.Data;
|
||
using AsbCloudApp.Data.User;
|
||
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<CompanyWithContactsDto>> 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="contactDto"></param>
|
||
/// <param name="token"></param>
|
||
/// <returns></returns>
|
||
Task<int> InsertAsync(ContactDto contactDto, 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);
|
||
}
|
||
}
|