170 lines
9.4 KiB
C#
170 lines
9.4 KiB
C#
using Hcs.Client.Api.Payload.HouseManagement;
|
||
using Hcs.Client.Api.Request.HouseManagement;
|
||
using Hcs.Service.Async.HouseManagement;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
using System.Threading;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace Hcs.Client.Api
|
||
{
|
||
// http://open-gkh.ru/HouseManagementServiceAsync/
|
||
public class HouseManagementApi(ClientBase client) : ApiBase(client)
|
||
{
|
||
/// <summary>
|
||
/// Экспорт лицевых счетов
|
||
/// </summary>
|
||
/// <param name="fiasHouseGuid">Глобальный уникальный идентификатор дома по ФИАС</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Лицевые счета</returns>
|
||
public async Task<IEnumerable<exportAccountResultType>> ExportAccountAsync(string fiasHouseGuid, CancellationToken token = default)
|
||
{
|
||
var request = new ExportAccountRequest(client);
|
||
return await request.ExecuteAsync(fiasHouseGuid, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Возвращает информацию о доме
|
||
/// </summary>
|
||
/// <param name="fiasHouseGuid">Глобальный уникальный идентификатор дома по ФИАС</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Информация о доме</returns>
|
||
public async Task<IEnumerable<exportHouseResultType>> ExportHouseAsync(string fiasHouseGuid, CancellationToken token = default)
|
||
{
|
||
var request = new ExportHouseRequest(client);
|
||
return await request.ExecuteAsync(fiasHouseGuid, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Возвращает все договора ресурсоснабжения
|
||
/// </summary>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Договора ресурсоснабжения</returns>
|
||
public async Task<IEnumerable<exportSupplyResourceContractResultType>> ExportSupplyResourceContractDataAsync(CancellationToken token = default)
|
||
{
|
||
var request = new ExportSupplyResourceContractDataRequest(client);
|
||
return await request.ExecuteAsync(token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Возвращает договор ресурсоснабжения по его идентификатору в ГИС ЖКХ
|
||
/// </summary>
|
||
/// <param name="contractRootGuid">Идентификатор договора ресурсоснабжения в ГИС ЖКХ</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Договор ресурсоснабжения</returns>
|
||
public async Task<exportSupplyResourceContractResultType> ExportSupplyResourceContractDataAsync(Guid contractRootGuid, CancellationToken token = default)
|
||
{
|
||
var request = new ExportSupplyResourceContractDataRequest(client);
|
||
return await request.ExecuteAsync(contractRootGuid, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Возвращает договор ресурсоснабжения по номеру договора в ГИС ЖКХ
|
||
/// </summary>
|
||
/// <param name="contractNumber">Номер договора ресурсоснабжения в ГИС ЖКХ</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Договор ресурсоснабжения</returns>
|
||
public async Task<exportSupplyResourceContractResultType> ExportSupplyResourceContractDataAsync(string contractNumber, CancellationToken token = default)
|
||
{
|
||
var request = new ExportSupplyResourceContractDataRequest(client);
|
||
return await request.ExecuteAsync(contractNumber, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Возвращает объекты жилищного фонда из договора ресурсоснабжения по его идентификатору
|
||
/// </summary>
|
||
/// <param name="contractRootGuid">Идентификатор договора ресурсоснабжения в ГИС ЖКХ</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Объекты жилищного фонда</returns>
|
||
public async Task<IEnumerable<exportSupplyResourceContractObjectAddressResultType>> ExportSupplyResourceContractObjectAddressDataAsync(Guid contractRootGuid, CancellationToken token = default)
|
||
{
|
||
var request = new ExportSupplyResourceContractObjectAddressDataRequest(client);
|
||
return await request.ExecuteAsync(contractRootGuid, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт лицевого счета
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад лицевого счета</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>true, если операция выполнена успешно, иначе - false</returns>
|
||
public async Task<bool> ImportAccountDataAsync(ImportAccountDataPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportAccountDataRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт сведений о ДУ (создание ДУ)
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад ДУ</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Импортированный договор</returns>
|
||
public async Task<importContractResultType> ImportContractDataAsync(ImportContractDataPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportContractDataRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт данных дома
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад данных дома</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>true, если операция выполнена успешно, иначе - false</returns>
|
||
public async Task<bool> ImportHouseUODataAsync(ImportLivingHouseUODataPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportHouseUODataRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт прибора учета
|
||
/// </summary>
|
||
/// <param name="meteringDevice">Прибор учета</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>true, если операция выполнена успешно, иначе - false</returns>
|
||
public async Task<bool> ImportMeteringDeviceDataAsync(MeteringDeviceFullInformationType meteringDevice, CancellationToken token = default)
|
||
{
|
||
var request = new ImportMeteringDeviceDataRequest(client);
|
||
return await request.ExecuteAsync(meteringDevice, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт новости для информирования граждан
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад новости</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>true, если операция выполнена успешно, иначе - false</returns>
|
||
public async Task<bool> ImportNotificationDataAsync(ImportNotificationDataPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportNotificationDataRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт договора ресурсоснабжения с РСО
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад договора ресурсоснабжения</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Импортированный договор</returns>
|
||
public async Task<getStateResultImportResultCommonResultImportSupplyResourceContract> ImportSupplyResourceContractDataAsync(ImportSupplyResourceContractDataPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportSupplyResourceContractDataRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
|
||
/// <summary>
|
||
/// Импорт проекта договора ресурсоснабжения с РСО
|
||
/// </summary>
|
||
/// <param name="payload">Пейлоад проекта договора ресурсоснабжения</param>
|
||
/// <param name="token">Токен отмены</param>
|
||
/// <returns>Импортированный проект договора</returns>
|
||
public async Task<getStateResultImportResultCommonResultImportSupplyResourceContractProject> ImportSupplyResourceContractProjectAsync(ImportSupplyResourceContractProjectPayload payload, CancellationToken token = default)
|
||
{
|
||
var request = new ImportSupplyResourceContractProjectRequest(client);
|
||
return await request.ExecuteAsync(payload, token);
|
||
}
|
||
}
|
||
}
|