50 lines
1.5 KiB
C#
50 lines
1.5 KiB
C#
using System.Collections.Generic;
|
|
using System.Dynamic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using Novaloop.PaymoApi.ClientContacts.Models;
|
|
using Novaloop.PaymoApi.Shared;
|
|
|
|
namespace Novaloop.PaymoApi.ClientContacts
|
|
{
|
|
public class ClientContactsApi : IClientContactsApi
|
|
{
|
|
private readonly IBaseApi<ClientContactsResponse, ClientContact> _baseApi;
|
|
|
|
public ClientContactsApi(IBaseApi<ClientContactsResponse, ClientContact> baseApi)
|
|
{
|
|
_baseApi = baseApi;
|
|
_baseApi.ResourceUri = "clientcontacts";
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public async Task<IEnumerable<ClientContact>> GetClientContacts()
|
|
{
|
|
return (await _baseApi.GetAll()).ClientContacts;
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public async Task<ClientContact> GetClientContact(int clientContactId)
|
|
{
|
|
return (await _baseApi.Get(clientContactId)).ClientContacts.Single();
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public async Task<ClientContact> CreateClientContact(ClientContact clientContact)
|
|
{
|
|
return (await _baseApi.Create(clientContact)).ClientContacts.Single();
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public async Task DeleteClientContact(int clientContactId)
|
|
{
|
|
await _baseApi.Delete(clientContactId);
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
public async Task UpdateClientContact(ExpandoObject clientContact, int clientContactId)
|
|
{
|
|
await _baseApi.Update(clientContact, clientContactId);
|
|
}
|
|
}
|
|
} |