diff --git a/Hcs.Client/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs b/Hcs.Client/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs index d08ce31..74d382e 100644 --- a/Hcs.Client/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs +++ b/Hcs.Client/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs @@ -1,6 +1,9 @@ using Hcs.Client.Api.Request; using Hcs.Client.Api.Request.Adapter; +using Hcs.Client.Api.Request.Exception; using Hcs.Service.Async.HouseManagement; +using System.Collections.Generic; +using System.Linq; using System.Threading.Tasks; namespace Hcs.Service.Async.HouseManagement @@ -51,5 +54,29 @@ namespace Hcs.Client.Api.Request.HouseManagement protected override bool CanBeRestarted => true; protected override int RestartTimeoutMinutes => 20; + + protected getStateResultImportResultCommonResult[] GetCommonResults(IEnumerable importResults) + { + var result = new List(); + foreach (var importResult in importResults) + { + importResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var commonResults = importResult.Items.OfType(); + foreach (var commonResult in commonResults) + { + commonResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + } + + result.AddRange(commonResults); + } + return [.. result]; + } } } diff --git a/Hcs.Client/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs b/Hcs.Client/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs index 319f78e..b73a4de 100644 --- a/Hcs.Client/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs +++ b/Hcs.Client/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs @@ -36,7 +36,17 @@ namespace Hcs.Client.Api.Request.HouseManagement throw RemoteException.CreateNew(error.ErrorCode, error.Description); }); - return true; + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.ImportAccount) + { + return commonResult.Item is getStateResultImportResultCommonResultImportAccount; + } + } + + return false; } private importAccountRequestAccount GetAccountFromPayload(ImportAccountDataPayload payload) diff --git a/Hcs.Client/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs b/Hcs.Client/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs index 95057f8..2be97e1 100644 --- a/Hcs.Client/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs +++ b/Hcs.Client/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs @@ -43,6 +43,9 @@ namespace Hcs.Client.Api.Request.HouseManagement throw RemoteException.CreateNew(error.ErrorCode, error.Description); }); + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + return true; } diff --git a/Hcs.Client/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs b/Hcs.Client/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs index 21d3c0f..64f4bec 100644 --- a/Hcs.Client/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs +++ b/Hcs.Client/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs @@ -296,29 +296,5 @@ namespace Hcs.Client.Api.Request.HouseManagement return contract; } - - private getStateResultImportResultCommonResult[] GetCommonResults(IEnumerable importResults) - { - var result = new List(); - foreach (var importResult in importResults) - { - importResult.Items.OfType().ToList().ForEach(error => - { - throw RemoteException.CreateNew(error.ErrorCode, error.Description); - }); - - var commonResults = importResult.Items.OfType(); - foreach (var commonResult in commonResults) - { - commonResult.Items.OfType().ToList().ForEach(error => - { - throw RemoteException.CreateNew(error.ErrorCode, error.Description); - }); - } - - result.AddRange(commonResults); - } - return [.. result]; - } } }