diff --git a/Hcs.Client/Client/Api/BillsApi.cs b/Hcs.Client/Client/Api/BillsApi.cs
index 42ed3a6..3f8d536 100644
--- a/Hcs.Client/Client/Api/BillsApi.cs
+++ b/Hcs.Client/Client/Api/BillsApi.cs
@@ -16,10 +16,10 @@ namespace Hcs.Client.Api
/// Идентификатор платежного документа
/// Токен отмены
/// Платежные документы
- public async Task> ExportPaymentDocumentDataAsync(string paymentDocumentID, CancellationToken token = default)
+ public async Task> ExportPaymentDocumentDataByPaymentDocumentIDAsync(string paymentDocumentID, CancellationToken token = default)
{
var request = new ExportPaymentDocumentDataRequest(client);
- return await request.ExecuteAsync(paymentDocumentID, token);
+ return await request.ExecuteByPaymentDocumentIDAsync(paymentDocumentID, token);
}
///
@@ -28,13 +28,29 @@ namespace Hcs.Client.Api
/// Год
/// Месяц
/// Глобальный уникальный идентификатор дома по ФИАС
- /// Идентификатор ЛС в ГИС ЖКХ
+ /// Номер лицевого счета/иной идентификатор плательщика
/// Токен отмены
/// Платежные документы
- public async Task> ExportPaymentDocumentDataAsync(short year, int month, string fiasHouseGuid, string accountGUID, CancellationToken token = default)
+ public async Task> ExportPaymentDocumentDataByAccountNumberAsync(short year, int month, string fiasHouseGuid, string accountNumber, CancellationToken token = default)
{
var request = new ExportPaymentDocumentDataRequest(client);
- return await request.ExecuteAsync(year, month, fiasHouseGuid, accountGUID, token);
+ 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);
}
///
diff --git a/Hcs.Client/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs b/Hcs.Client/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs
index 8b9bdd8..1170846 100644
--- a/Hcs.Client/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs
+++ b/Hcs.Client/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs
@@ -11,7 +11,7 @@ namespace Hcs.Client.Api.Request.Bills
{
protected override bool CanBeRestarted => true;
- internal async Task> ExecuteAsync(string paymentDocumentID, CancellationToken token)
+ internal async Task> ExecuteByPaymentDocumentIDAsync(string paymentDocumentID, CancellationToken token)
{
var request = new exportPaymentDocumentRequest()
{
@@ -30,14 +30,33 @@ namespace Hcs.Client.Api.Request.Bills
return result.Items.OfType();
}
- internal async Task> ExecuteAsync(short year, int month, string fiasHouseGuid, string accountGUID, CancellationToken token)
+ internal async Task> ExecuteByAccountNumberAsync(short year, int month, string fiasHouseGuid, string accountNumber, CancellationToken token)
{
var request = new exportPaymentDocumentRequest()
{
Id = Constants.SIGNED_XML_ELEMENT_ID,
version = "13.1.0.1",
- Items = [year, month, fiasHouseGuid, accountGUID],
- ItemsElementName = [ItemsChoiceType7.Year, ItemsChoiceType7.Month, ItemsChoiceType7.FIASHouseGuid, ItemsChoiceType7.AccountGUID]
+ Items = [year, month, fiasHouseGuid, accountNumber],
+ ItemsElementName = [ItemsChoiceType7.Year, ItemsChoiceType7.Month, ItemsChoiceType7.FIASHouseGuid, ItemsChoiceType7.AccountNumber]
+ };
+
+ var result = await SendAndWaitResultAsync(request, async asyncClient =>
+ {
+ var response = await asyncClient.exportPaymentDocumentDataAsync(CreateRequestHeader(), request);
+ return response.AckRequest.Ack;
+ }, token);
+
+ return result.Items.OfType();
+ }
+
+ internal async Task> ExecuteByPaymentDocumentNumberAsync(short year, int month, string fiasHouseGuid, string paymentDocumentNumber, CancellationToken token)
+ {
+ var request = new exportPaymentDocumentRequest()
+ {
+ Id = Constants.SIGNED_XML_ELEMENT_ID,
+ version = "13.1.0.1",
+ Items = [year, month, fiasHouseGuid, paymentDocumentNumber],
+ ItemsElementName = [ItemsChoiceType7.Year, ItemsChoiceType7.Month, ItemsChoiceType7.FIASHouseGuid, ItemsChoiceType7.PaymentDocumentNumber]
};
var result = await SendAndWaitResultAsync(request, async asyncClient =>
diff --git a/Hcs.TestApp/TestApp/Program.cs b/Hcs.TestApp/TestApp/Program.cs
index 8c8ed8a..591636b 100644
--- a/Hcs.TestApp/TestApp/Program.cs
+++ b/Hcs.TestApp/TestApp/Program.cs
@@ -45,8 +45,9 @@ namespace Hcs.TestApp
var paymentsScenario = new PaymentsScenario(client);
try
{
- //billsScenario.ExportPaymentDocumentDataById();
- //billsScenario.ExportPaymentDocumentData();
+ //billsScenario.ExportPaymentDocumentDataByPaymentDocumentID();
+ //billsScenario.ExportPaymentDocumentDataByAccountNumber();
+ //billsScenario.ExportPaymentDocumentDataByPaymentDocumentNumber();
//billsScenario.ImportPaymentDocumentData();
//deviceMeteringScenario.ExportMeteringDeviceHistory();
diff --git a/Hcs.TestApp/TestApp/Scenario/BillsScenario.cs b/Hcs.TestApp/TestApp/Scenario/BillsScenario.cs
index e19dcf9..d6bbecb 100644
--- a/Hcs.TestApp/TestApp/Scenario/BillsScenario.cs
+++ b/Hcs.TestApp/TestApp/Scenario/BillsScenario.cs
@@ -11,15 +11,21 @@ namespace Hcs.TestApp.Scenario
{
private readonly UniClient client = client;
- internal void ExportPaymentDocumentDataById()
+ internal void ExportPaymentDocumentDataByPaymentDocumentID()
{
- var result = client.Bills.ExportPaymentDocumentDataAsync("00АА095186-02-5081").Result;
+ var result = client.Bills.ExportPaymentDocumentDataByPaymentDocumentIDAsync("00АА095186-02-5081").Result;
Console.WriteLine("Scenario execution " + (result != null && result.Count() > 0 ? "succeeded" : "failed"));
}
- internal void ExportPaymentDocumentData()
+ internal void ExportPaymentDocumentDataByAccountNumber()
{
- var result = client.Bills.ExportPaymentDocumentDataAsync(2025, 8, "c48e5025-f77a-494f-8aab-f773da623a25", "019917a8-6eb6-74cc-99b7-58350127ac50").Result;
+ var result = client.Bills.ExportPaymentDocumentDataByAccountNumberAsync(2025, 8, "c48e5025-f77a-494f-8aab-f773da623a25", "458938932489324").Result;
+ Console.WriteLine("Scenario execution " + (result != null && result.Count() > 0 ? "succeeded" : "failed"));
+ }
+
+ internal void ExportPaymentDocumentDataByPaymentDocumentNumber()
+ {
+ var result = client.Bills.ExportPaymentDocumentDataByPaymentDocumentNumberAsync(2025, 8, "c48e5025-f77a-494f-8aab-f773da623a25", "23900701600162023").Result;
Console.WriteLine("Scenario execution " + (result != null && result.Count() > 0 ? "succeeded" : "failed"));
}