Add new Hcs.Broker to communicate with ГИС ЖКХ via CryptoPro LibCore
This commit is contained in:
49
Hcs.Broker/Api/NsiCommonApi.cs
Normal file
49
Hcs.Broker/Api/NsiCommonApi.cs
Normal file
@ -0,0 +1,49 @@
|
||||
using Hcs.Broker.Api.Request.Exception;
|
||||
using Hcs.Broker.Api.Request.NsiCommon;
|
||||
using Hcs.Service.Async.NsiCommon;
|
||||
|
||||
namespace Hcs.Broker.Api
|
||||
{
|
||||
// http://open-gkh.ru/NsiCommonService/
|
||||
public class NsiCommonApi(Client client) : ApiBase(client)
|
||||
{
|
||||
/// <summary>
|
||||
/// Возвращает данные общесистемного справочника
|
||||
/// </summary>
|
||||
/// <param name="registryNumber">Реестровый номер справочника</param>
|
||||
/// <param name="listGroup">Группа справочников, где NSI - общесистемный, а NSIRAO - ОЖФ</param>
|
||||
/// <param name="token">Токен отмены</param>
|
||||
/// <returns>Данные общесистемного справочника</returns>
|
||||
public async Task<NsiItemType> ExportNsiItemAsync(int registryNumber, ListGroup listGroup, CancellationToken token = default)
|
||||
{
|
||||
try
|
||||
{
|
||||
var request = new ExportNsiItemRequest(client);
|
||||
return await request.ExecuteAsync(registryNumber, listGroup, token);
|
||||
}
|
||||
catch (NoResultsRemoteException)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Возвращает перечень общесистемных справочников с указанием даты последнего изменения каждого из них
|
||||
/// </summary>
|
||||
/// <param name="listGroup">Группа справочников, где NSI - общесистемный, а NSIRAO - ОЖФ</param>
|
||||
/// <param name="token">Токен отмены</param>
|
||||
/// <returns>Перечень общесистемных справочников</returns>
|
||||
public async Task<NsiListType> ExportNsiListAsync(ListGroup listGroup, CancellationToken token = default)
|
||||
{
|
||||
try
|
||||
{
|
||||
var request = new ExportNsiListRequest(client);
|
||||
return await request.ExecuteAsync(listGroup, token);
|
||||
}
|
||||
catch (NoResultsRemoteException)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user