using Hcs.ClientNet.Api.Payload.Bills; using Hcs.ClientNet.Api.Request.Bills; using Hcs.Service.Async.Bills; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace Hcs.ClientNet.Api { // http://open-gkh.ru/BillsServiceAsync/ public class BillsApi(ClientBase client) : ApiBase(client) { /// /// Экспорт платежных документов /// /// Идентификатор платежного документа /// Токен отмены /// Платежные документы public async Task> ExportPaymentDocumentDataByPaymentDocumentIDAsync(string paymentDocumentID, CancellationToken token = default) { var request = new ExportPaymentDocumentDataRequest(client); return await request.ExecuteByPaymentDocumentIDAsync(paymentDocumentID, token); } /// /// Экспорт платежных документов /// /// Год /// Месяц /// Глобальный уникальный идентификатор дома по ФИАС /// Номер лицевого счета/иной идентификатор плательщика /// Токен отмены /// Платежные документы public async Task> ExportPaymentDocumentDataByAccountNumberAsync(short year, int month, string fiasHouseGuid, string accountNumber, CancellationToken token = default) { var request = new ExportPaymentDocumentDataRequest(client); return await request.ExecuteByAccountNumberAsync(year, month, fiasHouseGuid, accountNumber, token); } /// /// Экспорт платежных документов /// /// Год /// Месяц /// Глобальный уникальный идентификатор дома по ФИАС /// Номер платежного документа, по которому внесена плата, /// присвоенный такому документу исполнителем в целях осуществления расчетов по внесению платы /// Токен отмены /// Платежные документы public async Task> ExportPaymentDocumentDataByPaymentDocumentNumberAsync(short year, int month, string fiasHouseGuid, string paymentDocumentNumber, CancellationToken token = default) { var request = new ExportPaymentDocumentDataRequest(client); return await request.ExecuteByPaymentDocumentNumberAsync(year, month, fiasHouseGuid, paymentDocumentNumber, token); } /// /// Импорт сведений о платежных документах /// /// Пейлоад сведений о платежных документах /// Токен отмены /// true, если операция выполнена успешно, иначе - false public async Task ImportPaymentDocumentDataAsync(ImportPaymentDocumentDataPayload payload, CancellationToken token = default) { var request = new ImportPaymentDocumentDataRequest(client); return await request.ExecuteAsync(payload, token); } } }