diff --git a/Hcs.ClientNet/Client/Api/ApiBase.cs b/Hcs.ClientNet/Client/Api/ApiBase.cs new file mode 100644 index 0000000..55aa6a3 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/ApiBase.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api +{ + public abstract class ApiBase(ClientBase client) + { + protected ClientBase client = client; + } +} diff --git a/Hcs.ClientNet/Client/Api/BillsApi.cs b/Hcs.ClientNet/Client/Api/BillsApi.cs new file mode 100644 index 0000000..b30cbe9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/BillsApi.cs @@ -0,0 +1,68 @@ +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); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/DeviceMeteringApi.cs b/Hcs.ClientNet/Client/Api/DeviceMeteringApi.cs new file mode 100644 index 0000000..2f88ec0 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/DeviceMeteringApi.cs @@ -0,0 +1,37 @@ +using Hcs.ClientNet.Api.Payload.DeviceMetering; +using Hcs.ClientNet.Api.Request.DeviceMetering; +using Hcs.Service.Async.DeviceMetering; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/DeviceMeteringServiceAsync/ + public class DeviceMeteringApi(ClientBase client) : ApiBase(client) + { + /// + /// Экспорт истории показаний и поверок приборов учета пользователя, установленных в указанном доме + /// + /// Пейлоад выборки ПУ + /// Токен отмены + /// Лицевые счета + public async Task> ExportMeteringDeviceHistoryAsync(ExportMeteringDeviceHistoryPayload payload, CancellationToken token = default) + { + var request = new ExportMeteringDeviceHistoryRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт показаний приборов учета + /// + /// Показания прибора учета + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportMeteringDeviceValuesAsync(importMeteringDeviceValuesRequestMeteringDevicesValues values, CancellationToken token = default) + { + var request = new ImportMeteringDeviceValuesRequest(client); + return await request.ExecuteAsync(values, token); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/HouseManagementApi.cs b/Hcs.ClientNet/Client/Api/HouseManagementApi.cs new file mode 100644 index 0000000..967c913 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/HouseManagementApi.cs @@ -0,0 +1,169 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.HouseManagement; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/HouseManagementServiceAsync/ + public class HouseManagementApi(ClientBase client) : ApiBase(client) + { + /// + /// Экспорт лицевых счетов + /// + /// Глобальный уникальный идентификатор дома по ФИАС + /// Токен отмены + /// Лицевые счета + public async Task> ExportAccountAsync(string fiasHouseGuid, CancellationToken token = default) + { + var request = new ExportAccountRequest(client); + return await request.ExecuteAsync(fiasHouseGuid, token); + } + + /// + /// Возвращает информацию о доме + /// + /// Глобальный уникальный идентификатор дома по ФИАС + /// Токен отмены + /// Информация о доме + public async Task> ExportHouseAsync(string fiasHouseGuid, CancellationToken token = default) + { + var request = new ExportHouseRequest(client); + return await request.ExecuteAsync(fiasHouseGuid, token); + } + + /// + /// Возвращает все договора ресурсоснабжения + /// + /// Токен отмены + /// Договора ресурсоснабжения + public async Task> ExportSupplyResourceContractDataAsync(CancellationToken token = default) + { + var request = new ExportSupplyResourceContractDataRequest(client); + return await request.ExecuteAsync(token); + } + + /// + /// Возвращает договор ресурсоснабжения по его идентификатору в ГИС ЖКХ + /// + /// Идентификатор договора ресурсоснабжения в ГИС ЖКХ + /// Токен отмены + /// Договор ресурсоснабжения + public async Task ExportSupplyResourceContractDataAsync(Guid contractRootGuid, CancellationToken token = default) + { + var request = new ExportSupplyResourceContractDataRequest(client); + return await request.ExecuteAsync(contractRootGuid, token); + } + + /// + /// Возвращает договор ресурсоснабжения по номеру договора в ГИС ЖКХ + /// + /// Номер договора ресурсоснабжения в ГИС ЖКХ + /// Токен отмены + /// Договор ресурсоснабжения + public async Task ExportSupplyResourceContractDataAsync(string contractNumber, CancellationToken token = default) + { + var request = new ExportSupplyResourceContractDataRequest(client); + return await request.ExecuteAsync(contractNumber, token); + } + + /// + /// Возвращает объекты жилищного фонда из договора ресурсоснабжения по его идентификатору + /// + /// Идентификатор договора ресурсоснабжения в ГИС ЖКХ + /// Токен отмены + /// Объекты жилищного фонда + public async Task> ExportSupplyResourceContractObjectAddressDataAsync(Guid contractRootGuid, CancellationToken token = default) + { + var request = new ExportSupplyResourceContractObjectAddressDataRequest(client); + return await request.ExecuteAsync(contractRootGuid, token); + } + + /// + /// Импорт лицевого счета + /// + /// Пейлоад лицевого счета + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportAccountDataAsync(ImportAccountDataPayload payload, CancellationToken token = default) + { + var request = new ImportAccountDataRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт сведений о ДУ (создание ДУ) + /// + /// Пейлоад ДУ + /// Токен отмены + /// Импортированный договор + public async Task ImportContractDataAsync(ImportContractDataPayload payload, CancellationToken token = default) + { + var request = new ImportContractDataRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт данных дома + /// + /// Пейлоад данных дома + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportHouseUODataAsync(ImportLivingHouseUODataPayload payload, CancellationToken token = default) + { + var request = new ImportHouseUODataRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт прибора учета + /// + /// Прибор учета + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportMeteringDeviceDataAsync(MeteringDeviceFullInformationType meteringDevice, CancellationToken token = default) + { + var request = new ImportMeteringDeviceDataRequest(client); + return await request.ExecuteAsync(meteringDevice, token); + } + + /// + /// Импорт новости для информирования граждан + /// + /// Пейлоад новости + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportNotificationDataAsync(ImportNotificationDataPayload payload, CancellationToken token = default) + { + var request = new ImportNotificationDataRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт договора ресурсоснабжения с РСО + /// + /// Пейлоад договора ресурсоснабжения + /// Токен отмены + /// Импортированный договор + public async Task ImportSupplyResourceContractDataAsync(ImportSupplyResourceContractDataPayload payload, CancellationToken token = default) + { + var request = new ImportSupplyResourceContractDataRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт проекта договора ресурсоснабжения с РСО + /// + /// Пейлоад проекта договора ресурсоснабжения + /// Токен отмены + /// Импортированный проект договора + public async Task ImportSupplyResourceContractProjectAsync(ImportSupplyResourceContractProjectPayload payload, CancellationToken token = default) + { + var request = new ImportSupplyResourceContractProjectRequest(client); + return await request.ExecuteAsync(payload, token); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/NsiApi.cs b/Hcs.ClientNet/Client/Api/NsiApi.cs new file mode 100644 index 0000000..7ec6b43 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/NsiApi.cs @@ -0,0 +1,32 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Api.Request.Nsi; +using Hcs.Service.Async.Nsi; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/NsiService/ + public class NsiApi(ClientBase client) : ApiBase(client) + { + /// + /// Возвращает данные справочника поставщика информации + /// + /// Реестровый номер справочника + /// Токен отмены + /// Данные справочника + public async Task> ExportDataProviderNsiItemAsync(exportDataProviderNsiItemRequestRegistryNumber registryNumber, CancellationToken token = default) + { + try + { + var request = new ExportDataProviderNsiItemRequest(client); + return await request.ExecuteAsync(registryNumber, token); + } + catch (NoResultsRemoteException) + { + return []; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/NsiCommonApi.cs b/Hcs.ClientNet/Client/Api/NsiCommonApi.cs new file mode 100644 index 0000000..7cd090a --- /dev/null +++ b/Hcs.ClientNet/Client/Api/NsiCommonApi.cs @@ -0,0 +1,51 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Api.Request.NsiCommon; +using Hcs.Service.Async.NsiCommon; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/NsiCommonService/ + public class NsiCommonApi(ClientBase client) : ApiBase(client) + { + /// + /// Возвращает данные общесистемного справочника + /// + /// Реестровый номер справочника + /// Группа справочников, где NSI - общесистемный, а NSIRAO - ОЖФ + /// Токен отмены + /// Данные общесистемного справочника + public async Task 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; + } + } + + /// + /// Возвращает перечень общесистемных справочников с указанием даты последнего изменения каждого из них + /// + /// Группа справочников, где NSI - общесистемный, а NSIRAO - ОЖФ + /// Токен отмены + /// Перечень общесистемных справочников + public async Task ExportNsiListAsync(ListGroup listGroup, CancellationToken token = default) + { + try + { + var request = new ExportNsiListRequest(client); + return await request.ExecuteAsync(listGroup, token); + } + catch (NoResultsRemoteException) + { + return null; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/OrgRegistryCommonApi.cs b/Hcs.ClientNet/Client/Api/OrgRegistryCommonApi.cs new file mode 100644 index 0000000..02cc5e3 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/OrgRegistryCommonApi.cs @@ -0,0 +1,52 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Api.Request.OrgRegistryCommon; +using Hcs.Service.Async.OrgRegistryCommon; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/OrganizationsRegistryCommonAsyncService/ + public class OrgRegistryCommonApi(ClientBase client) : ApiBase(client) + { + /// + /// Экспорт сведений о поставщиках информации ИС + /// + /// Выгрузить только активных поставщиков данных + /// Токен отмены + /// Сведения о поставщиках данных + public async Task> ExportDataProviderAsync(bool isActual, CancellationToken token = default) + { + try + { + var request = new ExportDataProviderRequest(client); + return await request.ExecuteAsync(isActual, token); + } + catch (NoResultsRemoteException) + { + return []; + } + } + + /// + /// Экспорт сведений из реестра организаций + /// + /// ОГРН + /// КПП + /// Токен отмены + /// Сведения из реестра организаций + public async Task> ExportOrgRegistryAsync(string ogrn, string kpp, CancellationToken token = default) + { + try + { + var request = new ExportOrgRegistryRequest(client); + return await request.ExecuteAsync(ogrn, kpp, token); + } + catch (NoResultsRemoteException) + { + return []; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/Bills/ImportPaymentDocumentDataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/Bills/ImportPaymentDocumentDataPayload.cs new file mode 100644 index 0000000..0af91e8 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/Bills/ImportPaymentDocumentDataPayload.cs @@ -0,0 +1,241 @@ +using Hcs.ClientNet.Api.Registry; +using Hcs.ClientNet.Api.Type; +using System; +using System.Collections.Generic; + +namespace Hcs.ClientNet.Api.Payload.Bills +{ + // http://open-gkh.ru/Bills/importPaymentDocumentRequest.html + public class ImportPaymentDocumentDataPayload + { + // http://open-gkh.ru/Bills/importPaymentDocumentRequest/PaymentInformation.html + public class PaymentInformation + { + /// + /// БИК банка получателя + /// + public string bankBIK; + + /// + /// Номер расчетного счета + /// + public string operatingAccountNumber; + } + + /// + /// Начисление по услуге + /// + // http://open-gkh.ru/Bills/PaymentDocumentType/ChargeInfo.html + public interface IChargeInfo { } + + /// + /// Главная коммунальная услуга + /// + // http://open-gkh.ru/Bills/PDServiceChargeType/MunicipalService.html + public class MunicipalService : IChargeInfo + { + /// + /// Необязательное. Перерасчеты, корректировки, руб. + /// + public decimal? moneyRecalculation; + + /// + /// Необязательное. Льготы, субсидии, скидки, руб. + /// + public decimal? moneyDiscount; + + /// + /// Необязательное. Норматив потребления коммунальных ресурсов в целях использования и содержания + /// общего имущества в многоквартирном доме. + /// + public decimal? houseOverallNeedsNorm; + + /// + /// Необязательное. Норматив потребления коммунальных услуг. + /// + public decimal? individualConsumptionNorm; + + /// + /// Необязательное. Текущие показания приборов учёта коммунальных ресурсов - индивидуальных + /// (квартирных). + /// + public decimal? individualConsumptionCurrentValue; + + /// + /// Необязательное. Текущие показания приборов учёта коммунальных ресурсов - коллективных (общедомовых). + /// + public decimal? houseOverallNeedsCurrentValue; + + /// + /// Необязательное. Суммарный объём коммунальных ресурсов в многоквартирном доме - в помещениях дома. + /// + public decimal? houseTotalIndividualConsumption; + + /// + /// Необязательное. Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания + /// общего имущества в многоквартирном доме. + /// + public decimal? houseTotalHouseOverallNeeds; + + /// + /// Необязательное. Способ определения объема коммунальных ресурсов при индивидуальном потреблении. + /// + public MunicipalServiceVolumeDeterminingMethod? individualConsumptionVolumeDeterminingMethod; + + /// + /// Необязательное. Объем/площадь/кол-во коммунальных ресурсов при индивидуальном потреблении. + /// + public decimal? individualConsumptionVolumeValue; + + /// + /// Необязательное. Способ определения объема коммунальных ресурсов при содержании общего имущества. + /// + public MunicipalServiceVolumeDeterminingMethod? overallConsumptionVolumeDeterminingMethod; + + /// + /// Необязательное. Объем/площадь/кол-во коммунальных ресурсов при содержании общего имущества. + /// + public decimal? overallConsumptionVolumeValue; + + /// + /// Необязательное. Размер повышающего коэффициента. + /// + public decimal? multiplyingFactorRatio; + + /// + /// Необязательное. Размер превышения платы, рассчитанной с применением повышающего коэффициента над + /// размером платы, рассчитанной без учета повышающего коэффициента, руб. + /// + public decimal? amountOfExcessFees; + + /// + /// К оплате за индивидуальное потребление коммунальной услуги, руб. + /// + public decimal? municipalServiceIndividualConsumptionPayable; + + /// + /// К оплате за общедомовое потребление коммунальной услуги, руб. + /// + public decimal? municipalServiceCommunalConsumptionPayable; + + /// + /// Необязательное. Размер платы за коммунальные услуги, индивидуальное потребление. + /// + public decimal? amountOfPaymentMunicipalServiceIndividualConsumption; + + /// + /// Необязательное. Размер платы за коммунальные услуги, общедомовые нужды. + /// + public decimal? amountOfPaymentMunicipalServiceCommunalConsumption; + + /// + /// Код услуги из справочника "Вид коммунальной услуги" НСИ 3 + /// + public RegistryElement serviceType; + + /// + /// Тариф/Размер платы на кв.м, руб./Размер взноса на кв.м, руб. + /// + public decimal rate; + + /// + /// К оплате за расчетный период, руб. + /// + public decimal totalPayable; + + /// + /// Необязательное. Начислено за расчетный период (без перерасчетов и льгот), руб. + /// + public decimal? accountingPeriodTotal; + } + + // http://open-gkh.ru/Bills/importPaymentDocumentRequest/PaymentDocument.html + public class PaymentDocument + { + /// + /// Платежный реквизит + /// + public PaymentInformation paymentInformation; + + /// + /// Идентификатор лицевого счета + /// + public string accountGuid; + + /// + /// Необязательное. Номер платежного документа, по которому внесена плата, присвоенный такому + /// документу исполнителем в целях осуществления расчетов по внесению платы + /// + public string paymentDocumentNumber; + + /// + /// Начисления по услугам + /// + public List chargeInfo; + + /// + /// Если true, то выставлен на оплату, иначе - отозван + /// + public bool exposeNotWithdraw; + + /// + /// Необязательное. Задолженность за предыдущие периоды, руб. + /// + public decimal? debtPreviousPeriods; + + /// + /// Необязательное. Аванс на начало расчетного периода, руб. + /// + public decimal? advanceBllingPeriod; + + /// + /// Необязательное. Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. + /// (по всему платежному документу) + /// + public decimal? totalPayableByPDWithDebtAndAdvance; + + /// + /// Необязательное. Сумма к оплате за расчетный период, руб. (по всему платежному документу). + /// + public decimal? totalPayableByPD; + + /// + /// Необязательное. Оплачено денежных средств, руб. + /// + public decimal? paidCash; + + /// + /// Необязательное. Дата последней поступившей оплаты + /// + public DateTime? dateOfLastReceivedPayment; + } + + /// + /// Необязательное. Если true, то передаваемые данные платежных документов, следует считать верными, + /// даже если они отличаются от автоматически рассчитанных системой значений. В том случае, если параметр + /// не заполнен, то ГИС ЖХК будет проводить автоматическую проверку рассчитываемых сумм по ПД. + /// + public bool confirmAmountsCorrect; + + /// + /// Месяц расчетного периода платежного документа + /// + public int month; + + /// + /// Год расчетного периода платежного документа + /// + public short year; + + /// + /// Сведения о платежных реквизитах получателя платежа - бизнес-ключ поиска размещенных платежных + /// реквизитов в ГИС ЖКХ + /// + public PaymentInformation[] paymentInformation; + + /// + /// Размещаемый платежный документ. Максимум 500. + /// + public PaymentDocument[] paymentDocument; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/DeviceMetering/ExportMeteringDeviceHistoryPayload.cs b/Hcs.ClientNet/Client/Api/Payload/DeviceMetering/ExportMeteringDeviceHistoryPayload.cs new file mode 100644 index 0000000..cef909f --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/DeviceMetering/ExportMeteringDeviceHistoryPayload.cs @@ -0,0 +1,91 @@ +using Hcs.ClientNet.Api.Registry; +using System; + +namespace Hcs.ClientNet.Api.Payload.DeviceMetering +{ + // http://open-gkh.ru/DeviceMetering/exportMeteringDeviceHistoryRequest.html + public class ExportMeteringDeviceHistoryPayload + { + /// + /// Необязательное. Список из уникальных идентификаторов домов по ФИАС, в которых установлены ПУ + /// пользователей. Если не указано, то будут экспортироваться данные по всем ПУ пользователей. + /// + public string[] fiasHouseGuid; + + /// + /// Выборочное. Выбор между , и + /// . Тип прибора учета (НСИ 27). Максимум 100 по выбранным. + /// + public RegistryElement[] meteringDeviceType; + + /// + /// Выборочное. Выбор между , и + /// . Вид коммунального ресурса (НСИ 2). Максимум 100 по выбранным. + /// + public RegistryElement[] municipalResource; + + /// + /// Выборочное. Выбор между , и + /// . Идентификатор ПУ. Максимум 100 по выбранным. + /// + public string[] meteringDeviceRootGUID; + + /// + /// Необязательное. Дата ввода в эксплуатацию "С". + /// + public DateTime? commissioningDateFrom; + + /// + /// Необязательное. Дата ввода в эксплуатацию "П". + /// + public DateTime? сommissioningDateTo; + + /// + /// Необязательное. Выгружать архивированные или нет. + /// + public bool? serchArchived; + + /// + /// Необязательное. Дата архивации "С". + /// + public DateTime? archiveDateFrom; + + /// + /// Необязательное. Дата архивации "По". + /// + public DateTime? archiveDateTo; + + /// + /// Необязательное. Дата начала периода, за который выгружаются показания и поверки ПУ (по дате + /// снятия показаний). Период выгрузки показаний ПУ (определяемый элементами + /// и ) не должен выходить за пределы двух последовательных календарных месяцев. + /// + public DateTime? inputDateFrom; + + /// + /// Необязательное. Дата окончания периода, за который выгружаются показания и поверки ПУ (по дате + /// снятия показаний). Период выгрузки показаний ПУ (определяемый элементами + /// и ) не должен выходить за пределы двух последовательных календарных месяцев. + /// + public DateTime? inputDateTo; + + /// + /// Необязательное. Если флаг сброшен или отсутствует, то показания, введенные в систему гражданином, + /// включаются в выгрузку. Если флаг установлен, то такие показания в выгрузку не включаются. + /// + public bool? excludePersonAsDataSource; + + /// + /// Необязательное. Если флаг сброшен или отсутствует, то показания, введенные в систему текущей + /// организацией, включаются в выгрузку. Если флаг установлен, то такие показания в выгрузку не включаются. + /// + public bool? excludeCurrentOrgAsDataSource; + + /// + /// Необязательное. Если флаг сброшен или отсутствует, то показания, введенные в систему организациями + /// отличной от текущей, включаются в выгрузку. Если флаг установлен, то такие показания в выгрузку + /// не включаются. + /// + public bool? excludeOtherOrgAsDataSource; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportAccountDataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportAccountDataPayload.cs new file mode 100644 index 0000000..33f6381 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportAccountDataPayload.cs @@ -0,0 +1,97 @@ +using Hcs.Service.Async.HouseManagement; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + // http://open-gkh.ru/HouseManagement/importAccountRequest/Account.html + public class ImportAccountDataPayload + { + /// + /// Тип лицевого счета + /// + public enum AccountType + { + /// + /// Лицевой счет для оплаты за жилое помещение и коммунальные услуги + /// + UO, + + /// + /// Лицевой счет для оплаты за коммунальные услуги + /// + RSO, + + /// + /// Лицевой счет для оплаты капитального ремонта + /// + CR, + + /// + /// Лицевой счет РКЦ + /// + RC, + + /// + /// Лицевой счет ОГВ/ОМС + /// + OGVorOMS, + + /// + /// Лицевой счет ТКО + /// + TKO + } + + /// + /// Необязательное. Номер лицевого счета или иной идентификатор плательщика. Максимум 30 символов. + /// + public string accountNumber; + + /// + /// Необязательное. Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС). + /// + public string accountGUID; + + /// + /// Необязательное. Конкретизация оснований ЛС (договоров ресурсоснабжения, договоров социального найма, + /// договоров по обращению с ТКО). + /// + public AccountReasonsImportType accountReasons; + + /// + /// Тип лицевого счета + /// + public AccountType accountType; + + /// + /// Необязательное. Количество проживающих, не больше 9999. + /// + public uint? livingPersonsNumber; + + /// + /// Необязательное. Общая площадь для ЛС. Не более 4 цифр после целой. + /// + public decimal? totalSquare; + + /// + /// Необязательное. Жилая площадь. Не более 4 цифр после целой. + /// + public decimal? residentialSquare; + + /// + /// Необязательное. Отапливаемая площадь. Не более 4 цифр после целой. + /// + public decimal? heatedArea; + + // TODO: Добавить причину закрытия лицевого счета + + /// + /// Помещения + /// + public AccountTypeAccommodation[] accomodations; + + /// + /// Сведения о платильщике + /// + public AccountTypePayerInfo payerInfo; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportContractDataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportContractDataPayload.cs new file mode 100644 index 0000000..88c139b --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportContractDataPayload.cs @@ -0,0 +1,69 @@ +using Hcs.ClientNet.Api.Registry; +using Hcs.Service.Async.HouseManagement; +using System; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + public class ImportContractDataPayload + { + // TODO: LicenseRequest + + /// + /// Объекты управления + /// + public importContractRequestContractPlacingContractContractObject[] contractObjects; + + /// + /// Номер документа + /// + public string docNum; + + /// + /// Дата заключения + /// + public DateTime signingDate; + + /// + /// Дата вступления в силу + /// + public DateTime effectiveDate; + + /// + /// Планируемая дата окончания + /// + public DateTime planDateComptetion; + + // TODO: Вторая сторона договора + + // TODO: Protocol + + /// + /// Ссылка на НСИ "Основание заключения договора" (реестровый номер 58) + /// + public RegistryElement contractBase; + + /// + /// Сведения о сроках + /// + public DateDetailsType dateDetailsType; + + /// + /// Договор на управление и приложения + /// + public AttachmentType[] contractAttachment; + + // TODO: AgreementAttachment + + // TODO: SignedOwners + + // TODO: CommissioningPermitAgreement + + // TODO: Charter + + // TODO: LocalGovernmentDecision + + // TODO: RegistryDecisionID + + // TODO: AutomaticRollOverOneYear + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportLivingHouseUODataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportLivingHouseUODataPayload.cs new file mode 100644 index 0000000..93785e5 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportLivingHouseUODataPayload.cs @@ -0,0 +1,95 @@ +using Hcs.ClientNet.Api.Registry; +using Hcs.Service.Async.HouseManagement; +using System; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + // http://open-gkh.ru/HouseManagement/importHouseUORequest/LivingHouse/LivingHouseToCreate.html + // http://open-gkh.ru/HouseManagement/HouseBasicUOType.html + public class ImportLivingHouseUODataPayload + { + /// + /// Глобальный уникальный идентификатор дома по ФИАС + /// + public Guid fiasHouseGuid; + + /// + /// Общая площадь здания + /// + public decimal totalSquare; + + /// + /// Состояние (НСИ 24) + /// + public RegistryElement state; + + /// + /// Необязательное. Стадия жизненного цикла (НСИ 338). + /// + public RegistryElement lifeCycleStage; + + /// + /// Год ввода в эксплуатацию. До 2215 включительно. + /// + public short usedYear; + + /// + /// Количество этажей. До 999 включительно. + /// + public int floorCount; + + /// + /// Необязательное. ОКТМО (обязательное для всех территорий, за исключением города и космодрома + /// "Байконур"). Значение из ФИАС при наличии. + /// + public OKTMORefType oktmo; + + /// + /// Часовая зона. Справочник 32. + /// + public RegistryElement olsonTZ; + + /// + /// Наличие у дома статуса объекта культурного наследия + /// + public bool culturalHeritage; + + /// + /// Необязательное. Данные ОЖФ + /// + public OGFData[] ogfData; + + /// + /// Необязательное. Дом находится в муниципальной собственности и в полном объеме используется + /// в качестве общежития. Принимает только false. + /// + public bool isMunicipalProperty; + + /// + /// Необязательное. Дом находится в собственности субъекта Российской Федерации и в полном объеме + /// используется в качестве общежития. Принимает только false. + /// + public bool isRegionProperty; + + /// + /// Кадастровый номер + /// + public string cadastralNumber; + + /// + /// Условный номер. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП выполняется + /// по условному номеру). + /// + public string conditionalNumber; + + /// + /// Необязательное. Жилой дом блокированной застройки (если не указан - аналог false). + /// + public bool hasBlocks; + + /// + /// Необязательное. Несколько жилых домов с одинаковым адресом (если не указан - аналог false) + /// + public bool hasMultipleHousesWithSameAddress; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportNotificationDataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportNotificationDataPayload.cs new file mode 100644 index 0000000..491155f --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportNotificationDataPayload.cs @@ -0,0 +1,75 @@ +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + // http://open-gkh.ru/HouseManagement/importNotificationRequest/notification/Create.html + public class ImportNotificationDataPayload + { + /// + /// Выборочное. Строковое представление темы, вместо ссылки на справочник. Максимальная длина + /// текста равно 200 символам. + /// + public string topic; + + /// + /// Выборочное. Тема из справочника 364, заместо строкового представления темы. + /// + public nsiRef topicFromRegistry; + + /// + /// Необязательное. Показывает высокую важность новости. + /// + public bool isImportant; + + /// + /// Необязательное. Текст новости с максимальной длиной в 5000 символов. + /// + public string content; + + /// + /// Адресаты. Подходящие типы для значения: + /// , если это глобальный уникальный идентификатор дома по ФИАС, + /// , + /// либо true, если все дома. + /// + public List> destinations; + + /// + /// Выборочное. Если true, то новость всегда актуальна. Иначе период актуальности берется из + /// и . + /// + public bool isNotLimit; + + /// + /// Условное. Период актуальности "С". Обязательно задается в случае = false. + /// + public DateTime? startDate; + + /// + /// Условное. Период актуальности "ДО". Обязательно задается в случае = false. + /// + public DateTime? endDate; + + /// + /// Необязательное. Документы новостей. + /// + public AttachmentType[] attachment; + + /// + /// Необязательное. Если true, то новость отправляется адресатам. + /// + public bool isShipOff; + + /// + /// Необязательное. Признак "Для публикации в мобильном приложении". + /// + public bool isForPublishToMobileApp; + + /// + /// Необязательное. Информация для новости, публикуемой в мобильном приложении. + /// + public importNotificationRequestNotificationCreateMobileAppData mobileAppData; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractDataPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractDataPayload.cs new file mode 100644 index 0000000..d578e05 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractDataPayload.cs @@ -0,0 +1,212 @@ +using Hcs.Service.Async.HouseManagement; +using System; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + // http://open-gkh.ru/HouseManagement/SupplyResourceContractType.html + public class ImportSupplyResourceContractDataPayload + { + /// + /// Если договор не является публичным и/или присутствует заключенный на бумажном носителе + /// (электронной форме) и/или не заключен в отношении нежилых помещений в многоквартирных домах, + /// то равно true, иначе - false + /// + public bool isContract; + + /// + /// Номер договора + /// + public string contractNumber; + + /// + /// Дата заключения + /// + public DateTime signingDate; + + /// + /// Дата вступления в силу + /// + public DateTime effectiveDate; + + /// + /// Необязательное. Договор заключен на неопределенный срок или нет. + /// + public bool indefiniteTerm; + + /// + /// Необязательное. Автоматически пролонгировать договор на один год при наступлении + /// даты окончания действия или нет. + /// + public bool automaticRollOverOneYear; + + /// + /// Условное. Дата окончания действия. Обязательно для заполнения, если + /// = true. + /// + public DateTime? comptetionDate; + + /// + /// Условное. Период передачи текущих показаний по индивидуальным приборам учета. Обязателен для + /// заполнения, если поле = true ИЛИ если поле + /// = true. + /// + public SupplyResourceContractTypePeriod period; + + /// + /// Необязательное. Показывает, разрешена ли гражданам передача текущих показаний по + /// индивидуальным приборам учета в любой день месяца. Заполнение возможно только если: в настройках + /// организации установлена настройка "Разрешить передачу гражданам показаний индивидуальных или общих + /// (квартирных) приборов учета в любой день месяца" ИЛИ в настройках организации установлена настройка + /// "Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета только + /// в сроки, установленные в договоре, или в любой день месяца, если в договоре установлен признак + /// "Разрешить передачу показаний приборов учета в любой день месяца" И заполнен . + /// + public bool indicationsAnyDay; + + /// + /// Необязательное. Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). Значения + /// брать из . + /// + public nsiRef[] contractBase; + + /// + /// Вторая сторона договора. Подходящие типы: + /// , + /// , + /// , + /// , + /// либо true, если это договор оферты. + /// + public object counterparty; + + /// + /// Если в договоре в наличии плановый объем и режим подачи поставки ресурсов то true, иначе - false + /// + public bool isPlannedVolume; + + /// + /// Необязательное. Тип ведения планового объема и режима подачи: D - в разрезе договора, + /// O - в разрезе объектов жилищного фонда. Заполняется при наличии в договоре планового объема и + /// режима поставки ресурсов. + /// + public SupplyResourceContractTypePlannedVolumeType? plannedVolumeType; + + /// + /// Предмет договора. Максимум 100 записей. + /// + public SupplyResourceContractTypeContractSubject[] contractSubject; + + /// + /// Условное. Размещение информации о начислениях за коммунальные услуги осуществляет: R(SO)- РСО, + /// P(roprietor) - исполнитель коммунальных услуг. Заполняется, если порядок размещения информации + /// о начислениях за коммунальные услуги ведется в разрезе договора. + /// + public SupplyResourceContractTypeCountingResource? countingResource; + + /// + /// Показатели качества коммунальных ресурсов и температурный график ведутся: D - в разрезе договора, + /// O - в разрезе объектов жилищного фонда + /// + public SupplyResourceContractTypeSpecifyingQualityIndicators specifyingQualityIndicators; + + /// + /// Необязательное. Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной + /// системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов + /// ведутся в разрезе договора и предмет договора включает коммунальную услугу "Холодное водоснабжение" + /// И/ИЛИ "Горячее водоснабжение". + /// + public bool noConnectionToWaterSupply; + + /// + /// Условное. Данные об объекте жилищного фонда. При импорте договора должен быть добавлен как минимум + /// один адрес объекта жилищного фонда. + /// + public SupplyResourceContractTypeObjectAddress[] objectAddress; + + /// + /// Необязательное. Показатель качества (содержащийся в справочнике показателей качества). Если + /// показатели указываются в разрезе договора, то ссылка на ОЖФ не заполняется. Если показатели + /// указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна. + /// + public SupplyResourceContractTypeQuality[] quality; + + /// + /// Необязательное. Иной показатель качества коммунального ресурса (не содержащийся в справочнике + /// показателей качества). Если показатели указываются в разрезе договора, то ссылка на ОЖФ + /// не заполняется. Если показатели указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна. + /// + public SupplyResourceContractTypeOtherQualityIndicator[] otherQualityIndicator; + + /// + /// Необязательное. Информация о температурном графике. Если показатели качества указываются в разрезе + /// договора, то ссылка на ОЖФ в данном элементе не заполняется и элемент может заполняться только если + /// в предмете договора хотя бы раз встречается ресурс "Тепловая энергия". Если показатели качества + /// указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна и элемент заполняется только если + /// в рамках ОЖФ встречается ресурс "Тепловая энергия". + /// + public SupplyResourceContractTypeTemperatureChart[] temperatureChart; + + /// + /// Условное. Срок представления (выставления) платежных документов, не позднее. Является + /// обязательным, если вторая сторона договора отличается от "Управляющая организация" ИЛИ если + /// заполнено поле . Не заполняется, если + /// = true. + /// + public SupplyResourceContractTypeBillingDate billingDate; + + /// + /// Условное. Срок внесения платы, не позднее. Является обязательным, если вторая сторона договора + /// отличается от "Управляющая организация" И договор не является публичным и/или присутствует + /// заключенный на бумажном носителе или в электронной форме И в поле + /// = false. Не заполняется, если = true. + /// + public SupplyResourceContractTypePaymentDate paymentDate; + + /// + /// Условное. Срок предоставления информации о поступивших платежах, не позднее. Является + /// обязательным, если второй стороной договора является "Управляющая организация", + /// "Размещение информации о начислениях за коммунальные услуги осуществляет" = "РСО" И + /// договор не является публичным и/или присутствует заключенный на бумажном носителе или в + /// электронной форме. + /// + public SupplyResourceContractTypeProvidingInformationDate providingInformationDate; + + /// + /// Условное. Указывает на то, что размещение информации об индивидуальных приборах учета и их + /// показаниях осуществляет ресурсоснабжающая организация или нет. Обязательно для заполнения, + /// если в указано "РСО". В остальных случаях не заполняется. + /// + public bool? meteringDeviceInformation; + + /// + /// Необязательное. Указывает на то, что объем поставки ресурса(ов) определяется на основании прибора + /// учета или нет. Поле не заполняется, если вторая сторона договора "Управляющая организация" + /// ИЛИ поле = true. + /// + public bool? volumeDepends; + + /// + /// Необязательное. Указывает на то, что оплата предоставленных услуг осуществляется ли единоразово + /// при отгрузке указанных ресурсов без заведения лицевых счетов для потребителей. Доступно + /// для заполнения, только если вторая сторона договора отлична от "Управляющая организация". + /// + public bool? oneTimePayment; + + /// + /// Необязательное. Порядок размещения информации о начислениях за коммунальные услуги ведется: D - в + /// разрезе договора, O - в разрезе объектов жилищного фонда. Заполняется, если второй стороной договора + /// является исполнитель коммунальных услуг. + /// + public SupplyResourceContractTypeAccrualProcedure? accrualProcedure; + + /// + /// Необязательное. Информация о применяемом тарифе. + /// + public SupplyResourceContractTypeTariff[] tariff; + + /// + /// Необязательное. Информация о нормативе потребления коммунальной услуги. + /// + public SupplyResourceContractTypeNorm[] norm; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractProjectPayload.cs b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractProjectPayload.cs new file mode 100644 index 0000000..798699c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/HouseManagement/ImportSupplyResourceContractProjectPayload.cs @@ -0,0 +1,214 @@ +using Hcs.Service.Async.HouseManagement; +using System; + +namespace Hcs.ClientNet.Api.Payload.HouseManagement +{ + // http://open-gkh.ru/HouseManagement/SupplyResourceContractType.html + public class ImportSupplyResourceContractProjectPayload + { + /// + /// Если договор не является публичным и/или присутствует заключенный на бумажном носителе + /// (электронной форме) и/или не заключен в отношении нежилых помещений в многоквартирных домах, + /// то равно true, иначе - false + /// + public bool isContract; + + /// + /// Номер договора + /// + public string contractNumber; + + /// + /// Дата заключения + /// + public DateTime signingDate; + + /// + /// Дата вступления в силу + /// + public DateTime effectiveDate; + + /// + /// Необязательное. Договор заключен на неопределенный срок или нет. + /// + public bool indefiniteTerm; + + /// + /// Необязательное. Автоматически пролонгировать договор на один год при наступлении + /// даты окончания действия или нет. + /// + public bool automaticRollOverOneYear; + + /// + /// Условное. Дата окончания действия. Обязательно для заполнения, если + /// = true. + /// + public DateTime? comptetionDate; + + /// + /// Условное. Период передачи текущих показаний по индивидуальным приборам учета. Обязателен для + /// заполнения, если поле = true ИЛИ если поле + /// = true. + /// + public SupplyResourceContractProjectTypePeriod period; + + /// + /// Необязательное. Показывает, разрешена ли гражданам передача текущих показаний по + /// индивидуальным приборам учета в любой день месяца. Заполнение возможно только если: в настройках + /// организации установлена настройка "Разрешить передачу гражданам показаний индивидуальных или общих + /// (квартирных) приборов учета в любой день месяца" ИЛИ в настройках организации установлена настройка + /// "Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета только + /// в сроки, установленные в договоре, или в любой день месяца, если в договоре установлен признак + /// "Разрешить передачу показаний приборов учета в любой день месяца" И заполнен . + /// + public bool indicationsAnyDay; + + /// + /// Необязательное. Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). Значения + /// брать из . + /// + public nsiRef[] contractBase; + + /// + /// Вторая сторона договора. Подходящие типы: + /// , + /// , + /// , + /// , + /// либо true, если это договор оферты. + /// + public object counterparty; + + /// + /// Если в договоре в наличии плановый объем и режим подачи поставки ресурсов то true, иначе - false + /// + public bool isPlannedVolume; + + /// + /// Необязательное. Тип ведения планового объема и режима подачи: D - в разрезе договора, + /// O - в разрезе объектов жилищного фонда. Заполняется при наличии в договоре планового объема и + /// режима поставки ресурсов. + /// + public SupplyResourceContractProjectTypePlannedVolumeType? plannedVolumeType; + + /// + /// Предмет договора. Максимум 100 записей. + /// + public SupplyResourceContractProjectTypeContractSubject[] contractSubject; + + /// + /// Условное. Размещение информации о начислениях за коммунальные услуги осуществляет: R(SO)- РСО, + /// P(roprietor) - исполнитель коммунальных услуг. Заполняется, если порядок размещения информации + /// о начислениях за коммунальные услуги ведется в разрезе договора. + /// + public SupplyResourceContractProjectTypeCountingResource? countingResource; + + /// + /// Показатели качества коммунальных ресурсов и температурный график ведутся: D - в разрезе договора, + /// O - в разрезе объектов жилищного фонда + /// + public SupplyResourceContractProjectTypeSpecifyingQualityIndicators specifyingQualityIndicators; + + /// + /// Необязательное. Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной + /// системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов + /// ведутся в разрезе договора и предмет договора включает коммунальную услугу "Холодное водоснабжение" + /// И/ИЛИ "Горячее водоснабжение". + /// + public bool noConnectionToWaterSupply; + + /// + /// Необязательное. Показатель качества (содержащийся в справочнике показателей качества). Обязательно + /// для заполнения, если показатели качества указываются в разрезе договора. Для пары КУ и КР + /// "Горячее водоснабжение" и "Питьевая вода" указываются актуальные показатели, определенные для КР + /// "Горячая вода" в справочнике показателей качества коммунальных ресурсов. Для пары КУ и КР + /// "Горячее водоснабжение" и "Тепловая энергия" информация о показателях качества не заполняется + /// только в том случае, если для договора (если показатели ведутся в разрезе договора) или + /// ОЖФ в договоре (если показатели ведутся в разрезе ОЖФ) также указана пара КУ и КР + /// "Горячее водоснабжение" и "Питьевая вода". + /// + public SupplyResourceContractProjectTypeQuality[] quality; + + /// + /// Необязательное. Иной показатель качества коммунального ресурса (не содержащийся в справочнике + /// показателей качества). + /// + public SupplyResourceContractProjectTypeOtherQualityIndicator[] otherQualityIndicator; + + /// + /// Необязательное. Информация о температурном графике. Доступно для заполнения только если в + /// предмете договора хотя бы раз встречается ресурс "Тепловая энергия". + /// + public SupplyResourceContractProjectTypeTemperatureChart[] temperatureChart; + + /// + /// Условное. Срок представления (выставления) платежных документов, не позднее. Является + /// обязательным, если вторая сторона договора отличается от "Управляющая организация" ИЛИ если + /// заполнено поле . Не заполняется, если + /// = true. + /// + public SupplyResourceContractProjectTypeBillingDate billingDate; + + /// + /// Условное. Срок внесения платы, не позднее. Является обязательным, если вторая сторона договора + /// отличается от "Управляющая организация" И договор не является публичным и/или присутствует + /// заключенный на бумажном носителе или в электронной форме И в поле + /// = false. Не заполняется, если = true. + /// + public SupplyResourceContractProjectTypePaymentDate paymentDate; + + /// + /// Условное. Срок предоставления информации о поступивших платежах, не позднее. Является + /// обязательным, если второй стороной договора является "Управляющая организация", + /// "Размещение информации о начислениях за коммунальные услуги осуществляет" = "РСО" И + /// договор не является публичным и/или присутствует заключенный на бумажном носителе или в + /// электронной форме. + /// + public SupplyResourceContractProjectTypeProvidingInformationDate providingInformationDate; + + /// + /// Условное. Указывает на то, что размещение информации об индивидуальных приборах учета и их + /// показаниях осуществляет ресурсоснабжающая организация или нет. Обязательно для заполнения, + /// если в указано "РСО". В остальных случаях не заполняется. + /// + public bool? meteringDeviceInformation; + + /// + /// Необязательное. Указывает на то, что объем поставки ресурса(ов) определяется на основании прибора + /// учета или нет. Поле не заполняется, если вторая сторона договора "Управляющая организация" + /// ИЛИ поле = true. + /// + public bool? volumeDepends; + + /// + /// Необязательное. Указывает на то, что оплата предоставленных услуг осуществляется ли единоразово + /// при отгрузке указанных ресурсов без заведения лицевых счетов для потребителей. Доступно + /// для заполнения, только если вторая сторона договора отлична от "Управляющая организация". + /// + public bool? oneTimePayment; + + /// + /// Необязательное. Порядок размещения информации о начислениях за коммунальные услуги ведется: D - в + /// разрезе договора, O - в разрезе объектов жилищного фонда. Заполняется, если второй стороной договора + /// является исполнитель коммунальных услуг. + /// + public SupplyResourceContractProjectTypeAccrualProcedure? accrualProcedure; + + /// + /// Кода ФИАС региона РФ, в котором применяются тарифы и/или нормативы потребления КУ (у поставщика + /// данных должна быть подтвержденная функция РСО в этом Субъекте РФ). + /// + public string regionCodeFias; + + /// + /// Необязательное. Информация о применяемом тарифе. Заполнется при указании . + /// + public SupplyResourceContractProjectTypeRegionalSettingsTariff[] tariff; + + /// + /// Необязательное. Информация о нормативе потребления коммунальной услуги. Заполнется при + /// указании . + /// + public SupplyResourceContractProjectTypeRegionalSettingsNorm[] norm; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/Payments/ImportNotificationsOfOrderExecutionPayload.cs b/Hcs.ClientNet/Client/Api/Payload/Payments/ImportNotificationsOfOrderExecutionPayload.cs new file mode 100644 index 0000000..5fca35c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/Payments/ImportNotificationsOfOrderExecutionPayload.cs @@ -0,0 +1,48 @@ +using System; + +namespace Hcs.ClientNet.Api.Payload.Payments +{ + // http://open-gkh.ru/Payment/importNotificationsOfOrderExecutionRequest/NotificationOfOrderExecution139Type.html + public class ImportNotificationsOfOrderExecutionPayload + { + /// + /// Уникальный номер платежа (идентификатор операции) + /// + public string orderId; + + /// + /// Дата + /// + public DateTime orderDate; + + /// + /// Сумма оплаты (в копейках) + /// + public decimal amount; + + /// + /// Необязательное. Признак онлайн-оплаты. + /// + public bool? onlinePayment; + + /// + /// Необязательное. Год. Указывать совместно с . + /// + public short? year; + + /// + /// Необязательное. Месяц. Указывать совместно с . + /// + public int? month; + + /// + /// Идентификатор платежного документа + /// + public string paymentDocumentId; + + /// + /// GUID платежного документа + /// + public string paymentDocumentGUID; + } +} diff --git a/Hcs.ClientNet/Client/Api/Payload/Payments/ImportSupplierNotificationsOfOrderExecutionPayload.cs b/Hcs.ClientNet/Client/Api/Payload/Payments/ImportSupplierNotificationsOfOrderExecutionPayload.cs new file mode 100644 index 0000000..6c1d019 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Payload/Payments/ImportSupplierNotificationsOfOrderExecutionPayload.cs @@ -0,0 +1,38 @@ +using System; + +namespace Hcs.ClientNet.Api.Payload.Payments +{ + // http://open-gkh.ru/Payment/importSupplierNotificationsOfOrderExecutionRequest/SupplierNotificationOfOrderExecution.html + public class ImportSupplierNotificationsOfOrderExecutionPayload + { + /// + /// Дата внесения платы (в случае отсутствия: дата поступления средств) + /// + public DateTime orderDate; + + /// + /// Необязательное. Месяц, за который вносится плата. Указывать совместно с . + /// + public int? month; + + /// + /// Необязательное. Год, за который вносится плата. Указывать совместно с . + /// + public short? year; + + /// + /// Идентификатор платежного документа + /// + public string paymentDocumentId; + + /// + /// Сумма + /// + public decimal amount; + + /// + /// Необязательное. Признак онлайн-оплаты. + /// + public bool? onlinePayment; + } +} diff --git a/Hcs.ClientNet/Client/Api/PaymentsApi.cs b/Hcs.ClientNet/Client/Api/PaymentsApi.cs new file mode 100644 index 0000000..a9c4986 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/PaymentsApi.cs @@ -0,0 +1,35 @@ +using Hcs.ClientNet.Api.Payload.Payments; +using Hcs.ClientNet.Api.Request.Payments; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api +{ + // http://open-gkh.ru/PaymentsServiceAsync/ + public class PaymentsApi(ClientBase client) : ApiBase(client) + { + /// + /// ВИ_ОПЛАТА_ИЗВ. Передать перечень документов "Извещение о принятии к исполнению распоряжения". + /// + /// Пейлоад документа + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportNotificationsOfOrderExecutionAsync(ImportNotificationsOfOrderExecutionPayload payload, CancellationToken token = default) + { + var request = new ImportNotificationsOfOrderExecutionRequest(client); + return await request.ExecuteAsync(payload, token); + } + + /// + /// Импорт пакета документов "Извещение о принятии к исполнению распоряжения", размещаемых исполнителем + /// + /// Пейлоад документа + /// Токен отмены + /// true, если операция выполнена успешно, иначе - false + public async Task ImportSupplierNotificationsOfOrderExecutionAsync(ImportSupplierNotificationsOfOrderExecutionPayload payload, CancellationToken token = default) + { + var request = new ImportSupplierNotificationsOfOrderExecutionRequest(client); + return await request.ExecuteAsync(payload, token); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry16.cs b/Hcs.ClientNet/Client/Api/Registry/Registry16.cs new file mode 100644 index 0000000..87c5b55 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry16.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Межповерочный интервал" (реестровый номер 16). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-16/v1. + /// + public static class Registry16 + { + /// + /// 4 года + /// + public static RegistryElement Element4 => new( + "4", + "e5e3288d-2994-41f7-8e44-f329b09ab77f"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry2.cs b/Hcs.ClientNet/Client/Api/Registry/Registry2.cs new file mode 100644 index 0000000..09434b4 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry2.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Коммунальный ресурс" (реестровый номер 2). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-2/v1. + /// + public static class Registry2 + { + /// + /// Тепловая энергия + /// + public static RegistryElement Element5 => new( + "5", + "44af905f-09c3-4cc3-b749-70048a53d8cf"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry239.cs b/Hcs.ClientNet/Client/Api/Registry/Registry239.cs new file mode 100644 index 0000000..69a49c2 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry239.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Тарифицируемый ресурс" (реестровый номер 239). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-239/v1. + /// + public static class Registry239 + { + /// + /// Тепловая энергия + /// + public static RegistryElement Element4 => new( + "4", + "eec6e4b8-76c8-4fce-99b7-c95718edad19"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry24.cs b/Hcs.ClientNet/Client/Api/Registry/Registry24.cs new file mode 100644 index 0000000..6cf60a9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry24.cs @@ -0,0 +1,37 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Состояние дома" (реестровый номер 24). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-24/v1. + /// + public static class Registry24 + { + /// + /// Аварийный + /// + public static RegistryElement Element1 => new( + "1", + "cbe05853-a91b-43cc-a2cb-06cdfa97d492"); + + /// + /// Исправный + /// + public static RegistryElement Element2 => new( + "2", + "2d3ae73e-6c72-4740-9122-9c632d1893a7"); + + /// + /// Ветхий + /// + public static RegistryElement Element3 => new( + "3", + "bf083ae4-e4ec-4ace-b190-4d009e5cd1a1"); + + /// + /// Не выбран + /// + public static RegistryElement Element4 => new( + "4", + "4ee07c0b-82d6-41f4-a8c5-2cff784bbd9c"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry27.cs b/Hcs.ClientNet/Client/Api/Registry/Registry27.cs new file mode 100644 index 0000000..083c733 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry27.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Тип прибора учета" (реестровый номер 27). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-27/v1. + /// + public static class Registry27 + { + /// + /// Индивидуальный + /// + public static RegistryElement Element1 => new( + "1", + "3a9687b5-caed-4ec6-8a08-f4d3d012f2c7"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry276.cs b/Hcs.ClientNet/Client/Api/Registry/Registry276.cs new file mode 100644 index 0000000..696a874 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry276.cs @@ -0,0 +1,23 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-276/v1. + /// + public static class Registry276 + { + /// + /// Величина тепловой нагрузки + /// + public static RegistryElement Element4 => new( + "4", + "51dd6edc-83fe-4810-8b62-4dc85a75e9a3"); + + /// + /// Диапазон давления теплоносителя в подающем трубопроводе + /// + public static RegistryElement Element10 => new( + "10", + "a5a17c90-cc4b-4f32-a22b-6e06cd42a68c"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry3.cs b/Hcs.ClientNet/Client/Api/Registry/Registry3.cs new file mode 100644 index 0000000..d120842 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry3.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Вид коммунальной услуги" (реестровый номер 3). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-3/v1. + /// + public static class Registry3 + { + /// + /// Отопление + /// + public static RegistryElement Element6 => new( + "6", + "74925764-ddf3-4b4b-b18d-85994187c13a"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry32.cs b/Hcs.ClientNet/Client/Api/Registry/Registry32.cs new file mode 100644 index 0000000..f4bceeb --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry32.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Часовые зоны по Olson" (реестровый номер 32). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-32/v1. + /// + public static class Registry32 + { + /// + /// Иркутск + /// + public static RegistryElement Element11 => new( + "11", + "244ae392-0b96-46f2-80ea-4dac32e7326a"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry338.cs b/Hcs.ClientNet/Client/Api/Registry/Registry338.cs new file mode 100644 index 0000000..73a5ca8 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry338.cs @@ -0,0 +1,58 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Стадия жизненного цикла" (реестровый номер 338). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-338/v1. + /// + public static class Registry338 + { + /// + /// Эксплуатация + /// + public static RegistryElement Element1 => new( + "1", + "29b18683-5195-4ef4-83fc-71bf45597d46"); + + /// + /// Реконструкция + /// + public static RegistryElement Element2 => new( + "2", + "75764145-f181-47e5-bff1-1306a46eb20e"); + + /// + /// Капитальный ремонт с отселением + /// + public static RegistryElement Element3 => new( + "3", + "dee170df-db42-4cd6-9e5e-b62be91b3663"); + + /// + /// Капитальный ремонт без отселения + /// + public static RegistryElement Element4 => new( + "4", + "91dc91e2-6883-4c84-b711-53f57f28dbe2"); + + /// + /// Снос + /// + public static RegistryElement Element5 => new( + "5", + "cc358aa9-10b3-4d6a-bbec-c5f6b14950f6"); + + /// + /// Не эксплуатируется, расселен + /// + public static RegistryElement Element6 => new( + "6", + "4bed3d7e-6015-428e-b4b4-7b7aec171c0d"); + + /// + /// Выведен из эксплуатации + /// + public static RegistryElement Element7 => new( + "7", + "f3edc065-c1a1-4110-96fa-03313ae7a039"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry51.cs b/Hcs.ClientNet/Client/Api/Registry/Registry51.cs new file mode 100644 index 0000000..0c30856 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry51.cs @@ -0,0 +1,15 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Вид коммунальной услуги" (реестровый номер 51) + /// + public static class Registry51 + { + /// + /// Отопление + /// + public static RegistryElement Element6_1 => new( + "6.1", + "14ad13a3-45ce-408b-b641-6fc59554f803"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/Registry58.cs b/Hcs.ClientNet/Client/Api/Registry/Registry58.cs new file mode 100644 index 0000000..a39a9e0 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/Registry58.cs @@ -0,0 +1,79 @@ +namespace Hcs.ClientNet.Api.Registry +{ + /// + /// НСИ "Основание заключения договора" (реестровый номер 58). + /// Взято из https://dom.gosuslugi.ru/opendataapi/nsi-58/v1. + /// + public static class Registry58 + { + /// + /// Решение собрания собственников + /// + public static RegistryElement Element1 => new( + "1", + "110d48b2-32a9-4a44-939c-b784d9794621"); + + /// + /// Открытый конкурс + /// + public static RegistryElement Element2 => new( + "2", + "a9dc59c3-d53f-42eb-ba98-cf8c74d88d36"); + + /// + /// Договор управления + /// + public static RegistryElement Element3 => new( + "3", + "11efe618-79f8-4f53-bfd6-11620e8e9e1e"); + + /// + /// Устав + /// + public static RegistryElement Element4 => new( + "4", + "a2eb920c-8163-4958-812a-ad153a5dfde6"); + + /// + /// Решение правления + /// + public static RegistryElement Element5 => new( + "5", + "58639715-2708-4b8e-a5e6-7cae4ddbf03b"); + + /// + /// Решение органа управления застройщика + /// + public static RegistryElement Element6 => new( + "6", + "9b606ef5-7701-4a12-a837-d81b50939160"); + + /// + /// Заявление потребителя + /// + public static RegistryElement Element7 => new( + "7", + "93cd9d85-91b8-4bf9-ae48-c5f1e691949f"); + + /// + /// Нормативный правовой акт + /// + public static RegistryElement Element8 => new( + "8", + "8b8ee37b-fa79-40cc-b98d-0e51f0c38d03"); + + /// + /// Разрешение на ввод в эксплуатацию + /// + public static RegistryElement Element9 => new( + "9", + "16331000-d96e-4a33-a6c7-3cb9eacf4927"); + + /// + /// Устав + /// + public static RegistryElement Element10 => new( + "10", + "555638ae-a207-46fa-99bd-88bdb297c45a"); + } +} diff --git a/Hcs.ClientNet/Client/Api/Registry/RegistryElement.cs b/Hcs.ClientNet/Client/Api/Registry/RegistryElement.cs new file mode 100644 index 0000000..b773f6f --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Registry/RegistryElement.cs @@ -0,0 +1,9 @@ +namespace Hcs.ClientNet.Api.Registry +{ + public class RegistryElement(string code, string guid) + { + public string Code { get; } = code; + + public string GUID { get; } = guid; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IAck.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IAck.cs new file mode 100644 index 0000000..ed06171 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IAck.cs @@ -0,0 +1,9 @@ +namespace Hcs.ClientNet.Api.Request +{ + public interface IAck + { + string MessageGUID { get; set; } + + string RequesterMessageGUID { get; set; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IAsyncClient.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IAsyncClient.cs new file mode 100644 index 0000000..f8c7bbe --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IAsyncClient.cs @@ -0,0 +1,9 @@ +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Adapter +{ + public interface IAsyncClient where TRequestHeader : class + { + Task GetStateAsync(TRequestHeader header, IGetStateRequest request); + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IErrorMessage.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IErrorMessage.cs new file mode 100644 index 0000000..d781c97 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IErrorMessage.cs @@ -0,0 +1,9 @@ +namespace Hcs.ClientNet.Api.Request +{ + public interface IErrorMessage + { + string ErrorCode { get; } + + string Description { get; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateRequest.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateRequest.cs new file mode 100644 index 0000000..73dfeb1 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateRequest.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api.Request +{ + public interface IGetStateRequest + { + string MessageGUID { get; set; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResponse.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResponse.cs new file mode 100644 index 0000000..20c8ef3 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResponse.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api.Request.Adapter +{ + public interface IGetStateResponse + { + IGetStateResult GetStateResult { get; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResult.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResult.cs new file mode 100644 index 0000000..543927b --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResult.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api.Request.Adapter +{ + public interface IGetStateResult + { + sbyte RequestState { get; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultMany.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultMany.cs new file mode 100644 index 0000000..3df5dcc --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultMany.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api.Request.Adapter +{ + public interface IGetStateResultMany : IGetStateResult + { + object[] Items { get; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultOne.cs b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultOne.cs new file mode 100644 index 0000000..320e2c4 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Adapter/IGetStateResultOne.cs @@ -0,0 +1,7 @@ +namespace Hcs.ClientNet.Api.Request.Adapter +{ + public interface IGetStateResultOne : IGetStateResult + { + object Item { get; } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/AsyncRequestStateType.cs b/Hcs.ClientNet/Client/Api/Request/AsyncRequestStateType.cs new file mode 100644 index 0000000..52196f8 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/AsyncRequestStateType.cs @@ -0,0 +1,9 @@ +namespace Hcs.ClientNet.Api.Request +{ + internal enum AsyncRequestStateType + { + Received = 1, + InProgress, + Ready + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Bills/BillsRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/Bills/BillsRequestBase.cs new file mode 100644 index 0000000..eefdaa9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Bills/BillsRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.Bills; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.Bills +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class BillsPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(RequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.Bills +{ + internal class BillsRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.BillsAsync; + + protected override bool EnableMinimalResponseWaitDelay => false; + + protected override bool CanBeRestarted => false; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs new file mode 100644 index 0000000..eb9663b --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Bills/ExportPaymentDocumentDataRequest.cs @@ -0,0 +1,71 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.Bills; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Bills +{ + internal class ExportPaymentDocumentDataRequest(ClientBase client) : BillsRequestBase(client) + { + protected override bool CanBeRestarted => true; + + internal async Task> ExecuteByPaymentDocumentIDAsync(string paymentDocumentID, CancellationToken token) + { + var request = new exportPaymentDocumentRequest() + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.1.0.1", + Items = [paymentDocumentID], + ItemsElementName = [ItemsChoiceType7.PaymentDocumentID] + }; + + 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> 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, 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 => + { + var response = await asyncClient.exportPaymentDocumentDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Bills/ImportPaymentDocumentDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/Bills/ImportPaymentDocumentDataRequest.cs new file mode 100644 index 0000000..5ab464f --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Bills/ImportPaymentDocumentDataRequest.cs @@ -0,0 +1,276 @@ +using Hcs.ClientNet.Api.Payload.Bills; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Api.Type; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.Bills; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Bills +{ + internal class ImportPaymentDocumentDataRequest(ClientBase client) : BillsRequestBase(client) + { + internal async Task ExecuteAsync(ImportPaymentDocumentDataPayload payload, CancellationToken token) + { + // TODO: Добавить проверку пейлоада + + var request = GetRequestFromPayload(payload); + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importPaymentDocumentDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + result.Items.OfType().ToList().ForEach(commonResult => + { + commonResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + }); + + return true; + } + + private importPaymentDocumentRequest GetRequestFromPayload(ImportPaymentDocumentDataPayload payload) + { + var items = new List(); + if (payload.confirmAmountsCorrect) + { + items.Add(true); + } + items.Add(payload.month); + items.Add(payload.year); + + var paymentInformations = new Dictionary(); + foreach (var entry in payload.paymentInformation) + { + var paymentInformation = new importPaymentDocumentRequestPaymentInformation() + { + TransportGUID = Guid.NewGuid().ToString(), + BankBIK = entry.bankBIK, + operatingAccountNumber = entry.operatingAccountNumber + }; + paymentInformations.Add(entry, paymentInformation); + + items.Add(paymentInformation); + } + + foreach (var entry in payload.paymentDocument) + { + var chargeInfo = new List(); + foreach (var subEntry in entry.chargeInfo) + { + if (subEntry is ImportPaymentDocumentDataPayload.MunicipalService municipalService) + { + var item = new PDServiceChargeTypeMunicipalService() + { + ServiceType = new nsiRef() + { + Code = municipalService.serviceType.Code, + GUID = municipalService.serviceType.GUID + }, + Rate = municipalService.rate, + TotalPayable = municipalService.totalPayable + }; + + if (municipalService.moneyRecalculation.HasValue) + { + item.ServiceCharge = new ServiceChargeImportType() + { + MoneyRecalculation = municipalService.moneyRecalculation.Value, + MoneyRecalculationSpecified = true + }; + } + if (municipalService.moneyDiscount.HasValue) + { + item.ServiceCharge ??= new ServiceChargeImportType(); + item.ServiceCharge.MoneyDiscount = municipalService.moneyDiscount.Value; + item.ServiceCharge.MoneyDiscountSpecified = true; + } + + if (municipalService.houseOverallNeedsNorm.HasValue) + { + item.ServiceInformation = new ServiceInformation() + { + houseOverallNeedsNorm = municipalService.houseOverallNeedsNorm.Value, + houseOverallNeedsNormSpecified = true + }; + } + if (municipalService.individualConsumptionNorm.HasValue) + { + item.ServiceInformation ??= new ServiceInformation(); + item.ServiceInformation.individualConsumptionNorm = municipalService.individualConsumptionNorm.Value; + item.ServiceInformation.individualConsumptionNormSpecified = true; + } + if (municipalService.individualConsumptionCurrentValue.HasValue) + { + item.ServiceInformation ??= new ServiceInformation(); + item.ServiceInformation.individualConsumptionCurrentValue = municipalService.individualConsumptionCurrentValue.Value; + item.ServiceInformation.individualConsumptionCurrentValueSpecified = true; + } + if (municipalService.houseOverallNeedsCurrentValue.HasValue) + { + item.ServiceInformation ??= new ServiceInformation(); + item.ServiceInformation.houseOverallNeedsCurrentValue = municipalService.houseOverallNeedsCurrentValue.Value; + item.ServiceInformation.houseOverallNeedsCurrentValueSpecified = true; + } + if (municipalService.houseTotalIndividualConsumption.HasValue) + { + item.ServiceInformation ??= new ServiceInformation(); + item.ServiceInformation.houseTotalIndividualConsumption = municipalService.houseTotalIndividualConsumption.Value; + item.ServiceInformation.houseTotalIndividualConsumptionSpecified = true; + } + if (municipalService.houseTotalHouseOverallNeeds.HasValue) + { + item.ServiceInformation ??= new ServiceInformation(); + item.ServiceInformation.houseTotalHouseOverallNeeds = municipalService.houseTotalHouseOverallNeeds.Value; + item.ServiceInformation.houseTotalHouseOverallNeedsSpecified = true; + } + + var consumption = new List(); + if (municipalService.individualConsumptionVolumeDeterminingMethod.HasValue) + { + consumption.Add(new PDServiceChargeTypeMunicipalServiceVolume() + { + determiningMethod = municipalService.individualConsumptionVolumeDeterminingMethod.Value.ToServiceType(), + determiningMethodSpecified = true, + type = PDServiceChargeTypeMunicipalServiceVolumeType.I, + typeSpecified = true, + Value = municipalService.individualConsumptionVolumeValue.Value + }); + } + if (municipalService.overallConsumptionVolumeDeterminingMethod.HasValue) + { + consumption.Add(new PDServiceChargeTypeMunicipalServiceVolume() + { + determiningMethod = municipalService.overallConsumptionVolumeDeterminingMethod.Value.ToServiceType(), + determiningMethodSpecified = true, + type = PDServiceChargeTypeMunicipalServiceVolumeType.O, + typeSpecified = true, + Value = municipalService.overallConsumptionVolumeValue.Value + }); + } + item.Consumption = [.. consumption]; + + if (municipalService.multiplyingFactorRatio.HasValue) + { + item.MultiplyingFactor = new PDServiceChargeTypeMunicipalServiceMultiplyingFactor() + { + Ratio = municipalService.multiplyingFactorRatio.Value + }; + + if (municipalService.amountOfExcessFees.HasValue) + { + item.MultiplyingFactor.AmountOfExcessFees = municipalService.amountOfExcessFees.Value; + item.MultiplyingFactor.AmountOfExcessFeesSpecified = true; + } + } + + if (municipalService.municipalServiceIndividualConsumptionPayable.HasValue) + { + item.MunicipalServiceIndividualConsumptionPayable = municipalService.municipalServiceIndividualConsumptionPayable.Value; + item.MunicipalServiceIndividualConsumptionPayableSpecified = true; + } + + if (municipalService.municipalServiceCommunalConsumptionPayable.HasValue) + { + item.MunicipalServiceCommunalConsumptionPayable = municipalService.municipalServiceCommunalConsumptionPayable.Value; + item.MunicipalServiceCommunalConsumptionPayableSpecified = true; + } + + if (municipalService.amountOfPaymentMunicipalServiceIndividualConsumption.HasValue) + { + item.AmountOfPaymentMunicipalServiceIndividualConsumption = municipalService.amountOfPaymentMunicipalServiceIndividualConsumption.Value; + item.AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified = true; + } + + if (municipalService.amountOfPaymentMunicipalServiceCommunalConsumption.HasValue) + { + item.AmountOfPaymentMunicipalServiceCommunalConsumption = municipalService.amountOfPaymentMunicipalServiceCommunalConsumption.Value; + item.AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified = true; + } + + if (municipalService.accountingPeriodTotal.HasValue) + { + item.AccountingPeriodTotal = municipalService.accountingPeriodTotal.Value; + item.AccountingPeriodTotalSpecified = true; + } + + chargeInfo.Add(new PaymentDocumentTypeChargeInfo() + { + Item = item + }); + } + + // TODO: Обработать ошибку + } + + var paymentDocument = new importPaymentDocumentRequestPaymentDocument() + { + TransportGUID = Guid.NewGuid().ToString(), + Items1 = [paymentInformations[entry.paymentInformation].TransportGUID], + AccountGuid = entry.accountGuid, + PaymentDocumentNumber = entry.paymentDocumentNumber, + Items = [.. chargeInfo], + Item = true, + ItemElementName = entry.exposeNotWithdraw ? ItemChoiceType5.Expose : ItemChoiceType5.Withdraw + }; + + if (entry.debtPreviousPeriods.HasValue) + { + paymentDocument.DebtPreviousPeriods = entry.debtPreviousPeriods.Value; + paymentDocument.DebtPreviousPeriodsSpecified = true; + } + + if (entry.advanceBllingPeriod.HasValue) + { + paymentDocument.AdvanceBllingPeriod = entry.advanceBllingPeriod.Value; + paymentDocument.AdvanceBllingPeriodSpecified = true; + } + + if (entry.totalPayableByPDWithDebtAndAdvance.HasValue) + { + paymentDocument.TotalPayableByPDWithDebtAndAdvance = entry.totalPayableByPDWithDebtAndAdvance.Value; + paymentDocument.TotalPayableByPDWithDebtAndAdvanceSpecified = true; + } + + if (entry.totalPayableByPD.HasValue) + { + paymentDocument.TotalPayableByPD = entry.totalPayableByPD.Value; + paymentDocument.TotalPayableByPDSpecified = true; + } + + if (entry.paidCash.HasValue) + { + paymentDocument.PaidCash = entry.paidCash.Value; + paymentDocument.PaidCashSpecified = true; + } + + if (entry.dateOfLastReceivedPayment.HasValue) + { + paymentDocument.DateOfLastReceivedPayment = entry.dateOfLastReceivedPayment.Value; + paymentDocument.DateOfLastReceivedPaymentSpecified = true; + } + + items.Add(paymentDocument); + } + + // http://open-gkh.ru/Bills/importPaymentDocumentRequest.html + return new importPaymentDocumentRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "11.2.0.16", + Items = [.. items] + }; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/DeviceMetering/DeviceMeteringRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/DeviceMeteringRequestBase.cs new file mode 100644 index 0000000..632f9e3 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/DeviceMeteringRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.DeviceMetering; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.DeviceMetering +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class DeviceMeteringPortTypesAsyncClient : IAsyncClient + { + public async Task GetStateAsync(RequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.DeviceMetering +{ + internal class DeviceMeteringRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.DeviceMeteringAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + protected override bool CanBeRestarted => true; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ExportMeteringDeviceHistoryRequest.cs b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ExportMeteringDeviceHistoryRequest.cs new file mode 100644 index 0000000..698ff7d --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ExportMeteringDeviceHistoryRequest.cs @@ -0,0 +1,179 @@ +using Hcs.ClientNet.Api.Payload.DeviceMetering; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.DeviceMetering; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.DeviceMetering +{ + internal class ExportMeteringDeviceHistoryRequest(ClientBase client) : DeviceMeteringRequestBase(client) + { + protected override bool EnableMinimalResponseWaitDelay => false; + + internal async Task> ExecuteAsync(ExportMeteringDeviceHistoryPayload payload, CancellationToken token) + { + ThrowIfPayloadIncorrect(payload); + + var request = GetRequestFromPayload(payload); + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportMeteringDeviceHistoryAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + + private void ThrowIfPayloadIncorrect(ExportMeteringDeviceHistoryPayload payload) + { + if (payload.meteringDeviceType?.Length <= 0 && payload.municipalResource?.Length <= 0 && + payload.meteringDeviceRootGUID?.Length <= 0) + { + throw new ArgumentException($"{nameof(payload.meteringDeviceType)}/{nameof(payload.municipalResource)}/{nameof(payload.meteringDeviceRootGUID)} are empty"); + } + + if (payload.meteringDeviceType?.Length + payload.municipalResource?.Length + + payload.meteringDeviceRootGUID?.Length > 100) + { + throw new ArgumentException($"Too much {nameof(payload.meteringDeviceType)}/{nameof(payload.municipalResource)}/{nameof(payload.meteringDeviceRootGUID)} values"); + } + + if (payload.inputDateFrom.HasValue && payload.inputDateTo.HasValue) + { + if (payload.inputDateFrom.HasValue && payload.inputDateTo.HasValue && + payload.inputDateFrom.Value > payload.inputDateTo.Value) + { + throw new ArgumentException($"{nameof(payload.inputDateFrom)} must be earlier than {nameof(payload.inputDateTo)}"); + } + + if (payload.inputDateTo.Value - payload.inputDateFrom.Value > TimeSpan.FromDays( + DateTime.DaysInMonth(payload.inputDateTo.Value.Year, payload.inputDateTo.Value.Month) + + DateTime.DaysInMonth(payload.inputDateFrom.Value.Year, payload.inputDateFrom.Value.Month))) + { + throw new ArgumentException($"Too big range from {nameof(payload.inputDateFrom)} to {nameof(payload.inputDateTo)}"); + } + } + else if (payload.inputDateFrom.HasValue && !payload.inputDateTo.HasValue) + { + throw new ArgumentException($"{nameof(payload.inputDateTo)} is null"); + } + else if (!payload.inputDateFrom.HasValue && payload.inputDateTo.HasValue) + { + throw new ArgumentException($"{nameof(payload.inputDateFrom)} is null"); + } + } + + private exportMeteringDeviceHistoryRequest GetRequestFromPayload(ExportMeteringDeviceHistoryPayload payload) + { + var items = new List(); + var itemsElementName = new List(); + if (payload.meteringDeviceType != null) + { + foreach (var meteringDeviceType in payload.meteringDeviceType) + { + items.Add(new nsiRef() + { + Code = meteringDeviceType.Code, + GUID = meteringDeviceType.GUID + }); + itemsElementName.Add(ItemsChoiceType4.MeteringDeviceType); + } + } + if (payload.municipalResource != null) + { + foreach (var municipalResource in payload.municipalResource) + { + items.Add(new nsiRef() + { + Code = municipalResource.Code, + GUID = municipalResource.GUID + }); + itemsElementName.Add(ItemsChoiceType4.MunicipalResource); + } + } + if (payload.meteringDeviceRootGUID != null) + { + foreach (var meteringDeviceRootGUID in payload.meteringDeviceRootGUID) + { + items.Add(meteringDeviceRootGUID); + itemsElementName.Add(ItemsChoiceType4.MeteringDeviceRootGUID); + } + } + + // http://open-gkh.ru/DeviceMetering/exportMeteringDeviceHistoryRequest.html + var request = new exportMeteringDeviceHistoryRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.1.3.1", + FIASHouseGuid = payload.fiasHouseGuid, + Items = [.. items], + ItemsElementName = [.. itemsElementName] + }; + + if (payload.commissioningDateFrom.HasValue) + { + request.CommissioningDateFrom = payload.commissioningDateFrom.Value; + request.CommissioningDateFromSpecified = true; + } + + if (payload.сommissioningDateTo.HasValue) + { + request.CommissioningDateTo = payload.сommissioningDateTo.Value; + request.CommissioningDateToSpecified = true; + } + + if (payload.serchArchived.HasValue) + { + request.SerchArchived = payload.serchArchived.Value; + request.SerchArchivedSpecified = true; + } + + if (payload.archiveDateFrom.HasValue) + { + request.ArchiveDateFrom = payload.archiveDateFrom.Value; + request.ArchiveDateFromSpecified = true; + } + + if (payload.archiveDateTo.HasValue) + { + request.ArchiveDateTo = payload.archiveDateTo.Value; + request.ArchiveDateToSpecified = true; + } + + if (payload.inputDateFrom.HasValue) + { + request.inputDateFrom = payload.inputDateFrom.Value; + request.inputDateFromSpecified = true; + } + + if (payload.inputDateTo.HasValue) + { + request.inputDateTo = payload.inputDateTo.Value; + request.inputDateToSpecified = true; + } + + if (payload.excludePersonAsDataSource.HasValue) + { + request.ExcludePersonAsDataSource = payload.excludePersonAsDataSource.Value; + request.ExcludePersonAsDataSourceSpecified = true; + } + + if (payload.excludeCurrentOrgAsDataSource.HasValue) + { + request.ExcludeCurrentOrgAsDataSource = payload.excludeCurrentOrgAsDataSource.Value; + request.ExcludeCurrentOrgAsDataSourceSpecified = true; + } + + if (payload.excludeOtherOrgAsDataSource.HasValue) + { + request.ExcludeOtherOrgAsDataSource = payload.excludeOtherOrgAsDataSource.Value; + request.ExcludeOtherOrgAsDataSourceSpecified = true; + } + + return request; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ImportMeteringDeviceValuesRequest.cs b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ImportMeteringDeviceValuesRequest.cs new file mode 100644 index 0000000..c9cb09b --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/DeviceMetering/ImportMeteringDeviceValuesRequest.cs @@ -0,0 +1,46 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.DeviceMetering; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.DeviceMetering +{ + internal class ImportMeteringDeviceValuesRequest(ClientBase client) : DeviceMeteringRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(importMeteringDeviceValuesRequestMeteringDevicesValues values, CancellationToken token) + { + // http://open-gkh.ru/DeviceMetering/importMeteringDeviceValuesRequest.html + var request = new importMeteringDeviceValuesRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.1", + MeteringDevicesValues = [values] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importMeteringDeviceValuesAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + result.Items.OfType().ToList().ForEach(commonResult => + { + commonResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + }); + + return true; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/EndPoint.cs b/Hcs.ClientNet/Client/Api/Request/EndPoint.cs new file mode 100644 index 0000000..74427cf --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/EndPoint.cs @@ -0,0 +1,16 @@ +namespace Hcs.ClientNet.Api.Request +{ + internal enum EndPoint + { + BillsAsync, + DebtRequestsAsync, + DeviceMeteringAsync, + HomeManagementAsync, + LicensesAsync, + NsiAsync, + NsiCommonAsync, + OrgRegistryAsync, + OrgRegistryCommonAsync, + PaymentsAsync + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/EndPointLocator.cs b/Hcs.ClientNet/Client/Api/Request/EndPointLocator.cs new file mode 100644 index 0000000..b3e03c9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/EndPointLocator.cs @@ -0,0 +1,30 @@ +using System.Collections.Generic; + +namespace Hcs.ClientNet.Api.Request +{ + internal class EndPointLocator + { + private static readonly Dictionary endPoints; + + static EndPointLocator() + { + endPoints ??= []; + + endPoints.Add(EndPoint.BillsAsync, "ext-bus-bills-service/services/BillsAsync"); + endPoints.Add(EndPoint.DebtRequestsAsync, "ext-bus-debtreq-service/services/DebtRequestsAsync"); + endPoints.Add(EndPoint.DeviceMeteringAsync, "ext-bus-device-metering-service/services/DeviceMeteringAsync"); + endPoints.Add(EndPoint.HomeManagementAsync, "ext-bus-home-management-service/services/HomeManagementAsync"); + endPoints.Add(EndPoint.LicensesAsync, "ext-bus-licenses-service/services/LicensesAsync"); + endPoints.Add(EndPoint.NsiAsync, "ext-bus-nsi-service/services/NsiAsync"); + endPoints.Add(EndPoint.NsiCommonAsync, "ext-bus-nsi-common-service/services/NsiCommonAsync"); + endPoints.Add(EndPoint.OrgRegistryAsync, "ext-bus-org-registry-service/services/OrgRegistryAsync"); + endPoints.Add(EndPoint.OrgRegistryCommonAsync, "ext-bus-org-registry-common-service/services/OrgRegistryCommonAsync"); + endPoints.Add(EndPoint.PaymentsAsync, "ext-bus-payment-service/services/PaymentAsync"); + } + + internal static string GetPath(EndPoint endPoint) + { + return endPoints[endPoint]; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Exception/NoResultsRemoteException.cs b/Hcs.ClientNet/Client/Api/Request/Exception/NoResultsRemoteException.cs new file mode 100644 index 0000000..3ec52c9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Exception/NoResultsRemoteException.cs @@ -0,0 +1,17 @@ +namespace Hcs.ClientNet.Api.Request.Exception +{ + /// + /// Исключение указывает на то, что сервер обнаружил что у + /// него нет объектов для выдачи по условию + /// + internal class NoResultsRemoteException : RemoteException + { + public NoResultsRemoteException(string description) : base(NO_OBJECTS_FOR_EXPORT, description) { } + + public NoResultsRemoteException(string errorCode, string description) : + base(errorCode, description) { } + + public NoResultsRemoteException(string errorCode, string description, System.Exception nested) : + base(errorCode, description, nested) { } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Exception/RemoteException.cs b/Hcs.ClientNet/Client/Api/Request/Exception/RemoteException.cs new file mode 100644 index 0000000..39c14f7 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Exception/RemoteException.cs @@ -0,0 +1,65 @@ +using Hcs.ClientNet.Internal; +using System; +using System.Linq; + +namespace Hcs.ClientNet.Api.Request.Exception +{ + internal class RemoteException : System.Exception + { + internal const string NO_OBJECTS_FOR_EXPORT = "INT002012"; + internal const string MISSING_IN_REGISTRY = "INT002000"; + internal const string ACCESS_DENIED = "AUT011003"; + + internal string ErrorCode { get; private set; } + internal string Description { get; private set; } + + public RemoteException(string errorCode, string description) + : base(Combine(errorCode, description)) + { + ErrorCode = errorCode; + Description = description; + } + + public RemoteException(string errorCode, string description, System.Exception nestedException) + : base(Combine(errorCode, description), nestedException) + { + ErrorCode = errorCode; + Description = description; + } + + private static string Combine(string errorCode, string description) + { + return $"Remote server returned an error: [{errorCode}] {description}"; + } + + internal static RemoteException CreateNew(string errorCode, string description, System.Exception nested = null) + { + if (string.Compare(errorCode, NO_OBJECTS_FOR_EXPORT) == 0) + { + return new NoResultsRemoteException(errorCode, description, nested); + } + return new RemoteException(errorCode, description); + } + + internal static RemoteException CreateNew(RemoteException nested) + { + if (nested == null) + { + throw new ArgumentNullException(nameof(nested)); + } + return CreateNew(nested.ErrorCode, nested.Description, nested); + } + + /// + /// Возвращает true, если ошибка @e или ее вложенные ошибки содержат @errorCode + /// + internal static bool ContainsErrorCode(SystemException e, string errorCode) + { + if (e == null) + { + return false; + } + return Util.EnumerateInnerExceptions(e).OfType().Where(x => x.ErrorCode == errorCode).Any(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Exception/RestartTimeoutException.cs b/Hcs.ClientNet/Client/Api/Request/Exception/RestartTimeoutException.cs new file mode 100644 index 0000000..219c2d1 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Exception/RestartTimeoutException.cs @@ -0,0 +1,9 @@ +namespace Hcs.ClientNet.Api.Request.Exception +{ + internal class RestartTimeoutException : System.Exception + { + public RestartTimeoutException(string message) : base(message) { } + + public RestartTimeoutException(string message, System.Exception innerException) : base(message, innerException) { } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/GostSigningEndpointBehavior.cs b/Hcs.ClientNet/Client/Api/Request/GostSigningEndpointBehavior.cs new file mode 100644 index 0000000..27d1ebc --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/GostSigningEndpointBehavior.cs @@ -0,0 +1,23 @@ +using System.ServiceModel.Channels; +using System.ServiceModel.Description; +using System.ServiceModel.Dispatcher; + +namespace Hcs.ClientNet.Api.Request +{ + internal class GostSigningEndpointBehavior(ClientBase client) : IEndpointBehavior + { + private readonly ClientBase client = client; + + public void AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection bindingParameters) { } + + public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime) + { + clientRuntime.ClientMessageInspectors.Add( + new GostSigningMessageInspector(client)); + } + + public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher) { } + + public void Validate(ServiceEndpoint endpoint) { } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/GostSigningMessageInspector.cs b/Hcs.ClientNet/Client/Api/Request/GostSigningMessageInspector.cs new file mode 100644 index 0000000..a60732e --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/GostSigningMessageInspector.cs @@ -0,0 +1,116 @@ +using Hcs.ClientNet.Internal; +using GostXades; +using System.IO; +using System.ServiceModel; +using System.ServiceModel.Channels; +using System.ServiceModel.Dispatcher; +using System.Text; +using System.Xml; + +namespace Hcs.ClientNet.Api.Request +{ + /// + /// Фильтр сообщений добавляет в XML-сообщение электронную подпись XADES/GOST + /// + internal class GostSigningMessageInspector(ClientBase client) : IClientMessageInspector + { + private readonly ClientBase client = client; + + public object BeforeSendRequest(ref Message request, IClientChannel channel) + { + try + { + var filterHeader = "[Message Inspector]"; + + PurgeDebuggerHeaders(ref request); + + var messageBody = GetMessageBodyString(ref request, Encoding.UTF8); + if (!messageBody.Contains(Constants.SIGNED_XML_ELEMENT_ID)) + { + client.TryCaptureMessage(true, messageBody); + } + else + { + var certInfo = X509Tools.GetFullnameWithExpirationDateStr(client.Certificate); + client.TryLog($"{filterHeader} signing message with key [{certInfo}]..."); + + var stopwatch = System.Diagnostics.Stopwatch.StartNew(); + var service = new GostXadesBesService(client.CryptoProviderType); + var signedXml = service.Sign(messageBody, + Constants.SIGNED_XML_ELEMENT_ID, + client.CertificateThumbprint, + client.CertificatePassword); + stopwatch.Stop(); + + client.TryLog($"{filterHeader} message signed in {stopwatch.ElapsedMilliseconds} ms"); + client.TryCaptureMessage(true, signedXml); + + request = Message.CreateMessage( + XmlReaderFromString(signedXml), int.MaxValue, request.Version); + } + } + catch (System.Exception ex) + { + throw new System.Exception($"Exception occured in {GetType().Name}", ex); + } + + return null; + } + + private void PurgeDebuggerHeaders(ref Message request) + { + var limit = request.Headers.Count; + for (var i = 0; i < limit; ++i) + { + if (request.Headers[i].Name.Equals("VsDebuggerCausalityData")) + { + request.Headers.RemoveAt(i); + + break; + } + } + } + + private string GetMessageBodyString(ref Message request, Encoding encoding) + { + var mb = request.CreateBufferedCopy(int.MaxValue); + request = mb.CreateMessage(); + + var s = new MemoryStream(); + var xw = XmlWriter.Create(s); + mb.CreateMessage().WriteMessage(xw); + xw.Flush(); + + s.Position = 0; + + var bXML = new byte[s.Length]; + s.Read(bXML, 0, (int)s.Length); + + if (bXML[0] != (byte)'<') + { + return encoding.GetString(bXML, 3, bXML.Length - 3); + } + else + { + return encoding.GetString(bXML, 0, bXML.Length); + } + } + + private XmlReader XmlReaderFromString(string xml) + { + var stream = new MemoryStream(); + var writer = new StreamWriter(stream); + writer.Write(xml); + writer.Flush(); + + stream.Position = 0; + + return XmlReader.Create(stream); + } + + public void AfterReceiveReply(ref Message reply, object correlationState) + { + client.TryCaptureMessage(false, reply.ToString()); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportAccountRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportAccountRequest.cs new file mode 100644 index 0000000..2386ce6 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportAccountRequest.cs @@ -0,0 +1,34 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ExportAccountRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool EnableMinimalResponseWaitDelay => false; + + internal async Task> ExecuteAsync(string fiasHouseGuid, CancellationToken token) + { + // http://open-gkh.ru/HouseManagement/exportAccountRequest.html + var request = new exportAccountRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.1", + Items = [fiasHouseGuid], + ItemsElementName = [ItemsChoiceType26.FIASHouseGuid] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportAccountDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportHouseRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportHouseRequest.cs new file mode 100644 index 0000000..5731223 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportHouseRequest.cs @@ -0,0 +1,33 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ExportHouseRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool EnableMinimalResponseWaitDelay => false; + + internal async Task> ExecuteAsync(string fiasHouseGuid, CancellationToken token) + { + // http://open-gkh.ru/HouseManagement/exportHouseRequest.html + var request = new exportHouseRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "15.6.0.1", + FIASHouseGuid = fiasHouseGuid + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportHouseDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractDataRequest.cs new file mode 100644 index 0000000..86ebee5 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractDataRequest.cs @@ -0,0 +1,135 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ExportSupplyResourceContractDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool EnableMinimalResponseWaitDelay => false; + + internal async Task> ExecuteAsync(CancellationToken token) + { + var result = new List(); + + void OnResultReceived(exportSupplyResourceContractResultType[] contracts) + { + if (contracts?.Length > 0) + { + result.AddRange(contracts); + } + } + + var pageNum = 0; + Guid? exportContractRootGuid = null; + while (true) + { + pageNum++; + + client.TryLog($"Querying page #{pageNum}..."); + + var data = await QueryBatchAsync(null, null, exportContractRootGuid, OnResultReceived, token); + if (data.IsLastPage) + { + break; + } + + exportContractRootGuid = data.NextGuid; + } + + return result; + } + + internal async Task ExecuteAsync(Guid contractRootGuid, CancellationToken token) + { + exportSupplyResourceContractResultType result = null; + + void OnResultReceived(exportSupplyResourceContractResultType[] contracts) + { + result = contracts?.Length > 0 ? contracts[0] : null; + } + + await QueryBatchAsync(contractRootGuid, null, null, OnResultReceived, token); + + return result; + } + + internal async Task ExecuteAsync(string contractNumber, CancellationToken token) + { + exportSupplyResourceContractResultType result = null; + + void OnResultReceived(exportSupplyResourceContractResultType[] contracts) + { + result = contracts?.Length > 0 ? contracts[0] : null; + } + + await QueryBatchAsync(null, contractNumber, null, OnResultReceived, token); + + return result; + } + + private async Task QueryBatchAsync( + Guid? contractRootGuid, string contractNumber, Guid? exportContractRootGuid, + Action onResultReceived, + CancellationToken token) + { + var itemsElementName = new List(); + var items = new List(); + + if (contractRootGuid.HasValue) + { + itemsElementName.Add(ItemsChoiceType32.ContractRootGUID); + items.Add(contractRootGuid.ToString()); + } + + if (!string.IsNullOrEmpty(contractNumber)) + { + itemsElementName.Add(ItemsChoiceType32.ContractNumber); + items.Add(contractNumber); + } + + if (exportContractRootGuid.HasValue) + { + itemsElementName.Add(ItemsChoiceType32.ExportContractRootGUID); + items.Add(exportContractRootGuid.ToString()); + } + + // http://open-gkh.ru/HouseManagement/exportSupplyResourceContractRequest.html + var request = new exportSupplyResourceContractRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.1.1.1", + ItemsElementName = [.. itemsElementName], + Items = [.. items] + }; + + try + { + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var ackResponse = await asyncClient.exportSupplyResourceContractDataAsync( + CreateRequestHeader(), request); + return ackResponse.AckRequest.Ack; + }, token); + + var contractResult = result.Items.OfType().First(); + onResultReceived?.Invoke(contractResult.Contract); + + return new PaginationData(contractResult.Item); + } + catch (NoResultsRemoteException) + { + return PaginationData.CreateLastPageData(); + } + catch (System.Exception e) + { + throw e; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractObjectAddressDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractObjectAddressDataRequest.cs new file mode 100644 index 0000000..17b204a --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ExportSupplyResourceContractObjectAddressDataRequest.cs @@ -0,0 +1,96 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ExportSupplyResourceContractObjectAddressDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + internal async Task> ExecuteAsync(Guid contractRootGuid, CancellationToken token) + { + var result = new List(); + + void OnResultReceived(exportSupplyResourceContractObjectAddressResultType[] addresses) + { + if (addresses?.Length > 0) + { + result.AddRange(addresses); + } + } + + var pageNum = 0; + Guid? exportObjectGuid = null; + while (true) + { + pageNum++; + + client.TryLog($"Querying page #{pageNum}..."); + + var data = await QueryBatchAsync(contractRootGuid, exportObjectGuid, OnResultReceived, token); + if (data.IsLastPage) + { + break; + } + + exportObjectGuid = data.NextGuid; + } + + return result; + } + + private async Task QueryBatchAsync( + Guid contractRootGuid, Guid? exportObjectGuid, + Action onResultReceived, + CancellationToken token) + { + var itemsElementName = new List(); + var items = new List(); + + itemsElementName.Add(ItemsChoiceType34.ContractRootGUID); + items.Add(contractRootGuid.ToString()); + + if (exportObjectGuid.HasValue) + { + itemsElementName.Add(ItemsChoiceType34.ExportObjectGUID); + items.Add(exportObjectGuid.ToString()); + } + + // http://open-gkh.ru/HouseManagement/exportSupplyResourceContractObjectAddressRequest.html + var request = new exportSupplyResourceContractObjectAddressRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.1.1.1", + ItemsElementName = [.. itemsElementName], + Items = [.. items] + }; + + try + { + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var ackResponse = await asyncClient.exportSupplyResourceContractObjectAddressDataAsync( + CreateRequestHeader(), request); + return ackResponse.AckRequest.Ack; + }, token); + + var contractResult = result.Items.OfType().First(); + onResultReceived?.Invoke(contractResult.ObjectAddress); + + return new PaginationData(contractResult.Item); + } + catch (NoResultsRemoteException) + { + return PaginationData.CreateLastPageData(); + } + catch (System.Exception e) + { + throw e; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs new file mode 100644 index 0000000..6060064 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/HouseManagementRequestBase.cs @@ -0,0 +1,82 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.Service.Async.HouseManagement; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.HouseManagement +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class HouseManagementPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(RequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class HouseManagementRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.HomeManagementAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + 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.ClientNet/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs new file mode 100644 index 0000000..001756a --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportAccountDataRequest.cs @@ -0,0 +1,118 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportAccountDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportAccountDataPayload payload, CancellationToken token) + { + // TODO: Добавить проверку пейлоада + + // http://open-gkh.ru/HouseManagement/importAccountRequest.html + var request = new importAccountRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.1", + Account = [GetAccountFromPayload(payload)] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importAccountDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + 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) + { + var account = new importAccountRequestAccount() + { + TransportGUID = Guid.NewGuid().ToString(), + AccountNumber = payload.accountNumber, + AccountGUID = payload.accountGUID, + AccountReasons = payload.accountReasons, + Item = true, + Accommodation = payload.accomodations, + PayerInfo = payload.payerInfo + }; + + switch (payload.accountType) + { + case ImportAccountDataPayload.AccountType.UO: + account.ItemElementName = ItemChoiceType8.isUOAccount; + break; + + case ImportAccountDataPayload.AccountType.RSO: + account.ItemElementName = ItemChoiceType8.isRSOAccount; + break; + + case ImportAccountDataPayload.AccountType.CR: + account.ItemElementName = ItemChoiceType8.isCRAccount; + break; + + case ImportAccountDataPayload.AccountType.RC: + account.ItemElementName = ItemChoiceType8.isRCAccount; + break; + + case ImportAccountDataPayload.AccountType.OGVorOMS: + account.ItemElementName = ItemChoiceType8.isOGVorOMSAccount; + break; + + case ImportAccountDataPayload.AccountType.TKO: + account.ItemElementName = ItemChoiceType8.isTKOAccount; + break; + } + + if (payload.livingPersonsNumber.HasValue) + { + account.LivingPersonsNumber = payload.livingPersonsNumber.Value.ToString(); + } + + if (payload.totalSquare.HasValue) + { + account.TotalSquare = payload.totalSquare.Value; + account.TotalSquareSpecified = true; + } + + if (payload.residentialSquare.HasValue) + { + account.ResidentialSquare = payload.residentialSquare.Value; + account.ResidentialSquareSpecified = true; + } + + if (payload.heatedArea.HasValue) + { + account.HeatedArea = payload.heatedArea.Value; + account.HeatedAreaSpecified = true; + } + + return account; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportContractDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportContractDataRequest.cs new file mode 100644 index 0000000..9d0f13c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportContractDataRequest.cs @@ -0,0 +1,85 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportContractDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + internal async Task ExecuteAsync(ImportContractDataPayload payload, CancellationToken token) + { + // TODO: Добавить проверку пейлоада + + // http://open-gkh.ru/HouseManagement/importContractRequest/Contract.html + var contract = new importContractRequestContract + { + TransportGUID = Guid.NewGuid().ToString(), + Item = GetContractFromPayload(payload) + }; + + // http://open-gkh.ru/HouseManagement/importContractRequest.html + var request = new importContractRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "11.9.0.1", + Contract = [contract] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importContractDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.importContract) + { + if (commonResult.Item is importContractResultType importedContract) + { + return importedContract; + } + } + } + + return null; + } + + private importContractRequestContractPlacingContract GetContractFromPayload(ImportContractDataPayload payload) + { + // http://open-gkh.ru/HouseManagement/importContractRequest/Contract/PlacingContract.html + var contract = new importContractRequestContractPlacingContract() + { + ContractObject = payload.contractObjects, + DocNum = payload.docNum, + SigningDate = payload.signingDate, + EffectiveDate = payload.effectiveDate, + PlanDateComptetion = payload.planDateComptetion, + Item = true, + ItemElementName = ItemChoiceType13.Owners, + ContractBase = new nsiRef() + { + Code = payload.contractBase.Code, + GUID = payload.contractBase.GUID + }, + DateDetails = payload.dateDetailsType, + ContractAttachment = payload.contractAttachment + }; + + return contract; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportHouseUODataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportHouseUODataRequest.cs new file mode 100644 index 0000000..6810325 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportHouseUODataRequest.cs @@ -0,0 +1,117 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportHouseUODataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportLivingHouseUODataPayload payload, CancellationToken token) + { + // TODO: Добавить проверку пейлоада + + // http://open-gkh.ru/HouseManagement/importHouseUORequest.html + var request = new importHouseUORequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.2.3.2", + Item = GetLivingHouseFromPayload(payload) + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importHouseUODataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.ImportHouseUO) + { + return commonResult.Item is OGFImportStatusType; + } + } + + return false; + } + + private importHouseUORequestLivingHouse GetLivingHouseFromPayload(ImportLivingHouseUODataPayload payload) + { + var livingHouse = new importHouseUORequestLivingHouseLivingHouseToCreate() + { + TransportGUID = Guid.NewGuid().ToString(), + BasicCharacteristicts = new HouseBasicUOType() + { + FIASHouseGuid = payload.fiasHouseGuid.ToString(), + TotalSquare = payload.totalSquare, + State = new nsiRef() + { + Code = payload.state.Code, + GUID = payload.state.GUID + }, + LifeCycleStage = new nsiRef() + { + Code = payload.lifeCycleStage.Code, + GUID = payload.lifeCycleStage.GUID + }, + UsedYear = payload.usedYear, + FloorCount = payload.floorCount, + OKTMO = payload.oktmo, + OlsonTZ = new nsiRef() + { + Code = payload.olsonTZ.Code, + GUID = payload.olsonTZ.GUID + }, + CulturalHeritage = payload.culturalHeritage, + OGFData = payload.ogfData, + // TODO: Разобраться с кадастровым номером + Items = [true, payload.conditionalNumber], + ItemsElementName = [ItemsChoiceType3.NoCadastralNumber, ItemsChoiceType3.ConditionalNumber] + } + }; + + if (!payload.isMunicipalProperty) + { + livingHouse.BasicCharacteristicts.IsMunicipalProperty = false; + livingHouse.BasicCharacteristicts.IsMunicipalPropertySpecified = true; + } + + if (!payload.isRegionProperty) + { + livingHouse.BasicCharacteristicts.IsRegionProperty = false; + livingHouse.BasicCharacteristicts.IsRegionPropertySpecified = true; + } + + if (payload.hasBlocks) + { + livingHouse.HasBlocks = true; + livingHouse.HasBlocksSpecified = true; + } + + if (payload.hasMultipleHousesWithSameAddress) + { + livingHouse.HasMultipleHousesWithSameAddress = true; + livingHouse.HasMultipleHousesWithSameAddressSpecified = true; + } + + return new importHouseUORequestLivingHouse() + { + Item = livingHouse + }; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportMeteringDeviceDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportMeteringDeviceDataRequest.cs new file mode 100644 index 0000000..cb57116 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportMeteringDeviceDataRequest.cs @@ -0,0 +1,56 @@ +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportMeteringDeviceDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(MeteringDeviceFullInformationType meteringDevice, CancellationToken token) + { + // http://open-gkh.ru/HouseManagement/importMeteringDeviceDataRequest.html + var request = new importMeteringDeviceDataRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "11.1.0.8", + MeteringDevice = + [ + new importMeteringDeviceDataRequestMeteringDevice() + { + TransportGUID = Guid.NewGuid().ToString(), + Item = meteringDevice + } + ] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importMeteringDeviceDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.importMeteringDevice) + { + return commonResult.Item is getStateResultImportResultCommonResultImportMeteringDevice; + } + } + + return false; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs new file mode 100644 index 0000000..694565c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportNotificationDataRequest.cs @@ -0,0 +1,113 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportNotificationDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportNotificationDataPayload payload, CancellationToken token) + { + // TODO: Добавить проверку пейлоада + + var notification = new importNotificationRequestNotification() + { + TransportGUID = Guid.NewGuid().ToString(), + Item = GetNotificationFromPayload(payload) + }; + + // http://open-gkh.ru/HouseManagement/importNotificationRequest.html + var request = new importNotificationRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "13.2.2.0", + notification = [notification] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importNotificationDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + + return true; + } + + private importNotificationRequestNotificationCreate GetNotificationFromPayload(ImportNotificationDataPayload payload) + { + var notification = new importNotificationRequestNotificationCreate(); + + if (!string.IsNullOrEmpty(payload.topic)) + { + notification.Item = payload.topic; + } + else + { + notification.Item = payload.topicFromRegistry; + } + + if (payload.isImportant) + { + notification.IsImportant = true; + notification.IsImportantSpecified = true; + } + + notification.content = payload.content; + + var items = new List(); + var itemsElementName = new List(); + foreach (var tuple in payload.destinations) + { + items.Add(tuple.Item2); + itemsElementName.Add(tuple.Item1); + } + notification.Items = [.. items]; + notification.ItemsElementName = [.. itemsElementName]; + + if (payload.isNotLimit) + { + notification.Items1 = [true]; + notification.Items1ElementName = [Items1ChoiceType.IsNotLimit]; + } + else + { + notification.Items1 = [payload.startDate.Value, payload.endDate.Value]; + notification.Items1ElementName = [Items1ChoiceType.StartDate, Items1ChoiceType.EndDate]; + } + + // TODO: Добавить добавление аттачмента + + if (payload.isShipOff) + { + notification.IsShipOff = true; + notification.IsShipOffSpecified = true; + } + + if (payload.isForPublishToMobileApp) + { + notification.IsForPublishToMobileApp = true; + notification.IsForPublishToMobileAppSpecified = true; + } + + notification.MobileAppData = payload.mobileAppData; + + return notification; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs new file mode 100644 index 0000000..28da8e2 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractDataRequest.cs @@ -0,0 +1,302 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportSupplyResourceContractDataRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportSupplyResourceContractDataPayload payload, CancellationToken token) + { + ThrowIfPayloadIncorrect(payload); + + // http://open-gkh.ru/HouseManagement/SupplyResourceContractType.html + var contract = new importSupplyResourceContractRequestContract + { + TransportGUID = Guid.NewGuid().ToString(), + Item1 = GetContractFromPayload(payload) + }; + + // http://open-gkh.ru/HouseManagement/importSupplyResourceContractRequest.html + var request = new importSupplyResourceContractRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "11.3.0.5", + Contract = [contract] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importSupplyResourceContractDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.ImportSupplyResourceContract) + { + if (commonResult.Item is getStateResultImportResultCommonResultImportSupplyResourceContract importedContract) + { + return importedContract; + } + } + } + + return null; + } + + private void ThrowIfPayloadIncorrect(ImportSupplyResourceContractDataPayload payload) + { + if (string.IsNullOrEmpty(payload.contractNumber)) + { + throw new ArgumentException($"{nameof(payload.contractNumber)} is empty"); + } + + if (payload.signingDate.Equals(default) || payload.effectiveDate.Equals(default)) + { + throw new ArgumentException($"{nameof(payload.signingDate)} OR/AND {nameof(payload.effectiveDate)} are default"); + } + + if (!payload.comptetionDate.HasValue && payload.automaticRollOverOneYear) + { + throw new ArgumentException($"{nameof(payload.comptetionDate)} is null but {nameof(payload.automaticRollOverOneYear)} has value"); + } + + if (payload.period == null && (payload.volumeDepends.HasValue && payload.volumeDepends.Value + || payload.meteringDeviceInformation.HasValue && payload.meteringDeviceInformation.Value)) + { + throw new ArgumentException($"{nameof(payload.period)} is null but {nameof(payload.volumeDepends)} OR/AND {nameof(payload.meteringDeviceInformation)} have value"); + } + + if (payload.indicationsAnyDay && payload.period == null) + { + throw new ArgumentException($"{nameof(payload.indicationsAnyDay)} has value but {nameof(payload.period)} is null"); + } + + // TODO: Add counterparty check + + if (payload.plannedVolumeType.HasValue && !payload.isPlannedVolume) + { + throw new ArgumentException($"{nameof(payload.plannedVolumeType)} has value but {nameof(payload.isPlannedVolume)} is false"); + } + + if (payload.contractSubject == null || payload.contractSubject.Length == 0) + { + throw new ArgumentException($"{nameof(payload.contractSubject)} is empty"); + } + + if (payload.contractSubject != null && payload.contractSubject.Length > 100) + { + throw new ArgumentException($"{nameof(payload.contractSubject)} exceeds its limit ({payload.contractSubject.Length} of 100)"); + } + + if (payload.countingResource.HasValue && (!payload.accrualProcedure.HasValue || + payload.accrualProcedure.Value == SupplyResourceContractTypeAccrualProcedure.O)) + { + throw new ArgumentException($"{nameof(payload.countingResource)} has value but {nameof(payload.accrualProcedure)} is null OR has inappropriate value"); + } + + // TODO: Add noConnectionToWaterSupply check + + if (payload.objectAddress == null || payload.objectAddress.Length == 0) + { + throw new ArgumentException($"{nameof(payload.objectAddress)} is empty"); + } + + // TODO: Add quality check + // TODO: Add otherQualityIndicator check + // TODO: Add temperatureChart check + + if (payload.billingDate == null && (payload.counterparty is not SupplyResourceContractTypeOrganization || + payload.meteringDeviceInformation.HasValue)) + { + throw new ArgumentException($"{nameof(payload.billingDate)} is null but {nameof(payload.meteringDeviceInformation)} has value"); + } + + if (payload.billingDate != null && payload.oneTimePayment.HasValue && payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.billingDate)} has value but {nameof(payload.oneTimePayment)} is true"); + } + + if (payload.paymentDate == null && payload.counterparty is not SupplyResourceContractTypeOrganization && + payload.isContract && payload.oneTimePayment.HasValue && !payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.paymentDate)} is null but should have value"); + } + + if (payload.paymentDate != null && payload.oneTimePayment.HasValue && payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.paymentDate)} has value but {nameof(payload.oneTimePayment)} is true"); + } + + if (payload.providingInformationDate == null && payload.counterparty is SupplyResourceContractTypeOrganization && + payload.countingResource.HasValue && payload.countingResource.Value == SupplyResourceContractTypeCountingResource.R && + payload.isContract) + { + throw new ArgumentException($"{nameof(payload.providingInformationDate)} is null but should have value"); + } + + if (!payload.meteringDeviceInformation.HasValue && + payload.countingResource.HasValue && payload.countingResource == SupplyResourceContractTypeCountingResource.R) + { + throw new ArgumentException($"{nameof(payload.meteringDeviceInformation)} is null but should have value"); + } + + if (payload.volumeDepends.HasValue && (payload.counterparty is SupplyResourceContractTypeOrganization || + payload.oneTimePayment.HasValue && payload.oneTimePayment.Value)) + { + throw new ArgumentException($"{nameof(payload.volumeDepends)} has value but should have not one"); + } + + if (payload.oneTimePayment.HasValue && payload.counterparty is SupplyResourceContractTypeOrganization) + { + throw new ArgumentException($"{nameof(payload.oneTimePayment)} has value but {nameof(payload.counterparty)} has inappropriate value"); + } + + // TODO: Add accrualProcedure check + } + + private SupplyResourceContractType GetContractFromPayload(ImportSupplyResourceContractDataPayload payload) + { + // http://open-gkh.ru/HouseManagement/SupplyResourceContractType.html + var contract = new SupplyResourceContractType(); + + if (payload.isContract) + { + var isContract = new SupplyResourceContractTypeIsContract() + { + ContractNumber = payload.contractNumber, + SigningDate = payload.signingDate, + EffectiveDate = payload.effectiveDate + }; + contract.Item = isContract; + } + else + { + var isNotContract = new SupplyResourceContractTypeIsNotContract() + { + ContractNumber = payload.contractNumber, + SigningDate = payload.signingDate, + SigningDateSpecified = true, + EffectiveDate = payload.effectiveDate, + EffectiveDateSpecified = true + }; + contract.Item = isNotContract; + } + + var items = new List(); + var itemsElementName = new List(); + if (payload.indefiniteTerm) + { + items.Add(payload.indefiniteTerm); + itemsElementName.Add(ItemsChoiceType9.IndefiniteTerm); + } + if (payload.automaticRollOverOneYear) + { + items.Add(payload.automaticRollOverOneYear); + itemsElementName.Add(ItemsChoiceType9.AutomaticRollOverOneYear); + + items.Add(payload.comptetionDate.Value); + itemsElementName.Add(ItemsChoiceType9.ComptetionDate); + } + if (items.Count > 0 && itemsElementName.Count > 0) + { + contract.Items = [.. items]; + contract.ItemsElementName = [.. itemsElementName]; + } + + if (payload.period != null) + { + contract.Period = payload.period; + } + + if (payload.indicationsAnyDay) + { + contract.IndicationsAnyDay = true; + contract.IndicationsAnyDaySpecified = true; + } + + if (payload.contractBase != null && payload.contractBase.Length > 0) + { + contract.ContractBase = payload.contractBase; + } + + contract.Item1 = payload.counterparty; + contract.IsPlannedVolume = payload.isPlannedVolume; + + if (payload.plannedVolumeType.HasValue) + { + contract.PlannedVolumeType = payload.plannedVolumeType.Value; + contract.PlannedVolumeTypeSpecified = true; + } + + contract.ContractSubject = payload.contractSubject; + + if (payload.countingResource.HasValue) + { + contract.CountingResource = payload.countingResource.Value; + contract.CountingResourceSpecified = true; + } + + contract.SpecifyingQualityIndicators = payload.specifyingQualityIndicators; + + if (payload.noConnectionToWaterSupply) + { + contract.NoConnectionToWaterSupply = true; + contract.NoConnectionToWaterSupplySpecified = true; + } + + contract.ObjectAddress = payload.objectAddress; + contract.Quality = payload.quality; + contract.OtherQualityIndicator = payload.otherQualityIndicator; + contract.TemperatureChart = payload.temperatureChart; + contract.BillingDate = payload.billingDate; + contract.PaymentDate = payload.paymentDate; + contract.ProvidingInformationDate = payload.providingInformationDate; + + if (payload.meteringDeviceInformation.HasValue) + { + contract.MeteringDeviceInformation = payload.meteringDeviceInformation.Value; + contract.MeteringDeviceInformationSpecified = true; + } + + if (payload.volumeDepends.HasValue) + { + contract.VolumeDepends = payload.volumeDepends.Value; + contract.VolumeDependsSpecified = true; + } + + if (payload.oneTimePayment.HasValue) + { + contract.OneTimePayment = payload.oneTimePayment.Value; + contract.OneTimePaymentSpecified = true; + } + + if (payload.accrualProcedure.HasValue) + { + contract.AccrualProcedure = payload.accrualProcedure.Value; + contract.AccrualProcedureSpecified = true; + } + + contract.Tariff = payload.tariff; + contract.Norm = payload.norm; + + return contract; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractProjectRequest.cs b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractProjectRequest.cs new file mode 100644 index 0000000..f8fc54c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/HouseManagement/ImportSupplyResourceContractProjectRequest.cs @@ -0,0 +1,306 @@ +using Hcs.ClientNet.Api.Payload.HouseManagement; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.HouseManagement; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.HouseManagement +{ + internal class ImportSupplyResourceContractProjectRequest(ClientBase client) : HouseManagementRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportSupplyResourceContractProjectPayload payload, CancellationToken token) + { + ThrowIfPayloadIncorrect(payload); + + // http://open-gkh.ru/HouseManagement/importSupplyResourceContractProjectRequest/Contract.html + var contract = new importSupplyResourceContractProjectRequestContract + { + TransportGUID = Guid.NewGuid().ToString(), + Item1 = GetContractFromPayload(payload) + }; + + // http://open-gkh.ru/HouseManagement/importSupplyResourceContractProjectRequest.html + var request = new importSupplyResourceContractProjectRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "11.7.0.3", + Contract = [contract] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importSupplyResourceContractProjectDataAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + var importResults = result.Items.OfType(); + var commonResults = GetCommonResults(importResults); + foreach (var commonResult in commonResults) + { + if (commonResult.ItemElementName == ItemChoiceType26.ImportSupplyResourceContractProject) + { + if (commonResult.Item is getStateResultImportResultCommonResultImportSupplyResourceContractProject importedContract) + { + return importedContract; + } + } + } + + return null; + } + + // TODO: Дополнить проверки + private void ThrowIfPayloadIncorrect(ImportSupplyResourceContractProjectPayload payload) + { + if (string.IsNullOrEmpty(payload.contractNumber)) + { + throw new ArgumentException($"{nameof(payload.contractNumber)} is empty"); + } + + if (payload.signingDate.Equals(default) || payload.effectiveDate.Equals(default)) + { + throw new ArgumentException($"{nameof(payload.signingDate)} OR/AND {nameof(payload.effectiveDate)} are default"); + } + + if (!payload.comptetionDate.HasValue && payload.automaticRollOverOneYear) + { + throw new ArgumentException($"{nameof(payload.comptetionDate)} is null but {nameof(payload.automaticRollOverOneYear)} has value"); + } + + if (payload.period == null && (payload.volumeDepends.HasValue && payload.volumeDepends.Value + || payload.meteringDeviceInformation.HasValue && payload.meteringDeviceInformation.Value)) + { + throw new ArgumentException($"{nameof(payload.period)} is null but {nameof(payload.volumeDepends)} OR/AND {nameof(payload.meteringDeviceInformation)} have value"); + } + + if (payload.indicationsAnyDay && payload.period == null) + { + throw new ArgumentException($"{nameof(payload.indicationsAnyDay)} has value but {nameof(payload.period)} is null"); + } + + // TODO: Add counterparty check + + if (payload.plannedVolumeType.HasValue && !payload.isPlannedVolume) + { + throw new ArgumentException($"{nameof(payload.plannedVolumeType)} has value but {nameof(payload.isPlannedVolume)} is false"); + } + + if (payload.contractSubject == null || payload.contractSubject.Length == 0) + { + throw new ArgumentException($"{nameof(payload.contractSubject)} is empty"); + } + + if (payload.contractSubject != null && payload.contractSubject.Length > 100) + { + throw new ArgumentException($"{nameof(payload.contractSubject)} exceeds its limit ({payload.contractSubject.Length} of 100)"); + } + + if (payload.countingResource.HasValue && (!payload.accrualProcedure.HasValue || + payload.accrualProcedure.Value == SupplyResourceContractProjectTypeAccrualProcedure.O)) + { + throw new ArgumentException($"{nameof(payload.countingResource)} has value but {nameof(payload.accrualProcedure)} is null OR has inappropriate value"); + } + + // TODO: Add noConnectionToWaterSupply check + // TODO: Add quality check + // TODO: Add otherQualityIndicator check + // TODO: Add temperatureChart check + + if (payload.billingDate == null && (payload.counterparty is not SupplyResourceContractTypeOrganization || + payload.meteringDeviceInformation.HasValue)) + { + throw new ArgumentException($"{nameof(payload.billingDate)} is null but {nameof(payload.meteringDeviceInformation)} has value"); + } + + if (payload.billingDate != null && payload.oneTimePayment.HasValue && payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.billingDate)} has value but {nameof(payload.oneTimePayment)} is true"); + } + + if (payload.paymentDate == null && payload.counterparty is not SupplyResourceContractTypeOrganization && + payload.isContract && payload.oneTimePayment.HasValue && !payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.paymentDate)} is null but should have value"); + } + + if (payload.paymentDate != null && payload.oneTimePayment.HasValue && payload.oneTimePayment.Value) + { + throw new ArgumentException($"{nameof(payload.paymentDate)} has value but {nameof(payload.oneTimePayment)} is true"); + } + + if (payload.providingInformationDate == null && payload.counterparty is SupplyResourceContractTypeOrganization && + payload.countingResource.HasValue && payload.countingResource.Value == SupplyResourceContractProjectTypeCountingResource.R && + payload.isContract) + { + throw new ArgumentException($"{nameof(payload.providingInformationDate)} is null but should have value"); + } + + if (!payload.meteringDeviceInformation.HasValue && + payload.countingResource.HasValue && payload.countingResource == SupplyResourceContractProjectTypeCountingResource.R) + { + throw new ArgumentException($"{nameof(payload.meteringDeviceInformation)} is null but should have value"); + } + + if (payload.volumeDepends.HasValue && (payload.counterparty is SupplyResourceContractTypeOrganization || + payload.oneTimePayment.HasValue && payload.oneTimePayment.Value)) + { + throw new ArgumentException($"{nameof(payload.volumeDepends)} has value but should have not one"); + } + + if (payload.oneTimePayment.HasValue && payload.counterparty is SupplyResourceContractTypeOrganization) + { + throw new ArgumentException($"{nameof(payload.oneTimePayment)} has value but {nameof(payload.counterparty)} has inappropriate value"); + } + + // TODO: Add accrualProcedure check + } + + private SupplyResourceContractProjectType GetContractFromPayload(ImportSupplyResourceContractProjectPayload payload) + { + // http://open-gkh.ru/HouseManagement/SupplyResourceContractProjectType.html + var contract = new SupplyResourceContractProjectType(); + + if (payload.isContract) + { + var isContract = new SupplyResourceContractProjectTypeIsContract() + { + ContractNumber = payload.contractNumber, + SigningDate = payload.signingDate, + EffectiveDate = payload.effectiveDate + }; + contract.Item = isContract; + } + else + { + var isNotContract = new SupplyResourceContractProjectTypeIsNotContract() + { + ContractNumber = payload.contractNumber, + SigningDate = payload.signingDate, + SigningDateSpecified = true, + EffectiveDate = payload.effectiveDate, + EffectiveDateSpecified = true + }; + contract.Item = isNotContract; + } + + var items = new List(); + var itemsElementName = new List(); + if (payload.indefiniteTerm) + { + items.Add(payload.indefiniteTerm); + itemsElementName.Add(ItemsChoiceType14.IndefiniteTerm); + } + if (payload.automaticRollOverOneYear) + { + items.Add(payload.automaticRollOverOneYear); + itemsElementName.Add(ItemsChoiceType14.AutomaticRollOverOneYear); + + items.Add(payload.comptetionDate.Value); + itemsElementName.Add(ItemsChoiceType14.ComptetionDate); + } + if (items.Count > 0 && itemsElementName.Count > 0) + { + contract.Items = [.. items]; + contract.ItemsElementName = [.. itemsElementName]; + } + + if (payload.period != null) + { + contract.Period = payload.period; + } + + if (payload.indicationsAnyDay) + { + contract.IndicationsAnyDay = true; + contract.IndicationsAnyDaySpecified = true; + } + + if (payload.contractBase != null && payload.contractBase.Length > 0) + { + contract.ContractBase = payload.contractBase; + } + + contract.Item1 = payload.counterparty; + contract.IsPlannedVolume = payload.isPlannedVolume; + + if (payload.plannedVolumeType.HasValue) + { + contract.PlannedVolumeType = payload.plannedVolumeType.Value; + contract.PlannedVolumeTypeSpecified = true; + } + + contract.ContractSubject = payload.contractSubject; + + if (payload.countingResource.HasValue) + { + contract.CountingResource = payload.countingResource.Value; + contract.CountingResourceSpecified = true; + } + + contract.SpecifyingQualityIndicators = payload.specifyingQualityIndicators; + + if (payload.noConnectionToWaterSupply) + { + contract.NoConnectionToWaterSupply = true; + contract.NoConnectionToWaterSupplySpecified = true; + } + + contract.Quality = payload.quality; + contract.OtherQualityIndicator = payload.otherQualityIndicator; + contract.TemperatureChart = payload.temperatureChart; + contract.BillingDate = payload.billingDate; + contract.PaymentDate = payload.paymentDate; + contract.ProvidingInformationDate = payload.providingInformationDate; + + if (payload.meteringDeviceInformation.HasValue) + { + contract.MeteringDeviceInformation = payload.meteringDeviceInformation.Value; + contract.MeteringDeviceInformationSpecified = true; + } + + if (payload.volumeDepends.HasValue) + { + contract.VolumeDepends = payload.volumeDepends.Value; + contract.VolumeDependsSpecified = true; + } + + if (payload.oneTimePayment.HasValue) + { + contract.OneTimePayment = payload.oneTimePayment.Value; + contract.OneTimePaymentSpecified = true; + } + + if (payload.accrualProcedure.HasValue) + { + contract.AccrualProcedure = payload.accrualProcedure.Value; + contract.AccrualProcedureSpecified = true; + } + + if (!string.IsNullOrEmpty(payload.regionCodeFias)) + { + contract.RegionalSettings = new SupplyResourceContractProjectTypeRegionalSettings() + { + Region = new RegionType() + { + code = payload.regionCodeFias + }, + Tariff = payload.tariff, + Norm = payload.norm + }; + } + + return contract; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Nsi/ExportDataProviderNsiItemRequest.cs b/Hcs.ClientNet/Client/Api/Request/Nsi/ExportDataProviderNsiItemRequest.cs new file mode 100644 index 0000000..9095795 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Nsi/ExportDataProviderNsiItemRequest.cs @@ -0,0 +1,31 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.Nsi; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Nsi +{ + internal class ExportDataProviderNsiItemRequest(ClientBase client) : NsiRequestBase(client) + { + internal async Task> ExecuteAsync(exportDataProviderNsiItemRequestRegistryNumber registryNumber, CancellationToken token) + { + // http://open-gkh.ru/Nsi/exportDataProviderNsiItemRequest.html + var request = new exportDataProviderNsiItemRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.2", + RegistryNumber = registryNumber + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportDataProviderNsiItemAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Nsi/NsiRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/Nsi/NsiRequestBase.cs new file mode 100644 index 0000000..2db9868 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Nsi/NsiRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.Nsi; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.Nsi +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class NsiPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(RequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.Nsi +{ + internal class NsiRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.NsiAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + protected override bool CanBeRestarted => true; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiItemRequest.cs b/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiItemRequest.cs new file mode 100644 index 0000000..3da97f9 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiItemRequest.cs @@ -0,0 +1,30 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.NsiCommon; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.NsiCommon +{ + internal class ExportNsiItemRequest(ClientBase client) : NsiCommonRequestBase(client) + { + internal async Task ExecuteAsync(int registryNumber, ListGroup listGroup, CancellationToken token) + { + // http://open-gkh.ru/NsiCommon/exportNsiItemRequest.html + var request = new exportNsiItemRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.2", + RegistryNumber = registryNumber.ToString(), + ListGroup = listGroup + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportNsiItemAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Item as NsiItemType; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiListRequest.cs b/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiListRequest.cs new file mode 100644 index 0000000..3961d6d --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/NsiCommon/ExportNsiListRequest.cs @@ -0,0 +1,29 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.NsiCommon; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.NsiCommon +{ + internal class ExportNsiListRequest(ClientBase client) : NsiCommonRequestBase(client) + { + internal async Task ExecuteAsync(ListGroup listGroup, CancellationToken token) + { + // http://open-gkh.ru/NsiCommon/exportNsiListRequest.html + var request = new exportNsiListRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.2", + ListGroup = listGroup + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportNsiListAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Item as NsiListType; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/NsiCommon/NsiCommonRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/NsiCommon/NsiCommonRequestBase.cs new file mode 100644 index 0000000..c3e6892 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/NsiCommon/NsiCommonRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.NsiCommon; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.NsiCommon +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultOne { } +#pragma warning restore IDE1006 + + public partial class NsiPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(ISRequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.NsiCommon +{ + internal class NsiCommonRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.NsiCommonAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + protected override bool CanBeRestarted => true; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportDataProviderRequest.cs b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportDataProviderRequest.cs new file mode 100644 index 0000000..0ea6a09 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportDataProviderRequest.cs @@ -0,0 +1,36 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.OrgRegistryCommon; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.OrgRegistryCommon +{ + internal class ExportDataProviderRequest(ClientBase client) : OrgRegistryCommonRequestBase(client) + { + internal async Task> ExecuteAsync(bool isActual, CancellationToken token) + { + // http://open-gkh.ru/OrganizationsRegistryCommon/exportDataProviderRequest.html + var request = new exportDataProviderRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.2.1" + }; + + if (isActual) + { + request.IsActual = true; + request.IsActualSpecified = true; + } + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportDataProviderAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportOrgRegistryRequest.cs b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportOrgRegistryRequest.cs new file mode 100644 index 0000000..df7c5cf --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/ExportOrgRegistryRequest.cs @@ -0,0 +1,50 @@ +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.OrgRegistryCommon; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.OrgRegistryCommon +{ + internal class ExportOrgRegistryRequest(ClientBase client) : OrgRegistryCommonRequestBase(client) + { + private const int OGRN_LENGTH = 13; + + internal async Task> ExecuteAsync(string ogrn, string kpp, CancellationToken token) + { + if (ogrn.Length != OGRN_LENGTH) + { + throw new System.ArgumentException($"The length of {ogrn} is incorrect"); + } + + var criteria = new exportOrgRegistryRequestSearchCriteria(); + if (!string.IsNullOrEmpty(kpp)) + { + criteria.Items = [ogrn, kpp]; + criteria.ItemsElementName = [ItemsChoiceType3.OGRN, ItemsChoiceType3.KPP]; + } + else + { + criteria.Items = [ogrn]; + criteria.ItemsElementName = [ItemsChoiceType3.OGRN]; + } + + // http://open-gkh.ru/OrganizationsRegistryCommon/exportOrgRegistryRequest.html + var request = new exportOrgRegistryRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.2.1", + SearchCriteria = [criteria] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.exportOrgRegistryAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + return result.Items.OfType(); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/OrgRegistryCommonRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/OrgRegistryCommonRequestBase.cs new file mode 100644 index 0000000..1641d57 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/OrgRegistryCommon/OrgRegistryCommonRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.OrgRegistryCommon; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.OrgRegistryCommon +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class RegOrgPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(ISRequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.OrgRegistryCommon +{ + internal class OrgRegistryCommonRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.OrgRegistryCommonAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + protected override bool CanBeRestarted => true; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/PaginationData.cs b/Hcs.ClientNet/Client/Api/Request/PaginationData.cs new file mode 100644 index 0000000..bd1f3d2 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/PaginationData.cs @@ -0,0 +1,54 @@ +using System; + +namespace Hcs.ClientNet.Api.Request +{ + internal class PaginationData + { + /// + /// Состояние, указывающее на то, что это последняя страница + /// + internal bool IsLastPage { get; private set; } + + /// + /// Идентификатор следующей страницы + /// + internal Guid NextGuid { get; private set; } + + public PaginationData(object item) + { + if (item == null) + { + throw new System.Exception($"[{nameof(PaginationData)}] item is null"); + } + else if (item is bool boolItem) + { + if (boolItem == false) + { + throw new System.Exception($"[{nameof(PaginationData)}] item is false"); + } + + IsLastPage = true; + } + else if (item is string stringItem) + { + IsLastPage = false; + NextGuid = Guid.Parse(stringItem); + } + else + { + throw new System.Exception($"[{nameof(PaginationData)}] failed to handle item of {item.GetType().FullName} type"); + } + } + + internal static PaginationData CreateLastPageData() + { + return new PaginationData(true); + } + + public override string ToString() + { + return $"[{nameof(PaginationData)}] {nameof(IsLastPage)} = {IsLastPage}" + + (IsLastPage ? "" : $", {nameof(NextGuid)} = {NextGuid}"); + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Payments/ImportNotificationsOfOrderExecutionRequest.cs b/Hcs.ClientNet/Client/Api/Request/Payments/ImportNotificationsOfOrderExecutionRequest.cs new file mode 100644 index 0000000..9fa9839 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Payments/ImportNotificationsOfOrderExecutionRequest.cs @@ -0,0 +1,111 @@ +using Hcs.ClientNet.Api.Payload.Payments; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.Payments; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Payments +{ + internal class ImportNotificationsOfOrderExecutionRequest(ClientBase client) : PaymentsRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportNotificationsOfOrderExecutionPayload payload, CancellationToken token) + { + ThrowIfPayloadIncorrect(payload); + + // http://open-gkh.ru/Payment/importNotificationsOfOrderExecutionRequest.html + var request = new importNotificationsOfOrderExecutionRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.1", + Items = [GetNotificationFromPayload(payload)] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importNotificationsOfOrderExecutionAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + result.Items.OfType().ToList().ForEach(commonResult => + { + commonResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + }); + + return true; + } + + private void ThrowIfPayloadIncorrect(ImportNotificationsOfOrderExecutionPayload payload) + { + if (string.IsNullOrEmpty(payload.orderId)) + { + throw new ArgumentException($"{nameof(payload.orderId)} is empty"); + } + + if (payload.month.HasValue && !payload.year.HasValue) + { + throw new ArgumentException($"{nameof(payload.month)} has value but {nameof(payload.year)} has not"); + } + + if (!payload.month.HasValue && payload.year.HasValue) + { + throw new ArgumentException($"{nameof(payload.year)} has value but {nameof(payload.month)} has not"); + } + + if (string.IsNullOrEmpty(payload.paymentDocumentId)) + { + throw new ArgumentException($"{nameof(payload.paymentDocumentId)} is empty"); + } + + if (string.IsNullOrEmpty(payload.paymentDocumentGUID)) + { + throw new ArgumentException($"{nameof(payload.paymentDocumentGUID)} is empty"); + } + } + + private importNotificationsOfOrderExecutionRequestNotificationOfOrderExecution139Type GetNotificationFromPayload(ImportNotificationsOfOrderExecutionPayload payload) + { + var notification = new importNotificationsOfOrderExecutionRequestNotificationOfOrderExecution139Type() + { + TransportGUID = Guid.NewGuid().ToString(), + OrderInfo = new NotificationOfOrderExecution139TypeOrderInfo() + { + OrderID = payload.orderId, + OrderDate = payload.orderDate, + Amount = payload.amount, + Items = [payload.paymentDocumentId, payload.paymentDocumentGUID], + ItemsElementName = [ItemsChoiceType4.PaymentDocumentID, ItemsChoiceType4.PaymentDocumentGUID] + } + }; + + if (payload.onlinePayment.HasValue && payload.onlinePayment.Value) + { + notification.OrderInfo.OnlinePayment = true; + notification.OrderInfo.OnlinePaymentSpecified = true; + } + + if (payload.month.HasValue) + { + notification.OrderInfo.MonthAndYear = new NotificationOfOrderExecution139TypeOrderInfoMonthAndYear() + { + Year = payload.year.Value, + Month = payload.month.Value + }; + } + + return notification; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Payments/ImportSupplierNotificationsOfOrderExecutionRequest.cs b/Hcs.ClientNet/Client/Api/Request/Payments/ImportSupplierNotificationsOfOrderExecutionRequest.cs new file mode 100644 index 0000000..76121e3 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Payments/ImportSupplierNotificationsOfOrderExecutionRequest.cs @@ -0,0 +1,97 @@ +using Hcs.ClientNet.Api.Payload.Payments; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using Hcs.Service.Async.Payments; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request.Payments +{ + internal class ImportSupplierNotificationsOfOrderExecutionRequest(ClientBase client) : PaymentsRequestBase(client) + { + protected override bool CanBeRestarted => false; + + internal async Task ExecuteAsync(ImportSupplierNotificationsOfOrderExecutionPayload payload, CancellationToken token) + { + ThrowIfPayloadIncorrect(payload); + + // http://open-gkh.ru/Payment/importSupplierNotificationsOfOrderExecutionRequest.html + var request = new importSupplierNotificationsOfOrderExecutionRequest + { + Id = Constants.SIGNED_XML_ELEMENT_ID, + version = "10.0.1.1", + SupplierNotificationOfOrderExecution = [GetNotificationFromPayload(payload)] + }; + + var result = await SendAndWaitResultAsync(request, async asyncClient => + { + var response = await asyncClient.importSupplierNotificationsOfOrderExecutionAsync(CreateRequestHeader(), request); + return response.AckRequest.Ack; + }, token); + + result.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + + result.Items.OfType().ToList().ForEach(commonResult => + { + commonResult.Items.OfType().ToList().ForEach(error => + { + throw RemoteException.CreateNew(error.ErrorCode, error.Description); + }); + }); + + return true; + } + + private void ThrowIfPayloadIncorrect(ImportSupplierNotificationsOfOrderExecutionPayload payload) + { + if (payload.month.HasValue && !payload.year.HasValue) + { + throw new ArgumentException($"{nameof(payload.month)} has value but {nameof(payload.year)} has not"); + } + + if (!payload.month.HasValue && payload.year.HasValue) + { + throw new ArgumentException($"{nameof(payload.year)} has value but {nameof(payload.month)} has not"); + } + + if (string.IsNullOrEmpty(payload.paymentDocumentId)) + { + throw new ArgumentException($"{nameof(payload.paymentDocumentId)} is empty"); + } + } + + private importSupplierNotificationsOfOrderExecutionRequestSupplierNotificationOfOrderExecution GetNotificationFromPayload(ImportSupplierNotificationsOfOrderExecutionPayload payload) + { + var notification = new importSupplierNotificationsOfOrderExecutionRequestSupplierNotificationOfOrderExecution() + { + TransportGUID = Guid.NewGuid().ToString(), + OrderDate = payload.orderDate, + Item = payload.paymentDocumentId, + ItemElementName = ItemChoiceType1.PaymentDocumentID, + Amount = payload.amount + }; + + if (payload.month.HasValue) + { + notification.OrderPeriod = new SupplierNotificationOfOrderExecutionTypeOrderPeriod() + { + Month = payload.month.Value, + Year = payload.year.Value + }; + } + + if (payload.onlinePayment.HasValue && payload.onlinePayment.Value) + { + notification.OnlinePayment = true; + notification.OnlinePaymentSpecified = true; + } + + return notification; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/Payments/PaymentsRequestBase.cs b/Hcs.ClientNet/Client/Api/Request/Payments/PaymentsRequestBase.cs new file mode 100644 index 0000000..e338f7c --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/Payments/PaymentsRequestBase.cs @@ -0,0 +1,55 @@ +using Hcs.ClientNet.Api.Request; +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.Service.Async.Payments; +using System.Threading.Tasks; + +namespace Hcs.Service.Async.Payments +{ +#pragma warning disable IDE1006 + public partial class getStateResult : IGetStateResultMany { } +#pragma warning restore IDE1006 + + public partial class PaymentPortsTypeAsyncClient : IAsyncClient + { + public async Task GetStateAsync(RequestHeader header, IGetStateRequest request) + { + return await getStateAsync(header, (getStateRequest)request); + } + } + +#pragma warning disable IDE1006 + public partial class getStateResponse : IGetStateResponse +#pragma warning restore IDE1006 + { + public IGetStateResult GetStateResult => getStateResult; + } + + public partial class AckRequestAck : IAck { } + + public partial class ErrorMessageType : IErrorMessage { } + +#pragma warning disable IDE1006 + public partial class getStateRequest : IGetStateRequest { } +#pragma warning restore IDE1006 +} + +namespace Hcs.ClientNet.Api.Request.Payments +{ + internal class PaymentsRequestBase(ClientBase client) : + RequestBase(client) + { + protected override EndPoint EndPoint => EndPoint.PaymentsAsync; + + protected override bool EnableMinimalResponseWaitDelay => true; + + protected override bool CanBeRestarted => true; + + protected override int RestartTimeoutMinutes => 20; + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/RequestBase.cs b/Hcs.ClientNet/Client/Api/Request/RequestBase.cs new file mode 100644 index 0000000..f998c99 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/RequestBase.cs @@ -0,0 +1,423 @@ +using Hcs.ClientNet.Api.Request.Adapter; +using Hcs.ClientNet.Api.Request.Exception; +using Hcs.ClientNet.Internal; +using System; +using System.Linq; +using System.Security.Cryptography.X509Certificates; +using System.ServiceModel; +using System.ServiceModel.Channels; +using System.ServiceModel.Description; +using System.Text; +using System.Threading; +using System.Threading.Tasks; + +namespace Hcs.ClientNet.Api.Request +{ + internal abstract class RequestBase + where TResult : IGetStateResult + where TAsyncClient : ClientBase, TChannel, IAsyncClient + where TChannel : class + where TRequestHeader : class + where TAck : IAck + where TErrorMessage : IErrorMessage + where TGetStateRequest : IGetStateRequest, new() + { + private const int RESPONSE_WAIT_DELAY_MIN = 2; + private const int RESPONSE_WAIT_DELAY_MAX = 5; + + // "[EXP001000] Произошла ошибка при передаче данных. Попробуйте осуществить передачу данных повторно". + // Видимо, эту ошибку нельзя включать здесь. Предположительно это маркер DDOS защиты и если отправлять + // точно такой же пакет повторно, то ошибка входит в бесконечный цикл - необходимо заново + // собирать пакет с новыми кодами и временем и новой подписью. Такую ошибку надо обнаруживать + // на более высоком уровне и заново отправлять запрос новым пакетом. + private static readonly string[] ignorableSystemErrorMarkers = [ + "Истекло время ожидания шлюза", + "Базовое соединение закрыто: Соединение, которое должно было работать, было разорвано сервером", + "Попробуйте осуществить передачу данных повторно", + "(502) Недопустимый шлюз", + "(503) Сервер не доступен" + ]; + + protected ClientBase client; + protected CustomBinding binding; + + protected abstract EndPoint EndPoint { get; } + + /// + /// Для запросов, возвращающих мало данных, можно попробовать сократить + /// начальный период ожидания подготовки ответа + /// + protected abstract bool EnableMinimalResponseWaitDelay { get; } + + /// + /// Указывает на то, что можно ли этот метод перезапускать в случае зависания + /// ожидания или в случае сбоя на сервере + /// + protected abstract bool CanBeRestarted { get; } + + /// + /// Для противодействия зависанию ожидания вводится предел ожидания в минутах + /// для запросов, которые можно перезапустить заново с теми же параметрами + /// + protected abstract int RestartTimeoutMinutes { get; } + + private EndpointAddress RemoteAddress => new(client.ComposeEndpointUri(EndPointLocator.GetPath(EndPoint))); + + private string ThreadIdText => $"(Thread #{ThreadId})"; + + /// + /// Возвращает идентификатор текущего исполняемого потока + /// + private int ThreadId => Environment.CurrentManagedThreadId; + + public RequestBase(ClientBase client) + { + this.client = client; + + ConfigureBinding(); + } + + private void ConfigureBinding() + { + binding = new CustomBinding + { + CloseTimeout = TimeSpan.FromSeconds(180), + OpenTimeout = TimeSpan.FromSeconds(180), + ReceiveTimeout = TimeSpan.FromSeconds(180), + SendTimeout = TimeSpan.FromSeconds(180) + }; + + binding.Elements.Add(new TextMessageEncodingBindingElement + { + MessageVersion = MessageVersion.Soap11, + WriteEncoding = Encoding.UTF8 + }); + + if (client.UseTunnel) + { + if (!System.Diagnostics.Process.GetProcessesByName("stunnel").Any()) + { + throw new System.Exception("stunnel is not running"); + } + + binding.Elements.Add(new HttpTransportBindingElement + { + AuthenticationScheme = (client.IsPPAK ? System.Net.AuthenticationSchemes.Digest : System.Net.AuthenticationSchemes.Basic), + MaxReceivedMessageSize = int.MaxValue, + UseDefaultWebProxy = false + }); + } + else + { + binding.Elements.Add(new HttpsTransportBindingElement + { + AuthenticationScheme = (client.IsPPAK ? System.Net.AuthenticationSchemes.Digest : System.Net.AuthenticationSchemes.Basic), + MaxReceivedMessageSize = int.MaxValue, + RequireClientCertificate = true, + UseDefaultWebProxy = false + }); + } + } + + protected async Task SendAndWaitResultAsync( + object request, + Func> sender, + CancellationToken token) + { + token.ThrowIfCancellationRequested(); + + while (true) + { + try + { + if (CanBeRestarted) + { + return await RunRepeatableTaskInsistentlyAsync( + async () => await ExecuteSendAndWaitResultAsync(request, sender, token), token); + } + else + { + return await ExecuteSendAndWaitResultAsync(request, sender, token); + } + } + catch (RestartTimeoutException e) + { + if (!CanBeRestarted) + { + throw new System.Exception("Cannot restart request execution on timeout", e); + } + + client.TryLog($"Restarting {request.GetType().Name} request execution..."); + } + } + } + + /// + /// Для запросов к серверу которые можно направлять несколько раз, разрешаем + /// серверу аномально отказаться. Предполагается, что здесь мы игнорируем + /// только жесткие отказы серверной инфраструктуры, которые указывают + /// что запрос даже не был принят в обработку. Также все запросы на + /// чтение можно повторять в случае их серверных системных ошибок. + /// + protected async Task RunRepeatableTaskInsistentlyAsync( + Func> func, CancellationToken token) + { + var afterErrorDelaySec = 120; + for (var attempt = 1; ; attempt++) + { + try + { + return await func(); + } + catch (System.Exception e) + { + if (CanIgnoreSuchException(e, out string marker)) + { + client.TryLog($"Ignoring error of attempt #{attempt} with type [{marker}]"); + client.TryLog($"Waiting {afterErrorDelaySec} sec until next attempt..."); + + await Task.Delay(afterErrorDelaySec * 1000, token); + + continue; + } + + if (e is RestartTimeoutException) + { + throw e; + } + + if (e is RemoteException) + { + throw RemoteException.CreateNew(e as RemoteException); + } + + throw new System.Exception("Cannot ignore this exception", e); + } + } + } + + private bool CanIgnoreSuchException(System.Exception e, out string resultMarker) + { + foreach (var marker in ignorableSystemErrorMarkers) + { + var found = Util.EnumerateInnerExceptions(e).Find( + x => x.Message != null && x.Message.Contains(marker)); + if (found != null) + { + resultMarker = marker; + + return true; + } + } + + resultMarker = null; + + return false; + } + + private async Task ExecuteSendAndWaitResultAsync( + object request, + Func> sender, + CancellationToken token) + { + if (request == null) + { + throw new ArgumentNullException(nameof(request)); + } + + var version = RequestHelper.GetRequestVersionString(request); + client.TryLog($"Executing request {RemoteAddress.Uri}/{request.GetType().Name} of version {version}..."); + + TAck ack; + + var stopWatch = System.Diagnostics.Stopwatch.StartNew(); + using (var asyncClient = CreateAsyncClient()) + { + ack = await sender(asyncClient); + } + stopWatch.Stop(); + + client.TryLog($"Request executed in {stopWatch.ElapsedMilliseconds} ms, result GUID is {ack.MessageGUID}"); + + var result = await WaitForResultAsync(ack, true, token); + if (result is IQueryable queryableResult) + { + queryableResult.OfType().ToList().ForEach(x => + { + throw RemoteException.CreateNew(x.ErrorCode, x.Description); + }); + } + else if (result is TErrorMessage x) + { + throw RemoteException.CreateNew(x.ErrorCode, x.Description); + } + return result; + } + + private TAsyncClient CreateAsyncClient() + { + var asyncClient = (TAsyncClient)Activator.CreateInstance(typeof(TAsyncClient), binding, RemoteAddress); + ConfigureEndpointCredentials(asyncClient.Endpoint, asyncClient.ClientCredentials); + return asyncClient; + } + + private void ConfigureEndpointCredentials( + ServiceEndpoint serviceEndpoint, ClientCredentials clientCredentials) + { + serviceEndpoint.EndpointBehaviors.Add(new GostSigningEndpointBehavior(client)); + + if (!client.IsPPAK) + { + clientCredentials.UserName.UserName = Constants.NAME_SIT; + clientCredentials.UserName.Password = Constants.PASSWORD_SIT; + } + + System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate ( + object sender, X509Certificate serverCertificate, X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors) + { + return true; + }; + + if (!client.UseTunnel) + { + clientCredentials.ClientCertificate.SetCertificate( + StoreLocation.CurrentUser, + StoreName.My, + X509FindType.FindByThumbprint, + client.CertificateThumbprint); + } + } + + /// + /// Основной алгоритм ожидания ответа на асинхронный запрос. + /// Из документации ГИС ЖКХ: + /// Также рекомендуем придерживаться следующего алгоритма отправки запросов на получение статуса обработки пакета в случае использования асинхронных сервисов ГИС ЖКХ (в рамках одного MessageGUID): + /// - первый запрос getState направлять не ранее чем через 10 секунд, после получения квитанции о приеме пакета с бизнес-данными от сервиса ГИС КЖХ; + /// - в случае, если на первый запрос getSate получен результат с RequestState равным "1" или "2", то следующий запрос getState необходимо направлять не ранее чем через 60 секунд после отправки предыдущего запроса; + /// - в случае, если на второй запрос getSate получен результат с RequestState равным "1" или "2", то следующий запрос getState необходимо направлять не ранее чем через 300 секунд после отправки предыдущего запроса; + /// - в случае, если на третий запрос getSate получен результат с RequestState равным "1" или "2", то следующий запрос getState необходимо направлять не ранее чем через 900 секунд после отправки предыдущего запроса; + /// - в случае, если на четвертый(и все последующие запросы) getState получен результат с RequestState равным "1" или "2", то следующий запрос getState необходимо направлять не ранее чем через 1800 секунд после отправки предыдущего запроса. + /// + private async Task WaitForResultAsync( + TAck ack, bool withInitialDelay, CancellationToken token) + { + TResult result; + + var startTime = DateTime.Now; + for (var attempts = 1; ; attempts++) + { + token.ThrowIfCancellationRequested(); + + var delaySec = EnableMinimalResponseWaitDelay ? RESPONSE_WAIT_DELAY_MIN : RESPONSE_WAIT_DELAY_MAX; + if (attempts >= 2) + { + delaySec = RESPONSE_WAIT_DELAY_MAX; + } + if (attempts >= 3) + { + delaySec = RESPONSE_WAIT_DELAY_MAX * 2; + } + if (attempts >= 5) + { + delaySec = RESPONSE_WAIT_DELAY_MAX * 4; + } + if (attempts >= 7) + { + delaySec = RESPONSE_WAIT_DELAY_MAX * 8; + } + if (attempts >= 9) + { + delaySec = RESPONSE_WAIT_DELAY_MAX * 16; + } + if (attempts >= 12) + { + delaySec = RESPONSE_WAIT_DELAY_MAX * 60; + } + + if (attempts > 1 || withInitialDelay) + { + var minutesElapsed = (int)(DateTime.Now - startTime).TotalMinutes; + if (CanBeRestarted && minutesElapsed > RestartTimeoutMinutes) + { + throw new RestartTimeoutException($"{RestartTimeoutMinutes} minute(s) wait time exceeded"); + } + + client.TryLog($"Waiting {delaySec} sec for attempt #{attempts}" + + $" to get response ({minutesElapsed} minute(s) elapsed)..."); + + await Task.Delay(delaySec * 1000, token); + } + + client.TryLog($"Requesting response, attempt #{attempts} in {ThreadIdText}..."); + + result = await TryGetResultAsync(ack); + + if (result != null) + { + break; + } + } + + client.TryLog($"Response received!"); + + return result; + } + + /// + /// Выполняет однократную проверку наличия результата. + /// Возвращает default если результата еще нет. + /// + private async Task TryGetResultAsync(TAck ack) + { + using var asyncClient = CreateAsyncClient(); + var requestHeader = RequestHelper.CreateHeader(client); + var requestBody = new TGetStateRequest + { + MessageGUID = ack.MessageGUID + }; + var response = await asyncClient.GetStateAsync(requestHeader, requestBody); + var result = response.GetStateResult; + if (result.RequestState == (int)AsyncRequestStateType.Ready) + { + return (TResult)result; + } + return default; + } + + protected TRequestHeader CreateRequestHeader() + { + return RequestHelper.CreateHeader(client); + } + + /// + /// Исполнение повторяемой операции некоторое допустимое число ошибок + /// + protected async Task RunRepeatableTaskAsync( + Func> taskFunc, Func canIgnoreFunc, int maxAttempts) + { + for (var attempts = 1; ; attempts++) + { + try + { + return await taskFunc(); + } + catch (System.Exception e) + { + if (canIgnoreFunc(e)) + { + if (attempts < maxAttempts) + { + client.TryLog($"Ignoring error of attempt #{attempts} of {maxAttempts} attempts"); + + continue; + } + + throw new System.Exception("Too much attempts with error"); + } + + throw e; + } + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/RequestHelper.cs b/Hcs.ClientNet/Client/Api/Request/RequestHelper.cs new file mode 100644 index 0000000..3744a86 --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/RequestHelper.cs @@ -0,0 +1,101 @@ +using System; +using System.Linq; + +namespace Hcs.ClientNet.Api.Request +{ + internal static class RequestHelper + { + /// + /// Подготовка заголовка сообщения отправляемого в ГИС ЖКХ с обязательными атрибутами. + /// Заголовки могут быть разного типа для разных типов сообщений, но имена полей одинаковые. + /// + internal static THeader CreateHeader(ClientBase client) where THeader : class + { + try + { + var instance = Activator.CreateInstance(typeof(THeader)); + foreach (var prop in instance.GetType().GetProperties()) + { + switch (prop.Name) + { + case "Item": + prop.SetValue(instance, client.OrgPPAGUID); + break; + + case "ItemElementName": + prop.SetValue(instance, Enum.Parse(prop.PropertyType, "orgPPAGUID")); + break; + + case "MessageGUID": + prop.SetValue(instance, Guid.NewGuid().ToString()); + break; + + case "Date": + prop.SetValue(instance, DateTime.Now); + break; + + case "IsOperatorSignatureSpecified": + if (client.Role == OrganizationRole.RC || client.Role == OrganizationRole.RSO) + { + prop.SetValue(instance, true); + } + break; + + case "IsOperatorSignature": + if (client.Role == OrganizationRole.RC || client.Role == OrganizationRole.RSO) + { + prop.SetValue(instance, true); + } + break; + } + } + + return instance as THeader; + } + catch (ArgumentNullException e) + { + throw new ApplicationException($"Error occured while building request header: {e.Message}"); + } + catch (SystemException e) + { + throw new ApplicationException($"Error occured while building request header: {e.GetBaseException().Message}"); + } + } + + /// + /// Для объекта запроса возвращает значение строки свойства version + /// + internal static string GetRequestVersionString(object requestObject) + { + if (requestObject == null) + { + return null; + } + + var versionHost = requestObject; + if (versionHost != null) + { + var versionProperty = versionHost.GetType().GetProperties().FirstOrDefault(x => x.Name == "version"); + if (versionProperty != null) + { + return versionProperty.GetValue(versionHost) as string; + } + } + + foreach (var field in requestObject.GetType().GetFields()) + { + versionHost = field.GetValue(requestObject); + if (versionHost != null) + { + var versionProperty = versionHost.GetType().GetProperties().FirstOrDefault(x => x.Name == "version"); + if (versionProperty != null) + { + return versionProperty.GetValue(versionHost) as string; + } + } + } + + return null; + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Request/X509Tools.cs b/Hcs.ClientNet/Client/Api/Request/X509Tools.cs new file mode 100644 index 0000000..f3ed3ce --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Request/X509Tools.cs @@ -0,0 +1,172 @@ +using Org.BouncyCastle.Asn1; +using System; +using System.Security.Cryptography.X509Certificates; +using System.Text; + +namespace Hcs.ClientNet.Api.Request +{ + internal class X509Tools + { + private const string PRIVATE_KEY_USAGE_PERIOD = "2.5.29.16"; + + public static string GetFullnameWithExpirationDateStr(X509Certificate2 x509cert) + { + var (фамилия, имя, отчество) = GetFullname(x509cert); + return (string.IsNullOrEmpty(фамилия) ? "" : $"{фамилия} ") + (string.IsNullOrEmpty(имя) ? "" : $"{имя} ") + + (string.IsNullOrEmpty(отчество) ? "" : $"{отчество} ") + "until " + GetNotAfterDate(x509cert).ToString("dd.MM.yyyy"); + } + + /// + /// Возвращает массив из трех строк, содержащих соответственно Фамилию, Имя и Отчество + /// полученных из данных сертификата. Если сертификат не содержит ФИО, то возвращается массив + /// из трех пустых строк. Это не точный метод определять имя, он предполагает, что + /// поля SN, G, CN содержат ФИО в определенном порядке, что правдоподобно но не обязательно. + /// + private static (string Фамилия, string Имя, string Отчество) GetFullname(X509Certificate2 x509cert) + { + string фам = "", имя = "", отч = ""; + + // Сначала ищем поля surname (SN) и given-name (G) + var sn = DecodeSubjectField(x509cert, "SN"); + var g = DecodeSubjectField(x509cert, "G"); + if (!string.IsNullOrEmpty(sn) && !string.IsNullOrEmpty(g)) + { + фам = sn; + + var gParts = g.Split(' '); + if (gParts != null && gParts.Length >= 1) + { + имя = gParts[0]; + } + if (gParts != null && gParts.Length >= 2) + { + отч = gParts[1]; + } + } + else + { + // Иначе берем три первых слова из common name (CN), игнорируя кавычки + var cn = DecodeSubjectField(x509cert, "CN"); + if (!string.IsNullOrEmpty(cn)) + { + cn = new StringBuilder(cn).Replace("\"", "").ToString(); + + char[] separators = [' ', ';']; + var cnParts = cn.Split(separators); + if (cnParts != null && cnParts.Length >= 1) + { + фам = cnParts[0]; + } + if (cnParts != null && cnParts.Length >= 2) + { + имя = cnParts[1]; + } + if (cnParts != null && cnParts.Length >= 3) + { + отч = cnParts[2]; + } + } + } + + return (фам, имя, отч); + } + + /// + /// Возвращает значение поля с именем @subName включенного в различимое имя Subject + /// + private static string DecodeSubjectField(X509Certificate2 x509cert, string subName) + { + // Чтобы посмотреть все поля сертификата + //System.Diagnostics.Trace.WriteLine("x509decode = " + x509cert.SubjectName.Decode( + //X500DistinguishedNameFlags.UseNewLines)); + + // Декодируем различимое имя на отдельные строки через переводы строк для надежности разбора + var decoded = x509cert.SubjectName.Decode(X500DistinguishedNameFlags.UseNewLines); + char[] separators = ['\n', '\r']; + var parts = decoded.Split(separators, StringSplitOptions.RemoveEmptyEntries); + if (parts == null) + { + return null; + } + + // Каждая часть начинается с имени и отделяется от значения символом равно + foreach (var part in parts) + { + if (part.Length <= subName.Length + 1) + { + continue; + } + + if (part.StartsWith(subName) && part[subName.Length] == '=') + { + return part.Substring(subName.Length + 1); + } + } + + return null; + } + + /// + /// Возвращает дату окончания действия сертификата + /// + private static DateTime GetNotAfterDate(X509Certificate2 x509cert) + { + // Сначала пытаемся определить срок первичного ключа, а затем уже самого сертификата + var датаОкончания = GetPrivateKeyUsageEndDate(x509cert); + if (датаОкончания != null) + { + return (DateTime)датаОкончания; + } + return x509cert.NotAfter; + } + + private static DateTime? GetPrivateKeyUsageEndDate(X509Certificate2 x509cert) + { + foreach (var ext in x509cert.Extensions) + { + if (ext.Oid.Value == PRIVATE_KEY_USAGE_PERIOD) + { + // Дата начала с индексом 0, дата окончания с индексом 1 + return ParseAsn1Datetime(ext, 1); + } + } + return null; + } + + /// + /// Разбирает значение типа дата из серии значений ASN1 присоединенных к расширению + /// + private static DateTime? ParseAsn1Datetime(X509Extension ext, int valueIndex) + { + try + { + var asnObject = (new Asn1InputStream(ext.RawData)).ReadObject(); + if (asnObject == null) + { + return null; + } + + var asnSequence = Asn1Sequence.GetInstance(asnObject); + if (asnSequence.Count <= valueIndex) + { + return null; + } + + var asn = (Asn1TaggedObject)asnSequence[valueIndex]; + var asnStr = Asn1OctetString.GetInstance(asn, false); + var s = Encoding.UTF8.GetString(asnStr.GetOctets()); + var year = int.Parse(s.Substring(0, 4)); + var month = int.Parse(s.Substring(4, 2)); + var day = int.Parse(s.Substring(6, 2)); + var hour = int.Parse(s.Substring(8, 2)); + var minute = int.Parse(s.Substring(10, 2)); + var second = int.Parse(s.Substring(12, 2)); + return new DateTime(year, month, day, hour, minute, second); + } + catch (System.Exception) + { + return null; + } + } + } +} diff --git a/Hcs.ClientNet/Client/Api/Type/MunicipalServiceVolumeDeterminingMethod.cs b/Hcs.ClientNet/Client/Api/Type/MunicipalServiceVolumeDeterminingMethod.cs new file mode 100644 index 0000000..fb6945a --- /dev/null +++ b/Hcs.ClientNet/Client/Api/Type/MunicipalServiceVolumeDeterminingMethod.cs @@ -0,0 +1,33 @@ +using Hcs.Service.Async.Bills; +using System; + +namespace Hcs.ClientNet.Api.Type +{ + // http://open-gkh.ru/Bills/PDServiceChargeType/MunicipalService/Consumption/Volume/determiningMethod.html + public enum MunicipalServiceVolumeDeterminingMethod + { + Norm, + MeteringDevice, + Other + } + + internal static class MunicipalServiceVolumeDeterminingMethodExtensions + { + internal static PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod ToServiceType(this MunicipalServiceVolumeDeterminingMethod type) + { + switch (type) + { + case MunicipalServiceVolumeDeterminingMethod.Norm: + return PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod.N; + + case MunicipalServiceVolumeDeterminingMethod.MeteringDevice: + return PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod.M; + + case MunicipalServiceVolumeDeterminingMethod.Other: + return PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod.O; + } + + throw new NotImplementedException($"Cannot convert {type} to service type"); + } + } +} diff --git a/Hcs.ClientNet/Client/ClientBase.cs b/Hcs.ClientNet/Client/ClientBase.cs new file mode 100644 index 0000000..dcc2b3d --- /dev/null +++ b/Hcs.ClientNet/Client/ClientBase.cs @@ -0,0 +1,97 @@ +using Hcs.ClientNet.Internal; +using Hcs.ClientNet.Logger; +using Hcs.ClientNet.MessageCapturer; +using System.Security.Cryptography.X509Certificates; + +namespace Hcs.ClientNet +{ + public abstract class ClientBase + { + /// + /// Идентификатор поставщика данных ГИС ЖКХ + /// + public string OrgPPAGUID { get; set; } + + /// + /// Исполнитель/сотрудник ГИС ЖКХ, от которого будут регистрироваться ответы + /// + public string ExecutorGUID { get; set; } + + /// + /// Признак, указывающий на то, что используется ли внешний туннель (stunnel) + /// + public bool UseTunnel { get; set; } + + /// + /// Если true, то запросы будут выполняться на промышленном стенде, иначе - на тестовом + /// + public bool IsPPAK { get; set; } + + /// + /// Роль + /// + public OrganizationRole Role { get; set; } + + /// + /// Устанавливаемый пользователем приемник отладочных сообщений + /// + public ILogger Logger { get; set; } + + /// + /// Устанавливаемый пользователем механизм перехвата содержимого отправляемых + /// и принимаемых пакетов + /// + public IMessageCapturer MessageCapturer { get; set; } + + /// + /// Сертификат клиента для применения при формировании запросов + /// + internal X509Certificate2 Certificate { get; set; } + + /// + /// Тип криптопровайдера, полученный из сертификата + /// + internal GostXades.CryptoProviderTypeEnum CryptoProviderType { get; set; } + + internal GostCryptography.Base.ProviderType GostCryptoProviderType => + (GostCryptography.Base.ProviderType)CryptoProviderType; + + /// + /// Отпечаток сертификата + /// + internal string CertificateThumbprint { get; set; } + + /// + /// Пароль доступа к сертификату + /// + internal string CertificatePassword { get; set; } + + internal string ComposeEndpointUri(string endpointName) + { + if (UseTunnel) + { + return $"http://{Constants.URI_TUNNEL}/{endpointName}"; + } + + return IsPPAK + ? $"https://{Constants.URI_PPAK}/{endpointName}" + : $"https://{Constants.URI_SIT_02}/{endpointName}"; + } + + /// + /// Пробует вывести сообщение в установленный приемник отладочных сообщений + /// + internal void TryLog(string message) + { + Logger?.WriteLine(message); + } + + /// + /// Пробует отправить тело сообщения в установленный перехватчик + /// + internal void TryCaptureMessage(bool sent, string messageBody) + { + MessageCapturer?.CaptureMessage(sent, messageBody); + } + } +} diff --git a/Hcs.ClientNet/Client/Internal/CertificateHelper.cs b/Hcs.ClientNet/Client/Internal/CertificateHelper.cs new file mode 100644 index 0000000..326b5c0 --- /dev/null +++ b/Hcs.ClientNet/Client/Internal/CertificateHelper.cs @@ -0,0 +1,81 @@ +using GostCryptography.Base; +using System; +using System.Linq; +using System.Security.Cryptography.X509Certificates; + +namespace Hcs.ClientNet.Internal +{ + internal static class CertificateHelper + { + internal static bool IsGostPrivateKey(this X509Certificate2 certificate) + { + try + { + if (certificate.HasPrivateKey) + { + var cspInfo = certificate.GetPrivateKeyInfo(); + if (cspInfo.ProviderType == (int)ProviderType.CryptoPro || + cspInfo.ProviderType == (int)ProviderType.VipNet || + cspInfo.ProviderType == (int)ProviderType.CryptoPro_2012_512 || + cspInfo.ProviderType == (int)ProviderType.CryptoPro_2012_1024) + { + return true; + } + else + { + return false; + } + } + return false; + } + catch + { + return false; + } + } + + internal static GostXades.CryptoProviderTypeEnum GetProviderType(this X509Certificate2 certificate) + { + return (GostXades.CryptoProviderTypeEnum)GetProviderInfo(certificate).Item1; + } + + internal static Tuple GetProviderInfo(this X509Certificate2 certificate) + { + if (certificate.HasPrivateKey) + { + var cspInfo = certificate.GetPrivateKeyInfo(); + return new Tuple(cspInfo.ProviderType, cspInfo.ProviderName); + } + else + { + throw new Exception("Certificate has no private key"); + } + } + + internal static X509Certificate2 FindCertificate(Func predicate) + { + if (predicate == null) + { + throw new ArgumentException("Null subject predicate"); + } + + var store = new X509Store(StoreName.My, StoreLocation.CurrentUser); + try + { + store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); + + var collection = store.Certificates + .OfType() + .Where(x => x.HasPrivateKey && x.IsGostPrivateKey()); + + var now = DateTime.Now; + return collection.First( + x => now >= x.NotBefore && now <= x.NotAfter && predicate(x)); + } + finally + { + store.Close(); + } + } + } +} diff --git a/Hcs.ClientNet/Client/Internal/Constants.cs b/Hcs.ClientNet/Client/Internal/Constants.cs new file mode 100644 index 0000000..d60982c --- /dev/null +++ b/Hcs.ClientNet/Client/Internal/Constants.cs @@ -0,0 +1,25 @@ +namespace Hcs.ClientNet.Internal +{ + internal static class Constants + { + /// + /// Имя XML-элемента в сообщении, которое будет подписываться в фильтре + /// отправки подписывающем XML + /// + internal const string SIGNED_XML_ELEMENT_ID = "signed-data-container"; + + /// + /// Если PIN сертификата не указан пользователем, применяется это значение + /// по умолчанию для сертификатов RuToken + /// + internal const string DEFAULT_CERTIFICATE_PIN = "12345678"; + + internal const string URI_PPAK = "api.dom.gosuslugi.ru"; + internal const string URI_SIT_01 = "sit01.dom.test.gosuslugi.ru:10081"; + internal const string URI_SIT_02 = "sit02.dom.test.gosuslugi.ru:10081"; + internal const string URI_TUNNEL = "127.0.0.1:8080"; + + internal const string NAME_SIT = "sit"; + internal const string PASSWORD_SIT = "xw{p&&Ee3b9r8?amJv*]"; + } +} diff --git a/Hcs.ClientNet/Client/Internal/Util.cs b/Hcs.ClientNet/Client/Internal/Util.cs new file mode 100644 index 0000000..0941d45 --- /dev/null +++ b/Hcs.ClientNet/Client/Internal/Util.cs @@ -0,0 +1,63 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Hcs.ClientNet.Internal +{ + internal static class Util + { + /// + /// Возвращает список все вложенных исключений для данного исключения + /// + internal static List EnumerateInnerExceptions(Exception e) + { + var list = new List(); + WalkInnerExceptionsRecurse(e, list); + return list; + } + + private static void WalkInnerExceptionsRecurse(Exception e, List list) + { + if (e == null || list.Contains(e)) + { + return; + } + + list.Add(e); + + WalkInnerExceptionsRecurse(e.InnerException, list); + + if (e is AggregateException) + { + var aggregate = e as AggregateException; + foreach (var inner in aggregate.InnerExceptions) + { + WalkInnerExceptionsRecurse(inner, list); + } + } + } + + internal static string FormatDate(DateTime date) + { + return date.ToString("yyyyMMdd"); + } + + internal static string FormatDate(DateTime? date) + { + return (date == null) ? string.Empty : FormatDate((DateTime)date); + } + + /// + /// Преобразует массиб байтов в строку в формате binhex + /// + internal static string ConvertToHexString(byte[] ba) + { + var buf = new StringBuilder(ba.Length * 2); + foreach (byte b in ba) + { + buf.AppendFormat("{0:x2}", b); + } + return buf.ToString(); + } + } +} diff --git a/Hcs.ClientNet/Client/Logger/ActionLogger.cs b/Hcs.ClientNet/Client/Logger/ActionLogger.cs new file mode 100644 index 0000000..6b16281 --- /dev/null +++ b/Hcs.ClientNet/Client/Logger/ActionLogger.cs @@ -0,0 +1,14 @@ +using System; + +namespace Hcs.ClientNet.Logger +{ + public class ActionLogger : ILogger + { + public Action OnWriteLine; + + public void WriteLine(string message) + { + OnWriteLine?.Invoke(message); + } + } +} diff --git a/Hcs.ClientNet/Client/Logger/ConsoleLogger.cs b/Hcs.ClientNet/Client/Logger/ConsoleLogger.cs new file mode 100644 index 0000000..785b654 --- /dev/null +++ b/Hcs.ClientNet/Client/Logger/ConsoleLogger.cs @@ -0,0 +1,12 @@ +using System; + +namespace Hcs.ClientNet.Logger +{ + public class ConsoleLogger : ILogger + { + public void WriteLine(string message) + { + Console.WriteLine(message); + } + } +} diff --git a/Hcs.ClientNet/Client/Logger/ILogger.cs b/Hcs.ClientNet/Client/Logger/ILogger.cs new file mode 100644 index 0000000..a650bac --- /dev/null +++ b/Hcs.ClientNet/Client/Logger/ILogger.cs @@ -0,0 +1,10 @@ +namespace Hcs.ClientNet.Logger +{ + /// + /// Интерфейс для механизма вывода отладочных сообщений для обработки вызывающей системой + /// + public interface ILogger + { + internal void WriteLine(string message); + } +} diff --git a/Hcs.ClientNet/Client/MessageCapturer/FileMessageCapturer.cs b/Hcs.ClientNet/Client/MessageCapturer/FileMessageCapturer.cs new file mode 100644 index 0000000..e8f87e5 --- /dev/null +++ b/Hcs.ClientNet/Client/MessageCapturer/FileMessageCapturer.cs @@ -0,0 +1,43 @@ +using Hcs.ClientNet.Logger; +using System.Text; + +namespace Hcs.ClientNet.MessageCapturer +{ + /// + /// Реализация механизма захвата содержимого сообщений SOAP, записывающая + /// каждое сообщение в отдельный файл на диске + /// + public class FileMessageCapturer(string directory, ILogger logger) : IMessageCapturer + { + private readonly string directory = directory; + private readonly ILogger logger = logger; + + public void CaptureMessage(bool sent, string messageBody) + { + var index = 0; + var maxIndex = 1000000; + string fileName; + do + { + index += 1; + + if (index > maxIndex) + { + throw new System.Exception("index value exceeds maxIndex value"); + } + + fileName = index.ToString("D3") + "_" + (sent ? "message" : "response") + ".xml"; + + if (!string.IsNullOrEmpty(directory)) + { + fileName = System.IO.Path.Combine(directory, fileName); + } + } + while (System.IO.File.Exists(fileName)); + + logger?.WriteLine($"Capturing message to file {fileName}..."); + + System.IO.File.WriteAllText(fileName, messageBody, Encoding.UTF8); + } + } +} diff --git a/Hcs.ClientNet/Client/MessageCapturer/IMessageCapturer.cs b/Hcs.ClientNet/Client/MessageCapturer/IMessageCapturer.cs new file mode 100644 index 0000000..6981736 --- /dev/null +++ b/Hcs.ClientNet/Client/MessageCapturer/IMessageCapturer.cs @@ -0,0 +1,11 @@ +namespace Hcs.ClientNet.MessageCapturer +{ + /// + /// Интерфейс для механизма захвата отправляемых и принимаемых + /// SOAP сообщений в ходе коммуникации с ГИС ЖКХ + /// + public interface IMessageCapturer + { + internal void CaptureMessage(bool sent, string messageBody); + } +} diff --git a/Hcs.ClientNet/Client/MessageCapturer/MemoryMessageCapturer.cs b/Hcs.ClientNet/Client/MessageCapturer/MemoryMessageCapturer.cs new file mode 100644 index 0000000..7565d17 --- /dev/null +++ b/Hcs.ClientNet/Client/MessageCapturer/MemoryMessageCapturer.cs @@ -0,0 +1,51 @@ +using System; +using System.IO; +using System.Text; + +namespace Hcs.ClientNet.MessageCapturer +{ + /// + /// Реализация захвата содержимого отправляемых и принимаемых SOAP сообщений, + /// которая хранит данные в памяти + /// + public class MemoryMessageCapturer : IMessageCapturer + { + private readonly MemoryStream messageCaptureStream; + private readonly StreamWriter messageCaptureWriter; + + public MemoryMessageCapturer() + { + messageCaptureStream = new MemoryStream(); + messageCaptureWriter = new StreamWriter(messageCaptureStream, Encoding.UTF8); + } + + public void CaptureMessage(bool sent, string messageBody) + { + if (messageCaptureStream.Position > 0) + { + messageCaptureWriter.WriteLine(""); + } + + messageCaptureWriter.Write(""); + messageCaptureWriter.Write(messageBody); + messageCaptureWriter.Flush(); + } + + public byte[] GetData() + { + var buf = messageCaptureStream.GetBuffer(); + var size = (int)messageCaptureStream.Length; + var data = new byte[size]; + Buffer.BlockCopy(buf, 0, data, 0, size); + return data; + } + + public override string ToString() + { + return Encoding.UTF8.GetString(GetData()); + } + } +} diff --git a/Hcs.ClientNet/Client/OrganizationRole.cs b/Hcs.ClientNet/Client/OrganizationRole.cs new file mode 100644 index 0000000..093facf --- /dev/null +++ b/Hcs.ClientNet/Client/OrganizationRole.cs @@ -0,0 +1,20 @@ +namespace Hcs.ClientNet +{ + public enum OrganizationRole + { + /// + /// УК/ТСЖ/ЖСК + /// + UK, + + /// + /// Ресурсоснабжающая организация + /// + RSO, + + /// + /// Расчетный центр + /// + RC + } +} diff --git a/Hcs.ClientNet/Client/UniClient.cs b/Hcs.ClientNet/Client/UniClient.cs new file mode 100644 index 0000000..2efb777 --- /dev/null +++ b/Hcs.ClientNet/Client/UniClient.cs @@ -0,0 +1,59 @@ +using GostCryptography.Gost_R3411; +using Hcs.ClientNet.Api; +using Hcs.ClientNet.Internal; +using System; +using System.Security.Cryptography.X509Certificates; + +namespace Hcs.ClientNet +{ + /// + /// Универсальный клиент для вызова всех реализованных функций интеграции с ГИС ЖКХ + /// + public class UniClient : ClientBase + { + public BillsApi Bills => new(this); + + public DeviceMeteringApi DeviceMetering => new(this); + + public HouseManagementApi HouseManagement => new(this); + + public NsiApi Nsi => new(this); + + public NsiCommonApi NsiCommon => new(this); + + public OrgRegistryCommonApi OrgRegistryCommon => new(this); + + public PaymentsApi Payments => new(this); + + public void SetSigningCertificate(X509Certificate2 cert, string pin = null) + { + pin ??= Constants.DEFAULT_CERTIFICATE_PIN; + + Certificate = cert ?? throw new ArgumentNullException("Certificate not specified"); + CryptoProviderType = cert.GetProviderType(); + CertificateThumbprint = cert.Thumbprint; + CertificatePassword = pin; + } + + public X509Certificate2 FindCertificate(Func predicate) + { + return CertificateHelper.FindCertificate(predicate); + } + + /// + /// Производит для потока хэш по алгоритму "ГОСТ Р 34.11-94" в строке binhex + /// + public string ComputeGost94Hash(System.IO.Stream stream) + { + // API HouseManagement указывает, что файлы приложенные к договору должны размещаться + // с AttachmentHASH по стандарту ГОСТ. Оказывается, ГИС ЖКХ требует применения устаревшего + // алгоритма ГОСТ Р 34.11-94 (соответствует `rhash --gost94-cryptopro file` в linux). + using var algorithm = new Gost_R3411_94_HashAlgorithm(GostCryptoProviderType); + var savedPosition = stream.Position; + stream.Position = 0; + var hashValue = Util.ConvertToHexString(algorithm.ComputeHash(stream)); + stream.Position = savedPosition; + return hashValue; + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/ConnectedService.json new file mode 100644 index 0000000..18eba9e --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.Bills" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/Reference.cs new file mode 100644 index 0000000..3c1f1ee --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Bills/Reference.cs @@ -0,0 +1,21330 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.Bills +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ReportPeriodIKUInfoType + { + + private decimal paidField; + + private AttachmentType[] supportingDocumentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Paid + { + get + { + return this.paidField; + } + set + { + this.paidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SupportingDocuments", Order=1)] + public AttachmentType[] SupportingDocuments + { + get + { + return this.supportingDocumentsField; + } + set + { + this.supportingDocumentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AttachmentType + { + + private string nameField; + + private string descriptionField; + + private Attachment attachmentField; + + private string attachmentHASHField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Attachment Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AttachmentHASH + { + get + { + return this.attachmentHASHField; + } + set + { + this.attachmentHASHField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Attachment + { + + private string attachmentGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AttachmentGUID + { + get + { + return this.attachmentGUIDField; + } + set + { + this.attachmentGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ReportPeriodRSOInfoType + { + + private decimal credtedField; + + private decimal receiptField; + + private decimal debtsField; + + private decimal overpaymentField; + + private decimal paidField; + + private bool paidFieldSpecified; + + private AttachmentType[] supportingDocumentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Credted + { + get + { + return this.credtedField; + } + set + { + this.credtedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Receipt + { + get + { + return this.receiptField; + } + set + { + this.receiptField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Debts + { + get + { + return this.debtsField; + } + set + { + this.debtsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Overpayment + { + get + { + return this.overpaymentField; + } + set + { + this.overpaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal Paid + { + get + { + return this.paidField; + } + set + { + this.paidField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaidSpecified + { + get + { + return this.paidFieldSpecified; + } + set + { + this.paidFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SupportingDocuments", Order=5)] + public AttachmentType[] SupportingDocuments + { + get + { + return this.supportingDocumentsField; + } + set + { + this.supportingDocumentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ReportPeriodType + { + + private int monthField; + + private short yearField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgType + { + + private string orgRootEntityGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgRootEntityGUID + { + get + { + return this.orgRootEntityGUIDField; + } + set + { + this.orgRootEntityGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultType + { + + private string settlementGUIDField; + + private ExportSettlementResultTypeContract contractField; + + private ExportSettlementResultTypeReportingPeriod[] reportingPeriodField; + + private ExportSettlementResultTypeAnnuled annuledField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string SettlementGUID + { + get + { + return this.settlementGUIDField; + } + set + { + this.settlementGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSettlementResultTypeContract Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ReportingPeriod", Order=2)] + public ExportSettlementResultTypeReportingPeriod[] ReportingPeriod + { + get + { + return this.reportingPeriodField; + } + set + { + this.reportingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ExportSettlementResultTypeAnnuled Annuled + { + get + { + return this.annuledField; + } + set + { + this.annuledField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultTypeContract + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoContract", typeof(ExportSettlementResultTypeContractNoContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultTypeContractNoContract + { + + private RegOrgType firstContractPartyField; + + private string docNumField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RegOrgType FirstContractParty + { + get + { + return this.firstContractPartyField; + } + set + { + this.firstContractPartyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DocNum + { + get + { + return this.docNumField; + } + set + { + this.docNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultTypeReportingPeriod : ReportPeriodType + { + + private object itemField; + + private ExportSettlementResultTypeReportingPeriodReportPeriodStatus reportPeriodStatusField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ReportPeriodIKUInfo", typeof(ReportPeriodIKUInfoType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ReportPeriodRSOInfo", typeof(ReportPeriodRSOInfoType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSettlementResultTypeReportingPeriodReportPeriodStatus ReportPeriodStatus + { + get + { + return this.reportPeriodStatusField; + } + set + { + this.reportPeriodStatusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultTypeReportingPeriodReportPeriodStatus + { + + private ExportSettlementResultTypeReportingPeriodReportPeriodStatusStatus statusField; + + private string reasonOfAnnulmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ExportSettlementResultTypeReportingPeriodReportPeriodStatusStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ReasonOfAnnulment + { + get + { + return this.reasonOfAnnulmentField; + } + set + { + this.reasonOfAnnulmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum ExportSettlementResultTypeReportingPeriodReportPeriodStatusStatus + { + + /// + Posted, + + /// + Draft, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ExportSettlementResultTypeAnnuled + { + + private string reasonOfAnnulmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReasonOfAnnulment + { + get + { + return this.reasonOfAnnulmentField; + } + set + { + this.reasonOfAnnulmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class InsuranceProductType + { + + private AttachmentType descriptionField; + + private string insuranceOrgField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AttachmentType Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string InsuranceOrg + { + get + { + return this.insuranceOrgField; + } + set + { + this.insuranceOrgField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionResultType + { + + private exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatus[] notificationOfOrderExecutionWithStatusField; + + /// + [System.Xml.Serialization.XmlElementAttribute("NotificationOfOrderExecutionWithStatus", Order=0)] + public exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatus[] NotificationOfOrderExecutionWithStatus + { + get + { + return this.notificationOfOrderExecutionWithStatusField; + } + set + { + this.notificationOfOrderExecutionWithStatusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatus : NotificationOfOrderExecutionExportType + { + + private sbyte ackStatusField; + + private System.DateTime creationDateField; + + private exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatusAcknowledgmentRequest[] acknowledgmentRequestsListField; + + private long acknowledgmentAmountField; + + private string notificationsOfOrderExecutionGUIDField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte AckStatus + { + get + { + return this.ackStatusField; + } + set + { + this.ackStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime CreationDate + { + get + { + return this.creationDateField; + } + set + { + this.creationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=2)] + [System.Xml.Serialization.XmlArrayItemAttribute("AcknowledgmentRequest", IsNullable=false)] + public exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatusAcknowledgmentRequest[] AcknowledgmentRequestsList + { + get + { + return this.acknowledgmentRequestsListField; + } + set + { + this.acknowledgmentRequestsListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public long AcknowledgmentAmount + { + get + { + return this.acknowledgmentAmountField; + } + set + { + this.acknowledgmentAmountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=4)] + public string NotificationsOfOrderExecutionGUID + { + get + { + return this.notificationsOfOrderExecutionGUIDField; + } + set + { + this.notificationsOfOrderExecutionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionResultTypeNotificationOfOrderExecutionWithStatusAcknowledgmentRequest : AcknowledgmentRequestInfoExportType + { + + private string orderIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OrderID + { + get + { + return this.orderIDField; + } + set + { + this.orderIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoExportType + { + + private string notificationsOfOrderExecutionGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string NotificationsOfOrderExecutionGUID + { + get + { + return this.notificationsOfOrderExecutionGUIDField; + } + set + { + this.notificationsOfOrderExecutionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AckImpossible", typeof(AcknowledgmentRequestInfoExportTypeAckImpossible), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentAck", typeof(AcknowledgmentRequestInfoExportTypePaymentDocumentAck), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoExportTypeAckImpossible + { + + private string paymentDocumentIDField; + + private string reasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Reason + { + get + { + return this.reasonField; + } + set + { + this.reasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoExportTypePaymentDocumentAck + { + + private string paymentDocumentIDField; + + private object itemField; + + private ItemChoiceType3 itemElementNameField; + + private decimal amountField; + + private string paymentDocumentNumberField; + + private AcknowledgmentRequestInfoExportTypePaymentDocumentAckDelayPeriod delayPeriodField; + + private AcknowledgmentRequestInfoExportTypePaymentDocumentAckCapitalRepairYearAckPeriod capitalRepairYearAckPeriodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ASType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("HSType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("MSType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PServiceType", typeof(nsiRef), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TMSType", typeof(nsiRef), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType3 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=4)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public AcknowledgmentRequestInfoExportTypePaymentDocumentAckDelayPeriod DelayPeriod + { + get + { + return this.delayPeriodField; + } + set + { + this.delayPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public AcknowledgmentRequestInfoExportTypePaymentDocumentAckCapitalRepairYearAckPeriod CapitalRepairYearAckPeriod + { + get + { + return this.capitalRepairYearAckPeriodField; + } + set + { + this.capitalRepairYearAckPeriodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemChoiceType3 + { + + /// + ASType, + + /// + HSType, + + /// + MSType, + + /// + PServiceType, + + /// + TMSType, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoExportTypePaymentDocumentAckDelayPeriod + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoExportTypePaymentDocumentAckCapitalRepairYearAckPeriod + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportType + { + + private NotificationOfOrderExecutionExportTypeSupplierInfo supplierInfoField; + + private NotificationOfOrderExecutionExportTypeRecipientInfo recipientInfoField; + + private NotificationOfOrderExecutionExportTypeOrderInfo orderInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NotificationOfOrderExecutionExportTypeSupplierInfo SupplierInfo + { + get + { + return this.supplierInfoField; + } + set + { + this.supplierInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public NotificationOfOrderExecutionExportTypeRecipientInfo RecipientInfo + { + get + { + return this.recipientInfoField; + } + set + { + this.recipientInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public NotificationOfOrderExecutionExportTypeOrderInfo OrderInfo + { + get + { + return this.orderInfoField; + } + set + { + this.orderInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeSupplierInfo + { + + private string supplierIDField; + + private string supplierNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string SupplierID + { + get + { + return this.supplierIDField; + } + set + { + this.supplierIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string SupplierName + { + get + { + return this.supplierNameField; + } + set + { + this.supplierNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeRecipientInfo + { + + private string iNNField; + + private object itemField; + + private PaymentInformationExportType paymentInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entpr", typeof(FIOType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("EntprFIO", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(NotificationOfOrderExecutionExportTypeRecipientInfoLegal), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PaymentInformationExportType PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(IndType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class FIOType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class IndType : FIOType + { + + private Sex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + private string placeBirthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public Sex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(ID), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PlaceBirth + { + get + { + return this.placeBirthField; + } + set + { + this.placeBirthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public enum Sex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class ID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + private System.DateTime issueDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime IssueDate + { + get + { + return this.issueDateField; + } + set + { + this.issueDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeRecipientInfoLegal + { + + private string kPPField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class PaymentInformationExportType + { + + private string recipientINNField; + + private string recipientKPPField; + + private string bankNameField; + + private string paymentRecipientField; + + private string bankBIKField; + + private string operatingAccountNumberField; + + private string correspondentBankAccountField; + + private bool isCapitalRepairField; + + private bool isCapitalRepairFieldSpecified; + + private string kBKField; + + private string oKTMOField; + + private string numberBudgetaryAccountField; + + public PaymentInformationExportType() + { + this.isCapitalRepairField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RecipientINN + { + get + { + return this.recipientINNField; + } + set + { + this.recipientINNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RecipientKPP + { + get + { + return this.recipientKPPField; + } + set + { + this.recipientKPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string BankName + { + get + { + return this.bankNameField; + } + set + { + this.bankNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PaymentRecipient + { + get + { + return this.paymentRecipientField; + } + set + { + this.paymentRecipientField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string BankBIK + { + get + { + return this.bankBIKField; + } + set + { + this.bankBIKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string operatingAccountNumber + { + get + { + return this.operatingAccountNumberField; + } + set + { + this.operatingAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string CorrespondentBankAccount + { + get + { + return this.correspondentBankAccountField; + } + set + { + this.correspondentBankAccountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool IsCapitalRepair + { + get + { + return this.isCapitalRepairField; + } + set + { + this.isCapitalRepairField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCapitalRepairSpecified + { + get + { + return this.isCapitalRepairFieldSpecified; + } + set + { + this.isCapitalRepairFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string KBK + { + get + { + return this.kBKField; + } + set + { + this.kBKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string NumberBudgetaryAccount + { + get + { + return this.numberBudgetaryAccountField; + } + set + { + this.numberBudgetaryAccountField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeOrderInfo + { + + private string orderIDField; + + private System.DateTime orderDateField; + + private string orderNumField; + + private decimal amountField; + + private string paymentPurposeField; + + private bool onlinePaymentField; + + private bool onlinePaymentFieldSpecified; + + private string commentField; + + private string paymentDocumentIDField; + + private string paymentDocumentNumberField; + + private short yearField; + + private int monthField; + + private string unifiedAccountNumberField; + + private NotificationOfOrderExecutionExportTypeOrderInfoAddressAndConsumer addressAndConsumerField; + + private NotificationOfOrderExecutionExportTypeOrderInfoService serviceField; + + private string accountNumberField; + + public NotificationOfOrderExecutionExportTypeOrderInfo() + { + this.onlinePaymentField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OrderID + { + get + { + return this.orderIDField; + } + set + { + this.orderIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime OrderDate + { + get + { + return this.orderDateField; + } + set + { + this.orderDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string OrderNum + { + get + { + return this.orderNumField; + } + set + { + this.orderNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PaymentPurpose + { + get + { + return this.paymentPurposeField; + } + set + { + this.paymentPurposeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool OnlinePayment + { + get + { + return this.onlinePaymentField; + } + set + { + this.onlinePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OnlinePaymentSpecified + { + get + { + return this.onlinePaymentFieldSpecified; + } + set + { + this.onlinePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string Comment + { + get + { + return this.commentField; + } + set + { + this.commentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=7)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=9)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=10)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=11)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public NotificationOfOrderExecutionExportTypeOrderInfoAddressAndConsumer AddressAndConsumer + { + get + { + return this.addressAndConsumerField; + } + set + { + this.addressAndConsumerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public NotificationOfOrderExecutionExportTypeOrderInfoService Service + { + get + { + return this.serviceField; + } + set + { + this.serviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeOrderInfoAddressAndConsumer + { + + private string fIASHouseGuidField; + + private string[] itemsField; + + private ItemsChoiceType5[] itemsElementNameField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Apartment", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NonLivingApartment", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialBlock", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Placement", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlock", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlockRoom", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType5[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("INN", typeof(string), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(FIOType), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemsChoiceType5 + { + + /// + Apartment, + + /// + NonLivingApartment, + + /// + NonResidentialBlock, + + /// + Placement, + + /// + ResidentialBlock, + + /// + ResidentialBlockRoom, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionExportTypeOrderInfoService + { + + private string serviceIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AdditionalService", typeof(PDServiceDebtTypeAdditionalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("GroupMunicipalService", typeof(PDServiceDebtTypeGroupMunicipalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HousingService", typeof(PDServiceDebtTypeHousingService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", typeof(PDServiceDebtTypeMunicipalService), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeAdditionalService : ServiceDebtType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceDebtType : DebtType + { + + private nsiRef serviceTypeField; + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceDebtType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class DebtType + { + + private object[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("TotalPayable", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("TotalSumDebtPayable", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + TotalPayable, + + /// + TotalSumDebtPayable, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeGroupMunicipalService + { + + private PDServiceDebtTypeGroupMunicipalServiceTypeMunicipalService typeMunicipalServiceField; + + private ServiceDebtType[] municipalServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceDebtTypeGroupMunicipalServiceTypeMunicipalService TypeMunicipalService + { + get + { + return this.typeMunicipalServiceField; + } + set + { + this.typeMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", Order=1)] + public ServiceDebtType[] MunicipalService + { + get + { + return this.municipalServiceField; + } + set + { + this.municipalServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeGroupMunicipalServiceTypeMunicipalService + { + + private nsiRef serviceTypeField; + + private object[] itemsField; + + private ItemsChoiceType4[] itemsElementNameField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TotalPayable", typeof(decimal), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TotalSumDebtPayable", typeof(decimal), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType4[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType4 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + TotalPayable, + + /// + TotalSumDebtPayable, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeHousingService : ServiceDebtType + { + + private PDServiceDebtTypeHousingServiceMunicipalResource[] municipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", Order=0)] + public PDServiceDebtTypeHousingServiceMunicipalResource[] MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeHousingServiceMunicipalResource + { + + private decimal itemField; + + private ItemChoiceType itemElementNameField; + + private nsiRef serviceTypeField; + + private string orgPPAGUIDField; + + private PDServiceDebtTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] generalMunicipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute("TotalPayable", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("TotalSumDebtPayable", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public decimal Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GeneralMunicipalResource", Order=4)] + public PDServiceDebtTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] GeneralMunicipalResource + { + get + { + return this.generalMunicipalResourceField; + } + set + { + this.generalMunicipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + TotalPayable, + + /// + TotalSumDebtPayable, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeHousingServiceMunicipalResourceGeneralMunicipalResource + { + + private nsiRef serviceTypeField; + + private decimal itemField; + + private ItemChoiceType1 itemElementNameField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TotalPayable", typeof(decimal), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TotalSumDebtPayable", typeof(decimal), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public decimal Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + TotalPayable, + + /// + TotalSumDebtPayable, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtTypeMunicipalService : ServiceDebtType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairMonthlyImportType + { + + private decimal contributionField; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private decimal moneyRecalculationField; + + private bool moneyRecalculationFieldSpecified; + + private decimal moneyDiscountField; + + private bool moneyDiscountFieldSpecified; + + private decimal totalPayableField; + + private string calcExplanationField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Contribution + { + get + { + return this.contributionField; + } + set + { + this.contributionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal MoneyRecalculation + { + get + { + return this.moneyRecalculationField; + } + set + { + this.moneyRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyRecalculationSpecified + { + get + { + return this.moneyRecalculationFieldSpecified; + } + set + { + this.moneyRecalculationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal MoneyDiscount + { + get + { + return this.moneyDiscountField; + } + set + { + this.moneyDiscountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyDiscountSpecified + { + get + { + return this.moneyDiscountFieldSpecified; + } + set + { + this.moneyDiscountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairYearExportType + { + + private CapitalRepairYearExportTypeCapitalRepairMonthlyCharge[] capitalRepairMonthlyChargeField; + + private short yearField; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairMonthlyCharge", Order=0)] + public CapitalRepairYearExportTypeCapitalRepairMonthlyCharge[] CapitalRepairMonthlyCharge + { + get + { + return this.capitalRepairMonthlyChargeField; + } + set + { + this.capitalRepairMonthlyChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairYearExportTypeCapitalRepairMonthlyCharge : CapitalRepairMonthlyImportType + { + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairType + { + + private decimal contributionField; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private decimal moneyRecalculationField; + + private bool moneyRecalculationFieldSpecified; + + private decimal moneyDiscountField; + + private bool moneyDiscountFieldSpecified; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + private string calcExplanationField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private CapitalRepairTypePaymentRecalculation paymentRecalculationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Contribution + { + get + { + return this.contributionField; + } + set + { + this.contributionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal MoneyRecalculation + { + get + { + return this.moneyRecalculationField; + } + set + { + this.moneyRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyRecalculationSpecified + { + get + { + return this.moneyRecalculationFieldSpecified; + } + set + { + this.moneyRecalculationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal MoneyDiscount + { + get + { + return this.moneyDiscountField; + } + set + { + this.moneyDiscountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyDiscountSpecified + { + get + { + return this.moneyDiscountFieldSpecified; + } + set + { + this.moneyDiscountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public CapitalRepairTypePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairTypePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceExportType + { + + private nsiRef serviceTypeField; + + private TypeMunicipalServiceExportTypeVolume[] consumptionField; + + private decimal rateField; + + private bool rateFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private TypeMunicipalServiceExportTypeMultiplyingFactor multiplyingFactorField; + + private ServiceChargeImportType serviceChargeField; + + private decimal totalPayableField; + + private bool totalPayableFieldSpecified; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private string calcExplanationField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private PiecemealPayment piecemealPaymentField; + + private TypeMunicipalServiceExportTypePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=1)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public TypeMunicipalServiceExportTypeVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RateSpecified + { + get + { + return this.rateFieldSpecified; + } + set + { + this.rateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public TypeMunicipalServiceExportTypeMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableSpecified + { + get + { + return this.totalPayableFieldSpecified; + } + set + { + this.totalPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public PiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public TypeMunicipalServiceExportTypePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=21)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceExportTypeVolume + { + + private TypeMunicipalServiceExportTypeVolumeType typeField; + + private bool typeFieldSpecified; + + private TypeMunicipalServiceExportTypeVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public TypeMunicipalServiceExportTypeVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public TypeMunicipalServiceExportTypeVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum TypeMunicipalServiceExportTypeVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum TypeMunicipalServiceExportTypeVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceExportTypeMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceChargeImportType + { + + private decimal moneyRecalculationField; + + private bool moneyRecalculationFieldSpecified; + + private decimal moneyDiscountField; + + private bool moneyDiscountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal MoneyRecalculation + { + get + { + return this.moneyRecalculationField; + } + set + { + this.moneyRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyRecalculationSpecified + { + get + { + return this.moneyRecalculationFieldSpecified; + } + set + { + this.moneyRecalculationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal MoneyDiscount + { + get + { + return this.moneyDiscountField; + } + set + { + this.moneyDiscountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyDiscountSpecified + { + get + { + return this.moneyDiscountFieldSpecified; + } + set + { + this.moneyDiscountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PiecemealPayment + { + + private decimal paymentPeriodPiecemealPaymentSumField; + + private bool paymentPeriodPiecemealPaymentSumFieldSpecified; + + private decimal pastPaymentPeriodPiecemealPaymentSumField; + + private bool pastPaymentPeriodPiecemealPaymentSumFieldSpecified; + + private decimal piecemealPaymentPercentRubField; + + private decimal piecemealPaymentPercentField; + + private decimal piecemealPaymentSumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal paymentPeriodPiecemealPaymentSum + { + get + { + return this.paymentPeriodPiecemealPaymentSumField; + } + set + { + this.paymentPeriodPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool paymentPeriodPiecemealPaymentSumSpecified + { + get + { + return this.paymentPeriodPiecemealPaymentSumFieldSpecified; + } + set + { + this.paymentPeriodPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal pastPaymentPeriodPiecemealPaymentSum + { + get + { + return this.pastPaymentPeriodPiecemealPaymentSumField; + } + set + { + this.pastPaymentPeriodPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool pastPaymentPeriodPiecemealPaymentSumSpecified + { + get + { + return this.pastPaymentPeriodPiecemealPaymentSumFieldSpecified; + } + set + { + this.pastPaymentPeriodPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal piecemealPaymentPercentRub + { + get + { + return this.piecemealPaymentPercentRubField; + } + set + { + this.piecemealPaymentPercentRubField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal piecemealPaymentPercent + { + get + { + return this.piecemealPaymentPercentField; + } + set + { + this.piecemealPaymentPercentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal piecemealPaymentSum + { + get + { + return this.piecemealPaymentSumField; + } + set + { + this.piecemealPaymentSumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceExportTypePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceInformation : ServiceInformationType + { + + private decimal houseOverallNeedsNormField; + + private bool houseOverallNeedsNormFieldSpecified; + + private decimal individualConsumptionNormField; + + private bool individualConsumptionNormFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal houseOverallNeedsNorm + { + get + { + return this.houseOverallNeedsNormField; + } + set + { + this.houseOverallNeedsNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsNormSpecified + { + get + { + return this.houseOverallNeedsNormFieldSpecified; + } + set + { + this.houseOverallNeedsNormFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal individualConsumptionNorm + { + get + { + return this.individualConsumptionNormField; + } + set + { + this.individualConsumptionNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool individualConsumptionNormSpecified + { + get + { + return this.individualConsumptionNormFieldSpecified; + } + set + { + this.individualConsumptionNormFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceInformationType + { + + private decimal individualConsumptionCurrentValueField; + + private bool individualConsumptionCurrentValueFieldSpecified; + + private decimal houseOverallNeedsCurrentValueField; + + private bool houseOverallNeedsCurrentValueFieldSpecified; + + private decimal houseTotalIndividualConsumptionField; + + private bool houseTotalIndividualConsumptionFieldSpecified; + + private decimal houseTotalHouseOverallNeedsField; + + private bool houseTotalHouseOverallNeedsFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal individualConsumptionCurrentValue + { + get + { + return this.individualConsumptionCurrentValueField; + } + set + { + this.individualConsumptionCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool individualConsumptionCurrentValueSpecified + { + get + { + return this.individualConsumptionCurrentValueFieldSpecified; + } + set + { + this.individualConsumptionCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal houseOverallNeedsCurrentValue + { + get + { + return this.houseOverallNeedsCurrentValueField; + } + set + { + this.houseOverallNeedsCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsCurrentValueSpecified + { + get + { + return this.houseOverallNeedsCurrentValueFieldSpecified; + } + set + { + this.houseOverallNeedsCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal houseTotalIndividualConsumption + { + get + { + return this.houseTotalIndividualConsumptionField; + } + set + { + this.houseTotalIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalIndividualConsumptionSpecified + { + get + { + return this.houseTotalIndividualConsumptionFieldSpecified; + } + set + { + this.houseTotalIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal houseTotalHouseOverallNeeds + { + get + { + return this.houseTotalHouseOverallNeedsField; + } + set + { + this.houseTotalHouseOverallNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalHouseOverallNeedsSpecified + { + get + { + return this.houseTotalHouseOverallNeedsFieldSpecified; + } + set + { + this.houseTotalHouseOverallNeedsFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceExportType + { + + private nsiRef serviceTypeField; + + private GeneralMunicipalResourceExportTypeConsumption consumptionField; + + private decimal rateField; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private ServiceChargeImportType serviceChargeField; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private GeneralMunicipalResourceExportTypeServiceInformation serviceInformationField; + + private GeneralMunicipalResourceExportTypePaymentRecalculation paymentRecalculationField; + + private decimal totalPayableField; + + private bool totalPayableFieldSpecified; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public GeneralMunicipalResourceExportTypeConsumption Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public GeneralMunicipalResourceExportTypeServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public GeneralMunicipalResourceExportTypePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableSpecified + { + get + { + return this.totalPayableFieldSpecified; + } + set + { + this.totalPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceExportTypeConsumption + { + + private GeneralMunicipalResourceExportTypeConsumptionVolume volumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public GeneralMunicipalResourceExportTypeConsumptionVolume Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceExportTypeConsumptionVolume + { + + private GeneralMunicipalResourceExportTypeConsumptionVolumeType typeField; + + private bool typeFieldSpecified; + + private GeneralMunicipalResourceExportTypeConsumptionVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public GeneralMunicipalResourceExportTypeConsumptionVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public GeneralMunicipalResourceExportTypeConsumptionVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum GeneralMunicipalResourceExportTypeConsumptionVolumeType + { + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum GeneralMunicipalResourceExportTypeConsumptionVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceExportTypeServiceInformation + { + + private decimal houseOverallNeedsNormField; + + private bool houseOverallNeedsNormFieldSpecified; + + private decimal houseOverallNeedsCurrentValueField; + + private bool houseOverallNeedsCurrentValueFieldSpecified; + + private decimal houseTotalHouseOverallNeedsField; + + private bool houseTotalHouseOverallNeedsFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal houseOverallNeedsNorm + { + get + { + return this.houseOverallNeedsNormField; + } + set + { + this.houseOverallNeedsNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsNormSpecified + { + get + { + return this.houseOverallNeedsNormFieldSpecified; + } + set + { + this.houseOverallNeedsNormFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal houseOverallNeedsCurrentValue + { + get + { + return this.houseOverallNeedsCurrentValueField; + } + set + { + this.houseOverallNeedsCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsCurrentValueSpecified + { + get + { + return this.houseOverallNeedsCurrentValueFieldSpecified; + } + set + { + this.houseOverallNeedsCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal houseTotalHouseOverallNeeds + { + get + { + return this.houseTotalHouseOverallNeedsField; + } + set + { + this.houseTotalHouseOverallNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalHouseOverallNeedsSpecified + { + get + { + return this.houseTotalHouseOverallNeedsFieldSpecified; + } + set + { + this.houseTotalHouseOverallNeedsFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceExportTypePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceChargeType + { + + private decimal moneyRecalculationField; + + private bool moneyRecalculationFieldSpecified; + + private decimal moneyDiscountField; + + private bool moneyDiscountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal MoneyRecalculation + { + get + { + return this.moneyRecalculationField; + } + set + { + this.moneyRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyRecalculationSpecified + { + get + { + return this.moneyRecalculationFieldSpecified; + } + set + { + this.moneyRecalculationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal MoneyDiscount + { + get + { + return this.moneyDiscountField; + } + set + { + this.moneyDiscountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyDiscountSpecified + { + get + { + return this.moneyDiscountFieldSpecified; + } + set + { + this.moneyDiscountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServicePDType + { + + private nsiRef serviceTypeField; + + private decimal rateField; + + private decimal totalPayableField; + + private bool totalPayableFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private string calcExplanationField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableSpecified + { + get + { + return this.totalPayableFieldSpecified; + } + set + { + this.totalPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AdditionalService", typeof(PDServiceChargeExportTypeAdditionalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("GroupMunicipalService", typeof(PDServiceChargeExportTypeGroupMunicipalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HousingService", typeof(PDServiceChargeExportTypeHousingService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", typeof(PDServiceChargeExportTypeMunicipalService), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeAdditionalService : ServicePDType + { + + private ServiceChargeType serviceChargeField; + + private PDServiceChargeExportTypeAdditionalServiceVolume[] consumptionField; + + private PDServiceChargeExportTypeAdditionalServicePaymentRecalculation paymentRecalculationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=1)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeExportTypeAdditionalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeExportTypeAdditionalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeAdditionalServiceVolume + { + + private PDServiceChargeExportTypeAdditionalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeAdditionalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeAdditionalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeAdditionalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeGroupMunicipalService + { + + private TypeMunicipalServiceExportType typeMunicipalServiceField; + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalService[] municipalServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public TypeMunicipalServiceExportType TypeMunicipalService + { + get + { + return this.typeMunicipalServiceField; + } + set + { + this.typeMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", Order=1)] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalService[] MunicipalService + { + get + { + return this.municipalServiceField; + } + set + { + this.municipalServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeGroupMunicipalServiceMunicipalService : ServicePDType + { + + private ServiceChargeImportType serviceChargeField; + + private PiecemealPayment piecemealPaymentField; + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolume[] consumptionField; + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor multiplyingFactorField; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=4)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolume + { + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingService : ServicePDType + { + + private ServiceChargeType serviceChargeField; + + private PDServiceChargeExportTypeHousingServiceMunicipalResource[] municipalResourceField; + + private PDServiceChargeExportTypeHousingServicePaymentRecalculation paymentRecalculationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", Order=1)] + public PDServiceChargeExportTypeHousingServiceMunicipalResource[] MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeExportTypeHousingServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServiceMunicipalResource + { + + private nsiRef serviceTypeField; + + private PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumption consumptionField; + + private decimal rateField; + + private bool rateFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private ServiceChargeType serviceChargeField; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private PDServiceChargeExportTypeHousingServiceMunicipalResourceServiceInformation serviceInformationField; + + private PDServiceChargeExportTypeHousingServiceMunicipalResourcePaymentRecalculation paymentRecalculationField; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal totalPayableField; + + private bool totalPayableFieldSpecified; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private GeneralMunicipalResourceExportType[] generalMunicipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumption Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RateSpecified + { + get + { + return this.rateFieldSpecified; + } + set + { + this.rateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ServiceChargeType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public PDServiceChargeExportTypeHousingServiceMunicipalResourceServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public PDServiceChargeExportTypeHousingServiceMunicipalResourcePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableSpecified + { + get + { + return this.totalPayableFieldSpecified; + } + set + { + this.totalPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GeneralMunicipalResource", Order=17)] + public GeneralMunicipalResourceExportType[] GeneralMunicipalResource + { + get + { + return this.generalMunicipalResourceField; + } + set + { + this.generalMunicipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumption + { + + private PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolume volumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolume Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolume + { + + private PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeType + { + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServiceMunicipalResourceServiceInformation + { + + private decimal houseOverallNeedsNormField; + + private bool houseOverallNeedsNormFieldSpecified; + + private decimal houseOverallNeedsCurrentValueField; + + private bool houseOverallNeedsCurrentValueFieldSpecified; + + private decimal houseTotalHouseOverallNeedsField; + + private bool houseTotalHouseOverallNeedsFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal houseOverallNeedsNorm + { + get + { + return this.houseOverallNeedsNormField; + } + set + { + this.houseOverallNeedsNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsNormSpecified + { + get + { + return this.houseOverallNeedsNormFieldSpecified; + } + set + { + this.houseOverallNeedsNormFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal houseOverallNeedsCurrentValue + { + get + { + return this.houseOverallNeedsCurrentValueField; + } + set + { + this.houseOverallNeedsCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsCurrentValueSpecified + { + get + { + return this.houseOverallNeedsCurrentValueFieldSpecified; + } + set + { + this.houseOverallNeedsCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal houseTotalHouseOverallNeeds + { + get + { + return this.houseTotalHouseOverallNeedsField; + } + set + { + this.houseTotalHouseOverallNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalHouseOverallNeedsSpecified + { + get + { + return this.houseTotalHouseOverallNeedsFieldSpecified; + } + set + { + this.houseTotalHouseOverallNeedsFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServiceMunicipalResourcePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeHousingServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalService : ServicePDType + { + + private PDServiceChargeExportTypeMunicipalServiceServiceCharge serviceChargeField; + + private PDServiceChargeExportTypeMunicipalServicePiecemealPayment piecemealPaymentField; + + private PDServiceChargeExportTypeMunicipalServicePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + private PDServiceChargeExportTypeMunicipalServiceVolume[] consumptionField; + + private PDServiceChargeExportTypeMunicipalServiceMultiplyingFactor multiplyingFactorField; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceChargeExportTypeMunicipalServiceServiceCharge ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PDServiceChargeExportTypeMunicipalServicePiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeExportTypeMunicipalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=4)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeExportTypeMunicipalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PDServiceChargeExportTypeMunicipalServiceMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalServiceServiceCharge : ServiceChargeType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalServicePiecemealPayment + { + + private decimal paymentPeriodPiecemealPaymentSumField; + + private bool paymentPeriodPiecemealPaymentSumFieldSpecified; + + private decimal pastPaymentPeriodPiecemealPaymentSumField; + + private bool pastPaymentPeriodPiecemealPaymentSumFieldSpecified; + + private decimal piecemealPaymentPercentRubField; + + private decimal piecemealPaymentPercentField; + + private decimal piecemealPaymentSumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal paymentPeriodPiecemealPaymentSum + { + get + { + return this.paymentPeriodPiecemealPaymentSumField; + } + set + { + this.paymentPeriodPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool paymentPeriodPiecemealPaymentSumSpecified + { + get + { + return this.paymentPeriodPiecemealPaymentSumFieldSpecified; + } + set + { + this.paymentPeriodPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal pastPaymentPeriodPiecemealPaymentSum + { + get + { + return this.pastPaymentPeriodPiecemealPaymentSumField; + } + set + { + this.pastPaymentPeriodPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool pastPaymentPeriodPiecemealPaymentSumSpecified + { + get + { + return this.pastPaymentPeriodPiecemealPaymentSumFieldSpecified; + } + set + { + this.pastPaymentPeriodPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal piecemealPaymentPercentRub + { + get + { + return this.piecemealPaymentPercentRubField; + } + set + { + this.piecemealPaymentPercentRubField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal piecemealPaymentPercent + { + get + { + return this.piecemealPaymentPercentField; + } + set + { + this.piecemealPaymentPercentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal piecemealPaymentSum + { + get + { + return this.piecemealPaymentSumField; + } + set + { + this.piecemealPaymentSumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalServiceVolume + { + + private PDServiceChargeExportTypeMunicipalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeExportTypeMunicipalServiceVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeMunicipalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeExportTypeMunicipalServiceVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeMunicipalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeExportTypeMunicipalServiceVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeExportTypeMunicipalServiceMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceMDReadings + { + + private string meteringDeviceField; + + private decimal mDPreviousPeriodReadingsField; + + private bool mDPreviousPeriodReadingsFieldSpecified; + + private PDServiceMDReadingsMDUnit mDUnitField; + + private bool mDUnitFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDevice + { + get + { + return this.meteringDeviceField; + } + set + { + this.meteringDeviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal MDPreviousPeriodReadings + { + get + { + return this.mDPreviousPeriodReadingsField; + } + set + { + this.mDPreviousPeriodReadingsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MDPreviousPeriodReadingsSpecified + { + get + { + return this.mDPreviousPeriodReadingsFieldSpecified; + } + set + { + this.mDPreviousPeriodReadingsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceMDReadingsMDUnit MDUnit + { + get + { + return this.mDUnitField; + } + set + { + this.mDUnitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MDUnitSpecified + { + get + { + return this.mDUnitFieldSpecified; + } + set + { + this.mDUnitFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceMDReadingsMDUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("113")] + Item113, + + /// + [System.Xml.Serialization.XmlEnumAttribute("116")] + Item116, + + /// + [System.Xml.Serialization.XmlEnumAttribute("233")] + Item233, + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + + /// + [System.Xml.Serialization.XmlEnumAttribute("246")] + Item246, + + /// + [System.Xml.Serialization.XmlEnumAttribute("271")] + Item271, + + /// + A005, + + /// + A056, + + /// + A058, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportType + { + + private string accountGuidField; + + private string paymentDocumentFormField; + + private string paymentDocumentNumberField; + + private PaymentDocumentExportTypeAddressInfo addressInfoField; + + private PaymentDocumentExportTypeIndividualMDReadings[] individualMDReadingsField; + + private object[] itemsField; + + private bool itemField; + + private ItemChoiceType2 itemElementNameField; + + private decimal totalPayableByChargeInfoField; + + private bool totalPayableByChargeInfoFieldSpecified; + + private decimal totalPayableOverallByChargeInfoField; + + private bool totalPayableOverallByChargeInfoFieldSpecified; + + private decimal debtPreviousPeriodsField; + + private bool debtPreviousPeriodsFieldSpecified; + + private decimal advanceBllingPeriodField; + + private bool advanceBllingPeriodFieldSpecified; + + private decimal totalPiecemealPaymentSumField; + + private bool totalPiecemealPaymentSumFieldSpecified; + + private sbyte paymentsTakenField; + + private bool paymentsTakenFieldSpecified; + + private string additionalInformationField; + + private decimal totalPayableByPDField; + + private bool totalPayableByPDFieldSpecified; + + private decimal totalByPenaltiesAndCourtCostsField; + + private bool totalByPenaltiesAndCourtCostsFieldSpecified; + + private decimal totalPayableByPDWithDebtAndAdvanceField; + + private bool totalPayableByPDWithDebtAndAdvanceFieldSpecified; + + private PaymentDocumentExportTypeComponentsOfCost[] componentsOfCostField; + + private decimal paidCashField; + + private bool paidCashFieldSpecified; + + private System.DateTime dateOfLastReceivedPaymentField; + + private bool dateOfLastReceivedPaymentFieldSpecified; + + private int monthField; + + private bool monthFieldSpecified; + + private short yearField; + + private bool yearFieldSpecified; + + private decimal limitIndexField; + + private bool limitIndexFieldSpecified; + + private decimal subsidiesCompensationSocialSupportField; + + private bool subsidiesCompensationSocialSupportFieldSpecified; + + private PaymentDocumentExportTypePaymentProviderInformation paymentProviderInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + public string AccountGuid + { + get + { + return this.accountGuidField; + } + set + { + this.accountGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PaymentDocumentForm + { + get + { + return this.paymentDocumentFormField; + } + set + { + this.paymentDocumentFormField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=2)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public PaymentDocumentExportTypeAddressInfo AddressInfo + { + get + { + return this.addressInfoField; + } + set + { + this.addressInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IndividualMDReadings", Order=4)] + public PaymentDocumentExportTypeIndividualMDReadings[] IndividualMDReadings + { + get + { + return this.individualMDReadingsField; + } + set + { + this.individualMDReadingsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairCharge", typeof(PaymentDocumentExportTypeCapitalRepairCharge), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairDebt", typeof(PaymentDocumentExportTypeCapitalRepairDebt), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairYearCharge", typeof(CapitalRepairYearExportType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("ChargeDebt", typeof(PaymentDocumentExportTypeChargeDebt), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("ChargeInfo", typeof(PDServiceChargeExportType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("Insurance", typeof(PaymentDocumentExportTypeInsurance), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("PenaltiesAndCourtCosts", typeof(PaymentDocumentExportTypePenaltiesAndCourtCosts), Order=5)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Expose", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Withdraw", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType2 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal TotalPayableByChargeInfo + { + get + { + return this.totalPayableByChargeInfoField; + } + set + { + this.totalPayableByChargeInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByChargeInfoSpecified + { + get + { + return this.totalPayableByChargeInfoFieldSpecified; + } + set + { + this.totalPayableByChargeInfoFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal TotalPayableOverallByChargeInfo + { + get + { + return this.totalPayableOverallByChargeInfoField; + } + set + { + this.totalPayableOverallByChargeInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallByChargeInfoSpecified + { + get + { + return this.totalPayableOverallByChargeInfoFieldSpecified; + } + set + { + this.totalPayableOverallByChargeInfoFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal DebtPreviousPeriods + { + get + { + return this.debtPreviousPeriodsField; + } + set + { + this.debtPreviousPeriodsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsSpecified + { + get + { + return this.debtPreviousPeriodsFieldSpecified; + } + set + { + this.debtPreviousPeriodsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal AdvanceBllingPeriod + { + get + { + return this.advanceBllingPeriodField; + } + set + { + this.advanceBllingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AdvanceBllingPeriodSpecified + { + get + { + return this.advanceBllingPeriodFieldSpecified; + } + set + { + this.advanceBllingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal totalPiecemealPaymentSum + { + get + { + return this.totalPiecemealPaymentSumField; + } + set + { + this.totalPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool totalPiecemealPaymentSumSpecified + { + get + { + return this.totalPiecemealPaymentSumFieldSpecified; + } + set + { + this.totalPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public sbyte PaymentsTaken + { + get + { + return this.paymentsTakenField; + } + set + { + this.paymentsTakenField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaymentsTakenSpecified + { + get + { + return this.paymentsTakenFieldSpecified; + } + set + { + this.paymentsTakenFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal TotalPayableByPD + { + get + { + return this.totalPayableByPDField; + } + set + { + this.totalPayableByPDField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByPDSpecified + { + get + { + return this.totalPayableByPDFieldSpecified; + } + set + { + this.totalPayableByPDFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public decimal TotalByPenaltiesAndCourtCosts + { + get + { + return this.totalByPenaltiesAndCourtCostsField; + } + set + { + this.totalByPenaltiesAndCourtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalByPenaltiesAndCourtCostsSpecified + { + get + { + return this.totalByPenaltiesAndCourtCostsFieldSpecified; + } + set + { + this.totalByPenaltiesAndCourtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public decimal TotalPayableByPDWithDebtAndAdvance + { + get + { + return this.totalPayableByPDWithDebtAndAdvanceField; + } + set + { + this.totalPayableByPDWithDebtAndAdvanceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByPDWithDebtAndAdvanceSpecified + { + get + { + return this.totalPayableByPDWithDebtAndAdvanceFieldSpecified; + } + set + { + this.totalPayableByPDWithDebtAndAdvanceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ComponentsOfCost", Order=18)] + public PaymentDocumentExportTypeComponentsOfCost[] ComponentsOfCost + { + get + { + return this.componentsOfCostField; + } + set + { + this.componentsOfCostField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public decimal PaidCash + { + get + { + return this.paidCashField; + } + set + { + this.paidCashField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaidCashSpecified + { + get + { + return this.paidCashFieldSpecified; + } + set + { + this.paidCashFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=20)] + public System.DateTime DateOfLastReceivedPayment + { + get + { + return this.dateOfLastReceivedPaymentField; + } + set + { + this.dateOfLastReceivedPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfLastReceivedPaymentSpecified + { + get + { + return this.dateOfLastReceivedPaymentFieldSpecified; + } + set + { + this.dateOfLastReceivedPaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=21)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MonthSpecified + { + get + { + return this.monthFieldSpecified; + } + set + { + this.monthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=22)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool YearSpecified + { + get + { + return this.yearFieldSpecified; + } + set + { + this.yearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=23)] + public decimal LimitIndex + { + get + { + return this.limitIndexField; + } + set + { + this.limitIndexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LimitIndexSpecified + { + get + { + return this.limitIndexFieldSpecified; + } + set + { + this.limitIndexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=24)] + public decimal SubsidiesCompensationSocialSupport + { + get + { + return this.subsidiesCompensationSocialSupportField; + } + set + { + this.subsidiesCompensationSocialSupportField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SubsidiesCompensationSocialSupportSpecified + { + get + { + return this.subsidiesCompensationSocialSupportFieldSpecified; + } + set + { + this.subsidiesCompensationSocialSupportFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=25)] + public PaymentDocumentExportTypePaymentProviderInformation PaymentProviderInformation + { + get + { + return this.paymentProviderInformationField; + } + set + { + this.paymentProviderInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeAddressInfo + { + + private string livingPersonsNumberField; + + private decimal residentialSquareField; + + private bool residentialSquareFieldSpecified; + + private decimal heatedAreaField; + + private bool heatedAreaFieldSpecified; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string LivingPersonsNumber + { + get + { + return this.livingPersonsNumberField; + } + set + { + this.livingPersonsNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal ResidentialSquare + { + get + { + return this.residentialSquareField; + } + set + { + this.residentialSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ResidentialSquareSpecified + { + get + { + return this.residentialSquareFieldSpecified; + } + set + { + this.residentialSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal HeatedArea + { + get + { + return this.heatedAreaField; + } + set + { + this.heatedAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HeatedAreaSpecified + { + get + { + return this.heatedAreaFieldSpecified; + } + set + { + this.heatedAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeIndividualMDReadings : PDServiceMDReadings + { + + private PaymentDocumentExportTypeIndividualMDReadingsMDService[] mDServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MDService", Order=0)] + public PaymentDocumentExportTypeIndividualMDReadingsMDService[] MDService + { + get + { + return this.mDServiceField; + } + set + { + this.mDServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeIndividualMDReadingsMDService + { + + private string mDServiceCodeField; + + private string mDServiceNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MDServiceCode + { + get + { + return this.mDServiceCodeField; + } + set + { + this.mDServiceCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MDServiceName + { + get + { + return this.mDServiceNameField; + } + set + { + this.mDServiceNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeCapitalRepairCharge : CapitalRepairType + { + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeCapitalRepairDebt : DebtType + { + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeChargeDebt : PDServiceDebtType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeInsurance + { + + private string insuranceProductGUIDField; + + private decimal rateField; + + private decimal totalPayableField; + + private decimal accountingPeriodTotalField; + + private string calcExplanationField; + + private ServiceChargeType serviceChargeField; + + private PaymentDocumentExportTypeInsuranceVolume[] consumptionField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string InsuranceProductGUID + { + get + { + return this.insuranceProductGUIDField; + } + set + { + this.insuranceProductGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ServiceChargeType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=6)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PaymentDocumentExportTypeInsuranceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeInsuranceVolume + { + + private PaymentDocumentExportTypeInsuranceVolumeType typeField; + + private bool typeFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PaymentDocumentExportTypeInsuranceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PaymentDocumentExportTypeInsuranceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypePenaltiesAndCourtCosts + { + + private nsiRef serviceTypeField; + + private string causeField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Cause + { + get + { + return this.causeField; + } + set + { + this.causeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemChoiceType2 + { + + /// + Expose, + + /// + Withdraw, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypeComponentsOfCost + { + + private nsiRef nameComponentField; + + private decimal costField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef nameComponent + { + get + { + return this.nameComponentField; + } + set + { + this.nameComponentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal cost + { + get + { + return this.costField; + } + set + { + this.costField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentExportTypePaymentProviderInformation + { + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportPaymentDocumentResultType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocument", typeof(exportPaymentDocumentResultTypePaymentDocument), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportPaymentDocumentResultTypePaymentDocument : PaymentDocumentExportType + { + + private string paymentDocumentIDField; + + private exportPaymentDocumentResultTypePaymentDocumentPaymentInformation[] paymentInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PaymentInformation", Order=1)] + public exportPaymentDocumentResultTypePaymentDocumentPaymentInformation[] PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportPaymentDocumentResultTypePaymentDocumentPaymentInformation : PaymentInformationExportType + { + + private decimal totalPayableByPaymentInformationField; + + private bool totalPayableByPaymentInformationFieldSpecified; + + private string paymentInformationGuidField; + + private string accountNumberField; + + private string serviceIDField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal totalPayableWithDebtAndAdvanceField; + + private bool totalPayableWithDebtAndAdvanceFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TotalPayableByPaymentInformation + { + get + { + return this.totalPayableByPaymentInformationField; + } + set + { + this.totalPayableByPaymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByPaymentInformationSpecified + { + get + { + return this.totalPayableByPaymentInformationFieldSpecified; + } + set + { + this.totalPayableByPaymentInformationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=3)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal TotalPayableWithDebtAndAdvance + { + get + { + return this.totalPayableWithDebtAndAdvanceField; + } + set + { + this.totalPayableWithDebtAndAdvanceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableWithDebtAndAdvanceSpecified + { + get + { + return this.totalPayableWithDebtAndAdvanceFieldSpecified; + } + set + { + this.totalPayableWithDebtAndAdvanceFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-service-async/", ConfigurationName="Hcs.Service.Async.Bills.BillsPortsTypeAsync")] + public interface BillsPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Bills.getStateRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importPaymentDocumentData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:importPaymentDocumentData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importPaymentDocumentDataAsync(Hcs.Service.Async.Bills.importPaymentDocumentDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportPaymentDocumentData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:exportPaymentDocumentData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportPaymentDocumentDataAsync(Hcs.Service.Async.Bills.exportPaymentDocumentDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportNotificationsOfOrderExecution", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:exportNotificationsOfOrderExecution", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importAcknowledgment", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:importAcknowledgment", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importAcknowledgmentAsync(Hcs.Service.Async.Bills.importAcknowledgmentRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importInsuranceProduct", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:importInsuranceProduct", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importInsuranceProductAsync(Hcs.Service.Async.Bills.importInsuranceProductRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportInsuranceProduct", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:exportInsuranceProduct", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportInsuranceProductAsync(Hcs.Service.Async.Bills.exportInsuranceProductRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importRSOSettlements", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:importRSOSettlements", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importRSOSettlementsAsync(Hcs.Service.Async.Bills.importRSOSettlementsRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importIKUSettlements", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:importIKUSettlements", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importIKUSettlementsAsync(Hcs.Service.Async.Bills.importIKUSettlementsRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportSettlements", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:exportSettlements", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportSettlementsAsync(Hcs.Service.Async.Bills.exportSettlementsRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportNotificationsOfOrderExecutionPaginal", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:exportNotificationsOfOrderExecutionPaginal", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportNotificationsOfOrderExecutionPaginalAsync(Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getRequestsState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Bills.Fault), Action="urn:getRequestsState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ReportPeriodType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AcknowledgmentRequestInfoExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceDebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DebtType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairMonthlyImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CapitalRepairType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServiceInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ServicePDType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PDServiceMDReadings))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentDocumentExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getRequestsStateAsync(Hcs.Service.Async.Bills.getRequestsStateRequest request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeader : HeaderType + { + + private object itemField; + + private ItemChoiceType4 itemElementNameField; + + private bool isOperatorSignatureField; + + private bool isOperatorSignatureFieldSpecified; + + private ISCreator[] iSCreatorField; + + public RequestHeader() + { + this.isOperatorSignatureField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Citizen", typeof(RequestHeaderCitizen), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SenderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType4 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsOperatorSignature + { + get + { + return this.isOperatorSignatureField; + } + set + { + this.isOperatorSignatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsOperatorSignatureSpecified + { + get + { + return this.isOperatorSignatureFieldSpecified; + } + set + { + this.isOperatorSignatureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=3)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizen + { + + private object[] itemsField; + + private ItemsChoiceType6[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Document", typeof(RequestHeaderCitizenDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType6[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocument + { + + private RequestHeaderCitizenDocumentDocumentType documentTypeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RequestHeaderCitizenDocumentDocumentType DocumentType + { + get + { + return this.documentTypeField; + } + set + { + this.documentTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocumentDocumentType + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType6 + { + + /// + CitizenPPAGUID, + + /// + Document, + + /// + SNILS, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType4 + { + + /// + Citizen, + + /// + SenderID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private string versionField; + + public getStateResult() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ExportNotificationsOfOrderExecutionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(CommonResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("InsuranceProduct", typeof(InsuranceProductType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Settlement", typeof(ExportSettlementResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportNotificationsOfOrderExecutionResult", typeof(exportNotificationsOfOrderExecutionResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportPaymentDocResult", typeof(exportPaymentDocumentResultType), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.getStateRequest getStateRequest) + { + this.RequestHeader = RequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importPaymentDocumentRequest() + { + this.versionField = "11.2.0.16"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ConfirmAmountsCorrect", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocument", typeof(importPaymentDocumentRequestPaymentDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentInformation", typeof(importPaymentDocumentRequestPaymentInformation), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentProviderInformation", typeof(importPaymentDocumentRequestPaymentProviderInformation), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("WithdrawPaymentDocument", typeof(importPaymentDocumentRequestWithdrawPaymentDocument), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestPaymentDocument : PaymentDocumentType + { + + private string transportGUIDField; + + private string paymentDocumentIDField; + + private object[] items1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=1)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DetailsPaymentInformation", typeof(importPaymentDocumentRequestPaymentDocumentDetailsPaymentInformation), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("PaymentInformationDetails", typeof(importPaymentDocumentRequestPaymentDocumentPaymentInformationDetails), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("PaymentInformationKey", typeof(string), Order=2)] + public object[] Items1 + { + get + { + return this.items1Field; + } + set + { + this.items1Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestPaymentDocumentDetailsPaymentInformation + { + + private string paymentInformationKeyField; + + private decimal totalPayableByPaymentInformationField; + + private string accountNumberField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal totalPayableWithDebtAndAdvanceField; + + private bool totalPayableWithDebtAndAdvanceFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalPayableByPaymentInformation + { + get + { + return this.totalPayableByPaymentInformationField; + } + set + { + this.totalPayableByPaymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalPayableWithDebtAndAdvance + { + get + { + return this.totalPayableWithDebtAndAdvanceField; + } + set + { + this.totalPayableWithDebtAndAdvanceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableWithDebtAndAdvanceSpecified + { + get + { + return this.totalPayableWithDebtAndAdvanceFieldSpecified; + } + set + { + this.totalPayableWithDebtAndAdvanceFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestPaymentDocumentPaymentInformationDetails + { + + private decimal totalPayableByPaymentInformationField; + + private string accountNumberField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal totalPayableWithDebtAndAdvanceField; + + private bool totalPayableWithDebtAndAdvanceFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TotalPayableByPaymentInformation + { + get + { + return this.totalPayableByPaymentInformationField; + } + set + { + this.totalPayableByPaymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalPayableWithDebtAndAdvance + { + get + { + return this.totalPayableWithDebtAndAdvanceField; + } + set + { + this.totalPayableWithDebtAndAdvanceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableWithDebtAndAdvanceSpecified + { + get + { + return this.totalPayableWithDebtAndAdvanceFieldSpecified; + } + set + { + this.totalPayableWithDebtAndAdvanceFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentType + { + + private string accountGuidField; + + private string paymentDocumentNumberField; + + private PaymentDocumentTypeIndividualMDReadings[] individualMDReadingsField; + + private object[] itemsField; + + private bool itemField; + + private ItemChoiceType5 itemElementNameField; + + private decimal totalPayableByChargeInfoField; + + private bool totalPayableByChargeInfoFieldSpecified; + + private decimal totalPayableOverallByChargeInfoField; + + private bool totalPayableOverallByChargeInfoFieldSpecified; + + private decimal debtPreviousPeriodsField; + + private bool debtPreviousPeriodsFieldSpecified; + + private decimal advanceBllingPeriodField; + + private bool advanceBllingPeriodFieldSpecified; + + private decimal totalPiecemealPaymentSumField; + + private bool totalPiecemealPaymentSumFieldSpecified; + + private sbyte paymentsTakenField; + + private bool paymentsTakenFieldSpecified; + + private string additionalInformationField; + + private decimal totalPayableByPDWithDebtAndAdvanceField; + + private bool totalPayableByPDWithDebtAndAdvanceFieldSpecified; + + private decimal totalByPenaltiesAndCourtCostsField; + + private bool totalByPenaltiesAndCourtCostsFieldSpecified; + + private decimal totalPayableByPDField; + + private bool totalPayableByPDFieldSpecified; + + private PaymentDocumentTypeComponentsOfCost[] componentsOfCostField; + + private decimal paidCashField; + + private bool paidCashFieldSpecified; + + private System.DateTime dateOfLastReceivedPaymentField; + + private bool dateOfLastReceivedPaymentFieldSpecified; + + private decimal limitIndexField; + + private bool limitIndexFieldSpecified; + + private decimal subsidiesCompensationSocialSupportField; + + private bool subsidiesCompensationSocialSupportFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + public string AccountGuid + { + get + { + return this.accountGuidField; + } + set + { + this.accountGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=1)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IndividualMDReadings", Order=2)] + public PaymentDocumentTypeIndividualMDReadings[] IndividualMDReadings + { + get + { + return this.individualMDReadingsField; + } + set + { + this.individualMDReadingsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairCharge", typeof(PaymentDocumentTypeCapitalRepairCharge), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairDebt", typeof(DebtImportCRType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairYearCharge", typeof(CapitalRepairYearImportType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("ChargeDebt", typeof(PDServiceDebtImportType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("ChargeInfo", typeof(PaymentDocumentTypeChargeInfo), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Insurance", typeof(PaymentDocumentTypeInsurance), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("PenaltiesAndCourtCosts", typeof(PaymentDocumentTypePenaltiesAndCourtCosts), Order=3)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Expose", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("Withdraw", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType5 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal TotalPayableByChargeInfo + { + get + { + return this.totalPayableByChargeInfoField; + } + set + { + this.totalPayableByChargeInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByChargeInfoSpecified + { + get + { + return this.totalPayableByChargeInfoFieldSpecified; + } + set + { + this.totalPayableByChargeInfoFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal TotalPayableOverallByChargeInfo + { + get + { + return this.totalPayableOverallByChargeInfoField; + } + set + { + this.totalPayableOverallByChargeInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallByChargeInfoSpecified + { + get + { + return this.totalPayableOverallByChargeInfoFieldSpecified; + } + set + { + this.totalPayableOverallByChargeInfoFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal DebtPreviousPeriods + { + get + { + return this.debtPreviousPeriodsField; + } + set + { + this.debtPreviousPeriodsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsSpecified + { + get + { + return this.debtPreviousPeriodsFieldSpecified; + } + set + { + this.debtPreviousPeriodsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AdvanceBllingPeriod + { + get + { + return this.advanceBllingPeriodField; + } + set + { + this.advanceBllingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AdvanceBllingPeriodSpecified + { + get + { + return this.advanceBllingPeriodFieldSpecified; + } + set + { + this.advanceBllingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal totalPiecemealPaymentSum + { + get + { + return this.totalPiecemealPaymentSumField; + } + set + { + this.totalPiecemealPaymentSumField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool totalPiecemealPaymentSumSpecified + { + get + { + return this.totalPiecemealPaymentSumFieldSpecified; + } + set + { + this.totalPiecemealPaymentSumFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public sbyte PaymentsTaken + { + get + { + return this.paymentsTakenField; + } + set + { + this.paymentsTakenField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaymentsTakenSpecified + { + get + { + return this.paymentsTakenFieldSpecified; + } + set + { + this.paymentsTakenFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal TotalPayableByPDWithDebtAndAdvance + { + get + { + return this.totalPayableByPDWithDebtAndAdvanceField; + } + set + { + this.totalPayableByPDWithDebtAndAdvanceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByPDWithDebtAndAdvanceSpecified + { + get + { + return this.totalPayableByPDWithDebtAndAdvanceFieldSpecified; + } + set + { + this.totalPayableByPDWithDebtAndAdvanceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal TotalByPenaltiesAndCourtCosts + { + get + { + return this.totalByPenaltiesAndCourtCostsField; + } + set + { + this.totalByPenaltiesAndCourtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalByPenaltiesAndCourtCostsSpecified + { + get + { + return this.totalByPenaltiesAndCourtCostsFieldSpecified; + } + set + { + this.totalByPenaltiesAndCourtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal TotalPayableByPD + { + get + { + return this.totalPayableByPDField; + } + set + { + this.totalPayableByPDField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableByPDSpecified + { + get + { + return this.totalPayableByPDFieldSpecified; + } + set + { + this.totalPayableByPDFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ComponentsOfCost", Order=16)] + public PaymentDocumentTypeComponentsOfCost[] ComponentsOfCost + { + get + { + return this.componentsOfCostField; + } + set + { + this.componentsOfCostField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public decimal PaidCash + { + get + { + return this.paidCashField; + } + set + { + this.paidCashField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaidCashSpecified + { + get + { + return this.paidCashFieldSpecified; + } + set + { + this.paidCashFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=18)] + public System.DateTime DateOfLastReceivedPayment + { + get + { + return this.dateOfLastReceivedPaymentField; + } + set + { + this.dateOfLastReceivedPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfLastReceivedPaymentSpecified + { + get + { + return this.dateOfLastReceivedPaymentFieldSpecified; + } + set + { + this.dateOfLastReceivedPaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public decimal LimitIndex + { + get + { + return this.limitIndexField; + } + set + { + this.limitIndexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LimitIndexSpecified + { + get + { + return this.limitIndexFieldSpecified; + } + set + { + this.limitIndexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public decimal SubsidiesCompensationSocialSupport + { + get + { + return this.subsidiesCompensationSocialSupportField; + } + set + { + this.subsidiesCompensationSocialSupportField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SubsidiesCompensationSocialSupportSpecified + { + get + { + return this.subsidiesCompensationSocialSupportFieldSpecified; + } + set + { + this.subsidiesCompensationSocialSupportFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeIndividualMDReadings : PDServiceMDReadings + { + + private PaymentDocumentTypeIndividualMDReadingsMDServiceCode[] mDServiceCodeField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MDServiceCode", Order=0)] + public PaymentDocumentTypeIndividualMDReadingsMDServiceCode[] MDServiceCode + { + get + { + return this.mDServiceCodeField; + } + set + { + this.mDServiceCodeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PaymentDocumentTypeIndividualMDReadingsMDServiceCode + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("1")] + Item1, + + /// + [System.Xml.Serialization.XmlEnumAttribute("2")] + Item2, + + /// + [System.Xml.Serialization.XmlEnumAttribute("3")] + Item3, + + /// + [System.Xml.Serialization.XmlEnumAttribute("4")] + Item4, + + /// + [System.Xml.Serialization.XmlEnumAttribute("5")] + Item5, + + /// + [System.Xml.Serialization.XmlEnumAttribute("6")] + Item6, + + /// + [System.Xml.Serialization.XmlEnumAttribute("7")] + Item7, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeCapitalRepairCharge : CapitalRepairImportType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairImportType + { + + private decimal contributionField; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private decimal moneyRecalculationField; + + private bool moneyRecalculationFieldSpecified; + + private decimal moneyDiscountField; + + private bool moneyDiscountFieldSpecified; + + private decimal totalPayableField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private string calcExplanationField; + + private CapitalRepairImportTypePaymentRecalculation paymentRecalculationField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Contribution + { + get + { + return this.contributionField; + } + set + { + this.contributionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal MoneyRecalculation + { + get + { + return this.moneyRecalculationField; + } + set + { + this.moneyRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyRecalculationSpecified + { + get + { + return this.moneyRecalculationFieldSpecified; + } + set + { + this.moneyRecalculationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal MoneyDiscount + { + get + { + return this.moneyDiscountField; + } + set + { + this.moneyDiscountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MoneyDiscountSpecified + { + get + { + return this.moneyDiscountFieldSpecified; + } + set + { + this.moneyDiscountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public CapitalRepairImportTypePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairImportTypePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class DebtImportCRType + { + + private int monthField; + + private short yearField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairYearImportType + { + + private CapitalRepairYearImportTypeCapitalRepairMonthlyCharge[] capitalRepairMonthlyChargeField; + + private short yearField; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CapitalRepairMonthlyCharge", Order=0)] + public CapitalRepairYearImportTypeCapitalRepairMonthlyCharge[] CapitalRepairMonthlyCharge + { + get + { + return this.capitalRepairMonthlyChargeField; + } + set + { + this.capitalRepairMonthlyChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class CapitalRepairYearImportTypeCapitalRepairMonthlyCharge : CapitalRepairMonthlyImportType + { + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AdditionalService", typeof(PDServiceDebtImportTypeAdditionalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("GroupMunicipalService", typeof(PDServiceDebtImportTypeGroupMunicipalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HousingService", typeof(PDServiceDebtImportTypeHousingService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", typeof(PDServiceDebtImportTypeMunicipalService), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeAdditionalService : ServiceDebtImportType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServiceDebtImportType : DebtImportType + { + + private nsiRef serviceTypeField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceDebtImportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class DebtImportType + { + + private int monthField; + + private short yearField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeGroupMunicipalService + { + + private PDServiceDebtImportTypeGroupMunicipalServiceTypeMunicipalService typeMunicipalServiceField; + + private PDServiceDebtImportTypeGroupMunicipalServiceMunicipalService[] municipalServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceDebtImportTypeGroupMunicipalServiceTypeMunicipalService TypeMunicipalService + { + get + { + return this.typeMunicipalServiceField; + } + set + { + this.typeMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", Order=1)] + public PDServiceDebtImportTypeGroupMunicipalServiceMunicipalService[] MunicipalService + { + get + { + return this.municipalServiceField; + } + set + { + this.municipalServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeGroupMunicipalServiceTypeMunicipalService + { + + private nsiRef serviceTypeField; + + private int monthField; + + private short yearField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=2)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeGroupMunicipalServiceMunicipalService : ServiceDebtImportType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeHousingService : ServiceDebtImportType + { + + private PDServiceDebtImportTypeHousingServiceMunicipalResource[] municipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", Order=0)] + public PDServiceDebtImportTypeHousingServiceMunicipalResource[] MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeHousingServiceMunicipalResource + { + + private nsiRef serviceTypeField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + private PDServiceDebtImportTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] generalMunicipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GeneralMunicipalResource", Order=3)] + public PDServiceDebtImportTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] GeneralMunicipalResource + { + get + { + return this.generalMunicipalResourceField; + } + set + { + this.generalMunicipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeHousingServiceMunicipalResourceGeneralMunicipalResource + { + + private nsiRef serviceTypeField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceDebtImportTypeMunicipalService : ServiceDebtImportType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeChargeInfo : PDServiceChargeType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AdditionalService", typeof(PDServiceChargeTypeAdditionalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("GroupMunicipalService", typeof(PDServiceChargeTypeGroupMunicipalService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HousingService", typeof(PDServiceChargeTypeHousingService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", typeof(PDServiceChargeTypeMunicipalService), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeAdditionalService : ServicePDImportType + { + + private ServiceChargeImportType serviceChargeField; + + private PDServiceChargeTypeAdditionalServiceVolume[] consumptionField; + + private PDServiceChargeTypeAdditionalServicePaymentRecalculation paymentRecalculationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=1)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeTypeAdditionalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeTypeAdditionalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeAdditionalServiceVolume + { + + private PDServiceChargeTypeAdditionalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeAdditionalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeAdditionalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeAdditionalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class ServicePDImportType + { + + private nsiRef serviceTypeField; + + private decimal rateField; + + private decimal totalPayableField; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private string calcExplanationField; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeGroupMunicipalService + { + + private TypeMunicipalServiceType typeMunicipalServiceField; + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalService[] municipalServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public TypeMunicipalServiceType TypeMunicipalService + { + get + { + return this.typeMunicipalServiceField; + } + set + { + this.typeMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalService", Order=1)] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalService[] MunicipalService + { + get + { + return this.municipalServiceField; + } + set + { + this.municipalServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceType + { + + private nsiRef serviceTypeField; + + private TypeMunicipalServiceTypeVolume[] consumptionField; + + private decimal rateField; + + private bool rateFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private TypeMunicipalServiceTypeMultiplyingFactor multiplyingFactorField; + + private ServiceChargeImportType serviceChargeField; + + private decimal totalPayableField; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string calcExplanationField; + + private string orgPPAGUIDField; + + private PiecemealPayment piecemealPaymentField; + + private TypeMunicipalServiceTypePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=1)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public TypeMunicipalServiceTypeVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RateSpecified + { + get + { + return this.rateFieldSpecified; + } + set + { + this.rateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public TypeMunicipalServiceTypeMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public PiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public TypeMunicipalServiceTypePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=21)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceTypeVolume + { + + private TypeMunicipalServiceTypeVolumeType typeField; + + private bool typeFieldSpecified; + + private TypeMunicipalServiceTypeVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public TypeMunicipalServiceTypeVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public TypeMunicipalServiceTypeVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum TypeMunicipalServiceTypeVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum TypeMunicipalServiceTypeVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceTypeMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class TypeMunicipalServiceTypePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeGroupMunicipalServiceMunicipalService : ServicePDImportType + { + + private ServiceChargeImportType serviceChargeField; + + private PiecemealPayment piecemealPaymentField; + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolume[] consumptionField; + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor multiplyingFactorField; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=4)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeGroupMunicipalServiceMunicipalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolume + { + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeGroupMunicipalServiceMunicipalServiceMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingService : ServicePDImportType + { + + private ServiceChargeImportType serviceChargeField; + + private PDServiceChargeTypeHousingServiceMunicipalResource[] municipalResourceField; + + private PDServiceChargeTypeHousingServicePaymentRecalculation paymentRecalculationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", Order=1)] + public PDServiceChargeTypeHousingServiceMunicipalResource[] MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeTypeHousingServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResource + { + + private nsiRef serviceTypeField; + + private PDServiceChargeTypeHousingServiceMunicipalResourceUnit unitField; + + private bool unitFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceConsumption consumptionField; + + private decimal rateField; + + private bool rateFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private ServiceChargeImportType serviceChargeField; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceServiceInformation serviceInformationField; + + private PDServiceChargeTypeHousingServiceMunicipalResourcePaymentRecalculation paymentRecalculationField; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal totalPayableField; + + private bool totalPayableFieldSpecified; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] generalMunicipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PDServiceChargeTypeHousingServiceMunicipalResourceUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeTypeHousingServiceMunicipalResourceConsumption Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RateSpecified + { + get + { + return this.rateFieldSpecified; + } + set + { + this.rateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public PDServiceChargeTypeHousingServiceMunicipalResourceServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public PDServiceChargeTypeHousingServiceMunicipalResourcePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableSpecified + { + get + { + return this.totalPayableFieldSpecified; + } + set + { + this.totalPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GeneralMunicipalResource", Order=18)] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResource[] GeneralMunicipalResource + { + get + { + return this.generalMunicipalResourceField; + } + set + { + this.generalMunicipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeHousingServiceMunicipalResourceUnit + { + + /// + S, + + /// + D, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceConsumption + { + + private PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolume volumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolume Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolume + { + + private PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeType + { + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeHousingServiceMunicipalResourceConsumptionVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceServiceInformation + { + + private decimal houseOverallNeedsNormField; + + private bool houseOverallNeedsNormFieldSpecified; + + private decimal houseOverallNeedsCurrentValueField; + + private bool houseOverallNeedsCurrentValueFieldSpecified; + + private decimal houseTotalHouseOverallNeedsField; + + private bool houseTotalHouseOverallNeedsFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal houseOverallNeedsNorm + { + get + { + return this.houseOverallNeedsNormField; + } + set + { + this.houseOverallNeedsNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsNormSpecified + { + get + { + return this.houseOverallNeedsNormFieldSpecified; + } + set + { + this.houseOverallNeedsNormFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal houseOverallNeedsCurrentValue + { + get + { + return this.houseOverallNeedsCurrentValueField; + } + set + { + this.houseOverallNeedsCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsCurrentValueSpecified + { + get + { + return this.houseOverallNeedsCurrentValueFieldSpecified; + } + set + { + this.houseOverallNeedsCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal houseTotalHouseOverallNeeds + { + get + { + return this.houseTotalHouseOverallNeedsField; + } + set + { + this.houseTotalHouseOverallNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalHouseOverallNeedsSpecified + { + get + { + return this.houseTotalHouseOverallNeedsFieldSpecified; + } + set + { + this.houseTotalHouseOverallNeedsFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourcePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResource : GeneralMunicipalResourceType + { + + private nsiRef serviceTypeField; + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumption consumptionField; + + private decimal rateField; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private ServiceChargeImportType serviceChargeField; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourcePaymentRecalculation paymentRecalculationField; + + private decimal totalPayableField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceServiceInformation serviceInformationField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumption Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourcePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumption + { + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolume volumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolume Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolume + { + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeType + { + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceConsumptionVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourcePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServiceMunicipalResourceGeneralMunicipalResourceServiceInformation + { + + private decimal houseOverallNeedsNormField; + + private bool houseOverallNeedsNormFieldSpecified; + + private decimal houseOverallNeedsCurrentValueField; + + private bool houseOverallNeedsCurrentValueFieldSpecified; + + private decimal houseTotalHouseOverallNeedsField; + + private bool houseTotalHouseOverallNeedsFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal houseOverallNeedsNorm + { + get + { + return this.houseOverallNeedsNormField; + } + set + { + this.houseOverallNeedsNormField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsNormSpecified + { + get + { + return this.houseOverallNeedsNormFieldSpecified; + } + set + { + this.houseOverallNeedsNormFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal houseOverallNeedsCurrentValue + { + get + { + return this.houseOverallNeedsCurrentValueField; + } + set + { + this.houseOverallNeedsCurrentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseOverallNeedsCurrentValueSpecified + { + get + { + return this.houseOverallNeedsCurrentValueFieldSpecified; + } + set + { + this.houseOverallNeedsCurrentValueFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal houseTotalHouseOverallNeeds + { + get + { + return this.houseTotalHouseOverallNeedsField; + } + set + { + this.houseTotalHouseOverallNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool houseTotalHouseOverallNeedsSpecified + { + get + { + return this.houseTotalHouseOverallNeedsFieldSpecified; + } + set + { + this.houseTotalHouseOverallNeedsFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class GeneralMunicipalResourceType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeHousingServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeMunicipalService : ServicePDImportType + { + + private ServiceChargeImportType serviceChargeField; + + private PiecemealPayment piecemealPaymentField; + + private PDServiceChargeTypeMunicipalServicePaymentRecalculation paymentRecalculationField; + + private ServiceInformation serviceInformationField; + + private PDServiceChargeTypeMunicipalServiceVolume[] consumptionField; + + private PDServiceChargeTypeMunicipalServiceMultiplyingFactor multiplyingFactorField; + + private decimal municipalServiceIndividualConsumptionPayableField; + + private bool municipalServiceIndividualConsumptionPayableFieldSpecified; + + private decimal municipalServiceCommunalConsumptionPayableField; + + private bool municipalServiceCommunalConsumptionPayableFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceIndividualConsumptionField; + + private bool amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + + private decimal amountOfPaymentMunicipalServiceCommunalConsumptionField; + + private bool amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PiecemealPayment PiecemealPayment + { + get + { + return this.piecemealPaymentField; + } + set + { + this.piecemealPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public PDServiceChargeTypeMunicipalServicePaymentRecalculation PaymentRecalculation + { + get + { + return this.paymentRecalculationField; + } + set + { + this.paymentRecalculationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ServiceInformation ServiceInformation + { + get + { + return this.serviceInformationField; + } + set + { + this.serviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=4)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PDServiceChargeTypeMunicipalServiceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PDServiceChargeTypeMunicipalServiceMultiplyingFactor MultiplyingFactor + { + get + { + return this.multiplyingFactorField; + } + set + { + this.multiplyingFactorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal MunicipalServiceIndividualConsumptionPayable + { + get + { + return this.municipalServiceIndividualConsumptionPayableField; + } + set + { + this.municipalServiceIndividualConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceIndividualConsumptionPayableSpecified + { + get + { + return this.municipalServiceIndividualConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceIndividualConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal MunicipalServiceCommunalConsumptionPayable + { + get + { + return this.municipalServiceCommunalConsumptionPayableField; + } + set + { + this.municipalServiceCommunalConsumptionPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MunicipalServiceCommunalConsumptionPayableSpecified + { + get + { + return this.municipalServiceCommunalConsumptionPayableFieldSpecified; + } + set + { + this.municipalServiceCommunalConsumptionPayableFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal AmountOfPaymentMunicipalServiceIndividualConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceIndividualConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceIndividualConsumptionFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal AmountOfPaymentMunicipalServiceCommunalConsumption + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionField; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfPaymentMunicipalServiceCommunalConsumptionSpecified + { + get + { + return this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified; + } + set + { + this.amountOfPaymentMunicipalServiceCommunalConsumptionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeMunicipalServicePaymentRecalculation + { + + private string recalculationReasonField; + + private decimal sumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string recalculationReason + { + get + { + return this.recalculationReasonField; + } + set + { + this.recalculationReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal sum + { + get + { + return this.sumField; + } + set + { + this.sumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeMunicipalServiceVolume + { + + private PDServiceChargeTypeMunicipalServiceVolumeType typeField; + + private bool typeFieldSpecified; + + private PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod determiningMethodField; + + private bool determiningMethodFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeMunicipalServiceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod determiningMethod + { + get + { + return this.determiningMethodField; + } + set + { + this.determiningMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool determiningMethodSpecified + { + get + { + return this.determiningMethodFieldSpecified; + } + set + { + this.determiningMethodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeMunicipalServiceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PDServiceChargeTypeMunicipalServiceVolumeDeterminingMethod + { + + /// + N, + + /// + M, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PDServiceChargeTypeMunicipalServiceMultiplyingFactor + { + + private decimal ratioField; + + private decimal amountOfExcessFeesField; + + private bool amountOfExcessFeesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Ratio + { + get + { + return this.ratioField; + } + set + { + this.ratioField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal AmountOfExcessFees + { + get + { + return this.amountOfExcessFeesField; + } + set + { + this.amountOfExcessFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AmountOfExcessFeesSpecified + { + get + { + return this.amountOfExcessFeesFieldSpecified; + } + set + { + this.amountOfExcessFeesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeInsurance + { + + private string insuranceProductGUIDField; + + private decimal rateField; + + private decimal totalPayableField; + + private decimal accountingPeriodTotalField; + + private bool accountingPeriodTotalFieldSpecified; + + private string calcExplanationField; + + private ServiceChargeImportType serviceChargeField; + + private PaymentDocumentTypeInsuranceVolume[] consumptionField; + + private decimal debtPreviousPeriodsOrAdvanceBillingPeriodField; + + private bool debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + + private decimal penaltiesField; + + private bool penaltiesFieldSpecified; + + private decimal serviceProviderPenaltiesField; + + private bool serviceProviderPenaltiesFieldSpecified; + + private decimal stateFeesField; + + private bool stateFeesFieldSpecified; + + private decimal courtCostsField; + + private bool courtCostsFieldSpecified; + + private decimal totalPayableOverallField; + + private bool totalPayableOverallFieldSpecified; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string InsuranceProductGUID + { + get + { + return this.insuranceProductGUIDField; + } + set + { + this.insuranceProductGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Rate + { + get + { + return this.rateField; + } + set + { + this.rateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal AccountingPeriodTotal + { + get + { + return this.accountingPeriodTotalField; + } + set + { + this.accountingPeriodTotalField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccountingPeriodTotalSpecified + { + get + { + return this.accountingPeriodTotalFieldSpecified; + } + set + { + this.accountingPeriodTotalFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string CalcExplanation + { + get + { + return this.calcExplanationField; + } + set + { + this.calcExplanationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ServiceChargeImportType ServiceCharge + { + get + { + return this.serviceChargeField; + } + set + { + this.serviceChargeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=6)] + [System.Xml.Serialization.XmlArrayItemAttribute("Volume", IsNullable=false)] + public PaymentDocumentTypeInsuranceVolume[] Consumption + { + get + { + return this.consumptionField; + } + set + { + this.consumptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal DebtPreviousPeriodsOrAdvanceBillingPeriod + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodField; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DebtPreviousPeriodsOrAdvanceBillingPeriodSpecified + { + get + { + return this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified; + } + set + { + this.debtPreviousPeriodsOrAdvanceBillingPeriodFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Penalties + { + get + { + return this.penaltiesField; + } + set + { + this.penaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PenaltiesSpecified + { + get + { + return this.penaltiesFieldSpecified; + } + set + { + this.penaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public decimal ServiceProviderPenalties + { + get + { + return this.serviceProviderPenaltiesField; + } + set + { + this.serviceProviderPenaltiesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServiceProviderPenaltiesSpecified + { + get + { + return this.serviceProviderPenaltiesFieldSpecified; + } + set + { + this.serviceProviderPenaltiesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public decimal StateFees + { + get + { + return this.stateFeesField; + } + set + { + this.stateFeesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateFeesSpecified + { + get + { + return this.stateFeesFieldSpecified; + } + set + { + this.stateFeesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public decimal CourtCosts + { + get + { + return this.courtCostsField; + } + set + { + this.courtCostsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CourtCostsSpecified + { + get + { + return this.courtCostsFieldSpecified; + } + set + { + this.courtCostsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public decimal TotalPayableOverall + { + get + { + return this.totalPayableOverallField; + } + set + { + this.totalPayableOverallField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalPayableOverallSpecified + { + get + { + return this.totalPayableOverallFieldSpecified; + } + set + { + this.totalPayableOverallFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeInsuranceVolume + { + + private PaymentDocumentTypeInsuranceVolumeType typeField; + + private bool typeFieldSpecified; + + private decimal valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public PaymentDocumentTypeInsuranceVolumeType type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool typeSpecified + { + get + { + return this.typeFieldSpecified; + } + set + { + this.typeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public decimal Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public enum PaymentDocumentTypeInsuranceVolumeType + { + + /// + I, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypePenaltiesAndCourtCosts + { + + private nsiRef serviceTypeField; + + private string causeField; + + private decimal totalPayableField; + + private string orgPPAGUIDField; + + private string paymentInformationKeyField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Cause + { + get + { + return this.causeField; + } + set + { + this.causeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalPayable + { + get + { + return this.totalPayableField; + } + set + { + this.totalPayableField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PaymentInformationKey + { + get + { + return this.paymentInformationKeyField; + } + set + { + this.paymentInformationKeyField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemChoiceType5 + { + + /// + Expose, + + /// + Withdraw, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class PaymentDocumentTypeComponentsOfCost + { + + private nsiRef nameComponentField; + + private decimal costField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef nameComponent + { + get + { + return this.nameComponentField; + } + set + { + this.nameComponentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal cost + { + get + { + return this.costField; + } + set + { + this.costField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestPaymentInformation : PaymentInformationKeyType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class PaymentInformationKeyType + { + + private string bankBIKField; + + private string operatingAccountNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BankBIK + { + get + { + return this.bankBIKField; + } + set + { + this.bankBIKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string operatingAccountNumber + { + get + { + return this.operatingAccountNumberField; + } + set + { + this.operatingAccountNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestPaymentProviderInformation + { + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importPaymentDocumentRequestWithdrawPaymentDocument + { + + private string transportGUIDField; + + private string paymentDocumentIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=1)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importPaymentDocumentDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.importPaymentDocumentRequest importPaymentDocumentRequest; + + public importPaymentDocumentDataRequest() + { + } + + public importPaymentDocumentDataRequest(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importPaymentDocumentRequest importPaymentDocumentRequest) + { + this.RequestHeader = RequestHeader; + this.importPaymentDocumentRequest = importPaymentDocumentRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importPaymentDocumentDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public importPaymentDocumentDataResponse() + { + } + + public importPaymentDocumentDataResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportPaymentDocumentRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType7[] itemsElementNameField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UnifiedAccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType7[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType7 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:AccountNumber")] + AccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:UnifiedAccountNumber")] + UnifiedAccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentNumber")] + PaymentDocumentNumber, + + /// + AccountGUID, + + /// + FIASHouseGuid, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportPaymentDocumentDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.exportPaymentDocumentRequest exportPaymentDocumentRequest; + + public exportPaymentDocumentDataRequest() + { + } + + public exportPaymentDocumentDataRequest(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportPaymentDocumentRequest exportPaymentDocumentRequest) + { + this.RequestHeader = RequestHeader; + this.exportPaymentDocumentRequest = exportPaymentDocumentRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportPaymentDocumentDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public exportPaymentDocumentDataResponse() + { + } + + public exportPaymentDocumentDataResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionRequest : BaseType + { + + private object itemField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Notifications", typeof(exportNotificationsOfOrderExecutionRequestNotifications), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SupplierIDs", typeof(exportNotificationsOfOrderExecutionRequestSupplierIDs), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionRequestNotifications + { + + private object[] itemsField; + + private ItemsChoiceType9[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AckStatus", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DateFrom", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DaysInterval", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NotificationsOfOrderExecutionGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType9[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType9 + { + + /// + AckStatus, + + /// + DateFrom, + + /// + DaysInterval, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/payments-base/:NotificationsOfOrderExe" + + "cutionGUID")] + NotificationsOfOrderExecutionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionRequestSupplierIDs + { + + private object[] itemsField; + + private ItemsChoiceType8[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UnifiedAccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType8[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType8 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:AccountNumber")] + AccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:UnifiedAccountNumber")] + UnifiedAccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentNumber")] + PaymentDocumentNumber, + + /// + FIASHouseGuid, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNotificationsOfOrderExecutionRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest exportNotificationsOfOrderExecutionRequest; + + public exportNotificationsOfOrderExecutionRequest1() + { + } + + public exportNotificationsOfOrderExecutionRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest exportNotificationsOfOrderExecutionRequest) + { + this.RequestHeader = RequestHeader; + this.exportNotificationsOfOrderExecutionRequest = exportNotificationsOfOrderExecutionRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNotificationsOfOrderExecutionResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public exportNotificationsOfOrderExecutionResponse() + { + } + + public exportNotificationsOfOrderExecutionResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importAcknowledgmentRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importAcknowledgmentRequest() + { + this.versionField = "11.0.0.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AckCancellation", typeof(importAcknowledgmentRequestAckCancellation), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("AcknowledgmentRequestInfo", typeof(importAcknowledgmentRequestAcknowledgmentRequestInfo), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importAcknowledgmentRequestAckCancellation + { + + private string[] itemsField; + + private ItemsChoiceType12[] itemsElementNameField; + + private string paymentDocumentIDField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NotificationsOfOrderExecutionGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OrderID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OrderIDMultipurpose", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType12[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=2)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType12 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:orgPPAGUID")] + orgPPAGUID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/payments-base/:NotificationsOfOrderExe" + + "cutionGUID")] + NotificationsOfOrderExecutionGUID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/payments-base/:OrderID")] + OrderID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/payments-base/:OrderIDMultipurpose")] + OrderIDMultipurpose, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importAcknowledgmentRequestAcknowledgmentRequestInfo : AcknowledgmentRequestInfoType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoType + { + + private string[] itemsField; + + private ItemsChoiceType10[] itemsElementNameField; + + private object itemField; + + private AcknowledgmentRequestInfoTypeDelayPeriod delayPeriodField; + + /// + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NotificationsOfOrderExecutionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OrderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OrderIDMultipurpose", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType10[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AckImpossible", typeof(AcknowledgmentRequestInfoTypeAckImpossible), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentAck", typeof(AcknowledgmentRequestInfoTypePaymentDocumentAck), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public AcknowledgmentRequestInfoTypeDelayPeriod DelayPeriod + { + get + { + return this.delayPeriodField; + } + set + { + this.delayPeriodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemsChoiceType10 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:orgPPAGUID")] + orgPPAGUID, + + /// + NotificationsOfOrderExecutionGUID, + + /// + OrderID, + + /// + OrderIDMultipurpose, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoTypeAckImpossible + { + + private string paymentDocumentIDField; + + private string reasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Reason + { + get + { + return this.reasonField; + } + set + { + this.reasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoTypePaymentDocumentAck + { + + private string paymentDocumentIDField; + + private object itemField; + + private ItemChoiceType6 itemElementNameField; + + private decimal amountField; + + private string paymentDocumentNumberField; + + private AcknowledgmentRequestInfoTypePaymentDocumentAckPaymentInformation paymentInformationField; + + private AcknowledgmentRequestInfoTypePaymentDocumentAckCapitalRepairYearAckPeriod capitalRepairYearAckPeriodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ASType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("HSType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("MSType", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PServiceType", typeof(nsiRef), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TMSType", typeof(nsiRef), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType6 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=4)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public AcknowledgmentRequestInfoTypePaymentDocumentAckPaymentInformation PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public AcknowledgmentRequestInfoTypePaymentDocumentAckCapitalRepairYearAckPeriod CapitalRepairYearAckPeriod + { + get + { + return this.capitalRepairYearAckPeriodField; + } + set + { + this.capitalRepairYearAckPeriodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemChoiceType6 + { + + /// + ASType, + + /// + HSType, + + /// + MSType, + + /// + PServiceType, + + /// + TMSType, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoTypePaymentDocumentAckPaymentInformation + { + + private string[] itemsField; + + private ItemsChoiceType11[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BankBIK", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentInformationGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("operatingAccountNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType11[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemsChoiceType11 + { + + /// + BankBIK, + + /// + PaymentInformationGuid, + + /// + operatingAccountNumber, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoTypePaymentDocumentAckCapitalRepairYearAckPeriod + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class AcknowledgmentRequestInfoTypeDelayPeriod + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAcknowledgmentRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.importAcknowledgmentRequest importAcknowledgmentRequest; + + public importAcknowledgmentRequest1() + { + } + + public importAcknowledgmentRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importAcknowledgmentRequest importAcknowledgmentRequest) + { + this.RequestHeader = RequestHeader; + this.importAcknowledgmentRequest = importAcknowledgmentRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAcknowledgmentResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public importAcknowledgmentResponse() + { + } + + public importAcknowledgmentResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importInsuranceProductRequest : BaseType + { + + private importInsuranceProductRequestInsuranceProduct[] insuranceProductField; + + private string versionField; + + public importInsuranceProductRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("InsuranceProduct", Order=0)] + public importInsuranceProductRequestInsuranceProduct[] InsuranceProduct + { + get + { + return this.insuranceProductField; + } + set + { + this.insuranceProductField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importInsuranceProductRequestInsuranceProduct + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CreateOrUpdate", typeof(importInsuranceProductRequestInsuranceProductCreateOrUpdate), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Remove", typeof(importInsuranceProductRequestInsuranceProductRemove), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importInsuranceProductRequestInsuranceProductCreateOrUpdate : InsuranceProductType + { + + private string insuranceProductGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string InsuranceProductGUID + { + get + { + return this.insuranceProductGUIDField; + } + set + { + this.insuranceProductGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importInsuranceProductRequestInsuranceProductRemove + { + + private string insuranceProductGUIDField; + + private System.DateTime closeDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string InsuranceProductGUID + { + get + { + return this.insuranceProductGUIDField; + } + set + { + this.insuranceProductGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime CloseDate + { + get + { + return this.closeDateField; + } + set + { + this.closeDateField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importInsuranceProductRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.importInsuranceProductRequest importInsuranceProductRequest; + + public importInsuranceProductRequest1() + { + } + + public importInsuranceProductRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importInsuranceProductRequest importInsuranceProductRequest) + { + this.RequestHeader = RequestHeader; + this.importInsuranceProductRequest = importInsuranceProductRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importInsuranceProductResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public importInsuranceProductResponse() + { + } + + public importInsuranceProductResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportInsuranceProductRequest : BaseType + { + + private string versionField; + + public exportInsuranceProductRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportInsuranceProductRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.exportInsuranceProductRequest exportInsuranceProductRequest; + + public exportInsuranceProductRequest1() + { + } + + public exportInsuranceProductRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportInsuranceProductRequest exportInsuranceProductRequest) + { + this.RequestHeader = RequestHeader; + this.exportInsuranceProductRequest = exportInsuranceProductRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportInsuranceProductResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public exportInsuranceProductResponse() + { + } + + public exportInsuranceProductResponse(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.RequestHeader = RequestHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequest : BaseType + { + + private importRSOSettlementsRequestImportSettlement[] importSettlementField; + + private string versionField; + + public importRSOSettlementsRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("importSettlement", Order=0)] + public importRSOSettlementsRequestImportSettlement[] importSettlement + { + get + { + return this.importSettlementField; + } + set + { + this.importSettlementField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequestImportSettlement + { + + private string transportGUIDField; + + private string settlementGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string SettlementGUID + { + get + { + return this.settlementGUIDField; + } + set + { + this.settlementGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentSettlement", typeof(AnnulmentType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Settlement", typeof(importRSOSettlementsRequestImportSettlementSettlement), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class AnnulmentType + { + + private string reasonOfAnnulmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReasonOfAnnulment + { + get + { + return this.reasonOfAnnulmentField; + } + set + { + this.reasonOfAnnulmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequestImportSettlementSettlement + { + + private importRSOSettlementsRequestImportSettlementSettlementContract contractField; + + private importRSOSettlementsRequestImportSettlementSettlementReportingPeriod[] reportingPeriodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importRSOSettlementsRequestImportSettlementSettlementContract Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ReportingPeriod", Order=1)] + public importRSOSettlementsRequestImportSettlementSettlementReportingPeriod[] ReportingPeriod + { + get + { + return this.reportingPeriodField; + } + set + { + this.reportingPeriodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequestImportSettlementSettlementContract + { + + private string contractRootGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequestImportSettlementSettlementReportingPeriod : ReportPeriodType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentReportingPeriod", typeof(importRSOSettlementsRequestImportSettlementSettlementReportingPeriodAnnulmentReportingPeriod), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ReportingPeriodInfo", typeof(ReportPeriodRSOInfoType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importRSOSettlementsRequestImportSettlementSettlementReportingPeriodAnnulmentReportingPeriod : AnnulmentType + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importRSOSettlementsRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.importRSOSettlementsRequest importRSOSettlementsRequest; + + public importRSOSettlementsRequest1() + { + } + + public importRSOSettlementsRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importRSOSettlementsRequest importRSOSettlementsRequest) + { + this.RequestHeader = RequestHeader; + this.importRSOSettlementsRequest = importRSOSettlementsRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importRSOSettlementsResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public importRSOSettlementsResponse() + { + } + + public importRSOSettlementsResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequest : BaseType + { + + private importIKUSettlementsRequestImportSettlement[] importSettlementField; + + private string versionField; + + public importIKUSettlementsRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("importSettlement", Order=0)] + public importIKUSettlementsRequestImportSettlement[] importSettlement + { + get + { + return this.importSettlementField; + } + set + { + this.importSettlementField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlement + { + + private string transportGUIDField; + + private string settlementGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string SettlementGUID + { + get + { + return this.settlementGUIDField; + } + set + { + this.settlementGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentSettlement", typeof(AnnulmentType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Settlement", typeof(importIKUSettlementsRequestImportSettlementSettlement), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlementSettlement + { + + private importIKUSettlementsRequestImportSettlementSettlementContract contractField; + + private importIKUSettlementsRequestImportSettlementSettlementReportingPeriod[] reportingPeriodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importIKUSettlementsRequestImportSettlementSettlementContract Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ReportingPeriod", Order=1)] + public importIKUSettlementsRequestImportSettlementSettlementReportingPeriod[] ReportingPeriod + { + get + { + return this.reportingPeriodField; + } + set + { + this.reportingPeriodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlementSettlementContract + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoContract", typeof(importIKUSettlementsRequestImportSettlementSettlementContractNoContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlementSettlementContractNoContract + { + + private RegOrgType firstContractPartyField; + + private string docNumField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RegOrgType FirstContractParty + { + get + { + return this.firstContractPartyField; + } + set + { + this.firstContractPartyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DocNum + { + get + { + return this.docNumField; + } + set + { + this.docNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlementSettlementReportingPeriod : ReportPeriodType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentReportingPeriod", typeof(importIKUSettlementsRequestImportSettlementSettlementReportingPeriodAnnulmentReportingPeriod), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ReportingPeriodInfo", typeof(ReportPeriodIKUInfoType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class importIKUSettlementsRequestImportSettlementSettlementReportingPeriodAnnulmentReportingPeriod : AnnulmentType + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importIKUSettlementsRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.importIKUSettlementsRequest importIKUSettlementsRequest; + + public importIKUSettlementsRequest1() + { + } + + public importIKUSettlementsRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importIKUSettlementsRequest importIKUSettlementsRequest) + { + this.RequestHeader = RequestHeader; + this.importIKUSettlementsRequest = importIKUSettlementsRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importIKUSettlementsResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public importIKUSettlementsResponse() + { + } + + public importIKUSettlementsResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportSettlementsRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType13[] itemsElementNameField; + + private string versionField; + + public exportSettlementsRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OtherContractParty", typeof(RegOrgType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Period", typeof(exportSettlementsRequestPeriod), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SettlementGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType13[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportSettlementsRequestPeriod + { + + private ReportPeriodType periodFromField; + + private ReportPeriodType periodToField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ReportPeriodType PeriodFrom + { + get + { + return this.periodFromField; + } + set + { + this.periodFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ReportPeriodType PeriodTo + { + get + { + return this.periodToField; + } + set + { + this.periodToField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType13 + { + + /// + ContractNumber, + + /// + ContractRootGUID, + + /// + OtherContractParty, + + /// + Period, + + /// + SettlementGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSettlementsRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.exportSettlementsRequest exportSettlementsRequest; + + public exportSettlementsRequest1() + { + } + + public exportSettlementsRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportSettlementsRequest exportSettlementsRequest) + { + this.RequestHeader = RequestHeader; + this.exportSettlementsRequest = exportSettlementsRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSettlementsResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public exportSettlementsResponse() + { + } + + public exportSettlementsResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionPaginalRequest : BaseType + { + + private object itemField; + + private string exportNotificationsOfOrderExecutionGUIDField; + + private string pageSizeField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Notifications", typeof(exportNotificationsOfOrderExecutionPaginalRequestNotifications), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SupplierIDs", typeof(exportNotificationsOfOrderExecutionPaginalRequestSupplierIDs), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ExportNotificationsOfOrderExecutionGUID + { + get + { + return this.exportNotificationsOfOrderExecutionGUIDField; + } + set + { + this.exportNotificationsOfOrderExecutionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=2)] + public string PageSize + { + get + { + return this.pageSizeField; + } + set + { + this.pageSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionPaginalRequestNotifications + { + + private object[] itemsField; + + private ItemsChoiceType15[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AckStatus", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DateFrom", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DaysInterval", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NotificationsOfOrderExecutionGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType15[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType15 + { + + /// + AckStatus, + + /// + DateFrom, + + /// + DaysInterval, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/payments-base/:NotificationsOfOrderExe" + + "cutionGUID")] + NotificationsOfOrderExecutionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/bills/")] + public partial class exportNotificationsOfOrderExecutionPaginalRequestSupplierIDs + { + + private object[] itemsField; + + private ItemsChoiceType14[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UnifiedAccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType14[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", IncludeInSchema=false)] + public enum ItemsChoiceType14 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:AccountNumber")] + AccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:UnifiedAccountNumber")] + UnifiedAccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentNumber")] + PaymentDocumentNumber, + + /// + FIASHouseGuid, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNotificationsOfOrderExecutionPaginalRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills/", Order=0)] + public Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest exportNotificationsOfOrderExecutionPaginalRequest; + + public exportNotificationsOfOrderExecutionPaginalRequest1() + { + } + + public exportNotificationsOfOrderExecutionPaginalRequest1(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest exportNotificationsOfOrderExecutionPaginalRequest) + { + this.RequestHeader = RequestHeader; + this.exportNotificationsOfOrderExecutionPaginalRequest = exportNotificationsOfOrderExecutionPaginalRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNotificationsOfOrderExecutionPaginalResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.AckRequest AckRequest; + + public exportNotificationsOfOrderExecutionPaginalResponse() + { + } + + public exportNotificationsOfOrderExecutionPaginalResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getRequestsStateResult : BaseType + { + + private string[] messageGUIDListField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MessageGUIDList", Order=0)] + public string[] MessageGUIDList + { + get + { + return this.messageGUIDListField; + } + set + { + this.messageGUIDListField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getRequestsStateRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Name="getRequestsStateRequest", Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("MessageGUIDList", IsNullable=false)] + public string[] getRequestsStateRequest1; + + public getRequestsStateRequest() + { + } + + public getRequestsStateRequest(Hcs.Service.Async.Bills.RequestHeader RequestHeader, string[] getRequestsStateRequest1) + { + this.RequestHeader = RequestHeader; + this.getRequestsStateRequest1 = getRequestsStateRequest1; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getRequestsStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Bills.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Bills.getRequestsStateResult getRequestsStateResult; + + public getRequestsStateResponse() + { + } + + public getRequestsStateResponse(Hcs.Service.Async.Bills.ResultHeader ResultHeader, Hcs.Service.Async.Bills.getRequestsStateResult getRequestsStateResult) + { + this.ResultHeader = ResultHeader; + this.getRequestsStateResult = getRequestsStateResult; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface BillsPortsTypeAsyncChannel : Hcs.Service.Async.Bills.BillsPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class BillsPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.Bills.BillsPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public BillsPortsTypeAsyncClient() : + base(BillsPortsTypeAsyncClient.GetDefaultBinding(), BillsPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.BillsPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public BillsPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(BillsPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), BillsPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public BillsPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(BillsPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public BillsPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(BillsPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public BillsPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.getStateAsync(Hcs.Service.Async.Bills.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.getStateRequest getStateRequest) + { + Hcs.Service.Async.Bills.getStateRequest1 inValue = new Hcs.Service.Async.Bills.getStateRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).getStateAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.importPaymentDocumentDataAsync(Hcs.Service.Async.Bills.importPaymentDocumentDataRequest request) + { + return base.Channel.importPaymentDocumentDataAsync(request); + } + + public System.Threading.Tasks.Task importPaymentDocumentDataAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importPaymentDocumentRequest importPaymentDocumentRequest) + { + Hcs.Service.Async.Bills.importPaymentDocumentDataRequest inValue = new Hcs.Service.Async.Bills.importPaymentDocumentDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importPaymentDocumentRequest = importPaymentDocumentRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).importPaymentDocumentDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.exportPaymentDocumentDataAsync(Hcs.Service.Async.Bills.exportPaymentDocumentDataRequest request) + { + return base.Channel.exportPaymentDocumentDataAsync(request); + } + + public System.Threading.Tasks.Task exportPaymentDocumentDataAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportPaymentDocumentRequest exportPaymentDocumentRequest) + { + Hcs.Service.Async.Bills.exportPaymentDocumentDataRequest inValue = new Hcs.Service.Async.Bills.exportPaymentDocumentDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportPaymentDocumentRequest = exportPaymentDocumentRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).exportPaymentDocumentDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.exportNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest1 request) + { + return base.Channel.exportNotificationsOfOrderExecutionAsync(request); + } + + public System.Threading.Tasks.Task exportNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest exportNotificationsOfOrderExecutionRequest) + { + Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest1 inValue = new Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportNotificationsOfOrderExecutionRequest = exportNotificationsOfOrderExecutionRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).exportNotificationsOfOrderExecutionAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.importAcknowledgmentAsync(Hcs.Service.Async.Bills.importAcknowledgmentRequest1 request) + { + return base.Channel.importAcknowledgmentAsync(request); + } + + public System.Threading.Tasks.Task importAcknowledgmentAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importAcknowledgmentRequest importAcknowledgmentRequest) + { + Hcs.Service.Async.Bills.importAcknowledgmentRequest1 inValue = new Hcs.Service.Async.Bills.importAcknowledgmentRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importAcknowledgmentRequest = importAcknowledgmentRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).importAcknowledgmentAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.importInsuranceProductAsync(Hcs.Service.Async.Bills.importInsuranceProductRequest1 request) + { + return base.Channel.importInsuranceProductAsync(request); + } + + public System.Threading.Tasks.Task importInsuranceProductAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importInsuranceProductRequest importInsuranceProductRequest) + { + Hcs.Service.Async.Bills.importInsuranceProductRequest1 inValue = new Hcs.Service.Async.Bills.importInsuranceProductRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importInsuranceProductRequest = importInsuranceProductRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).importInsuranceProductAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.exportInsuranceProductAsync(Hcs.Service.Async.Bills.exportInsuranceProductRequest1 request) + { + return base.Channel.exportInsuranceProductAsync(request); + } + + public System.Threading.Tasks.Task exportInsuranceProductAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportInsuranceProductRequest exportInsuranceProductRequest) + { + Hcs.Service.Async.Bills.exportInsuranceProductRequest1 inValue = new Hcs.Service.Async.Bills.exportInsuranceProductRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportInsuranceProductRequest = exportInsuranceProductRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).exportInsuranceProductAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.importRSOSettlementsAsync(Hcs.Service.Async.Bills.importRSOSettlementsRequest1 request) + { + return base.Channel.importRSOSettlementsAsync(request); + } + + public System.Threading.Tasks.Task importRSOSettlementsAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importRSOSettlementsRequest importRSOSettlementsRequest) + { + Hcs.Service.Async.Bills.importRSOSettlementsRequest1 inValue = new Hcs.Service.Async.Bills.importRSOSettlementsRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importRSOSettlementsRequest = importRSOSettlementsRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).importRSOSettlementsAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.importIKUSettlementsAsync(Hcs.Service.Async.Bills.importIKUSettlementsRequest1 request) + { + return base.Channel.importIKUSettlementsAsync(request); + } + + public System.Threading.Tasks.Task importIKUSettlementsAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.importIKUSettlementsRequest importIKUSettlementsRequest) + { + Hcs.Service.Async.Bills.importIKUSettlementsRequest1 inValue = new Hcs.Service.Async.Bills.importIKUSettlementsRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importIKUSettlementsRequest = importIKUSettlementsRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).importIKUSettlementsAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.exportSettlementsAsync(Hcs.Service.Async.Bills.exportSettlementsRequest1 request) + { + return base.Channel.exportSettlementsAsync(request); + } + + public System.Threading.Tasks.Task exportSettlementsAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportSettlementsRequest exportSettlementsRequest) + { + Hcs.Service.Async.Bills.exportSettlementsRequest1 inValue = new Hcs.Service.Async.Bills.exportSettlementsRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportSettlementsRequest = exportSettlementsRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).exportSettlementsAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.exportNotificationsOfOrderExecutionPaginalAsync(Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest1 request) + { + return base.Channel.exportNotificationsOfOrderExecutionPaginalAsync(request); + } + + public System.Threading.Tasks.Task exportNotificationsOfOrderExecutionPaginalAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest exportNotificationsOfOrderExecutionPaginalRequest) + { + Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest1 inValue = new Hcs.Service.Async.Bills.exportNotificationsOfOrderExecutionPaginalRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportNotificationsOfOrderExecutionPaginalRequest = exportNotificationsOfOrderExecutionPaginalRequest; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).exportNotificationsOfOrderExecutionPaginalAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Bills.BillsPortsTypeAsync.getRequestsStateAsync(Hcs.Service.Async.Bills.getRequestsStateRequest request) + { + return base.Channel.getRequestsStateAsync(request); + } + + public System.Threading.Tasks.Task getRequestsStateAsync(Hcs.Service.Async.Bills.RequestHeader RequestHeader, string[] getRequestsStateRequest1) + { + Hcs.Service.Async.Bills.getRequestsStateRequest inValue = new Hcs.Service.Async.Bills.getRequestsStateRequest(); + inValue.RequestHeader = RequestHeader; + inValue.getRequestsStateRequest1 = getRequestsStateRequest1; + return ((Hcs.Service.Async.Bills.BillsPortsTypeAsync)(this)).getRequestsStateAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.BillsPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.BillsPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-bills-service/services/BillsAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return BillsPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.BillsPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return BillsPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.BillsPortAsync); + } + + public enum EndpointConfiguration + { + + BillsPortAsync, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/ConnectedService.json new file mode 100644 index 0000000..32fec4a --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.DeviceMetering" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/Reference.cs new file mode 100644 index 0000000..8b0f13d --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.DeviceMetering/Reference.cs @@ -0,0 +1,5278 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.DeviceMetering +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(VolumeMeteringValueExportBaseType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(VolumeCurrentMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(VolumeMeteringValueImportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class VolumeMeteringValueBaseType + { + + private nsiRef municipalResourceField; + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(VolumeCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueExportBaseType : VolumeMeteringValueBaseType + { + + private string readingsSourceField; + + private string orgPPAGUIDField; + + private System.DateTime enterIntoSystemField; + + private string unitField; + + private VolumeMeteringValueExportBaseTypeMeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime EnterIntoSystem + { + get + { + return this.enterIntoSystemField; + } + set + { + this.enterIntoSystemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public VolumeMeteringValueExportBaseTypeMeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueExportBaseTypeMeteringValueInDefaultUnit + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeCurrentMeteringValueExportType : VolumeMeteringValueExportBaseType + { + + private System.DateTime dateValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueImportType : VolumeMeteringValueBaseType + { + + private System.DateTime dateValueField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricCurrentMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueImportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueBaseType + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueExportType : ElectricMeteringValueBaseType + { + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueExportWithTSType : ElectricMeteringValueExportType + { + + private System.DateTime enterIntoSystemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EnterIntoSystem + { + get + { + return this.enterIntoSystemField; + } + set + { + this.enterIntoSystemField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(TypeName="ElectricMeteringValueExportType", Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class ElectricMeteringValueExportType1 : ElectricMeteringValueExportWithTSType + { + + private string unitField; + + private ElectricMeteringValueExportTypeMeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ElectricMeteringValueExportTypeMeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class ElectricMeteringValueExportTypeMeteringValueInDefaultUnit + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class ElectricCurrentMeteringValueExportType : ElectricMeteringValueExportType1 + { + + private System.DateTime dateValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class ElectricMeteringValueImportType : ElectricMeteringValueBaseType + { + + private System.DateTime dateValueField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class YearMonth + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateCurrentMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueImportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueBaseType + { + + private nsiRef municipalResourceField; + + private string meteringValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValue + { + get + { + return this.meteringValueField; + } + set + { + this.meteringValueField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueExportType : OneRateMeteringValueBaseType + { + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportType1))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueExportWithTSType : OneRateMeteringValueExportType + { + + private System.DateTime enterIntoSystemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EnterIntoSystem + { + get + { + return this.enterIntoSystemField; + } + set + { + this.enterIntoSystemField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateCurrentMeteringValueExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(TypeName="OneRateMeteringValueExportType", Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class OneRateMeteringValueExportType1 : OneRateMeteringValueExportWithTSType + { + + private string unitField; + + private OneRateMeteringValueExportTypeMeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OneRateMeteringValueExportTypeMeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class OneRateMeteringValueExportTypeMeteringValueInDefaultUnit + { + + private string meteringValueField; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValue + { + get + { + return this.meteringValueField; + } + set + { + this.meteringValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class OneRateCurrentMeteringValueExportType : OneRateMeteringValueExportType1 + { + + private System.DateTime dateValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class OneRateMeteringValueImportType : OneRateMeteringValueBaseType + { + + private System.DateTime dateValueField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateValue + { + get + { + return this.dateValueField; + } + set + { + this.dateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering-service-async/", ConfigurationName="Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync")] + public interface DeviceMeteringPortTypesAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:importMeteringDeviceValues", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.DeviceMetering.Fault), Action="urn:importMeteringDeviceValues", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importMeteringDeviceValuesAsync(Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportMeteringDeviceHistory", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.DeviceMetering.Fault), Action="urn:exportMeteringDeviceHistory", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportMeteringDeviceHistoryAsync(Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.DeviceMetering.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.DeviceMetering.getStateRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeader : HeaderType + { + + private object itemField; + + private ItemChoiceType1 itemElementNameField; + + private bool isOperatorSignatureField; + + private bool isOperatorSignatureFieldSpecified; + + private ISCreator[] iSCreatorField; + + public RequestHeader() + { + this.isOperatorSignatureField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Citizen", typeof(RequestHeaderCitizen), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SenderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsOperatorSignature + { + get + { + return this.isOperatorSignatureField; + } + set + { + this.isOperatorSignatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsOperatorSignatureSpecified + { + get + { + return this.isOperatorSignatureFieldSpecified; + } + set + { + this.isOperatorSignatureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=3)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizen + { + + private object[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Document", typeof(RequestHeaderCitizenDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocument + { + + private RequestHeaderCitizenDocumentDocumentType documentTypeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RequestHeaderCitizenDocumentDocumentType DocumentType + { + get + { + return this.documentTypeField; + } + set + { + this.documentTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocumentDocumentType + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + CitizenPPAGUID, + + /// + Document, + + /// + SNILS, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + Citizen, + + /// + SenderID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequest : BaseType + { + + private string fIASHouseGuidField; + + private importMeteringDeviceValuesRequestMeteringDevicesValues[] meteringDevicesValuesField; + + private string versionField; + + public importMeteringDeviceValuesRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MeteringDevicesValues", Order=1)] + public importMeteringDeviceValuesRequestMeteringDevicesValues[] MeteringDevicesValues + { + get + { + return this.meteringDevicesValuesField; + } + set + { + this.meteringDevicesValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValues + { + + private string itemField; + + private ItemChoiceType itemElementNameField; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ElectricDeviceValue", typeof(importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValue), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("OneRateDeviceValue", typeof(importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValue), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("VolumeDeviceValue", typeof(importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValue), Order=2)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + MeteringDeviceRootGUID, + + /// + MeteringDeviceVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValue + { + + private importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueCurrentValue currentValueField; + + private ElectricMeteringValueImportType controlValueField; + + private importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueVerificationValue verificationValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueCurrentValue CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ElectricMeteringValueImportType ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueVerificationValue VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueCurrentValue : ElectricMeteringValueImportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesElectricDeviceValueVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private ElectricMeteringValueBaseType startValueField; + + private ElectricMeteringValueBaseType endValueField; + + private object itemField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ElectricMeteringValueBaseType StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ElectricMeteringValueBaseType EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=6)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValue + { + + private importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueCurrentValue[] currentValueField; + + private OneRateMeteringValueImportType[] controlValueField; + + private importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueVerificationValue verificationValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentValue", Order=0)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueCurrentValue[] CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ControlValue", Order=1)] + public OneRateMeteringValueImportType[] ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueVerificationValue VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueCurrentValue : OneRateMeteringValueImportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesOneRateDeviceValueVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private OneRateMeteringValueBaseType[] startValueField; + + private OneRateMeteringValueBaseType[] endValueField; + + private object itemField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("StartValue", Order=3)] + public OneRateMeteringValueBaseType[] StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndValue", Order=4)] + public OneRateMeteringValueBaseType[] EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=6)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValue + { + + private importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueCurrentValue[] currentValueField; + + private VolumeMeteringValueImportType[] controlValueField; + + private importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueVerificationValue verificationValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentValue", Order=0)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueCurrentValue[] CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ControlValue", Order=1)] + public VolumeMeteringValueImportType[] ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueVerificationValue VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueCurrentValue : VolumeMeteringValueImportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class importMeteringDeviceValuesRequestMeteringDevicesValuesVolumeDeviceValueVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private VolumeMeteringValueBaseType[] startValueField; + + private VolumeMeteringValueBaseType[] endValueField; + + private object itemField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("StartValue", Order=3)] + public VolumeMeteringValueBaseType[] StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndValue", Order=4)] + public VolumeMeteringValueBaseType[] EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=6)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMeteringDeviceValuesRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/", Order=0)] + public Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest importMeteringDeviceValuesRequest; + + public importMeteringDeviceValuesRequest1() + { + } + + public importMeteringDeviceValuesRequest1(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest importMeteringDeviceValuesRequest) + { + this.RequestHeader = RequestHeader; + this.importMeteringDeviceValuesRequest = importMeteringDeviceValuesRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMeteringDeviceValuesResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.DeviceMetering.AckRequest AckRequest; + + public importMeteringDeviceValuesResponse() + { + } + + public importMeteringDeviceValuesResponse(Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader, Hcs.Service.Async.DeviceMetering.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryRequest : BaseType + { + + private string[] fIASHouseGuidField; + + private string exportMeteringDeviceRootGUIDField; + + private object[] itemsField; + + private ItemsChoiceType4[] itemsElementNameField; + + private System.DateTime commissioningDateFromField; + + private bool commissioningDateFromFieldSpecified; + + private System.DateTime commissioningDateToField; + + private bool commissioningDateToFieldSpecified; + + private bool serchArchivedField; + + private bool serchArchivedFieldSpecified; + + private System.DateTime archiveDateFromField; + + private bool archiveDateFromFieldSpecified; + + private System.DateTime archiveDateToField; + + private bool archiveDateToFieldSpecified; + + private System.DateTime inputDateFromField; + + private bool inputDateFromFieldSpecified; + + private System.DateTime inputDateToField; + + private bool inputDateToFieldSpecified; + + private bool excludePersonAsDataSourceField; + + private bool excludePersonAsDataSourceFieldSpecified; + + private bool excludeCurrentOrgAsDataSourceField; + + private bool excludeCurrentOrgAsDataSourceFieldSpecified; + + private bool excludeOtherOrgAsDataSourceField; + + private bool excludeOtherOrgAsDataSourceFieldSpecified; + + private bool excludeISValuesField; + + private bool excludeISValuesFieldSpecified; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ExportMeteringDeviceRootGUID + { + get + { + return this.exportMeteringDeviceRootGUIDField; + } + set + { + this.exportMeteringDeviceRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceRootGUID", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceType", typeof(nsiRef), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", typeof(nsiRef), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType4[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime CommissioningDateFrom + { + get + { + return this.commissioningDateFromField; + } + set + { + this.commissioningDateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CommissioningDateFromSpecified + { + get + { + return this.commissioningDateFromFieldSpecified; + } + set + { + this.commissioningDateFromFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime CommissioningDateTo + { + get + { + return this.commissioningDateToField; + } + set + { + this.commissioningDateToField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CommissioningDateToSpecified + { + get + { + return this.commissioningDateToFieldSpecified; + } + set + { + this.commissioningDateToFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool SerchArchived + { + get + { + return this.serchArchivedField; + } + set + { + this.serchArchivedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SerchArchivedSpecified + { + get + { + return this.serchArchivedFieldSpecified; + } + set + { + this.serchArchivedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=7)] + public System.DateTime ArchiveDateFrom + { + get + { + return this.archiveDateFromField; + } + set + { + this.archiveDateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ArchiveDateFromSpecified + { + get + { + return this.archiveDateFromFieldSpecified; + } + set + { + this.archiveDateFromFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime ArchiveDateTo + { + get + { + return this.archiveDateToField; + } + set + { + this.archiveDateToField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ArchiveDateToSpecified + { + get + { + return this.archiveDateToFieldSpecified; + } + set + { + this.archiveDateToFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=9)] + public System.DateTime inputDateFrom + { + get + { + return this.inputDateFromField; + } + set + { + this.inputDateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool inputDateFromSpecified + { + get + { + return this.inputDateFromFieldSpecified; + } + set + { + this.inputDateFromFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=10)] + public System.DateTime inputDateTo + { + get + { + return this.inputDateToField; + } + set + { + this.inputDateToField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool inputDateToSpecified + { + get + { + return this.inputDateToFieldSpecified; + } + set + { + this.inputDateToFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool ExcludePersonAsDataSource + { + get + { + return this.excludePersonAsDataSourceField; + } + set + { + this.excludePersonAsDataSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ExcludePersonAsDataSourceSpecified + { + get + { + return this.excludePersonAsDataSourceFieldSpecified; + } + set + { + this.excludePersonAsDataSourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool ExcludeCurrentOrgAsDataSource + { + get + { + return this.excludeCurrentOrgAsDataSourceField; + } + set + { + this.excludeCurrentOrgAsDataSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ExcludeCurrentOrgAsDataSourceSpecified + { + get + { + return this.excludeCurrentOrgAsDataSourceFieldSpecified; + } + set + { + this.excludeCurrentOrgAsDataSourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public bool ExcludeOtherOrgAsDataSource + { + get + { + return this.excludeOtherOrgAsDataSourceField; + } + set + { + this.excludeOtherOrgAsDataSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ExcludeOtherOrgAsDataSourceSpecified + { + get + { + return this.excludeOtherOrgAsDataSourceFieldSpecified; + } + set + { + this.excludeOtherOrgAsDataSourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public bool excludeISValues + { + get + { + return this.excludeISValuesField; + } + set + { + this.excludeISValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool excludeISValuesSpecified + { + get + { + return this.excludeISValuesFieldSpecified; + } + set + { + this.excludeISValuesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/", IncludeInSchema=false)] + public enum ItemsChoiceType4 + { + + /// + MeteringDeviceRootGUID, + + /// + MeteringDeviceType, + + /// + MunicipalResource, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportMeteringDeviceHistoryRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/", Order=0)] + public Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest exportMeteringDeviceHistoryRequest; + + public exportMeteringDeviceHistoryRequest1() + { + } + + public exportMeteringDeviceHistoryRequest1(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest exportMeteringDeviceHistoryRequest) + { + this.RequestHeader = RequestHeader; + this.exportMeteringDeviceHistoryRequest = exportMeteringDeviceHistoryRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportMeteringDeviceHistoryResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.DeviceMetering.AckRequest AckRequest; + + public exportMeteringDeviceHistoryResponse() + { + } + + public exportMeteringDeviceHistoryResponse(Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader, Hcs.Service.Async.DeviceMetering.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private string versionField; + + public getStateResult() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(CommonResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PagedOutput", typeof(getStateResultPagedOutput), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportMeteringDeviceHistoryResult", typeof(exportMeteringDeviceHistoryResultType), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class getStateResultPagedOutput + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ExportMeteringDeviceRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LastPage", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultType + { + + private string meteringDeviceRootGUIDField; + + private string hCSHouseGUIDField; + + private string fIASHouseGuidField; + + private object itemField; + + private exportMeteringDeviceHistoryResultTypeArchivedValues archivedValuesField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceRootGUID + { + get + { + return this.meteringDeviceRootGUIDField; + } + set + { + this.meteringDeviceRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string HCSHouseGUID + { + get + { + return this.hCSHouseGUIDField; + } + set + { + this.hCSHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ElectricDeviceValue", typeof(exportMeteringDeviceHistoryResultTypeElectricDeviceValue), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("OneRateDeviceValue", typeof(exportMeteringDeviceHistoryResultTypeOneRateDeviceValue), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("VolumeDeviceValue", typeof(exportMeteringDeviceHistoryResultTypeVolumeDeviceValue), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportMeteringDeviceHistoryResultTypeArchivedValues ArchivedValues + { + get + { + return this.archivedValuesField; + } + set + { + this.archivedValuesField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeElectricDeviceValue + { + + private ElectricMeteringValueExportType1 baseValueField; + + private exportMeteringDeviceHistoryResultTypeElectricDeviceValueValues valuesField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ElectricMeteringValueExportType1 BaseValue + { + get + { + return this.baseValueField; + } + set + { + this.baseValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportMeteringDeviceHistoryResultTypeElectricDeviceValueValues Values + { + get + { + return this.valuesField; + } + set + { + this.valuesField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeElectricDeviceValueValues + { + + private exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesCurrentValue[] currentValueField; + + private ElectricCurrentMeteringValueExportType[] controlValueField; + + private exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesVerificationValue[] verificationValueField; + + private bool excludeISValuesField; + + private bool excludeISValuesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentValue", Order=0)] + public exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesCurrentValue[] CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ControlValue", Order=1)] + public ElectricCurrentMeteringValueExportType[] ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VerificationValue", Order=2)] + public exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesVerificationValue[] VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool excludeISValues + { + get + { + return this.excludeISValuesField; + } + set + { + this.excludeISValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool excludeISValuesSpecified + { + get + { + return this.excludeISValuesFieldSpecified; + } + set + { + this.excludeISValuesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesCurrentValue : ElectricCurrentMeteringValueExportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeElectricDeviceValueValuesVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private ElectricMeteringValueExportType1 startValueField; + + private ElectricMeteringValueExportType1 endValueField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ElectricMeteringValueExportType1 StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ElectricMeteringValueExportType1 EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeOneRateDeviceValue + { + + private OneRateMeteringValueExportType1[] baseValueField; + + private exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValues valuesField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BaseValue", Order=0)] + public OneRateMeteringValueExportType1[] BaseValue + { + get + { + return this.baseValueField; + } + set + { + this.baseValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValues Values + { + get + { + return this.valuesField; + } + set + { + this.valuesField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValues + { + + private exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesCurrentValue[] currentValueField; + + private OneRateCurrentMeteringValueExportType[] controlValueField; + + private exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesVerificationValue[] verificationValueField; + + private bool excludeISValuesField; + + private bool excludeISValuesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentValue", Order=0)] + public exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesCurrentValue[] CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ControlValue", Order=1)] + public OneRateCurrentMeteringValueExportType[] ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VerificationValue", Order=2)] + public exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesVerificationValue[] VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool excludeISValues + { + get + { + return this.excludeISValuesField; + } + set + { + this.excludeISValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool excludeISValuesSpecified + { + get + { + return this.excludeISValuesFieldSpecified; + } + set + { + this.excludeISValuesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesCurrentValue : OneRateCurrentMeteringValueExportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeOneRateDeviceValueValuesVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private OneRateMeteringValueExportType1[] startValueField; + + private OneRateMeteringValueExportType1[] endValueField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("StartValue", Order=3)] + public OneRateMeteringValueExportType1[] StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndValue", Order=4)] + public OneRateMeteringValueExportType1[] EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeVolumeDeviceValue : VolumeMeteringValueExportType + { + + private bool excludeISValuesField; + + private bool excludeISValuesFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool excludeISValues + { + get + { + return this.excludeISValuesField; + } + set + { + this.excludeISValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool excludeISValuesSpecified + { + get + { + return this.excludeISValuesFieldSpecified; + } + set + { + this.excludeISValuesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueExportType + { + + private VolumeMeteringValueExportTypeCurrentValue[] currentValueField; + + private VolumeCurrentMeteringValueExportType[] controlValueField; + + private VolumeMeteringValueExportTypeVerificationValue[] verificationValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentValue", Order=0)] + public VolumeMeteringValueExportTypeCurrentValue[] CurrentValue + { + get + { + return this.currentValueField; + } + set + { + this.currentValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ControlValue", Order=1)] + public VolumeCurrentMeteringValueExportType[] ControlValue + { + get + { + return this.controlValueField; + } + set + { + this.controlValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VerificationValue", Order=2)] + public VolumeMeteringValueExportTypeVerificationValue[] VerificationValue + { + get + { + return this.verificationValueField; + } + set + { + this.verificationValueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueExportTypeCurrentValue : VolumeCurrentMeteringValueExportType + { + + private YearMonth periodField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public YearMonth Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class VolumeMeteringValueExportTypeVerificationValue + { + + private System.DateTime startDateValueField; + + private System.DateTime endDateValueField; + + private System.DateTime sealDateField; + + private VolumeMeteringValueExportBaseType[] startValueField; + + private VolumeMeteringValueExportBaseType[] endValueField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime StartDateValue + { + get + { + return this.startDateValueField; + } + set + { + this.startDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDateValue + { + get + { + return this.endDateValueField; + } + set + { + this.endDateValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime SealDate + { + get + { + return this.sealDateField; + } + set + { + this.sealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("StartValue", Order=3)] + public VolumeMeteringValueExportBaseType[] StartValue + { + get + { + return this.startValueField; + } + set + { + this.startValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndValue", Order=4)] + public VolumeMeteringValueExportBaseType[] EndValue + { + get + { + return this.endValueField; + } + set + { + this.endValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("VerificationReason", typeof(nsiRef), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/")] + public partial class exportMeteringDeviceHistoryResultTypeArchivedValues + { + + private nsiRef archivingReasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ArchivingReason + { + get + { + return this.archivingReasonField; + } + set + { + this.archivingReasonField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.DeviceMetering.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.getStateRequest getStateRequest) + { + this.RequestHeader = RequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/device-metering/", Order=0)] + public Hcs.Service.Async.DeviceMetering.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.DeviceMetering.ResultHeader ResultHeader, Hcs.Service.Async.DeviceMetering.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface DeviceMeteringPortTypesAsyncChannel : Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class DeviceMeteringPortTypesAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public DeviceMeteringPortTypesAsyncClient() : + base(DeviceMeteringPortTypesAsyncClient.GetDefaultBinding(), DeviceMeteringPortTypesAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.DeviceMeteringPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public DeviceMeteringPortTypesAsyncClient(EndpointConfiguration endpointConfiguration) : + base(DeviceMeteringPortTypesAsyncClient.GetBindingForEndpoint(endpointConfiguration), DeviceMeteringPortTypesAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public DeviceMeteringPortTypesAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(DeviceMeteringPortTypesAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public DeviceMeteringPortTypesAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(DeviceMeteringPortTypesAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public DeviceMeteringPortTypesAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync.importMeteringDeviceValuesAsync(Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest1 request) + { + return base.Channel.importMeteringDeviceValuesAsync(request); + } + + public System.Threading.Tasks.Task importMeteringDeviceValuesAsync(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest importMeteringDeviceValuesRequest) + { + Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest1 inValue = new Hcs.Service.Async.DeviceMetering.importMeteringDeviceValuesRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importMeteringDeviceValuesRequest = importMeteringDeviceValuesRequest; + return ((Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync)(this)).importMeteringDeviceValuesAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync.exportMeteringDeviceHistoryAsync(Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest1 request) + { + return base.Channel.exportMeteringDeviceHistoryAsync(request); + } + + public System.Threading.Tasks.Task exportMeteringDeviceHistoryAsync(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest exportMeteringDeviceHistoryRequest) + { + Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest1 inValue = new Hcs.Service.Async.DeviceMetering.exportMeteringDeviceHistoryRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportMeteringDeviceHistoryRequest = exportMeteringDeviceHistoryRequest; + return ((Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync)(this)).exportMeteringDeviceHistoryAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync.getStateAsync(Hcs.Service.Async.DeviceMetering.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.DeviceMetering.RequestHeader RequestHeader, Hcs.Service.Async.DeviceMetering.getStateRequest getStateRequest) + { + Hcs.Service.Async.DeviceMetering.getStateRequest1 inValue = new Hcs.Service.Async.DeviceMetering.getStateRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.DeviceMetering.DeviceMeteringPortTypesAsync)(this)).getStateAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.DeviceMeteringPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.DeviceMeteringPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-device-metering-service/services/DeviceMeter" + + "ingAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return DeviceMeteringPortTypesAsyncClient.GetBindingForEndpoint(EndpointConfiguration.DeviceMeteringPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return DeviceMeteringPortTypesAsyncClient.GetEndpointAddress(EndpointConfiguration.DeviceMeteringPortAsync); + } + + public enum EndpointConfiguration + { + + DeviceMeteringPortAsync, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/ConnectedService.json new file mode 100644 index 0000000..1cc7300 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.HouseManagement" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/Reference.cs new file mode 100644 index 0000000..8cbf8c3 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.HouseManagement/Reference.cs @@ -0,0 +1,62932 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.HouseManagement +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class EntpsType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + private EntpsTypeSex sexField; + + private bool sexFieldSpecified; + + private string oGRNIPField; + + private System.DateTime stateRegistrationDateField; + + private bool stateRegistrationDateFieldSpecified; + + private string iNNField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public EntpsTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string OGRNIP + { + get + { + return this.oGRNIPField; + } + set + { + this.oGRNIPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime StateRegistrationDate + { + get + { + return this.stateRegistrationDateField; + } + set + { + this.stateRegistrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateRegistrationDateSpecified + { + get + { + return this.stateRegistrationDateFieldSpecified; + } + set + { + this.stateRegistrationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=6)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public enum EntpsTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class ForeignBranchType + { + + private string fullNameField; + + private string shortNameField; + + private string nZAField; + + private string iNNField; + + private string kPPField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime accreditationStartDateField; + + private System.DateTime accreditationEndDateField; + + private bool accreditationEndDateFieldSpecified; + + private string registrationCountryField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=2)] + public string NZA + { + get + { + return this.nZAField; + } + set + { + this.nZAField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=7)] + public System.DateTime AccreditationStartDate + { + get + { + return this.accreditationStartDateField; + } + set + { + this.accreditationStartDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime AccreditationEndDate + { + get + { + return this.accreditationEndDateField; + } + set + { + this.accreditationEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccreditationEndDateSpecified + { + get + { + return this.accreditationEndDateFieldSpecified; + } + set + { + this.accreditationEndDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string RegistrationCountry + { + get + { + return this.registrationCountryField; + } + set + { + this.registrationCountryField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class SubsidiaryType + { + + private string fullNameField; + + private string shortNameField; + + private string oGRNField; + + private string iNNField; + + private string kPPField; + + private string oKOPFField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime activityEndDateField; + + private bool activityEndDateFieldSpecified; + + private SubsidiaryTypeSourceName sourceNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=2)] + public string OGRN + { + get + { + return this.oGRNField; + } + set + { + this.oGRNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=5)] + public string OKOPF + { + get + { + return this.oKOPFField; + } + set + { + this.oKOPFField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime ActivityEndDate + { + get + { + return this.activityEndDateField; + } + set + { + this.activityEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ActivityEndDateSpecified + { + get + { + return this.activityEndDateFieldSpecified; + } + set + { + this.activityEndDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public SubsidiaryTypeSourceName SourceName + { + get + { + return this.sourceNameField; + } + set + { + this.sourceNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class SubsidiaryTypeSourceName + { + + private System.DateTime dateField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="date")] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class LegalType + { + + private string shortNameField; + + private string fullNameField; + + private string commercialNameField; + + private string oGRNField; + + private System.DateTime stateRegistrationDateField; + + private bool stateRegistrationDateFieldSpecified; + + private string iNNField; + + private string kPPField; + + private string oKOPFField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime activityEndDateField; + + private bool activityEndDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string CommercialName + { + get + { + return this.commercialNameField; + } + set + { + this.commercialNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string OGRN + { + get + { + return this.oGRNField; + } + set + { + this.oGRNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime StateRegistrationDate + { + get + { + return this.stateRegistrationDateField; + } + set + { + this.stateRegistrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateRegistrationDateSpecified + { + get + { + return this.stateRegistrationDateFieldSpecified; + } + set + { + this.stateRegistrationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=5)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=6)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=7)] + public string OKOPF + { + get + { + return this.oKOPFField; + } + set + { + this.oKOPFField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=10)] + public System.DateTime ActivityEndDate + { + get + { + return this.activityEndDateField; + } + set + { + this.activityEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ActivityEndDateSpecified + { + get + { + return this.activityEndDateFieldSpecified; + } + set + { + this.activityEndDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignaturePropertyType + { + + private System.Xml.XmlElement[] itemsField; + + private string[] textField; + + private string targetField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlElement[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Target + { + get + { + return this.targetField; + } + set + { + this.targetField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignaturePropertiesType + { + + private SignaturePropertyType[] signaturePropertyField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute("SignatureProperty", Order=0)] + public SignaturePropertyType[] SignatureProperty + { + get + { + return this.signaturePropertyField; + } + set + { + this.signaturePropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ManifestType + { + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=0)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/")] + public partial class PaymentReasonType + { + + private string contractNumberField; + + private System.DateTime contractDateField; + + private System.DateTime contractEndDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime ContractDate + { + get + { + return this.contractDateField; + } + set + { + this.contractDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ContractEndDate + { + get + { + return this.contractEndDateField; + } + set + { + this.contractEndDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class VolumeMeteringValueBaseType + { + + private nsiRef municipalResourceField; + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementAttachmentFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFiasAddressRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementOkeiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementEnumFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementIntegerFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementDateFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFloatFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementBooleanFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementStringFieldType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public abstract partial class NsiElementFieldType + { + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementAttachmentFieldType : NsiElementFieldType + { + + private AttachmentType documentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AttachmentType Document + { + get + { + return this.documentField; + } + set + { + this.documentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AttachmentType + { + + private string nameField; + + private string descriptionField; + + private Attachment attachmentField; + + private string attachmentHASHField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Attachment Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AttachmentHASH + { + get + { + return this.attachmentHASHField; + } + set + { + this.attachmentHASHField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Attachment + { + + private string attachmentGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AttachmentGUID + { + get + { + return this.attachmentGUIDField; + } + set + { + this.attachmentGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldType : NsiElementFieldType + { + + private NsiElementFiasAddressRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementFiasAddressRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldTypeNsiRef + { + + private string guidField; + + private string aoGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Guid + { + get + { + return this.guidField; + } + set + { + this.guidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string aoGuid + { + get + { + return this.aoGuidField; + } + set + { + this.aoGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementOkeiRefFieldType : NsiElementFieldType + { + + private string codeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldType : NsiElementFieldType + { + + private NsiElementNsiRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private nsiRef refField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef Ref + { + get + { + return this.refField; + } + set + { + this.refField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldType : NsiElementFieldType + { + + private NsiElementNsiFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public enum ListGroup + { + + /// + NSI, + + /// + NSIRAO, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldType : NsiElementFieldType + { + + private NsiElementEnumFieldTypePosition[] positionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Position", Order=0)] + public NsiElementEnumFieldTypePosition[] Position + { + get + { + return this.positionField; + } + set + { + this.positionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldTypePosition + { + + private object gUIDField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public object GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementIntegerFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementDateFieldType : NsiElementFieldType + { + + private System.DateTime valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFloatFieldType : NsiElementFieldType + { + + private float valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public float Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementBooleanFieldType : NsiElementFieldType + { + + private bool valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementStringFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementType + { + + private string codeField; + + private string gUIDField; + + private System.DateTime[] itemsField; + + private ItemsChoiceType22[] itemsElementNameField; + + private bool isActualField; + + private NsiElementFieldType[] nsiElementFieldField; + + private NsiElementType[] childElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Modified", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public System.DateTime[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType22[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElementField", Order=5)] + public NsiElementFieldType[] NsiElementField + { + get + { + return this.nsiElementFieldField; + } + set + { + this.nsiElementFieldField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ChildElement", Order=6)] + public NsiElementType[] ChildElement + { + get + { + return this.childElementField; + } + set + { + this.childElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", IncludeInSchema=false)] + public enum ItemsChoiceType22 + { + + /// + EndDate, + + /// + Modified, + + /// + StartDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemType + { + + private string nsiItemRegistryNumberField; + + private System.DateTime createdField; + + private NsiElementType[] nsiElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElement", Order=2)] + public NsiElementType[] NsiElement + { + get + { + return this.nsiElementField; + } + set + { + this.nsiElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiListType + { + + private System.DateTime createdField; + + private NsiItemInfoType[] nsiItemInfoField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiItemInfo", Order=1)] + public NsiItemInfoType[] NsiItemInfo + { + get + { + return this.nsiItemInfoField; + } + set + { + this.nsiItemInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemInfoType + { + + private string registryNumberField; + + private string nameField; + + private System.DateTime modifiedField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime Modified + { + get + { + return this.modifiedField; + } + set + { + this.modifiedField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class DocumentPortalType + { + + private string nameField; + + private string docNumberField; + + private System.DateTime approveDateField; + + private AttachmentType attachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DocNumber + { + get + { + return this.docNumberField; + } + set + { + this.docNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ApproveDate + { + get + { + return this.approveDateField; + } + set + { + this.approveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public AttachmentType Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class PeriodOpen + { + + private System.DateTime startDateField; + + private bool startDateFieldSpecified; + + private System.DateTime endDateField; + + private bool endDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime startDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool startDateSpecified + { + get + { + return this.startDateFieldSpecified; + } + set + { + this.startDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime endDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool endDateSpecified + { + get + { + return this.endDateFieldSpecified; + } + set + { + this.endDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Period + { + + private System.DateTime startDateField; + + private System.DateTime endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime startDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime endDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class YearMonth + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class SignedAttachmentType + { + + private AttachmentType attachmentField; + + private AttachmentWODescriptionType[] signatureField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AttachmentType Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Signature", Order=1)] + public AttachmentWODescriptionType[] Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AttachmentWODescriptionType + { + + private string nameField; + + private string descriptionField; + + private Attachment attachmentField; + + private string attachmentHASHField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Attachment Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AttachmentHASH + { + get + { + return this.attachmentHASHField; + } + set + { + this.attachmentHASHField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultType + { + + private string itemField; + + private ItemChoiceType24 itemElementNameField; + + private object[] itemsField; + + private ItemsChoiceType21[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("TransportGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UpdateGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType24 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CreateOrUpdateError", typeof(ErrorMessageType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("GUID", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType21[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType24 + { + + /// + TransportGUID, + + /// + UpdateGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType21 + { + + /// + CreateOrUpdateError, + + /// + GUID, + + /// + UniqueNumber, + + /// + UpdateDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesType + { + + private string meteringDeviceNumberField; + + private string meteringDeviceStampField; + + private string meteringDeviceModelField; + + private System.DateTime installationDateField; + + private bool installationDateFieldSpecified; + + private System.DateTime commissioningDateField; + + private bool commissioningDateFieldSpecified; + + private bool remoteMeteringModeField; + + private bool remoteMeteringModeFieldSpecified; + + private string remoteMeteringInfoField; + + private bool temperatureSensorField; + + private bool temperatureSensorFieldSpecified; + + private bool pressureSensorField; + + private bool pressureSensorFieldSpecified; + + private MeteringDeviceToUpdateAfterDevicesValuesTypeCollectiveDevice collectiveDeviceField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + private object[] itemsField; + + private System.DateTime firstVerificationDateField; + + private bool firstVerificationDateFieldSpecified; + + private System.DateTime factorySealDateField; + + private bool factorySealDateFieldSpecified; + + private bool consumedVolumeField; + + private bool consumedVolumeFieldSpecified; + + private object itemField; + + private MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristicts addressChatacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceNumber + { + get + { + return this.meteringDeviceNumberField; + } + set + { + this.meteringDeviceNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringDeviceStamp + { + get + { + return this.meteringDeviceStampField; + } + set + { + this.meteringDeviceStampField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringDeviceModel + { + get + { + return this.meteringDeviceModelField; + } + set + { + this.meteringDeviceModelField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime InstallationDate + { + get + { + return this.installationDateField; + } + set + { + this.installationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InstallationDateSpecified + { + get + { + return this.installationDateFieldSpecified; + } + set + { + this.installationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime CommissioningDate + { + get + { + return this.commissioningDateField; + } + set + { + this.commissioningDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CommissioningDateSpecified + { + get + { + return this.commissioningDateFieldSpecified; + } + set + { + this.commissioningDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool RemoteMeteringMode + { + get + { + return this.remoteMeteringModeField; + } + set + { + this.remoteMeteringModeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RemoteMeteringModeSpecified + { + get + { + return this.remoteMeteringModeFieldSpecified; + } + set + { + this.remoteMeteringModeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string RemoteMeteringInfo + { + get + { + return this.remoteMeteringInfoField; + } + set + { + this.remoteMeteringInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool TemperatureSensor + { + get + { + return this.temperatureSensorField; + } + set + { + this.temperatureSensorField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TemperatureSensorSpecified + { + get + { + return this.temperatureSensorFieldSpecified; + } + set + { + this.temperatureSensorFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool PressureSensor + { + get + { + return this.pressureSensorField; + } + set + { + this.pressureSensorField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PressureSensorSpecified + { + get + { + return this.pressureSensorFieldSpecified; + } + set + { + this.pressureSensorFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public MeteringDeviceToUpdateAfterDevicesValuesTypeCollectiveDevice CollectiveDevice + { + get + { + return this.collectiveDeviceField; + } + set + { + this.collectiveDeviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=10)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=11)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceEnergy", typeof(MunicipalResourceElectricUpdateType), Order=12)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceNotEnergy", typeof(OneRateMeteringValueBaseType), Order=12)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=13)] + public System.DateTime FirstVerificationDate + { + get + { + return this.firstVerificationDateField; + } + set + { + this.firstVerificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FirstVerificationDateSpecified + { + get + { + return this.firstVerificationDateFieldSpecified; + } + set + { + this.firstVerificationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=14)] + public System.DateTime FactorySealDate + { + get + { + return this.factorySealDateField; + } + set + { + this.factorySealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FactorySealDateSpecified + { + get + { + return this.factorySealDateFieldSpecified; + } + set + { + this.factorySealDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public bool ConsumedVolume + { + get + { + return this.consumedVolumeField; + } + set + { + this.consumedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ConsumedVolumeSpecified + { + get + { + return this.consumedVolumeFieldSpecified; + } + set + { + this.consumedVolumeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedWithMetering", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeLinkedWithMetering), Order=16)] + [System.Xml.Serialization.XmlElementAttribute("NotLinkedWithMetering", typeof(bool), Order=16)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristicts AddressChatacteristicts + { + get + { + return this.addressChatacteristictsField; + } + set + { + this.addressChatacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeCollectiveDevice + { + + private string temperatureSensorInformationField; + + private string pressureSensorInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string TemperatureSensorInformation + { + get + { + return this.temperatureSensorInformationField; + } + set + { + this.temperatureSensorInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PressureSensorInformation + { + get + { + return this.pressureSensorInformationField; + } + set + { + this.pressureSensorInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricUpdateType : ElectricMeteringValueBaseType + { + + private decimal transformationRatioField; + + private bool transformationRatioFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TransformationRatio + { + get + { + return this.transformationRatioField; + } + set + { + this.transformationRatioField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TransformationRatioSpecified + { + get + { + return this.transformationRatioFieldSpecified; + } + set + { + this.transformationRatioFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricUpdateType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricBaseType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricExportType2))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueBaseType + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ElectricMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueExportType : ElectricMeteringValueBaseType + { + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class ElectricMeteringValueExportWithTSType : ElectricMeteringValueExportType + { + + private System.DateTime enterIntoSystemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EnterIntoSystem + { + get + { + return this.enterIntoSystemField; + } + set + { + this.enterIntoSystemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricExportType : ElectricMeteringValueExportType + { + + private decimal transformationRatioField; + + private bool transformationRatioFieldSpecified; + + private MunicipalResourceElectricExportTypeUnit unitField; + + private bool unitFieldSpecified; + + private MunicipalResourceElectricExportTypeMeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TransformationRatio + { + get + { + return this.transformationRatioField; + } + set + { + this.transformationRatioField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TransformationRatioSpecified + { + get + { + return this.transformationRatioFieldSpecified; + } + set + { + this.transformationRatioFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public MunicipalResourceElectricExportTypeUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public MunicipalResourceElectricExportTypeMeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MunicipalResourceElectricExportTypeUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricExportTypeMeteringValueInDefaultUnit + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceElectricExportType2))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricBaseType : ElectricMeteringValueBaseType + { + + private decimal transformationRatioField; + + private bool transformationRatioFieldSpecified; + + private MunicipalResourceElectricBaseTypeUnit unitField; + + private bool unitFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TransformationRatio + { + get + { + return this.transformationRatioField; + } + set + { + this.transformationRatioField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TransformationRatioSpecified + { + get + { + return this.transformationRatioFieldSpecified; + } + set + { + this.transformationRatioFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public MunicipalResourceElectricBaseTypeUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MunicipalResourceElectricBaseTypeUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricExportType2 : MunicipalResourceElectricBaseType + { + + private MunicipalResourceElectricExportType2MeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MunicipalResourceElectricExportType2MeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceElectricExportType2MeteringValueInDefaultUnit + { + + private string meteringValueT1Field; + + private string meteringValueT2Field; + + private string meteringValueT3Field; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValueT1 + { + get + { + return this.meteringValueT1Field; + } + set + { + this.meteringValueT1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValueT2 + { + get + { + return this.meteringValueT2Field; + } + set + { + this.meteringValueT2Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringValueT3 + { + get + { + return this.meteringValueT3Field; + } + set + { + this.meteringValueT3Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceNotElectricExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceNotElectricBaseType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceNotElectricExportType2))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueBaseType + { + + private nsiRef municipalResourceField; + + private string meteringValueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringValue + { + get + { + return this.meteringValueField; + } + set + { + this.meteringValueField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OneRateMeteringValueExportWithTSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceNotElectricExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueExportType : OneRateMeteringValueBaseType + { + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/metering-device-base/")] + public partial class OneRateMeteringValueExportWithTSType : OneRateMeteringValueExportType + { + + private System.DateTime enterIntoSystemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EnterIntoSystem + { + get + { + return this.enterIntoSystemField; + } + set + { + this.enterIntoSystemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceNotElectricExportType : OneRateMeteringValueExportType + { + + private MunicipalResourceNotElectricExportTypeUnit unitField; + + private bool unitFieldSpecified; + + private MunicipalResourceNotElectricExportTypeMeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MunicipalResourceNotElectricExportTypeUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public MunicipalResourceNotElectricExportTypeMeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MunicipalResourceNotElectricExportTypeUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("112")] + Item112, + + /// + [System.Xml.Serialization.XmlEnumAttribute("113")] + Item113, + + /// + [System.Xml.Serialization.XmlEnumAttribute("233")] + Item233, + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + + /// + [System.Xml.Serialization.XmlEnumAttribute("246")] + Item246, + + /// + [System.Xml.Serialization.XmlEnumAttribute("271")] + Item271, + + /// + A056, + + /// + A058, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceNotElectricExportTypeMeteringValueInDefaultUnit + { + + private string meteringValueField; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValue + { + get + { + return this.meteringValueField; + } + set + { + this.meteringValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(MunicipalResourceNotElectricExportType2))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceNotElectricBaseType : OneRateMeteringValueBaseType + { + + private MunicipalResourceNotElectricBaseTypeUnit unitField; + + private bool unitFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MunicipalResourceNotElectricBaseTypeUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MunicipalResourceNotElectricBaseTypeUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("112")] + Item112, + + /// + [System.Xml.Serialization.XmlEnumAttribute("113")] + Item113, + + /// + [System.Xml.Serialization.XmlEnumAttribute("233")] + Item233, + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + + /// + [System.Xml.Serialization.XmlEnumAttribute("246")] + Item246, + + /// + [System.Xml.Serialization.XmlEnumAttribute("271")] + Item271, + + /// + A056, + + /// + A058, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceNotElectricExportType2 : MunicipalResourceNotElectricBaseType + { + + private MunicipalResourceNotElectricExportType2MeteringValueInDefaultUnit meteringValueInDefaultUnitField; + + private string readingsSourceField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MunicipalResourceNotElectricExportType2MeteringValueInDefaultUnit MeteringValueInDefaultUnit + { + get + { + return this.meteringValueInDefaultUnitField; + } + set + { + this.meteringValueInDefaultUnitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ReadingsSource + { + get + { + return this.readingsSourceField; + } + set + { + this.readingsSourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MunicipalResourceNotElectricExportType2MeteringValueInDefaultUnit + { + + private string meteringValueField; + + private string defaultUnitField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringValue + { + get + { + return this.meteringValueField; + } + set + { + this.meteringValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string DefaultUnit + { + get + { + return this.defaultUnitField; + } + set + { + this.defaultUnitField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeLinkedWithMetering + { + + private MeteringDeviceToUpdateAfterDevicesValuesTypeLinkedWithMeteringInstallationPlace installationPlaceField; + + private string[] linkedMeteringDeviceVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MeteringDeviceToUpdateAfterDevicesValuesTypeLinkedWithMeteringInstallationPlace InstallationPlace + { + get + { + return this.installationPlaceField; + } + set + { + this.installationPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedMeteringDeviceVersionGUID", Order=1)] + public string[] LinkedMeteringDeviceVersionGUID + { + get + { + return this.linkedMeteringDeviceVersionGUIDField; + } + set + { + this.linkedMeteringDeviceVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MeteringDeviceToUpdateAfterDevicesValuesTypeLinkedWithMeteringInstallationPlace + { + + /// + @in, + + /// + @out, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristicts + { + + private object itemField; + + private ItemChoiceType23 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsApartmentHouseDevice), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CollectiveApartmentDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsCollectiveApartmentDevice), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CollectiveDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsCollectiveDevice), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsLivingRoomDevice), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsNonResidentialPremiseDevice), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremiseDevice", typeof(MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsResidentialPremiseDevice), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType23 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsApartmentHouseDevice + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isChangeToFIASHouseGuid", typeof(bool), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsCollectiveApartmentDevice + { + + private string[] premiseGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsCollectiveDevice + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isChangeToFIASHouseGuid", typeof(bool), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsLivingRoomDevice + { + + private string[] livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomGUID", Order=0)] + public string[] LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsNonResidentialPremiseDevice + { + + private string[] premiseGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceToUpdateAfterDevicesValuesTypeAddressChatacteristictsResidentialPremiseDevice + { + + private string[] premiseGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType23 + { + + /// + ApartmentHouseDevice, + + /// + CollectiveApartmentDevice, + + /// + CollectiveDevice, + + /// + LivingRoomDevice, + + /// + NonResidentialPremiseDevice, + + /// + ResidentialPremiseDevice, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DeviceMunicipalResourceType + { + + private nsiRef municipalResourceField; + + private DeviceMunicipalResourceTypeUnit unitField; + + private bool unitFieldSpecified; + + private string tariffCountField; + + private decimal transformationRatioField; + + private bool transformationRatioFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DeviceMunicipalResourceTypeUnit Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UnitSpecified + { + get + { + return this.unitFieldSpecified; + } + set + { + this.unitFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=2)] + public string TariffCount + { + get + { + return this.tariffCountField; + } + set + { + this.tariffCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TransformationRatio + { + get + { + return this.transformationRatioField; + } + set + { + this.transformationRatioField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TransformationRatioSpecified + { + get + { + return this.transformationRatioFieldSpecified; + } + set + { + this.transformationRatioFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum DeviceMunicipalResourceTypeUnit + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("112")] + Item112, + + /// + [System.Xml.Serialization.XmlEnumAttribute("113")] + Item113, + + /// + [System.Xml.Serialization.XmlEnumAttribute("233")] + Item233, + + /// + [System.Xml.Serialization.XmlEnumAttribute("245")] + Item245, + + /// + [System.Xml.Serialization.XmlEnumAttribute("246")] + Item246, + + /// + [System.Xml.Serialization.XmlEnumAttribute("271")] + Item271, + + /// + A056, + + /// + A058, + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportMeteringDeviceDataResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceFullInformationExportType + { + + private MeteringDeviceBasicCharacteristicsType basicChatacteristictsField; + + private object itemField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MeteringDeviceBasicCharacteristicsType BasicChatacteristicts + { + get + { + return this.basicChatacteristictsField; + } + set + { + this.basicChatacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedWithMetering", typeof(MeteringDeviceFullInformationExportTypeLinkedWithMetering), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NotLinkedWithMetering", typeof(bool), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceEnergy", typeof(MunicipalResourceElectricExportType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceNotEnergy", typeof(MunicipalResourceNotElectricExportType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResources", typeof(DeviceMunicipalResourceType), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsType + { + + private string meteringDeviceNumberField; + + private string meteringDeviceStampField; + + private string meteringDeviceModelField; + + private System.DateTime installationDateField; + + private bool installationDateFieldSpecified; + + private System.DateTime commissioningDateField; + + private bool commissioningDateFieldSpecified; + + private bool remoteMeteringModeField; + + private string remoteMeteringInfoField; + + private System.DateTime firstVerificationDateField; + + private bool firstVerificationDateFieldSpecified; + + private nsiRef verificationIntervalField; + + private System.DateTime factorySealDateField; + + private bool factorySealDateFieldSpecified; + + private bool temperatureSensorField; + + private bool pressureSensorField; + + private bool consumedVolumeField; + + private bool consumedVolumeFieldSpecified; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceNumber + { + get + { + return this.meteringDeviceNumberField; + } + set + { + this.meteringDeviceNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringDeviceStamp + { + get + { + return this.meteringDeviceStampField; + } + set + { + this.meteringDeviceStampField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringDeviceModel + { + get + { + return this.meteringDeviceModelField; + } + set + { + this.meteringDeviceModelField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime InstallationDate + { + get + { + return this.installationDateField; + } + set + { + this.installationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InstallationDateSpecified + { + get + { + return this.installationDateFieldSpecified; + } + set + { + this.installationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime CommissioningDate + { + get + { + return this.commissioningDateField; + } + set + { + this.commissioningDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CommissioningDateSpecified + { + get + { + return this.commissioningDateFieldSpecified; + } + set + { + this.commissioningDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool RemoteMeteringMode + { + get + { + return this.remoteMeteringModeField; + } + set + { + this.remoteMeteringModeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string RemoteMeteringInfo + { + get + { + return this.remoteMeteringInfoField; + } + set + { + this.remoteMeteringInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=7)] + public System.DateTime FirstVerificationDate + { + get + { + return this.firstVerificationDateField; + } + set + { + this.firstVerificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FirstVerificationDateSpecified + { + get + { + return this.firstVerificationDateFieldSpecified; + } + set + { + this.firstVerificationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public nsiRef VerificationInterval + { + get + { + return this.verificationIntervalField; + } + set + { + this.verificationIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=9)] + public System.DateTime FactorySealDate + { + get + { + return this.factorySealDateField; + } + set + { + this.factorySealDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FactorySealDateSpecified + { + get + { + return this.factorySealDateFieldSpecified; + } + set + { + this.factorySealDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool TemperatureSensor + { + get + { + return this.temperatureSensorField; + } + set + { + this.temperatureSensorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool PressureSensor + { + get + { + return this.pressureSensorField; + } + set + { + this.pressureSensorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool ConsumedVolume + { + get + { + return this.consumedVolumeField; + } + set + { + this.consumedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ConsumedVolumeSpecified + { + get + { + return this.consumedVolumeFieldSpecified; + } + set + { + this.consumedVolumeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseDevice", typeof(MeteringDeviceBasicCharacteristicsTypeApartmentHouseDevice), Order=13)] + [System.Xml.Serialization.XmlElementAttribute("CollectiveApartmentDevice", typeof(MeteringDeviceBasicCharacteristicsTypeCollectiveApartmentDevice), Order=13)] + [System.Xml.Serialization.XmlElementAttribute("CollectiveDevice", typeof(MeteringDeviceBasicCharacteristicsTypeCollectiveDevice), Order=13)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomDevice", typeof(MeteringDeviceBasicCharacteristicsTypeLivingRoomDevice), Order=13)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseDevice", typeof(MeteringDeviceBasicCharacteristicsTypeNonResidentialPremiseDevice), Order=13)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremiseDevice", typeof(MeteringDeviceBasicCharacteristicsTypeResidentialPremiseDevice), Order=13)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeApartmentHouseDevice + { + + private string[] fIASHouseGuidField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=1)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=2)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeCollectiveApartmentDevice + { + + private string[] premiseGUIDField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + private MeteringDeviceBasicCharacteristicsTypeCollectiveApartmentDevicePremiseInfo[] premiseInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=1)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=2)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseInfo", Order=3)] + public MeteringDeviceBasicCharacteristicsTypeCollectiveApartmentDevicePremiseInfo[] PremiseInfo + { + get + { + return this.premiseInfoField; + } + set + { + this.premiseInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeCollectiveApartmentDevicePremiseInfo + { + + private string premiseGUIDField; + + private object premiseNoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public object PremiseNo + { + get + { + return this.premiseNoField; + } + set + { + this.premiseNoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeCollectiveDevice + { + + private string[] fIASHouseGuidField; + + private string temperatureSensingElementInfoField; + + private string pressureSensingElementInfoField; + + private AttachmentType[] projectRegistrationNodeField; + + private AttachmentType[] certificateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TemperatureSensingElementInfo + { + get + { + return this.temperatureSensingElementInfoField; + } + set + { + this.temperatureSensingElementInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PressureSensingElementInfo + { + get + { + return this.pressureSensingElementInfoField; + } + set + { + this.pressureSensingElementInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ProjectRegistrationNode", Order=3)] + public AttachmentType[] ProjectRegistrationNode + { + get + { + return this.projectRegistrationNodeField; + } + set + { + this.projectRegistrationNodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=4)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeLivingRoomDevice + { + + private string[] livingRoomGUIDField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + private MeteringDeviceBasicCharacteristicsTypeLivingRoomDeviceLivingRoomInfo[] livingRoomInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomGUID", Order=0)] + public string[] LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=1)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=2)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomInfo", Order=3)] + public MeteringDeviceBasicCharacteristicsTypeLivingRoomDeviceLivingRoomInfo[] LivingRoomInfo + { + get + { + return this.livingRoomInfoField; + } + set + { + this.livingRoomInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeLivingRoomDeviceLivingRoomInfo + { + + private string livingRoomGUIDField; + + private object livingRoomNoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public object LivingRoomNo + { + get + { + return this.livingRoomNoField; + } + set + { + this.livingRoomNoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeNonResidentialPremiseDevice + { + + private string[] premiseGUIDField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + private MeteringDeviceBasicCharacteristicsTypeNonResidentialPremiseDevicePremiseInfo[] premiseInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=1)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=2)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseInfo", Order=3)] + public MeteringDeviceBasicCharacteristicsTypeNonResidentialPremiseDevicePremiseInfo[] PremiseInfo + { + get + { + return this.premiseInfoField; + } + set + { + this.premiseInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeNonResidentialPremiseDevicePremiseInfo + { + + private string premiseGUIDField; + + private object premiseNoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public object PremiseNo + { + get + { + return this.premiseNoField; + } + set + { + this.premiseNoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeResidentialPremiseDevice + { + + private string[] premiseGUIDField; + + private string[] accountGUIDField; + + private AttachmentType[] certificateField; + + private MeteringDeviceBasicCharacteristicsTypeResidentialPremiseDevicePremiseInfo[] premiseInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseGUID", Order=0)] + public string[] PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", Order=1)] + public string[] AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Certificate", Order=2)] + public AttachmentType[] Certificate + { + get + { + return this.certificateField; + } + set + { + this.certificateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PremiseInfo", Order=3)] + public MeteringDeviceBasicCharacteristicsTypeResidentialPremiseDevicePremiseInfo[] PremiseInfo + { + get + { + return this.premiseInfoField; + } + set + { + this.premiseInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceBasicCharacteristicsTypeResidentialPremiseDevicePremiseInfo + { + + private string premiseGUIDField; + + private object premiseNoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremiseGUID + { + get + { + return this.premiseGUIDField; + } + set + { + this.premiseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public object PremiseNo + { + get + { + return this.premiseNoField; + } + set + { + this.premiseNoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceFullInformationExportTypeLinkedWithMetering + { + + private MeteringDeviceFullInformationExportTypeLinkedWithMeteringInstallationPlace installationPlaceField; + + private string[] linkedMeteringDeviceVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MeteringDeviceFullInformationExportTypeLinkedWithMeteringInstallationPlace InstallationPlace + { + get + { + return this.installationPlaceField; + } + set + { + this.installationPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedMeteringDeviceVersionGUID", Order=1)] + public string[] LinkedMeteringDeviceVersionGUID + { + get + { + return this.linkedMeteringDeviceVersionGUIDField; + } + set + { + this.linkedMeteringDeviceVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MeteringDeviceFullInformationExportTypeLinkedWithMeteringInstallationPlace + { + + /// + @in, + + /// + @out, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportMeteringDeviceDataResultType : MeteringDeviceFullInformationExportType + { + + private string meteringDeviceRootGUIDField; + + private exportMeteringDeviceDataResultTypeStatusRootDoc statusRootDocField; + + private string meteringDeviceVersionGUIDField; + + private string versionNumberField; + + private string statusVersionField; + + private System.DateTime updateDateTimeField; + + private string[] meteringOwnerField; + + private string meteringDeviceGISGKHNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceRootGUID + { + get + { + return this.meteringDeviceRootGUIDField; + } + set + { + this.meteringDeviceRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportMeteringDeviceDataResultTypeStatusRootDoc StatusRootDoc + { + get + { + return this.statusRootDocField; + } + set + { + this.statusRootDocField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MeteringDeviceVersionGUID + { + get + { + return this.meteringDeviceVersionGUIDField; + } + set + { + this.meteringDeviceVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=3)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string StatusVersion + { + get + { + return this.statusVersionField; + } + set + { + this.statusVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public System.DateTime UpdateDateTime + { + get + { + return this.updateDateTimeField; + } + set + { + this.updateDateTimeField = value; + } + } + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=6)] + [System.Xml.Serialization.XmlArrayItemAttribute("orgRootEntityGUID", Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", IsNullable=false)] + public string[] MeteringOwner + { + get + { + return this.meteringOwnerField; + } + set + { + this.meteringOwnerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string MeteringDeviceGISGKHNumber + { + get + { + return this.meteringDeviceGISGKHNumberField; + } + set + { + this.meteringDeviceGISGKHNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportMeteringDeviceDataResultTypeStatusRootDoc + { + + /// + Active, + + /// + Archival, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportObjectAddressType + { + + private ExportObjectAddressTypeHouseType houseTypeField; + + private bool houseTypeFieldSpecified; + + private string fIASHouseGuidField; + + private string apartmentNumberField; + + private string roomNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ExportObjectAddressTypeHouseType HouseType + { + get + { + return this.houseTypeField; + } + set + { + this.houseTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HouseTypeSpecified + { + get + { + return this.houseTypeFieldSpecified; + } + set + { + this.houseTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ApartmentNumber + { + get + { + return this.apartmentNumberField; + } + set + { + this.apartmentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportObjectAddressTypeHouseType + { + + /// + MKD, + + /// + ZHD, + + /// + ZHDBlockZastroyki, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OwnerRefusalExportType + { + + private string messageGUIDField; + + private string refusalGUIDField; + + private Owner ownerField; + + private exportPropertyDetails[] exportPropertyDetailsField; + + private Representative representativeField; + + private AttachmentType[] refusalAttachmentsField; + + private OwnerRefusalStatusType refusalStatusField; + + private System.DateTime publishDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RefusalGUID + { + get + { + return this.refusalGUIDField; + } + set + { + this.refusalGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Owner Owner + { + get + { + return this.ownerField; + } + set + { + this.ownerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("exportPropertyDetails", Order=3)] + public exportPropertyDetails[] exportPropertyDetails + { + get + { + return this.exportPropertyDetailsField; + } + set + { + this.exportPropertyDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public Representative Representative + { + get + { + return this.representativeField; + } + set + { + this.representativeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RefusalAttachments", Order=5)] + public AttachmentType[] RefusalAttachments + { + get + { + return this.refusalAttachmentsField; + } + set + { + this.refusalAttachmentsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OwnerRefusalStatusType RefusalStatus + { + get + { + return this.refusalStatusField; + } + set + { + this.refusalStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public System.DateTime PublishDate + { + get + { + return this.publishDateField; + } + set + { + this.publishDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class Owner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerInd", typeof(OwnerOwnerInd), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OwnerOrg", typeof(RegOrgRootAndVersionType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OwnerOwnerInd : DecisionIndType + { + + private string sNILSField; + + private DecisionIndID decisionIndIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=0)] + public string SNILS + { + get + { + return this.sNILSField; + } + set + { + this.sNILSField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DecisionIndID DecisionIndID + { + get + { + return this.decisionIndIDField; + } + set + { + this.decisionIndIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DecisionIndID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DecisionIndType : FIOType + { + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(IndType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(DecisionIndType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(VotingInitiatorIndType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(AccountIndType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class FIOType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class IndType : FIOType + { + + private Sex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + private string placeBirthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public Sex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(ID), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PlaceBirth + { + get + { + return this.placeBirthField; + } + set + { + this.placeBirthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public enum Sex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class ID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + private System.DateTime issueDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime IssueDate + { + get + { + return this.issueDateField; + } + set + { + this.issueDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class VotingInitiatorIndType : FIOType + { + + private VotingInitiatorIndTypeSex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private string sNILSField; + + private VotingInitiatorIndID votingInitiatorIndIDField; + + private string placeBirthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public VotingInitiatorIndTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=2)] + public string SNILS + { + get + { + return this.sNILSField; + } + set + { + this.sNILSField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public VotingInitiatorIndID VotingInitiatorIndID + { + get + { + return this.votingInitiatorIndIDField; + } + set + { + this.votingInitiatorIndIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PlaceBirth + { + get + { + return this.placeBirthField; + } + set + { + this.placeBirthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum VotingInitiatorIndTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class VotingInitiatorIndID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + private System.DateTime issueDateField; + + private bool issueDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime IssueDate + { + get + { + return this.issueDateField; + } + set + { + this.issueDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IssueDateSpecified + { + get + { + return this.issueDateFieldSpecified; + } + set + { + this.issueDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountIndType : FIOType + { + + private AccountIndTypeSex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AccountIndTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(ID), Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=2)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum AccountIndTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgRootAndVersionType + { + + private string itemField; + + private ItemChoiceType5 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("orgRootEntityGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType5 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", IncludeInSchema=false)] + public enum ItemChoiceType5 + { + + /// + orgRootEntityGUID, + + /// + orgVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportPropertyDetails + { + + private string registrationNumberField; + + private System.DateTime registrationDateField; + + private string premisesNumField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private exportPropertyDetailsPropertyType propertyTypeField; + + private exportPropertyDetailsShareSize shareSizeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RegistrationNumber + { + get + { + return this.registrationNumberField; + } + set + { + this.registrationNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime RegistrationDate + { + get + { + return this.registrationDateField; + } + set + { + this.registrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportPropertyDetailsPropertyType PropertyType + { + get + { + return this.propertyTypeField; + } + set + { + this.propertyTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public exportPropertyDetailsShareSize ShareSize + { + get + { + return this.shareSizeField; + } + set + { + this.shareSizeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportPropertyDetailsPropertyType + { + + private bool itemField; + + private ItemChoiceType6 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("IndividualProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("JointProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ShareProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType6 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType6 + { + + /// + IndividualProperty, + + /// + JointProperty, + + /// + ShareProperty, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportPropertyDetailsShareSize + { + + private string numeratorField; + + private string denumeratorField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Numerator + { + get + { + return this.numeratorField; + } + set + { + this.numeratorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string Denumerator + { + get + { + return this.denumeratorField; + } + set + { + this.denumeratorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class Representative + { + + private object itemField; + + private bool notarizedField; + + private AttachmentType[] representativeAttachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("RepresentativeInd", typeof(RepresentativeRepresentativeInd), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RepresentativeOrg", typeof(RegOrgRootAndVersionType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool Notarized + { + get + { + return this.notarizedField; + } + set + { + this.notarizedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RepresentativeAttachments", Order=2)] + public AttachmentType[] RepresentativeAttachments + { + get + { + return this.representativeAttachmentsField; + } + set + { + this.representativeAttachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RepresentativeRepresentativeInd : DecisionIndType + { + + private string sNILSField; + + private DecisionIndID decisionIndIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=0)] + public string SNILS + { + get + { + return this.sNILSField; + } + set + { + this.sNILSField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DecisionIndID DecisionIndID + { + get + { + return this.decisionIndIDField; + } + set + { + this.decisionIndIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum OwnerRefusalStatusType + { + + /// + Published, + + /// + Canceled, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OwnerRefusalType + { + + private Owner ownerField; + + private PropertyDetails[] propertyDetailsField; + + private Representative representativeField; + + private AttachmentType[] refusalAttachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public Owner Owner + { + get + { + return this.ownerField; + } + set + { + this.ownerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PropertyDetails", Order=1)] + public PropertyDetails[] PropertyDetails + { + get + { + return this.propertyDetailsField; + } + set + { + this.propertyDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Representative Representative + { + get + { + return this.representativeField; + } + set + { + this.representativeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RefusalAttachments", Order=3)] + public AttachmentType[] RefusalAttachments + { + get + { + return this.refusalAttachmentsField; + } + set + { + this.refusalAttachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PropertyDetails + { + + private string registrationNumberField; + + private System.DateTime registrationDateField; + + private string premisesNumField; + + private decimal totalAreaField; + + private PropertyDetailsPropertyType propertyTypeField; + + private PropertyDetailsShareSize shareSizeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RegistrationNumber + { + get + { + return this.registrationNumberField; + } + set + { + this.registrationNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime RegistrationDate + { + get + { + return this.registrationDateField; + } + set + { + this.registrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public PropertyDetailsPropertyType PropertyType + { + get + { + return this.propertyTypeField; + } + set + { + this.propertyTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PropertyDetailsShareSize ShareSize + { + get + { + return this.shareSizeField; + } + set + { + this.shareSizeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PropertyDetailsPropertyType + { + + private bool itemField; + + private ItemChoiceType21 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("IndividualProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("JointProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ShareProperty", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType21 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType21 + { + + /// + IndividualProperty, + + /// + JointProperty, + + /// + ShareProperty, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PropertyDetailsShareSize + { + + private string numeratorField; + + private string denumeratorField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Numerator + { + get + { + return this.numeratorField; + } + set + { + this.numeratorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string Denumerator + { + get + { + return this.denumeratorField; + } + set + { + this.denumeratorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportQuestionOnDecisionType + { + + private string questionNumberField; + + private string questionNameField; + + private decimal itemField; + + private ItemChoiceType22 itemElementNameField; + + private bool isDigitalDecisionField; + + private bool isDigitalDecisionFieldSpecified; + + public exportQuestionOnDecisionType() + { + this.isDigitalDecisionField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string QuestionName + { + get + { + return this.questionNameField; + } + set + { + this.questionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerAbstent", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("OwnerAgainst", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("OwnerAgree", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public decimal Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType22 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsDigitalDecision + { + get + { + return this.isDigitalDecisionField; + } + set + { + this.isDigitalDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsDigitalDecisionSpecified + { + get + { + return this.isDigitalDecisionFieldSpecified; + } + set + { + this.isDigitalDecisionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType22 + { + + /// + OwnerAbstent, + + /// + OwnerAgainst, + + /// + OwnerAgree, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OwnerDecisionType + { + + private Owner ownerField; + + private PropertyDetails[] propertyDetailsField; + + private Representative representativeField; + + private QuestionOnDecisionType questionOnDecisionField; + + private AttachmentType[] decisionAttachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public Owner Owner + { + get + { + return this.ownerField; + } + set + { + this.ownerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PropertyDetails", Order=1)] + public PropertyDetails[] PropertyDetails + { + get + { + return this.propertyDetailsField; + } + set + { + this.propertyDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Representative Representative + { + get + { + return this.representativeField; + } + set + { + this.representativeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public QuestionOnDecisionType QuestionOnDecision + { + get + { + return this.questionOnDecisionField; + } + set + { + this.questionOnDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionAttachments", Order=4)] + public AttachmentType[] DecisionAttachments + { + get + { + return this.decisionAttachmentsField; + } + set + { + this.decisionAttachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class QuestionOnDecisionType + { + + private string questionNumberField; + + private bool itemField; + + private ItemChoiceType7 itemElementNameField; + + private bool isDigitalDecisionField; + + private bool isDigitalDecisionFieldSpecified; + + public QuestionOnDecisionType() + { + this.isDigitalDecisionField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerAbstent", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("OwnerAgainst", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("OwnerAgree", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType7 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsDigitalDecision + { + get + { + return this.isDigitalDecisionField; + } + set + { + this.isDigitalDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsDigitalDecisionSpecified + { + get + { + return this.isDigitalDecisionFieldSpecified; + } + set + { + this.isDigitalDecisionFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType7 + { + + /// + OwnerAbstent, + + /// + OwnerAgainst, + + /// + OwnerAgree, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractType + { + + private object itemField; + + private string fIASHouseGuidField; + + private string contractNumberField; + + private System.DateTime dateField; + + private System.DateTime startDateField; + + private System.DateTime endDateField; + + private string contractObjectField; + + private string commentsField; + + private decimal paymentField; + + private bool paymentFieldSpecified; + + private string moneySpentDirectionField; + + private AttachmentType[] contractAttachmentField; + + private PublicPropertyContractTypeRentAgrConfirmationDocument[] rentAgrConfirmationDocumentField; + + private bool isGratuitousBasisField; + + private bool isGratuitousBasisFieldSpecified; + + public PublicPropertyContractType() + { + this.isGratuitousBasisField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entrepreneur", typeof(IndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(RegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string Comments + { + get + { + return this.commentsField; + } + set + { + this.commentsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Payment + { + get + { + return this.paymentField; + } + set + { + this.paymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaymentSpecified + { + get + { + return this.paymentFieldSpecified; + } + set + { + this.paymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string MoneySpentDirection + { + get + { + return this.moneySpentDirectionField; + } + set + { + this.moneySpentDirectionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=10)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RentAgrConfirmationDocument", Order=11)] + public PublicPropertyContractTypeRentAgrConfirmationDocument[] RentAgrConfirmationDocument + { + get + { + return this.rentAgrConfirmationDocumentField; + } + set + { + this.rentAgrConfirmationDocumentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool IsGratuitousBasis + { + get + { + return this.isGratuitousBasisField; + } + set + { + this.isGratuitousBasisField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsGratuitousBasisSpecified + { + get + { + return this.isGratuitousBasisFieldSpecified; + } + set + { + this.isGratuitousBasisFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgType + { + + private string orgRootEntityGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgRootEntityGUID + { + get + { + return this.orgRootEntityGUIDField; + } + set + { + this.orgRootEntityGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractTypeRentAgrConfirmationDocument + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", typeof(PublicPropertyContractTypeRentAgrConfirmationDocumentProtocolMeetingOwners), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractTypeRentAgrConfirmationDocumentProtocolMeetingOwners + { + + private string protocolNumField; + + private System.DateTime protocolDateField; + + private AttachmentType[] trustDocAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ProtocolNum + { + get + { + return this.protocolNumField; + } + set + { + this.protocolNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime ProtocolDate + { + get + { + return this.protocolDateField; + } + set + { + this.protocolDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TrustDocAttachment", Order=2)] + public AttachmentType[] TrustDocAttachment + { + get + { + return this.trustDocAttachmentField; + } + set + { + this.trustDocAttachmentField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportVotingProtocolResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportType + { + + private string[] fIASHouseGuidField; + + private RegOrgType organizationGuidField; + + private string protocolNumField; + + private System.DateTime protocolDateField; + + private object itemField; + + private MeetingTypeType meetingTypeField; + + private bool meetingTypeFieldSpecified; + + private bool item1Field; + + private Item1ChoiceType9 item1ElementNameField; + + private ProtocolExportTypeVoteInitiators[] voteInitiatorsField; + + private ProtocolExportTypeMeetingEligibility meetingEligibilityField; + + private ProtocolExportTypeDecisionList[] decisionListField; + + private string modificationField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public RegOrgType OrganizationGuid + { + get + { + return this.organizationGuidField; + } + set + { + this.organizationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ProtocolNum + { + get + { + return this.protocolNumField; + } + set + { + this.protocolNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime ProtocolDate + { + get + { + return this.protocolDateField; + } + set + { + this.protocolDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AVoting", typeof(ProtocolExportTypeAVoting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("EVoting", typeof(ProtocolExportTypeEVoting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("Meeting", typeof(ProtocolExportTypeMeeting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("MeetingAVoting", typeof(ProtocolExportTypeMeetingAVoting), Order=4)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public MeetingTypeType MeetingType + { + get + { + return this.meetingTypeField; + } + set + { + this.meetingTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeetingTypeSpecified + { + get + { + return this.meetingTypeFieldSpecified; + } + set + { + this.meetingTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnualVoting", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ExtraVoting", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType9 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VoteInitiators", Order=8)] + public ProtocolExportTypeVoteInitiators[] VoteInitiators + { + get + { + return this.voteInitiatorsField; + } + set + { + this.voteInitiatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public ProtocolExportTypeMeetingEligibility MeetingEligibility + { + get + { + return this.meetingEligibilityField; + } + set + { + this.meetingEligibilityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionList", Order=10)] + public ProtocolExportTypeDecisionList[] DecisionList + { + get + { + return this.decisionListField; + } + set + { + this.decisionListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string Modification + { + get + { + return this.modificationField; + } + set + { + this.modificationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private bool startMakingDecisionDateFieldSpecified; + + private System.DateTime endMakingDecisionDateField; + + private bool endMakingDecisionDateFieldSpecified; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StartMakingDecisionDateSpecified + { + get + { + return this.startMakingDecisionDateFieldSpecified; + } + set + { + this.startMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndMakingDecisionDateSpecified + { + get + { + return this.endMakingDecisionDateFieldSpecified; + } + set + { + this.endMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=3)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class Attachments : AttachmentType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeEVoting + { + + private System.DateTime eVotingDateBeginField; + + private System.DateTime eVotingDateEndField; + + private string disciplineField; + + private string infoReviewField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private bool firstVotingField; + + private bool firstVotingFieldSpecified; + + private Attachments[] attachmentsField; + + public ProtocolExportTypeEVoting() + { + this.firstVotingField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EVotingDateBegin + { + get + { + return this.eVotingDateBeginField; + } + set + { + this.eVotingDateBeginField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EVotingDateEnd + { + get + { + return this.eVotingDateEndField; + } + set + { + this.eVotingDateEndField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Discipline + { + get + { + return this.disciplineField; + } + set + { + this.disciplineField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string InfoReview + { + get + { + return this.infoReviewField; + } + set + { + this.infoReviewField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool FirstVoting + { + get + { + return this.firstVotingField; + } + set + { + this.firstVotingField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FirstVotingSpecified + { + get + { + return this.firstVotingFieldSpecified; + } + set + { + this.firstVotingFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=6)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class VotingSystemDetailsType + { + + private VotingSystemType votingSystemField; + + private string itemField; + + private ItemChoiceType15 itemElementNameField; + + private string votingSystemUrlField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public VotingSystemType VotingSystem + { + get + { + return this.votingSystemField; + } + set + { + this.votingSystemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VotingSystemGuid", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("VotingSystemName", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType15 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string VotingSystemUrl + { + get + { + return this.votingSystemUrlField; + } + set + { + this.votingSystemUrlField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum VotingSystemType + { + + /// + HCS, + + /// + PublicServicesPortal, + + /// + Regional, + + /// + Other, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType15 + { + + /// + VotingSystemGuid, + + /// + VotingSystemName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeMeeting : VoitingType + { + + private System.DateTime meetingDateField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=1)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class VoitingType + { + + private string votingPlaceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeMeetingAVoting + { + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private System.DateTime startMakingDecisionDateField; + + private bool startMakingDecisionDateFieldSpecified; + + private System.DateTime endMakingDecisionDateField; + + private bool endMakingDecisionDateFieldSpecified; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StartMakingDecisionDateSpecified + { + get + { + return this.startMakingDecisionDateFieldSpecified; + } + set + { + this.startMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndMakingDecisionDateSpecified + { + get + { + return this.endMakingDecisionDateFieldSpecified; + } + set + { + this.endMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MeetingTypeType + { + + /// + Owners, + + /// + Homeowners, + + /// + Cooperative, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType9 + { + + /// + AnnualVoting, + + /// + ExtraVoting, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeVoteInitiators + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(VotingInitiatorIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Org", typeof(RegOrgVersionType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgVersionType + { + + private string orgVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgVersionGUID + { + get + { + return this.orgVersionGUIDField; + } + set + { + this.orgVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ProtocolExportTypeMeetingEligibility + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeDecisionList + { + + private string questionNumberField; + + private string questionNameField; + + private nsiRef decisionsTypeField; + + private ProtocolExportTypeDecisionListHomeownersDecisionsType homeownersDecisionsTypeField; + + private bool itemField; + + private ItemChoiceType20 itemElementNameField; + + private decimal agreeField; + + private bool agreeFieldSpecified; + + private decimal againstField; + + private bool againstFieldSpecified; + + private decimal abstentField; + + private bool abstentFieldSpecified; + + private nsiRef formingFundField; + + private nsiRef managementTypeField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + private ProtocolExportTypeDecisionListVotingResume votingResumeField; + + private bool votingResumeFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string QuestionName + { + get + { + return this.questionNameField; + } + set + { + this.questionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef DecisionsType + { + get + { + return this.decisionsTypeField; + } + set + { + this.decisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ProtocolExportTypeDecisionListHomeownersDecisionsType HomeownersDecisionsType + { + get + { + return this.homeownersDecisionsTypeField; + } + set + { + this.homeownersDecisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("CharterNotContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType20 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal Agree + { + get + { + return this.agreeField; + } + set + { + this.agreeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgreeSpecified + { + get + { + return this.agreeFieldSpecified; + } + set + { + this.agreeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal Against + { + get + { + return this.againstField; + } + set + { + this.againstField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgainstSpecified + { + get + { + return this.againstFieldSpecified; + } + set + { + this.againstFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Abstent + { + get + { + return this.abstentField; + } + set + { + this.abstentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AbstentSpecified + { + get + { + return this.abstentFieldSpecified; + } + set + { + this.abstentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public nsiRef FormingFund + { + get + { + return this.formingFundField; + } + set + { + this.formingFundField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public nsiRef ManagementType + { + get + { + return this.managementTypeField; + } + set + { + this.managementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public ProtocolExportTypeDecisionListVotingResume votingResume + { + get + { + return this.votingResumeField; + } + set + { + this.votingResumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool votingResumeSpecified + { + get + { + return this.votingResumeFieldSpecified; + } + set + { + this.votingResumeFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolExportTypeDecisionListHomeownersDecisionsType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType20 + { + + /// + CharterContained, + + /// + CharterNotContained, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AdminOfGeneralMeetingType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenAdministator", typeof(AdminOfGeneralMeetingTypeCitizenAdministator), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LegalEntityAdministrator", typeof(RegOrgRootAndVersionType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AdminOfGeneralMeetingTypeCitizenAdministator + { + + private VotingInitiatorIndType indField; + + private string fIASHouseGuidField; + + private string placeAddressField; + + private string[] phoneField; + + private string[] emailField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public VotingInitiatorIndType Ind + { + get + { + return this.indField; + } + set + { + this.indField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PlaceAddress + { + get + { + return this.placeAddressField; + } + set + { + this.placeAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Phone", Order=3)] + public string[] Phone + { + get + { + return this.phoneField; + } + set + { + this.phoneField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Email", Order=4)] + public string[] Email + { + get + { + return this.emailField; + } + set + { + this.emailField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ProtocolExportTypeDecisionListVotingResume + { + + /// + M, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportVotingProtocolResultType : ProtocolExportType + { + + private exportVotingProtocolResultTypeStatusProtocol statusProtocolField; + + private string votingProtocolGUIDField; + + private string rootProtocolGUIDField; + + private exportVotingProtocolResultTypeStatusVersionProtocol statusVersionProtocolField; + + private int versionNumberField; + + private System.DateTime versionDateModificationField; + + private bool versionDateModificationFieldSpecified; + + private System.DateTime versionDatePlacementField; + + private bool versionDatePlacementFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportVotingProtocolResultTypeStatusProtocol StatusProtocol + { + get + { + return this.statusProtocolField; + } + set + { + this.statusProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string VotingProtocolGUID + { + get + { + return this.votingProtocolGUIDField; + } + set + { + this.votingProtocolGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string RootProtocolGUID + { + get + { + return this.rootProtocolGUIDField; + } + set + { + this.rootProtocolGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public exportVotingProtocolResultTypeStatusVersionProtocol StatusVersionProtocol + { + get + { + return this.statusVersionProtocolField; + } + set + { + this.statusVersionProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public int VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime VersionDateModification + { + get + { + return this.versionDateModificationField; + } + set + { + this.versionDateModificationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VersionDateModificationSpecified + { + get + { + return this.versionDateModificationFieldSpecified; + } + set + { + this.versionDateModificationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=6)] + public System.DateTime VersionDatePlacement + { + get + { + return this.versionDatePlacementField; + } + set + { + this.versionDatePlacementField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VersionDatePlacementSpecified + { + get + { + return this.versionDatePlacementFieldSpecified; + } + set + { + this.versionDatePlacementFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportVotingProtocolResultTypeStatusProtocol + { + + /// + Created, + + /// + Posted, + + /// + Edited, + + /// + Annuled, + + /// + PostedFromAnotherSystem, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportVotingProtocolResultTypeStatusVersionProtocol + { + + /// + Created, + + /// + Posted, + + /// + Edited, + + /// + Annuled, + + /// + PostedFromAnotherSystem, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExternalVotingProtocolType + { + + private string protocolNumField; + + private System.DateTime protocolDateField; + + private ExternalVotingProtocolTypeMeetingEligibility meetingEligibilityField; + + private ExternalVotingProtocolTypeDecisionList[] decisionListField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ProtocolNum + { + get + { + return this.protocolNumField; + } + set + { + this.protocolNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime ProtocolDate + { + get + { + return this.protocolDateField; + } + set + { + this.protocolDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ExternalVotingProtocolTypeMeetingEligibility MeetingEligibility + { + get + { + return this.meetingEligibilityField; + } + set + { + this.meetingEligibilityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionList", Order=3)] + public ExternalVotingProtocolTypeDecisionList[] DecisionList + { + get + { + return this.decisionListField; + } + set + { + this.decisionListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=4)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExternalVotingProtocolTypeMeetingEligibility + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExternalVotingProtocolTypeDecisionList + { + + private string questionNumberField; + + private decimal agreeField; + + private bool agreeFieldSpecified; + + private decimal againstField; + + private bool againstFieldSpecified; + + private decimal abstentField; + + private bool abstentFieldSpecified; + + private ExternalVotingProtocolTypeDecisionListVotingResume votingResumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Agree + { + get + { + return this.agreeField; + } + set + { + this.agreeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgreeSpecified + { + get + { + return this.agreeFieldSpecified; + } + set + { + this.agreeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Against + { + get + { + return this.againstField; + } + set + { + this.againstField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgainstSpecified + { + get + { + return this.againstFieldSpecified; + } + set + { + this.againstFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Abstent + { + get + { + return this.abstentField; + } + set + { + this.abstentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AbstentSpecified + { + get + { + return this.abstentFieldSpecified; + } + set + { + this.abstentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ExternalVotingProtocolTypeDecisionListVotingResume VotingResume + { + get + { + return this.votingResumeField; + } + set + { + this.votingResumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExternalVotingProtocolTypeDecisionListVotingResume + { + + /// + M, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AnnulmentProtocolType + { + + private string modificationField; + + private object itemField; + + private System.DateTime annulmentDateField; + + private bool annulmentDateFieldSpecified; + + private string annulmentNumberField; + + private nsiRef nSIModificationField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Modification + { + get + { + return this.modificationField; + } + set + { + this.modificationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentOrganization", typeof(RegOrgType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("AnnulmentOrganizationText", typeof(string), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime AnnulmentDate + { + get + { + return this.annulmentDateField; + } + set + { + this.annulmentDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AnnulmentDateSpecified + { + get + { + return this.annulmentDateFieldSpecified; + } + set + { + this.annulmentDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentNumber + { + get + { + return this.annulmentNumberField; + } + set + { + this.annulmentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef NSIModification + { + get + { + return this.nSIModificationField; + } + set + { + this.nSIModificationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportVotingMessageResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportType + { + + private string[] fIASHouseGUIDField; + + private RegOrgType organizationGuidField; + + private string messageNumField; + + private System.DateTime messageDateField; + + private bool itemField; + + private ItemChoiceType18 itemElementNameField; + + private object item1Field; + + private MeetingTypeType meetingTypeField; + + private VoteInitiators[] voteInitiatorsField; + + private MessageExportTypeDecisionList[] decisionListField; + + private string modificationReasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGUID", Order=0)] + public string[] FIASHouseGUID + { + get + { + return this.fIASHouseGUIDField; + } + set + { + this.fIASHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public RegOrgType OrganizationGuid + { + get + { + return this.organizationGuidField; + } + set + { + this.organizationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MessageNum + { + get + { + return this.messageNumField; + } + set + { + this.messageNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime MessageDate + { + get + { + return this.messageDateField; + } + set + { + this.messageDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnualVoting", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("ExtraVoting", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType18 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AVoting", typeof(MessageExportTypeAVoting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("EVoting", typeof(MessageExportTypeEVoting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Meeting", typeof(MessageExportTypeMeeting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("MeetingAVoting", typeof(MessageExportTypeMeetingAVoting), Order=6)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public MeetingTypeType MeetingType + { + get + { + return this.meetingTypeField; + } + set + { + this.meetingTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VoteInitiators", Order=8)] + public VoteInitiators[] VoteInitiators + { + get + { + return this.voteInitiatorsField; + } + set + { + this.voteInitiatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionList", Order=9)] + public MessageExportTypeDecisionList[] DecisionList + { + get + { + return this.decisionListField; + } + set + { + this.decisionListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string ModificationReason + { + get + { + return this.modificationReasonField; + } + set + { + this.modificationReasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType18 + { + + /// + AnnualVoting, + + /// + ExtraVoting, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private System.DateTime endMakingDecisionDateField; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=3)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeEVoting + { + + private System.DateTime eVotingDateBeginField; + + private System.DateTime eVotingDateEndField; + + private string disciplineField; + + private string infoReviewField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private bool firstVotingField; + + private bool firstVotingFieldSpecified; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + private string adminAddressField; + + private Attachments[] attachmentsField; + + public MessageExportTypeEVoting() + { + this.firstVotingField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EVotingDateBegin + { + get + { + return this.eVotingDateBeginField; + } + set + { + this.eVotingDateBeginField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EVotingDateEnd + { + get + { + return this.eVotingDateEndField; + } + set + { + this.eVotingDateEndField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Discipline + { + get + { + return this.disciplineField; + } + set + { + this.disciplineField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string InfoReview + { + get + { + return this.infoReviewField; + } + set + { + this.infoReviewField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool FirstVoting + { + get + { + return this.firstVotingField; + } + set + { + this.firstVotingField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FirstVotingSpecified + { + get + { + return this.firstVotingFieldSpecified; + } + set + { + this.firstVotingFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string AdminAddress + { + get + { + return this.adminAddressField; + } + set + { + this.adminAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=8)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeMeeting + { + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=2)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeMeetingAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private System.DateTime endMakingDecisionDateField; + + private string resolutionPlaceField; + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class VoteInitiators + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(VotingInitiatorIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Org", typeof(RegOrgRootAndVersionType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeDecisionList + { + + private string questionNumberField; + + private string questionNameField; + + private nsiRef decisionsTypeField; + + private MessageExportTypeDecisionListHomeownersDecisionsType homeownersDecisionsTypeField; + + private bool itemField; + + private ItemChoiceType19 itemElementNameField; + + private nsiRef formingFundField; + + private nsiRef managementTypeField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string QuestionName + { + get + { + return this.questionNameField; + } + set + { + this.questionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef DecisionsType + { + get + { + return this.decisionsTypeField; + } + set + { + this.decisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public MessageExportTypeDecisionListHomeownersDecisionsType HomeownersDecisionsType + { + get + { + return this.homeownersDecisionsTypeField; + } + set + { + this.homeownersDecisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("CharterNotContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType19 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public nsiRef FormingFund + { + get + { + return this.formingFundField; + } + set + { + this.formingFundField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef ManagementType + { + get + { + return this.managementTypeField; + } + set + { + this.managementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageExportTypeDecisionListHomeownersDecisionsType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType19 + { + + /// + CharterContained, + + /// + CharterNotContained, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportVotingMessageResultType : MessageExportType + { + + private string messageGUIDField; + + private MessageStatusType messageStatusField; + + private System.DateTime publishDateField; + + private System.DateTime modificationDateField; + + private bool modificationDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public MessageStatusType MessageStatus + { + get + { + return this.messageStatusField; + } + set + { + this.messageStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime PublishDate + { + get + { + return this.publishDateField; + } + set + { + this.publishDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ModificationDateSpecified + { + get + { + return this.modificationDateFieldSpecified; + } + set + { + this.modificationDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MessageStatusType + { + + /// + Posted, + + /// + Goes, + + /// + Finished, + + /// + MeetingCancelled, + + /// + Cancelled, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageType + { + + private string fIASHouseGUIDField; + + private RegOrgType organizationGuidField; + + private string messageNumField; + + private System.DateTime messageDateField; + + private bool messageDateFieldSpecified; + + private bool itemField; + + private ItemChoiceType16 itemElementNameField; + + private object item1Field; + + private MeetingTypeType meetingTypeField; + + private VoteInitiators[] voteInitiatorsField; + + private MessageTypeDecisionList[] decisionListField; + + private string modificationReasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGUID + { + get + { + return this.fIASHouseGUIDField; + } + set + { + this.fIASHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public RegOrgType OrganizationGuid + { + get + { + return this.organizationGuidField; + } + set + { + this.organizationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string MessageNum + { + get + { + return this.messageNumField; + } + set + { + this.messageNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime MessageDate + { + get + { + return this.messageDateField; + } + set + { + this.messageDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MessageDateSpecified + { + get + { + return this.messageDateFieldSpecified; + } + set + { + this.messageDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnualVoting", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("ExtraVoting", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType16 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AVoting", typeof(MessageTypeAVoting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("EVoting", typeof(MessageTypeEVoting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Meeting", typeof(MessageTypeMeeting), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("MeetingAVoting", typeof(MessageTypeMeetingAVoting), Order=6)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public MeetingTypeType MeetingType + { + get + { + return this.meetingTypeField; + } + set + { + this.meetingTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VoteInitiators", Order=8)] + public VoteInitiators[] VoteInitiators + { + get + { + return this.voteInitiatorsField; + } + set + { + this.voteInitiatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionList", Order=9)] + public MessageTypeDecisionList[] DecisionList + { + get + { + return this.decisionListField; + } + set + { + this.decisionListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string ModificationReason + { + get + { + return this.modificationReasonField; + } + set + { + this.modificationReasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType16 + { + + /// + AnnualVoting, + + /// + ExtraVoting, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private System.DateTime endMakingDecisionDateField; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=3)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeEVoting + { + + private System.DateTime eVotingDateBeginField; + + private System.DateTime eVotingDateEndField; + + private string disciplineField; + + private string infoReviewField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private bool firstVotingField; + + private bool firstVotingFieldSpecified; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + private string adminAddressField; + + private Attachments[] attachmentsField; + + public MessageTypeEVoting() + { + this.firstVotingField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EVotingDateBegin + { + get + { + return this.eVotingDateBeginField; + } + set + { + this.eVotingDateBeginField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EVotingDateEnd + { + get + { + return this.eVotingDateEndField; + } + set + { + this.eVotingDateEndField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Discipline + { + get + { + return this.disciplineField; + } + set + { + this.disciplineField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string InfoReview + { + get + { + return this.infoReviewField; + } + set + { + this.infoReviewField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool FirstVoting + { + get + { + return this.firstVotingField; + } + set + { + this.firstVotingField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FirstVotingSpecified + { + get + { + return this.firstVotingFieldSpecified; + } + set + { + this.firstVotingFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string AdminAddress + { + get + { + return this.adminAddressField; + } + set + { + this.adminAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=8)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeMeeting + { + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=2)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeMeetingAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private System.DateTime endMakingDecisionDateField; + + private string resolutionPlaceField; + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeDecisionList + { + + private string questionNumberField; + + private string questionNameField; + + private nsiRef decisionsTypeField; + + private MessageTypeDecisionListHomeownersDecisionsType homeownersDecisionsTypeField; + + private bool itemField; + + private ItemChoiceType17 itemElementNameField; + + private nsiRef formingFundField; + + private nsiRef managementTypeField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string QuestionName + { + get + { + return this.questionNameField; + } + set + { + this.questionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef DecisionsType + { + get + { + return this.decisionsTypeField; + } + set + { + this.decisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public MessageTypeDecisionListHomeownersDecisionsType HomeownersDecisionsType + { + get + { + return this.homeownersDecisionsTypeField; + } + set + { + this.homeownersDecisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("CharterNotContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType17 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public nsiRef FormingFund + { + get + { + return this.formingFundField; + } + set + { + this.formingFundField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef ManagementType + { + get + { + return this.managementTypeField; + } + set + { + this.managementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MessageTypeDecisionListHomeownersDecisionsType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType17 + { + + /// + CharterContained, + + /// + CharterNotContained, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolType + { + + private string fIASHouseGuidField; + + private RegOrgType organizationGuidField; + + private string protocolNumField; + + private System.DateTime protocolDateField; + + private object itemField; + + private MeetingTypeType meetingTypeField; + + private bool meetingTypeFieldSpecified; + + private bool item1Field; + + private Item1ChoiceType8 item1ElementNameField; + + private VoteInitiators[] voteInitiatorsField; + + private ProtocolTypeMeetingEligibility meetingEligibilityField; + + private ProtocolTypeDecisionList[] decisionListField; + + private string modificationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public RegOrgType OrganizationGuid + { + get + { + return this.organizationGuidField; + } + set + { + this.organizationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ProtocolNum + { + get + { + return this.protocolNumField; + } + set + { + this.protocolNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime ProtocolDate + { + get + { + return this.protocolDateField; + } + set + { + this.protocolDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AVoting", typeof(ProtocolTypeAVoting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("EVoting", typeof(ProtocolTypeEVoting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("Meeting", typeof(ProtocolTypeMeeting), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("MeetingAVoting", typeof(ProtocolTypeMeetingAVoting), Order=4)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public MeetingTypeType MeetingType + { + get + { + return this.meetingTypeField; + } + set + { + this.meetingTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeetingTypeSpecified + { + get + { + return this.meetingTypeFieldSpecified; + } + set + { + this.meetingTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnualVoting", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ExtraVoting", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType8 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VoteInitiators", Order=8)] + public VoteInitiators[] VoteInitiators + { + get + { + return this.voteInitiatorsField; + } + set + { + this.voteInitiatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public ProtocolTypeMeetingEligibility MeetingEligibility + { + get + { + return this.meetingEligibilityField; + } + set + { + this.meetingEligibilityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DecisionList", Order=10)] + public ProtocolTypeDecisionList[] DecisionList + { + get + { + return this.decisionListField; + } + set + { + this.decisionListField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string Modification + { + get + { + return this.modificationField; + } + set + { + this.modificationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeAVoting + { + + private System.DateTime startMakingDecisionDateField; + + private bool startMakingDecisionDateFieldSpecified; + + private System.DateTime endMakingDecisionDateField; + + private bool endMakingDecisionDateFieldSpecified; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StartMakingDecisionDateSpecified + { + get + { + return this.startMakingDecisionDateFieldSpecified; + } + set + { + this.startMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndMakingDecisionDateSpecified + { + get + { + return this.endMakingDecisionDateFieldSpecified; + } + set + { + this.endMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=3)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeEVoting + { + + private System.DateTime eVotingDateBeginField; + + private System.DateTime eVotingDateEndField; + + private string disciplineField; + + private string infoReviewField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime EVotingDateBegin + { + get + { + return this.eVotingDateBeginField; + } + set + { + this.eVotingDateBeginField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime EVotingDateEnd + { + get + { + return this.eVotingDateEndField; + } + set + { + this.eVotingDateEndField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Discipline + { + get + { + return this.disciplineField; + } + set + { + this.disciplineField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string InfoReview + { + get + { + return this.infoReviewField; + } + set + { + this.infoReviewField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=4)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeMeeting : VoitingType + { + + private System.DateTime meetingDateField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=1)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeMeetingAVoting + { + + private System.DateTime meetingDateField; + + private string votingPlaceField; + + private System.DateTime startMakingDecisionDateField; + + private bool startMakingDecisionDateFieldSpecified; + + private System.DateTime endMakingDecisionDateField; + + private bool endMakingDecisionDateFieldSpecified; + + private string resolutionPlaceField; + + private Attachments[] attachmentsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime MeetingDate + { + get + { + return this.meetingDateField; + } + set + { + this.meetingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string VotingPlace + { + get + { + return this.votingPlaceField; + } + set + { + this.votingPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime StartMakingDecisionDate + { + get + { + return this.startMakingDecisionDateField; + } + set + { + this.startMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StartMakingDecisionDateSpecified + { + get + { + return this.startMakingDecisionDateFieldSpecified; + } + set + { + this.startMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime EndMakingDecisionDate + { + get + { + return this.endMakingDecisionDateField; + } + set + { + this.endMakingDecisionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndMakingDecisionDateSpecified + { + get + { + return this.endMakingDecisionDateFieldSpecified; + } + set + { + this.endMakingDecisionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string ResolutionPlace + { + get + { + return this.resolutionPlaceField; + } + set + { + this.resolutionPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public Attachments[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType8 + { + + /// + AnnualVoting, + + /// + ExtraVoting, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ProtocolTypeMeetingEligibility + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeDecisionList + { + + private string questionNumberField; + + private string questionNameField; + + private nsiRef decisionsTypeField; + + private ProtocolTypeDecisionListHomeownersDecisionsType homeownersDecisionsTypeField; + + private bool itemField; + + private ItemChoiceType14 itemElementNameField; + + private decimal agreeField; + + private bool agreeFieldSpecified; + + private decimal againstField; + + private bool againstFieldSpecified; + + private decimal abstentField; + + private bool abstentFieldSpecified; + + private nsiRef formingFundField; + + private nsiRef managementTypeField; + + private VotingSystemDetailsType votingSystemDetailsField; + + private AdminOfGeneralMeetingType adminOfGeneralMeetingField; + + private ProtocolTypeDecisionListVotingResume votingResumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=0)] + public string QuestionNumber + { + get + { + return this.questionNumberField; + } + set + { + this.questionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string QuestionName + { + get + { + return this.questionNameField; + } + set + { + this.questionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef DecisionsType + { + get + { + return this.decisionsTypeField; + } + set + { + this.decisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public ProtocolTypeDecisionListHomeownersDecisionsType HomeownersDecisionsType + { + get + { + return this.homeownersDecisionsTypeField; + } + set + { + this.homeownersDecisionsTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("CharterNotContained", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType14 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal Agree + { + get + { + return this.agreeField; + } + set + { + this.agreeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgreeSpecified + { + get + { + return this.agreeFieldSpecified; + } + set + { + this.agreeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public decimal Against + { + get + { + return this.againstField; + } + set + { + this.againstField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgainstSpecified + { + get + { + return this.againstFieldSpecified; + } + set + { + this.againstFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Abstent + { + get + { + return this.abstentField; + } + set + { + this.abstentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AbstentSpecified + { + get + { + return this.abstentFieldSpecified; + } + set + { + this.abstentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public nsiRef FormingFund + { + get + { + return this.formingFundField; + } + set + { + this.formingFundField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public nsiRef ManagementType + { + get + { + return this.managementTypeField; + } + set + { + this.managementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public VotingSystemDetailsType VotingSystemDetails + { + get + { + return this.votingSystemDetailsField; + } + set + { + this.votingSystemDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public AdminOfGeneralMeetingType AdminOfGeneralMeeting + { + get + { + return this.adminOfGeneralMeetingField; + } + set + { + this.adminOfGeneralMeetingField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public ProtocolTypeDecisionListVotingResume votingResume + { + get + { + return this.votingResumeField; + } + set + { + this.votingResumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolTypeDecisionListHomeownersDecisionsType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType14 + { + + /// + CharterContained, + + /// + CharterNotContained, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ProtocolTypeDecisionListVotingResume + { + + /// + M, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractType + { + + private string docNumField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + private System.DateTime planDateComptetionField; + + private ContractTypeValidity validityField; + + private object itemField; + + private ItemChoiceType13 itemElementNameField; + + private ContractTypeProtocol protocolField; + + private nsiRef contractBaseField; + + private DateDetailsType dateDetailsField; + + private AttachmentType[] contractAttachmentField; + + private ContractTypeAgreementAttachment[] agreementAttachmentField; + + private AttachmentType[] signedOwnersField; + + private AttachmentType[] commissioningPermitAgreementField; + + private AttachmentType[] charterField; + + private AttachmentType[] localGovernmentDecisionField; + + private string registryDecisionIDField; + + private bool automaticRollOverOneYearField; + + private bool automaticRollOverOneYearFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string DocNum + { + get + { + return this.docNumField; + } + set + { + this.docNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime PlanDateComptetion + { + get + { + return this.planDateComptetionField; + } + set + { + this.planDateComptetionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ContractTypeValidity Validity + { + get + { + return this.validityField; + } + set + { + this.validityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("BuildingOwner", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("CompetentAuthority", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("Cooperative", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalHousing", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("Owners", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType13 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ContractTypeProtocol Protocol + { + get + { + return this.protocolField; + } + set + { + this.protocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public nsiRef ContractBase + { + get + { + return this.contractBaseField; + } + set + { + this.contractBaseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public DateDetailsType DateDetails + { + get + { + return this.dateDetailsField; + } + set + { + this.dateDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=10)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AgreementAttachment", Order=11)] + public ContractTypeAgreementAttachment[] AgreementAttachment + { + get + { + return this.agreementAttachmentField; + } + set + { + this.agreementAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SignedOwners", Order=12)] + public AttachmentType[] SignedOwners + { + get + { + return this.signedOwnersField; + } + set + { + this.signedOwnersField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CommissioningPermitAgreement", Order=13)] + public AttachmentType[] CommissioningPermitAgreement + { + get + { + return this.commissioningPermitAgreementField; + } + set + { + this.commissioningPermitAgreementField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Charter", Order=14)] + public AttachmentType[] Charter + { + get + { + return this.charterField; + } + set + { + this.charterField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LocalGovernmentDecision", Order=15)] + public AttachmentType[] LocalGovernmentDecision + { + get + { + return this.localGovernmentDecisionField; + } + set + { + this.localGovernmentDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public string RegistryDecisionID + { + get + { + return this.registryDecisionIDField; + } + set + { + this.registryDecisionIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public bool AutomaticRollOverOneYear + { + get + { + return this.automaticRollOverOneYearField; + } + set + { + this.automaticRollOverOneYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AutomaticRollOverOneYearSpecified + { + get + { + return this.automaticRollOverOneYearFieldSpecified; + } + set + { + this.automaticRollOverOneYearFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractTypeValidity + { + + private string monthField; + + private string yearField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType13 + { + + /// + BuildingOwner, + + /// + CompetentAuthority, + + /// + Cooperative, + + /// + MunicipalHousing, + + /// + Owners, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractTypeProtocol + { + + private ContractTypeProtocolProtocolAdd protocolAddField; + + private string[] votingProtocolGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ContractTypeProtocolProtocolAdd ProtocolAdd + { + get + { + return this.protocolAddField; + } + set + { + this.protocolAddField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", Order=1)] + public string[] VotingProtocolGUID + { + get + { + return this.votingProtocolGUIDField; + } + set + { + this.votingProtocolGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractTypeProtocolProtocolAdd + { + + private object[] itemsField; + + private ItemsChoiceType20[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolBuildingOwner", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingBoard", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolOK", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PurchaseNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType20[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType20 + { + + /// + ProtocolBuildingOwner, + + /// + ProtocolMeetingBoard, + + /// + ProtocolMeetingOwners, + + /// + ProtocolOK, + + /// + PurchaseNumber, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsType + { + + private DateDetailsTypePeriodMetering periodMeteringField; + + private DateDetailsTypePaymentDocumentInterval paymentDocumentIntervalField; + + private DateDetailsTypePaymentInterval paymentIntervalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DateDetailsTypePeriodMetering PeriodMetering + { + get + { + return this.periodMeteringField; + } + set + { + this.periodMeteringField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DateDetailsTypePaymentDocumentInterval PaymentDocumentInterval + { + get + { + return this.paymentDocumentIntervalField; + } + set + { + this.paymentDocumentIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public DateDetailsTypePaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsTypePeriodMetering + { + + private DeviceMeteringsDaySelectionType startDateField; + + private DeviceMeteringsDaySelectionType endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DeviceMeteringsDaySelectionType StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DeviceMeteringsDaySelectionType EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DeviceMeteringsDaySelectionType : DaySelectionType + { + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(DeviceMeteringsDaySelectionType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DaySelectionType + { + + private object itemField; + + private bool isNextMonthField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Date", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsNextMonth + { + get + { + return this.isNextMonthField; + } + set + { + this.isNextMonthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsTypePaymentDocumentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType4 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType4 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType4 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsTypePaymentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType5 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType5 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType5 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractTypeAgreementAttachment : AttachmentType + { + + private ImprintAgreementType imprintAgreementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ImprintAgreementType ImprintAgreement + { + get + { + return this.imprintAgreementField; + } + set + { + this.imprintAgreementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ImprintAgreementType + { + + private string agreementNumberField; + + private System.DateTime agreementDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AgreementNumber + { + get + { + return this.agreementNumberField; + } + set + { + this.agreementNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime AgreementDate + { + get + { + return this.agreementDateField; + } + set + { + this.agreementDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterType + { + + private System.DateTime dateField; + + private CharterDateDetailsType dateDetailsField; + + private CharterTypeMeetingProtocol meetingProtocolField; + + private bool noCharterApproveProtocolField; + + private bool noCharterApproveProtocolFieldSpecified; + + private AttachmentType[] attachmentCharterField; + + private bool automaticRollOverOneYearField; + + private bool automaticRollOverOneYearFieldSpecified; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + public CharterType() + { + this.noCharterApproveProtocolField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public CharterDateDetailsType DateDetails + { + get + { + return this.dateDetailsField; + } + set + { + this.dateDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public CharterTypeMeetingProtocol MeetingProtocol + { + get + { + return this.meetingProtocolField; + } + set + { + this.meetingProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool NoCharterApproveProtocol + { + get + { + return this.noCharterApproveProtocolField; + } + set + { + this.noCharterApproveProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoCharterApproveProtocolSpecified + { + get + { + return this.noCharterApproveProtocolFieldSpecified; + } + set + { + this.noCharterApproveProtocolFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AttachmentCharter", Order=4)] + public AttachmentType[] AttachmentCharter + { + get + { + return this.attachmentCharterField; + } + set + { + this.attachmentCharterField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool AutomaticRollOverOneYear + { + get + { + return this.automaticRollOverOneYearField; + } + set + { + this.automaticRollOverOneYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AutomaticRollOverOneYearSpecified + { + get + { + return this.automaticRollOverOneYearFieldSpecified; + } + set + { + this.automaticRollOverOneYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsType + { + + private CharterDateDetailsTypePeriodMetering periodMeteringField; + + private CharterDateDetailsTypePaymentDocumentInterval paymentDocumentIntervalField; + + private CharterDateDetailsTypePaymentInterval paymentIntervalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CharterDateDetailsTypePeriodMetering PeriodMetering + { + get + { + return this.periodMeteringField; + } + set + { + this.periodMeteringField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public CharterDateDetailsTypePaymentDocumentInterval PaymentDocumentInterval + { + get + { + return this.paymentDocumentIntervalField; + } + set + { + this.paymentDocumentIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public CharterDateDetailsTypePaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsTypePeriodMetering + { + + private DeviceMeteringsDaySelectionType startDateField; + + private DeviceMeteringsDaySelectionType endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DeviceMeteringsDaySelectionType StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DeviceMeteringsDaySelectionType EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsTypePaymentDocumentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType6 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType6 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType6 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsTypePaymentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType7 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType7 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType7 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterTypeMeetingProtocol + { + + private AttachmentType[] protocolMeetingOwnersField; + + private string[] votingProtocolGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", Order=0)] + public AttachmentType[] ProtocolMeetingOwners + { + get + { + return this.protocolMeetingOwnersField; + } + set + { + this.protocolMeetingOwnersField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", Order=1)] + public string[] VotingProtocolGUID + { + get + { + return this.votingProtocolGUIDField; + } + set + { + this.votingProtocolGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BaseServiceCharterType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentCharter", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", typeof(AttachmentType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApprovalType + { + + private bool approvalField; + + public ApprovalType() + { + this.approvalField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Approval + { + get + { + return this.approvalField; + } + set + { + this.approvalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DeleteDocType + { + + private bool deleteField; + + public DeleteDocType() + { + this.deleteField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Delete + { + get + { + return this.deleteField; + } + set + { + this.deleteField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RollOverType + { + + private bool rollOverField; + + public RollOverType() + { + this.rollOverField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool RollOver + { + get + { + return this.rollOverField; + } + set + { + this.rollOverField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ProtocolOKType + { + + private string[] protocolGUIDField; + + private AttachmentType[] attachmentProtocolField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolGUID", Order=0)] + public string[] ProtocolGUID + { + get + { + return this.protocolGUIDField; + } + set + { + this.protocolGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AttachmentProtocol", Order=1)] + public AttachmentType[] AttachmentProtocol + { + get + { + return this.attachmentProtocolField; + } + set + { + this.attachmentProtocolField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MainInfoType + { + + private string docNumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string DocNum + { + get + { + return this.docNumField; + } + set + { + this.docNumField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportAccountIndividualServicesResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountIndividualServiceType + { + + private System.DateTime beginDateField; + + private System.DateTime endDateField; + + private nsiRef additionalServiceField; + + private AttachmentType attachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime BeginDate + { + get + { + return this.beginDateField; + } + set + { + this.beginDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AdditionalService + { + get + { + return this.additionalServiceField; + } + set + { + this.additionalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public AttachmentType Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountIndividualServicesResultType : AccountIndividualServiceType + { + + private string accountIndividualServiceGUIDField; + + private string accountGUIDField; + + private bool isActualField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccountIndividualServiceGUID + { + get + { + return this.accountIndividualServiceGUIDField; + } + set + { + this.accountIndividualServiceGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountUpdateType + { + + private sbyte livingPersonsNumberField; + + private object itemField; + + private ItemChoiceType12 itemElementNameField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private decimal residentialSquareField; + + private bool residentialSquareFieldSpecified; + + private decimal nonResidentialSquareField; + + private bool nonResidentialSquareFieldSpecified; + + private ClosedAccountAttributesType closedField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte LivingPersonsNumber + { + get + { + return this.livingPersonsNumberField; + } + set + { + this.livingPersonsNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerInd", typeof(IndType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("OwnerOrg", typeof(RegOrgType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("RenterInd", typeof(IndType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("RenterOrg", typeof(RegOrgType), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType12 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal ResidentialSquare + { + get + { + return this.residentialSquareField; + } + set + { + this.residentialSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ResidentialSquareSpecified + { + get + { + return this.residentialSquareFieldSpecified; + } + set + { + this.residentialSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal NonResidentialSquare + { + get + { + return this.nonResidentialSquareField; + } + set + { + this.nonResidentialSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NonResidentialSquareSpecified + { + get + { + return this.nonResidentialSquareFieldSpecified; + } + set + { + this.nonResidentialSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public ClosedAccountAttributesType Closed + { + get + { + return this.closedField; + } + set + { + this.closedField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType12 + { + + /// + OwnerInd, + + /// + OwnerOrg, + + /// + RenterInd, + + /// + RenterOrg, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ClosedAccountAttributesType + { + + private nsiRef closeReasonField; + + private System.DateTime closeDateField; + + private string descriptionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef CloseReason + { + get + { + return this.closeReasonField; + } + set + { + this.closeReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime CloseDate + { + get + { + return this.closeDateField; + } + set + { + this.closeDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountReasonsImportType + { + + private AccountReasonsImportTypeSupplyResourceContract[] supplyResourceContractField; + + private AccountReasonsImportTypeSocialHireContract socialHireContractField; + + private AccountReasonsImportTypeTKOContract[] tKOContractField; + + /// + [System.Xml.Serialization.XmlElementAttribute("SupplyResourceContract", Order=0)] + public AccountReasonsImportTypeSupplyResourceContract[] SupplyResourceContract + { + get + { + return this.supplyResourceContractField; + } + set + { + this.supplyResourceContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public AccountReasonsImportTypeSocialHireContract SocialHireContract + { + get + { + return this.socialHireContractField; + } + set + { + this.socialHireContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TKOContract", Order=2)] + public AccountReasonsImportTypeTKOContract[] TKOContract + { + get + { + return this.tKOContractField; + } + set + { + this.tKOContractField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountReasonsImportTypeSupplyResourceContract + { + + private object[] itemsField; + + private ItemsChoiceType17[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IsContract", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType17[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType17 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + IsContract, + + /// + SigningDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountReasonsImportTypeSocialHireContract + { + + private object[] itemsField; + + private ItemsChoiceType18[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Type", typeof(AccountReasonsImportTypeSocialHireContractType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType18[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum AccountReasonsImportTypeSocialHireContractType + { + + /// + D, + + /// + M, + + /// + S, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType18 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + SigningDate, + + /// + Type, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountReasonsImportTypeTKOContract + { + + private object[] itemsField; + + private ItemsChoiceType19[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DateEntry", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType19[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType19 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + DateEntry, + + /// + SigningDate, + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(AccountIndExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class FIOExportType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountIndExportType : FIOExportType + { + + private AccountIndExportTypeSex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AccountIndExportTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(AccountIndExportTypeID), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum AccountIndExportTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountIndExportTypeID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + private System.DateTime issueDateField; + + private bool issueDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime IssueDate + { + get + { + return this.issueDateField; + } + set + { + this.issueDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IssueDateSpecified + { + get + { + return this.issueDateFieldSpecified; + } + set + { + this.issueDateFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportAccountResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountExportType + { + + private bool itemField; + + private ItemChoiceType10 itemElementNameField; + + private System.DateTime creationDateField; + + private bool creationDateFieldSpecified; + + private string livingPersonsNumberField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private decimal residentialSquareField; + + private bool residentialSquareFieldSpecified; + + private decimal heatedAreaField; + + private bool heatedAreaFieldSpecified; + + private ClosedAccountAttributesType closedField; + + private AccountExportTypeAccommodation[] accommodationField; + + private AccountExportTypePayerInfo payerInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("isCRAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isOGVorOMSAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isRCAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isRSOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isTKOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isUOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType10 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime CreationDate + { + get + { + return this.creationDateField; + } + set + { + this.creationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationDateSpecified + { + get + { + return this.creationDateFieldSpecified; + } + set + { + this.creationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=3)] + public string LivingPersonsNumber + { + get + { + return this.livingPersonsNumberField; + } + set + { + this.livingPersonsNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal ResidentialSquare + { + get + { + return this.residentialSquareField; + } + set + { + this.residentialSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ResidentialSquareSpecified + { + get + { + return this.residentialSquareFieldSpecified; + } + set + { + this.residentialSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal HeatedArea + { + get + { + return this.heatedAreaField; + } + set + { + this.heatedAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HeatedAreaSpecified + { + get + { + return this.heatedAreaFieldSpecified; + } + set + { + this.heatedAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ClosedAccountAttributesType Closed + { + get + { + return this.closedField; + } + set + { + this.closedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Accommodation", Order=8)] + public AccountExportTypeAccommodation[] Accommodation + { + get + { + return this.accommodationField; + } + set + { + this.accommodationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public AccountExportTypePayerInfo PayerInfo + { + get + { + return this.payerInfoField; + } + set + { + this.payerInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType10 + { + + /// + isCRAccount, + + /// + isOGVorOMSAccount, + + /// + isRCAccount, + + /// + isRSOAccount, + + /// + isTKOAccount, + + /// + isUOAccount, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountExportTypeAccommodation + { + + private string itemField; + + private ItemChoiceType11 itemElementNameField; + + private decimal sharePercentField; + + private bool sharePercentFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PremisesGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType11 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal SharePercent + { + get + { + return this.sharePercentField; + } + set + { + this.sharePercentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SharePercentSpecified + { + get + { + return this.sharePercentFieldSpecified; + } + set + { + this.sharePercentFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType11 + { + + /// + FIASHouseGuid, + + /// + LivingRoomGUID, + + /// + PremisesGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountExportTypePayerInfo + { + + private bool isRenterField; + + private bool isRenterFieldSpecified; + + private bool isAccountsDividedField; + + private bool isAccountsDividedFieldSpecified; + + private object itemField; + + public AccountExportTypePayerInfo() + { + this.isRenterField = true; + this.isAccountsDividedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsRenter + { + get + { + return this.isRenterField; + } + set + { + this.isRenterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRenterSpecified + { + get + { + return this.isRenterFieldSpecified; + } + set + { + this.isRenterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool isAccountsDivided + { + get + { + return this.isAccountsDividedField; + } + set + { + this.isAccountsDividedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isAccountsDividedSpecified + { + get + { + return this.isAccountsDividedFieldSpecified; + } + set + { + this.isAccountsDividedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(AccountIndExportType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Org", typeof(RegOrgVersionType), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultType : AccountExportType + { + + private exportAccountResultTypeAccountReasons accountReasonsField; + + private string accountNumberField; + + private string accountGUIDField; + + private string unifiedAccountNumberField; + + private string serviceIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportAccountResultTypeAccountReasons AccountReasons + { + get + { + return this.accountReasonsField; + } + set + { + this.accountReasonsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=3)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=4)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultTypeAccountReasons : AccountReasonsImportType + { + + private exportAccountResultTypeAccountReasonsContract contractField; + + private exportAccountResultTypeAccountReasonsCharter charterField; + + private exportAccountResultTypeAccountReasonsOverhaulFormingKindProtocol overhaulFormingKindProtocolField; + + private exportAccountResultTypeAccountReasonsOverhaulFormingKindOMSDescision overhaulFormingKindOMSDescisionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportAccountResultTypeAccountReasonsContract Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportAccountResultTypeAccountReasonsCharter Charter + { + get + { + return this.charterField; + } + set + { + this.charterField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportAccountResultTypeAccountReasonsOverhaulFormingKindProtocol OverhaulFormingKindProtocol + { + get + { + return this.overhaulFormingKindProtocolField; + } + set + { + this.overhaulFormingKindProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public exportAccountResultTypeAccountReasonsOverhaulFormingKindOMSDescision OverhaulFormingKindOMSDescision + { + get + { + return this.overhaulFormingKindOMSDescisionField; + } + set + { + this.overhaulFormingKindOMSDescisionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultTypeAccountReasonsContract + { + + private string contractGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultTypeAccountReasonsCharter + { + + private string charterGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterGUID + { + get + { + return this.charterGUIDField; + } + set + { + this.charterGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultTypeAccountReasonsOverhaulFormingKindProtocol + { + + private string overhaulFormingKindProtocolGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OverhaulFormingKindProtocolGUID + { + get + { + return this.overhaulFormingKindProtocolGUIDField; + } + set + { + this.overhaulFormingKindProtocolGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountResultTypeAccountReasonsOverhaulFormingKindOMSDescision + { + + private string overhaulFormingKindOMSDescisionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OverhaulFormingKindOMSDescisionGUID + { + get + { + return this.overhaulFormingKindOMSDescisionGUIDField; + } + set + { + this.overhaulFormingKindOMSDescisionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountType + { + + private bool itemField; + + private ItemChoiceType8 itemElementNameField; + + private System.DateTime creationDateField; + + private bool creationDateFieldSpecified; + + private string livingPersonsNumberField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private decimal residentialSquareField; + + private bool residentialSquareFieldSpecified; + + private decimal heatedAreaField; + + private bool heatedAreaFieldSpecified; + + private ClosedAccountAttributesType closedField; + + private AccountTypeAccommodation[] accommodationField; + + private AccountTypePayerInfo payerInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute("isCRAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isOGVorOMSAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isRCAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isRSOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isTKOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("isUOAccount", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType8 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime CreationDate + { + get + { + return this.creationDateField; + } + set + { + this.creationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationDateSpecified + { + get + { + return this.creationDateFieldSpecified; + } + set + { + this.creationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="nonNegativeInteger", Order=3)] + public string LivingPersonsNumber + { + get + { + return this.livingPersonsNumberField; + } + set + { + this.livingPersonsNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal ResidentialSquare + { + get + { + return this.residentialSquareField; + } + set + { + this.residentialSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ResidentialSquareSpecified + { + get + { + return this.residentialSquareFieldSpecified; + } + set + { + this.residentialSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal HeatedArea + { + get + { + return this.heatedAreaField; + } + set + { + this.heatedAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HeatedAreaSpecified + { + get + { + return this.heatedAreaFieldSpecified; + } + set + { + this.heatedAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ClosedAccountAttributesType Closed + { + get + { + return this.closedField; + } + set + { + this.closedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Accommodation", Order=8)] + public AccountTypeAccommodation[] Accommodation + { + get + { + return this.accommodationField; + } + set + { + this.accommodationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public AccountTypePayerInfo PayerInfo + { + get + { + return this.payerInfoField; + } + set + { + this.payerInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType8 + { + + /// + isCRAccount, + + /// + isOGVorOMSAccount, + + /// + isRCAccount, + + /// + isRSOAccount, + + /// + isTKOAccount, + + /// + isUOAccount, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountTypeAccommodation + { + + private string itemField; + + private ItemChoiceType9 itemElementNameField; + + private decimal sharePercentField; + + private bool sharePercentFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PremisesGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType9 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal SharePercent + { + get + { + return this.sharePercentField; + } + set + { + this.sharePercentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SharePercentSpecified + { + get + { + return this.sharePercentFieldSpecified; + } + set + { + this.sharePercentFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType9 + { + + /// + FIASHouseGuid, + + /// + LivingRoomGUID, + + /// + PremisesGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AccountTypePayerInfo + { + + private bool isRenterField; + + private bool isRenterFieldSpecified; + + private bool isAccountsDividedField; + + private bool isAccountsDividedFieldSpecified; + + private object itemField; + + public AccountTypePayerInfo() + { + this.isRenterField = true; + this.isAccountsDividedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsRenter + { + get + { + return this.isRenterField; + } + set + { + this.isRenterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRenterSpecified + { + get + { + return this.isRenterFieldSpecified; + } + set + { + this.isRenterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool isAccountsDivided + { + get + { + return this.isAccountsDividedField; + } + set + { + this.isAccountsDividedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isAccountsDividedSpecified + { + get + { + return this.isAccountsDividedFieldSpecified; + } + set + { + this.isAccountsDividedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(AccountIndType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Org", typeof(RegOrgVersionType), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceUpdateESPType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceUpdateOMSType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceUpdateRSOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceUpdateUOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceESPType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceOMSType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceRSOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceUOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseUpdateOMSType + { + + private HouseBasicUpdateOMSType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateOMSType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicUpdateOMSType : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private int floorCountField; + + private bool floorCountFieldSpecified; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private bool culturalHeritageFieldSpecified; + + private OGFData[] oGFDataField; + + private HostelDataType hostelDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FloorCountSpecified + { + get + { + return this.floorCountFieldSpecified; + } + set + { + this.floorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CulturalHeritageSpecified + { + get + { + return this.culturalHeritageFieldSpecified; + } + set + { + this.culturalHeritageFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public HostelDataType HostelData + { + get + { + return this.hostelDataField; + } + set + { + this.hostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class OKTMORefType + { + + private string codeField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OGFData + { + + private string codeField; + + private OGFDataValue valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OGFDataValue Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OGFDataValue + { + + private object itemField; + + private ItemChoiceType1 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BooleanValue", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DateTimeValue", typeof(System.DateTime), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("File", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FloatValue", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IntegerValue", typeof(int), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiCode", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StringValue", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + BooleanValue, + + /// + DateTimeValue, + + /// + File, + + /// + FloatValue, + + /// + IntegerValue, + + /// + NsiCode, + + /// + StringValue, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HostelDataType + { + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private nsiRef hostelTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef HostelType + { + get + { + return this.hostelTypeField; + } + set + { + this.hostelTypeField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicUOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class GKN_EGRP_KeyType + { + + private object[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CadastralNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ConditionalNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoCadastralNumber", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("No_RSO_GKN_EGRP_Registered", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RightOrEncumbrance", typeof(RightOrEncumbrance), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RightOrEncumbrance + { + + private RightOrEncumbranceType typeField; + + private string regNumberField; + + private System.DateTime regDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RightOrEncumbranceType Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RegNumber + { + get + { + return this.regNumberField; + } + set + { + this.regNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime RegDate + { + get + { + return this.regDateField; + } + set + { + this.regDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum RightOrEncumbranceType + { + + /// + R, + + /// + E, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + CadastralNumber, + + /// + ConditionalNumber, + + /// + NoCadastralNumber, + + /// + No_RSO_GKN_EGRP_Registered, + + /// + RightOrEncumbrance, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomExportType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private string floorField; + + private OGFData[] oGFDataField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Floor + { + get + { + return this.floorField; + } + set + { + this.floorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=3)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomUpdateESPType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomUpdateOMSType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomUpdateUOType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomESPType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomOMSType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomUOType : GKN_EGRP_KeyType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateESPType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicUpdateESPType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesUpdateESPType : PremisesBasicUpdateESPType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesUpdateESPType : PremisesBasicUpdateESPType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private object item1Field; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateOMSType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicUpdateOMSType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesUpdateOMSType : PremisesBasicUpdateOMSType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesUpdateOMSType : PremisesBasicUpdateOMSType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private object item1Field; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateUOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicUpdateUOType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesUpdateUOType : PremisesBasicUpdateUOType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesUpdateUOType : PremisesBasicUpdateUOType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=4)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesESPType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesESPType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicESPType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesESPType : PremisesBasicESPType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesESPType : PremisesBasicESPType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=4)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesOMSType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesOMSType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicOMSType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesOMSType : PremisesBasicOMSType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesOMSType : PremisesBasicOMSType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=4)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicUOType : GKN_EGRP_KeyType + { + + private string premisesNumField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=1)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesUOType : PremisesBasicUOType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesUOType : PremisesBasicUOType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=4)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockUpdateOMSType : GKN_EGRP_KeyType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object itemField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=6)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum BlockCategoryType + { + + /// + Residential, + + /// + NonResidential, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockUpdateUOType : GKN_EGRP_KeyType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object itemField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=6)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockOMSType : GKN_EGRP_KeyType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object itemField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockUOType : GKN_EGRP_KeyType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object itemField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicUpdateESPType : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private int floorCountField; + + private bool floorCountFieldSpecified; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private bool culturalHeritageFieldSpecified; + + private OGFData[] oGFDataField; + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + public HouseBasicUpdateESPType() + { + this.isMunicipalPropertyField = false; + this.isRegionPropertyField = false; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FloorCountSpecified + { + get + { + return this.floorCountFieldSpecified; + } + set + { + this.floorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CulturalHeritageSpecified + { + get + { + return this.culturalHeritageFieldSpecified; + } + set + { + this.culturalHeritageFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicUpdateUOType : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private int floorCountField; + + private bool floorCountFieldSpecified; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private bool culturalHeritageFieldSpecified; + + private OGFData[] oGFDataField; + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + public HouseBasicUpdateUOType() + { + this.isMunicipalPropertyField = false; + this.isRegionPropertyField = false; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool FloorCountSpecified + { + get + { + return this.floorCountFieldSpecified; + } + set + { + this.floorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CulturalHeritageSpecified + { + get + { + return this.culturalHeritageFieldSpecified; + } + set + { + this.culturalHeritageFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicUOType : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private int floorCountField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private OGFData[] oGFDataField; + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + public HouseBasicUOType() + { + this.isMunicipalPropertyField = false; + this.isRegionPropertyField = false; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseUpdateRSOType + { + + private HouseBasicUpdateRSOType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateRSOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicUpdateRSOType : GKN_EGRP_KeyRSOType + { + + private string fIASHouseGuidField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(RoomRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicRSOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class GKN_EGRP_KeyRSOType + { + + private object[] itemsField; + + private ItemsChoiceType16[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CadastralNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ConditionalNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoCadastralNumber", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("No_RSO_GKN_EGRP_Data", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("No_RSO_GKN_EGRP_Registered", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RightOrEncumbrance", typeof(RightOrEncumbrance), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType16[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType16 + { + + /// + CadastralNumber, + + /// + ConditionalNumber, + + /// + NoCadastralNumber, + + /// + No_RSO_GKN_EGRP_Data, + + /// + No_RSO_GKN_EGRP_Registered, + + /// + RightOrEncumbrance, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomUpdateRSOType : GKN_EGRP_KeyRSOType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class RoomRSOType : GKN_EGRP_KeyRSOType + { + + private string roomNumberField; + + private decimal squareField; + + private bool squareFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Square + { + get + { + return this.squareField; + } + set + { + this.squareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SquareSpecified + { + get + { + return this.squareFieldSpecified; + } + set + { + this.squareFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesUpdateRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesUpdateRSOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicUpdateRSOType : GKN_EGRP_KeyRSOType + { + + private string premisesNumField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesUpdateRSOType : PremisesBasicUpdateRSOType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesUpdateRSOType : PremisesBasicUpdateRSOType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesRSOType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesRSOType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicRSOType : GKN_EGRP_KeyRSOType + { + + private string premisesNumField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesRSOType : PremisesBasicRSOType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesRSOType : PremisesBasicRSOType + { + + private object itemField; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockUpdateRSOType : GKN_EGRP_KeyRSOType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockRSOType : GKN_EGRP_KeyRSOType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicRSOType : GKN_EGRP_KeyRSOType + { + + private string fIASHouseGuidField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseUpdateUOType + { + + private HouseBasicUpdateUOType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateUOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseOMSType + { + + private LivingHouseOMSTypeBasicCharacteristicts basicCharacteristictsField; + + private bool hasBlocksField; + + private bool hasBlocksFieldSpecified; + + private bool hasMultipleHousesWithSameAddressField; + + private bool hasMultipleHousesWithSameAddressFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public LivingHouseOMSTypeBasicCharacteristicts BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool HasBlocks + { + get + { + return this.hasBlocksField; + } + set + { + this.hasBlocksField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasBlocksSpecified + { + get + { + return this.hasBlocksFieldSpecified; + } + set + { + this.hasBlocksFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HasMultipleHousesWithSameAddress + { + get + { + return this.hasMultipleHousesWithSameAddressField; + } + set + { + this.hasMultipleHousesWithSameAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasMultipleHousesWithSameAddressSpecified + { + get + { + return this.hasMultipleHousesWithSameAddressFieldSpecified; + } + set + { + this.hasMultipleHousesWithSameAddressFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseOMSTypeBasicCharacteristicts : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private int floorCountField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private OGFData[] oGFDataField; + + private HostelDataType hostelDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public HostelDataType HostelData + { + get + { + return this.hostelDataField; + } + set + { + this.hostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseRSOType + { + + private HouseBasicRSOType basicCharacteristictsField; + + private bool hasBlocksField; + + private bool hasBlocksFieldSpecified; + + private bool hasMultipleHousesWithSameAddressField; + + private bool hasMultipleHousesWithSameAddressFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicRSOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool HasBlocks + { + get + { + return this.hasBlocksField; + } + set + { + this.hasBlocksField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasBlocksSpecified + { + get + { + return this.hasBlocksFieldSpecified; + } + set + { + this.hasBlocksFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HasMultipleHousesWithSameAddress + { + get + { + return this.hasMultipleHousesWithSameAddressField; + } + set + { + this.hasMultipleHousesWithSameAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasMultipleHousesWithSameAddressSpecified + { + get + { + return this.hasMultipleHousesWithSameAddressFieldSpecified; + } + set + { + this.hasMultipleHousesWithSameAddressFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseUOType + { + + private HouseBasicUOType basicCharacteristictsField; + + private bool hasBlocksField; + + private bool hasBlocksFieldSpecified; + + private bool hasMultipleHousesWithSameAddressField; + + private bool hasMultipleHousesWithSameAddressFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool HasBlocks + { + get + { + return this.hasBlocksField; + } + set + { + this.hasBlocksField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasBlocksSpecified + { + get + { + return this.hasBlocksFieldSpecified; + } + set + { + this.hasBlocksFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HasMultipleHousesWithSameAddress + { + get + { + return this.hasMultipleHousesWithSameAddressField; + } + set + { + this.hasMultipleHousesWithSameAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasMultipleHousesWithSameAddressSpecified + { + get + { + return this.hasMultipleHousesWithSameAddressFieldSpecified; + } + set + { + this.hasMultipleHousesWithSameAddressFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftUpdateESPType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftUpdateOMSType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftUpdateUOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftESPType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftOMSType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftUOType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUpdateESPType + { + + private HouseBasicUpdateESPType basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private bool undergroundFloorCountFieldSpecified; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateESPType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UndergroundFloorCountSpecified + { + get + { + return this.undergroundFloorCountFieldSpecified; + } + set + { + this.undergroundFloorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUpdateOMSType + { + + private HouseBasicUpdateOMSType basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private bool undergroundFloorCountFieldSpecified; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateOMSType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UndergroundFloorCountSpecified + { + get + { + return this.undergroundFloorCountFieldSpecified; + } + set + { + this.undergroundFloorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUpdateRSOType + { + + private HouseBasicUpdateRSOType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateRSOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUpdateUOType + { + + private HouseBasicUpdateUOType basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private bool undergroundFloorCountFieldSpecified; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicUpdateUOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UndergroundFloorCountSpecified + { + get + { + return this.undergroundFloorCountFieldSpecified; + } + set + { + this.undergroundFloorCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseESPType + { + + private ApartmentHouseESPTypeBasicCharacteristicts basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ApartmentHouseESPTypeBasicCharacteristicts BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseESPTypeBasicCharacteristicts : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private int floorCountField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private OGFData[] oGFDataField; + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + public ApartmentHouseESPTypeBasicCharacteristicts() + { + this.isMunicipalPropertyField = false; + this.isRegionPropertyField = false; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseOMSType + { + + private ApartmentHouseOMSTypeBasicCharacteristicts basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ApartmentHouseOMSTypeBasicCharacteristicts BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseOMSTypeBasicCharacteristicts : GKN_EGRP_KeyType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private int floorCountField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private OGFData[] oGFDataField; + + private HostelDataType hostelDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public int FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public HostelDataType HostelData + { + get + { + return this.hostelDataField; + } + set + { + this.hostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseRSOType + { + + private HouseBasicRSOType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicRSOType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUOType + { + + private ApartmentHouseUOTypeBasicCharacteristicts basicCharacteristictsField; + + private sbyte undergroundFloorCountField; + + private int minFloorCountField; + + private bool minFloorCountFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ApartmentHouseUOTypeBasicCharacteristicts BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public sbyte UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int MinFloorCount + { + get + { + return this.minFloorCountField; + } + set + { + this.minFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MinFloorCountSpecified + { + get + { + return this.minFloorCountFieldSpecified; + } + set + { + this.minFloorCountFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseUOTypeBasicCharacteristicts : HouseBasicUOType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OGFImportStatusType + { + + private OGFImportStatusTypeGKNRelationshipStatus gKNRelationshipStatusField; + + private EGRPRelationshipStatusType eGRPRelationshipStatusField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public OGFImportStatusTypeGKNRelationshipStatus GKNRelationshipStatus + { + get + { + return this.gKNRelationshipStatusField; + } + set + { + this.gKNRelationshipStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public EGRPRelationshipStatusType EGRPRelationshipStatus + { + get + { + return this.eGRPRelationshipStatusField; + } + set + { + this.eGRPRelationshipStatusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OGFImportStatusTypeGKNRelationshipStatus : GKNRelationshipStatusType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class GKNRelationshipStatusType + { + + private GKNRelationshipStatusTypeStatus statusField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public GKNRelationshipStatusTypeStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AppartmentHouseAcceptedParameter", typeof(ApartmentHouseAcceptedParameterType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseAcceptedParameter", typeof(LivingHouseAcceptedParameterType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseAcceptedParameter", typeof(NonResidentialPremiseAcceptedParameterType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremiseAcceptedParameter", typeof(ResidentialPremiseAcceptedParameterType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("RoomAcceptedParameter", typeof(RoomAcceptedParameterType), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum GKNRelationshipStatusTypeStatus + { + + /// + C, + + /// + D, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ApartmentHouseAcceptedParameterType + { + + /// + FiasHouseGuid, + + /// + TotalSquare, + + /// + State, + + /// + InnerWallMaterial, + + /// + ProjectSeries, + + /// + ProjectType, + + /// + BuildingYear, + + /// + UsedYear, + + /// + TotalWear, + + /// + FloorCount, + + /// + Energy, + + /// + OKTMO, + + /// + OlsonTZ, + + /// + ResidentialSquare, + + /// + CulturalHeritage, + + /// + BuiltUpArea, + + /// + UndergroundFloorCount, + + /// + MinFloorCount, + + /// + OverhaulYear, + + /// + OverhaulFormingKind, + + /// + NonResidentialSquare, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum LivingHouseAcceptedParameterType + { + + /// + FiasHouseGuid, + + /// + TotalSquare, + + /// + State, + + /// + InnerWallMaterial, + + /// + ProjectSeries, + + /// + ProjectType, + + /// + BuildingYear, + + /// + UsedYear, + + /// + TotalWear, + + /// + FloorCount, + + /// + Energy, + + /// + OKTMO, + + /// + OlsonTZ, + + /// + ResidentialSquare, + + /// + CulturalHeritage, + + /// + ResidentialHouseType, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum NonResidentialPremiseAcceptedParameterType + { + + /// + PremisesNum, + + /// + Purpose, + + /// + Position, + + /// + TotalArea, + + /// + IsCommonProperty, + + /// + TerminationDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ResidentialPremiseAcceptedParameterType + { + + /// + PremisesNum, + + /// + EntranceNum, + + /// + PremisesCharacteristic, + + /// + RoomsNum, + + /// + TotalArea, + + /// + GrossArea, + + /// + ResidentialHouseType, + + /// + TerminationDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum RoomAcceptedParameterType + { + + /// + RoomNumber, + + /// + Square, + + /// + ResidentialHouseType, + + /// + TerminationDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EGRPRelationshipStatusType + { + + private EGRPRelationshipStatusTypeStatus statusField; + + private bool statusFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public EGRPRelationshipStatusTypeStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StatusSpecified + { + get + { + return this.statusFieldSpecified; + } + set + { + this.statusFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum EGRPRelationshipStatusTypeStatus + { + + /// + C, + + /// + D, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSocialHireContractResultType + { + + private string contractRootGUIDField; + + private string contractGUIDField; + + private exportBriefSocialHireContractResultTypeContractState contractStateField; + + private bool contractStateFieldSpecified; + + private string contractNumberField; + + private System.DateTime signingDateField; + + private exportBriefSocialHireContractResultTypeTerminateContract terminateContractField; + + private AnnulmentType annulmentContractField; + + private exportBriefSocialHireContractResultTypeType typeField; + + private exportBriefSocialHireContractResultTypeObjectAddress[] objectAddressField; + + private string orgPPAGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportBriefSocialHireContractResultTypeContractState ContractState + { + get + { + return this.contractStateField; + } + set + { + this.contractStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ContractStateSpecified + { + get + { + return this.contractStateFieldSpecified; + } + set + { + this.contractStateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public exportBriefSocialHireContractResultTypeTerminateContract TerminateContract + { + get + { + return this.terminateContractField; + } + set + { + this.terminateContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public AnnulmentType AnnulmentContract + { + get + { + return this.annulmentContractField; + } + set + { + this.annulmentContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public exportBriefSocialHireContractResultTypeType Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ObjectAddress", Order=8)] + public exportBriefSocialHireContractResultTypeObjectAddress[] ObjectAddress + { + get + { + return this.objectAddressField; + } + set + { + this.objectAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=9)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSocialHireContractResultTypeContractState + { + + /// + NotTakeEffect, + + /// + Proceed, + + /// + Expired, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSocialHireContractResultTypeTerminateContract : TerminateType + { + + private nsiRef reasonRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class TerminateType + { + + private System.DateTime terminateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Terminate + { + get + { + return this.terminateField; + } + set + { + this.terminateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class AnnulmentType + { + + private string reasonOfAnnulmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReasonOfAnnulment + { + get + { + return this.reasonOfAnnulmentField; + } + set + { + this.reasonOfAnnulmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSocialHireContractResultTypeType + { + + /// + D, + + /// + M, + + /// + S, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSocialHireContractResultTypeObjectAddress + { + + private string fIASHouseGuidField; + + private string apartmentNumberField; + + private string roomNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ApartmentNumber + { + get + { + return this.apartmentNumberField; + } + set + { + this.apartmentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportOwnerDecisionResultType + { + + private string rootOwnerDecisionGUIDField; + + private Owner ownerField; + + private exportPropertyDetails[] exportPropertyDetailsField; + + private Representative representativeField; + + private QuestionOnDecisionType questionOnDecisionField; + + private AttachmentType[] attachmentsField; + + private bool decisionAnnuledField; + + private bool decisionAnnuledFieldSpecified; + + public exportOwnerDecisionResultType() + { + this.decisionAnnuledField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RootOwnerDecisionGUID + { + get + { + return this.rootOwnerDecisionGUIDField; + } + set + { + this.rootOwnerDecisionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public Owner Owner + { + get + { + return this.ownerField; + } + set + { + this.ownerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("exportPropertyDetails", Order=2)] + public exportPropertyDetails[] exportPropertyDetails + { + get + { + return this.exportPropertyDetailsField; + } + set + { + this.exportPropertyDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public Representative Representative + { + get + { + return this.representativeField; + } + set + { + this.representativeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public QuestionOnDecisionType QuestionOnDecision + { + get + { + return this.questionOnDecisionField; + } + set + { + this.questionOnDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachments", Order=5)] + public AttachmentType[] Attachments + { + get + { + return this.attachmentsField; + } + set + { + this.attachmentsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool DecisionAnnuled + { + get + { + return this.decisionAnnuledField; + } + set + { + this.decisionAnnuledField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DecisionAnnuledSpecified + { + get + { + return this.decisionAnnuledFieldSpecified; + } + set + { + this.decisionAnnuledFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ObjectAddressBriefType + { + + private ObjectAddressBriefTypeHouseType houseTypeField; + + private bool houseTypeFieldSpecified; + + private string fIASHouseGuidField; + + private string apartmentNumberField; + + private string roomNumberField; + + private string premisesGUIDField; + + private string blockGUIDField; + + private string roomGUIDField; + + private ObjectAddressBriefTypePair[] pairField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + public ObjectAddressBriefType() + { + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ObjectAddressBriefTypeHouseType HouseType + { + get + { + return this.houseTypeField; + } + set + { + this.houseTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HouseTypeSpecified + { + get + { + return this.houseTypeFieldSpecified; + } + set + { + this.houseTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ApartmentNumber + { + get + { + return this.apartmentNumberField; + } + set + { + this.apartmentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string BlockGUID + { + get + { + return this.blockGUIDField; + } + set + { + this.blockGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string RoomGUID + { + get + { + return this.roomGUIDField; + } + set + { + this.roomGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Pair", Order=7)] + public ObjectAddressBriefTypePair[] Pair + { + get + { + return this.pairField; + } + set + { + this.pairField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ObjectAddressBriefTypeHouseType + { + + /// + MKD, + + /// + ZHD, + + /// + ZHDBlockZastroyki, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ObjectAddressBriefTypePair : ContractSubjectObjectAdressType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectObjectAdressType + { + + private ContractSubjectObjectAdressTypeServiceType serviceTypeField; + + private ContractSubjectObjectAdressTypeMunicipalResource municipalResourceField; + + private System.DateTime startSupplyDateField; + + private System.DateTime endSupplyDateField; + + private bool endSupplyDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ContractSubjectObjectAdressTypeServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ContractSubjectObjectAdressTypeMunicipalResource MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime StartSupplyDate + { + get + { + return this.startSupplyDateField; + } + set + { + this.startSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime EndSupplyDate + { + get + { + return this.endSupplyDateField; + } + set + { + this.endSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndSupplyDateSpecified + { + get + { + return this.endSupplyDateFieldSpecified; + } + set + { + this.endSupplyDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectObjectAdressTypeServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectObjectAdressTypeMunicipalResource : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultType + { + + private string contractRootGUIDField; + + private string contractGUIDField; + + private string versionNumberField; + + private exportBriefSupplyResourceContractResultTypeVersionStatus versionStatusField; + + private exportBriefSupplyResourceContractResultTypeContractState contractStateField; + + private object itemField; + + private exportBriefSupplyResourceContractResultTypeFirstPartyContract firstPartyContractField; + + private exportBriefSupplyResourceContractResultTypeSecondPartyContract secondPartyContractField; + + private exportBriefSupplyResourceContractResultTypeContractSubject[] contractSubjectField; + + private exportBriefSupplyResourceContractResultTypeCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private exportBriefSupplyResourceContractResultTypeBillingDate billingDateField; + + private exportBriefSupplyResourceContractResultTypePaymentDate paymentDateField; + + private exportBriefSupplyResourceContractResultTypeProvidingInformationDate providingInformationDateField; + + private exportBriefSupplyResourceContractResultTypePeriod periodField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private exportBriefSupplyResourceContractResultTypeTerminateContract terminateContractField; + + private AnnulmentType annulmentContractField; + + private ObjectAddressBriefType[] objectAddressField; + + public exportBriefSupplyResourceContractResultType() + { + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=2)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public exportBriefSupplyResourceContractResultTypeVersionStatus VersionStatus + { + get + { + return this.versionStatusField; + } + set + { + this.versionStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportBriefSupplyResourceContractResultTypeContractState ContractState + { + get + { + return this.contractStateField; + } + set + { + this.contractStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IsContract", typeof(exportBriefSupplyResourceContractResultTypeIsContract), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("IsNotContract", typeof(exportBriefSupplyResourceContractResultTypeIsNotContract), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public exportBriefSupplyResourceContractResultTypeFirstPartyContract FirstPartyContract + { + get + { + return this.firstPartyContractField; + } + set + { + this.firstPartyContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public exportBriefSupplyResourceContractResultTypeSecondPartyContract SecondPartyContract + { + get + { + return this.secondPartyContractField; + } + set + { + this.secondPartyContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", Order=8)] + public exportBriefSupplyResourceContractResultTypeContractSubject[] ContractSubject + { + get + { + return this.contractSubjectField; + } + set + { + this.contractSubjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public exportBriefSupplyResourceContractResultTypeCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public exportBriefSupplyResourceContractResultTypeBillingDate BillingDate + { + get + { + return this.billingDateField; + } + set + { + this.billingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public exportBriefSupplyResourceContractResultTypePaymentDate PaymentDate + { + get + { + return this.paymentDateField; + } + set + { + this.paymentDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public exportBriefSupplyResourceContractResultTypeProvidingInformationDate ProvidingInformationDate + { + get + { + return this.providingInformationDateField; + } + set + { + this.providingInformationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public exportBriefSupplyResourceContractResultTypePeriod Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public exportBriefSupplyResourceContractResultTypeTerminateContract TerminateContract + { + get + { + return this.terminateContractField; + } + set + { + this.terminateContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public AnnulmentType AnnulmentContract + { + get + { + return this.annulmentContractField; + } + set + { + this.annulmentContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ObjectAddress", Order=17)] + public ObjectAddressBriefType[] ObjectAddress + { + get + { + return this.objectAddressField; + } + set + { + this.objectAddressField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypeVersionStatus + { + + /// + Posted, + + /// + Terminated, + + /// + Draft, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypeContractState + { + + /// + NotTakeEffect, + + /// + Proceed, + + /// + Expired, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeIsContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeIsNotContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + private System.DateTime effectiveDateField; + + private bool effectiveDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EffectiveDateSpecified + { + get + { + return this.effectiveDateFieldSpecified; + } + set + { + this.effectiveDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeFirstPartyContract : RegOrgType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeSecondPartyContract + { + + private object itemField; + + private ItemChoiceType4 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Offer", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(exportBriefSupplyResourceContractResultTypeSecondPartyContractOrganization), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Owner", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType4 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeSecondPartyContractOrganization : RegOrgType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType4 + { + + /// + Offer, + + /// + Organization, + + /// + Owner, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeContractSubject + { + + private exportBriefSupplyResourceContractResultTypeContractSubjectServiceType serviceTypeField; + + private exportBriefSupplyResourceContractResultTypeContractSubjectMunicipalResource municipalResourceField; + + private System.DateTime startSupplyDateField; + + private System.DateTime endSupplyDateField; + + private bool endSupplyDateFieldSpecified; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportBriefSupplyResourceContractResultTypeContractSubjectServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportBriefSupplyResourceContractResultTypeContractSubjectMunicipalResource MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime StartSupplyDate + { + get + { + return this.startSupplyDateField; + } + set + { + this.startSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime EndSupplyDate + { + get + { + return this.endSupplyDateField; + } + set + { + this.endSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndSupplyDateSpecified + { + get + { + return this.endSupplyDateFieldSpecified; + } + set + { + this.endSupplyDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=4)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeContractSubjectServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeContractSubjectMunicipalResource : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypeCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeBillingDate + { + + private sbyte dateField; + + private exportBriefSupplyResourceContractResultTypeBillingDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportBriefSupplyResourceContractResultTypeBillingDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypeBillingDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypePaymentDate + { + + private sbyte dateField; + + private exportBriefSupplyResourceContractResultTypePaymentDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportBriefSupplyResourceContractResultTypePaymentDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypePaymentDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeProvidingInformationDate + { + + private sbyte dateField; + + private exportBriefSupplyResourceContractResultTypeProvidingInformationDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportBriefSupplyResourceContractResultTypeProvidingInformationDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSupplyResourceContractResultTypeProvidingInformationDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypePeriod + { + + private exportBriefSupplyResourceContractResultTypePeriodStart startField; + + private exportBriefSupplyResourceContractResultTypePeriodEnd endField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportBriefSupplyResourceContractResultTypePeriodStart Start + { + get + { + return this.startField; + } + set + { + this.startField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportBriefSupplyResourceContractResultTypePeriodEnd End + { + get + { + return this.endField; + } + set + { + this.endField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypePeriodStart + { + + private sbyte startDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public exportBriefSupplyResourceContractResultTypePeriodStart() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypePeriodEnd + { + + private sbyte endDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public exportBriefSupplyResourceContractResultTypePeriodEnd() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractResultTypeTerminateContract : TerminateType + { + + private nsiRef reasonRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RegionType + { + + private string codeField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectType + { + + private object itemField; + + private object[] itemsField; + + private ItemsChoiceType14[] itemsElementNameField; + + private SupplyResourceContractProjectTypePeriod periodField; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + private nsiRef[] contractBaseField; + + private object item1Field; + + private bool isPlannedVolumeField; + + private SupplyResourceContractProjectTypePlannedVolumeType plannedVolumeTypeField; + + private bool plannedVolumeTypeFieldSpecified; + + private SupplyResourceContractProjectTypeContractSubject[] contractSubjectField; + + private SupplyResourceContractProjectTypeCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private SupplyResourceContractProjectTypeSpecifyingQualityIndicators specifyingQualityIndicatorsField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private SupplyResourceContractProjectTypeQuality[] qualityField; + + private SupplyResourceContractProjectTypeOtherQualityIndicator[] otherQualityIndicatorField; + + private SupplyResourceContractProjectTypeTemperatureChart[] temperatureChartField; + + private SupplyResourceContractProjectTypeBillingDate billingDateField; + + private SupplyResourceContractProjectTypePaymentDate paymentDateField; + + private SupplyResourceContractProjectTypeProvidingInformationDate providingInformationDateField; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + private bool volumeDependsField; + + private bool volumeDependsFieldSpecified; + + private bool oneTimePaymentField; + + private bool oneTimePaymentFieldSpecified; + + private SupplyResourceContractProjectTypeAccrualProcedure accrualProcedureField; + + private bool accrualProcedureFieldSpecified; + + private SupplyResourceContractProjectTypeRegionalSettings regionalSettingsField; + + public SupplyResourceContractProjectType() + { + this.indicationsAnyDayField = true; + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IsContract", typeof(SupplyResourceContractProjectTypeIsContract), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IsNotContract", typeof(SupplyResourceContractProjectTypeIsNotContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AutomaticRollOverOneYear", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ComptetionDate", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("IndefiniteTerm", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType14[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public SupplyResourceContractProjectTypePeriod Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractBase", Order=5)] + public nsiRef[] ContractBase + { + get + { + return this.contractBaseField; + } + set + { + this.contractBaseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingOwner", typeof(SupplyResourceContractProjectTypeApartmentBuildingOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingRepresentativeOwner", typeof(SupplyResourceContractProjectTypeApartmentBuildingRepresentativeOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingSoleOwner", typeof(SupplyResourceContractProjectTypeApartmentBuildingSoleOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseOwner", typeof(SupplyResourceContractProjectTypeLivingHouseOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Offer", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(SupplyResourceContractProjectTypeOrganization), Order=6)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool IsPlannedVolume + { + get + { + return this.isPlannedVolumeField; + } + set + { + this.isPlannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public SupplyResourceContractProjectTypePlannedVolumeType PlannedVolumeType + { + get + { + return this.plannedVolumeTypeField; + } + set + { + this.plannedVolumeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PlannedVolumeTypeSpecified + { + get + { + return this.plannedVolumeTypeFieldSpecified; + } + set + { + this.plannedVolumeTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", Order=9)] + public SupplyResourceContractProjectTypeContractSubject[] ContractSubject + { + get + { + return this.contractSubjectField; + } + set + { + this.contractSubjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public SupplyResourceContractProjectTypeCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public SupplyResourceContractProjectTypeSpecifyingQualityIndicators SpecifyingQualityIndicators + { + get + { + return this.specifyingQualityIndicatorsField; + } + set + { + this.specifyingQualityIndicatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Quality", Order=13)] + public SupplyResourceContractProjectTypeQuality[] Quality + { + get + { + return this.qualityField; + } + set + { + this.qualityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OtherQualityIndicator", Order=14)] + public SupplyResourceContractProjectTypeOtherQualityIndicator[] OtherQualityIndicator + { + get + { + return this.otherQualityIndicatorField; + } + set + { + this.otherQualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TemperatureChart", Order=15)] + public SupplyResourceContractProjectTypeTemperatureChart[] TemperatureChart + { + get + { + return this.temperatureChartField; + } + set + { + this.temperatureChartField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public SupplyResourceContractProjectTypeBillingDate BillingDate + { + get + { + return this.billingDateField; + } + set + { + this.billingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public SupplyResourceContractProjectTypePaymentDate PaymentDate + { + get + { + return this.paymentDateField; + } + set + { + this.paymentDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public SupplyResourceContractProjectTypeProvidingInformationDate ProvidingInformationDate + { + get + { + return this.providingInformationDateField; + } + set + { + this.providingInformationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public bool VolumeDepends + { + get + { + return this.volumeDependsField; + } + set + { + this.volumeDependsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VolumeDependsSpecified + { + get + { + return this.volumeDependsFieldSpecified; + } + set + { + this.volumeDependsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=21)] + public bool OneTimePayment + { + get + { + return this.oneTimePaymentField; + } + set + { + this.oneTimePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OneTimePaymentSpecified + { + get + { + return this.oneTimePaymentFieldSpecified; + } + set + { + this.oneTimePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=22)] + public SupplyResourceContractProjectTypeAccrualProcedure AccrualProcedure + { + get + { + return this.accrualProcedureField; + } + set + { + this.accrualProcedureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccrualProcedureSpecified + { + get + { + return this.accrualProcedureFieldSpecified; + } + set + { + this.accrualProcedureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=23)] + public SupplyResourceContractProjectTypeRegionalSettings RegionalSettings + { + get + { + return this.regionalSettingsField; + } + set + { + this.regionalSettingsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeIsContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeIsNotContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + private System.DateTime effectiveDateField; + + private bool effectiveDateFieldSpecified; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EffectiveDateSpecified + { + get + { + return this.effectiveDateFieldSpecified; + } + set + { + this.effectiveDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType14 + { + + /// + AutomaticRollOverOneYear, + + /// + ComptetionDate, + + /// + IndefiniteTerm, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypePeriod + { + + private SupplyResourceContractProjectTypePeriodStart startField; + + private SupplyResourceContractProjectTypePeriodEnd endField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SupplyResourceContractProjectTypePeriodStart Start + { + get + { + return this.startField; + } + set + { + this.startField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractProjectTypePeriodEnd End + { + get + { + return this.endField; + } + set + { + this.endField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypePeriodStart + { + + private sbyte startDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public SupplyResourceContractProjectTypePeriodStart() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypePeriodEnd + { + + private sbyte endDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public SupplyResourceContractProjectTypePeriodEnd() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeApartmentBuildingOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DRSOIndType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + private DRSOIndTypeSex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + private string placeBirthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public DRSOIndTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(ID), Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=5)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/", Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string PlaceBirth + { + get + { + return this.placeBirthField; + } + set + { + this.placeBirthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum DRSOIndTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DRSORegOrgType + { + + private string orgRootEntityGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgRootEntityGUID + { + get + { + return this.orgRootEntityGUIDField; + } + set + { + this.orgRootEntityGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeApartmentBuildingRepresentativeOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeApartmentBuildingSoleOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeLivingHouseOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeOrganization : RegOrgType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypePlannedVolumeType + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeContractSubject : ContractSubjectType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectType + { + + private ContractSubjectTypeServiceType serviceTypeField; + + private ContractSubjectTypeMunicipalResource municipalResourceField; + + private System.DateTime startSupplyDateField; + + private System.DateTime endSupplyDateField; + + private bool endSupplyDateFieldSpecified; + + private ContractSubjectTypePlannedVolume plannedVolumeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ContractSubjectTypeServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ContractSubjectTypeMunicipalResource MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime StartSupplyDate + { + get + { + return this.startSupplyDateField; + } + set + { + this.startSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime EndSupplyDate + { + get + { + return this.endSupplyDateField; + } + set + { + this.endSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndSupplyDateSpecified + { + get + { + return this.endSupplyDateFieldSpecified; + } + set + { + this.endSupplyDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ContractSubjectTypePlannedVolume PlannedVolume + { + get + { + return this.plannedVolumeField; + } + set + { + this.plannedVolumeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectTypeServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectTypeMunicipalResource : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractSubjectTypePlannedVolume + { + + private decimal volumeField; + + private string unitField; + + private string feedingModeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FeedingMode + { + get + { + return this.feedingModeField; + } + set + { + this.feedingModeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypeCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypeSpecifyingQualityIndicators + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeQuality + { + + private string pairKeyField; + + private nsiRef qualityIndicatorField; + + private SupplyResourceContractProjectTypeQualityIndicatorValue indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef QualityIndicator + { + get + { + return this.qualityIndicatorField; + } + set + { + this.qualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public SupplyResourceContractProjectTypeQualityIndicatorValue IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeQualityIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class IndicatorValueType + { + + private object[] itemsField; + + private ItemsChoiceType10[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Correspond", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("EndRange", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Number", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartRange", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType10[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType10 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + Correspond, + + /// + EndRange, + + /// + Number, + + /// + StartRange, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeOtherQualityIndicator + { + + private string pairKeyField; + + private string indicatorNameField; + + private object[] itemsField; + + private ItemsChoiceType15[] itemsElementNameField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string IndicatorName + { + get + { + return this.indicatorNameField; + } + set + { + this.indicatorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Correspond", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("EndRange", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Number", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("StartRange", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType15[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType15 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + Correspond, + + /// + EndRange, + + /// + Number, + + /// + StartRange, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeTemperatureChart + { + + private int outsideTemperatureField; + + private decimal flowLineTemperatureField; + + private decimal oppositeLineTemperatureField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public int OutsideTemperature + { + get + { + return this.outsideTemperatureField; + } + set + { + this.outsideTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal FlowLineTemperature + { + get + { + return this.flowLineTemperatureField; + } + set + { + this.flowLineTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal OppositeLineTemperature + { + get + { + return this.oppositeLineTemperatureField; + } + set + { + this.oppositeLineTemperatureField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeBillingDate + { + + private sbyte dateField; + + private SupplyResourceContractProjectTypeBillingDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractProjectTypeBillingDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypeBillingDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypePaymentDate + { + + private sbyte dateField; + + private SupplyResourceContractProjectTypePaymentDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractProjectTypePaymentDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypePaymentDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeProvidingInformationDate + { + + private sbyte dateField; + + private SupplyResourceContractProjectTypeProvidingInformationDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractProjectTypeProvidingInformationDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypeProvidingInformationDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractProjectTypeAccrualProcedure + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeRegionalSettings + { + + private RegionType regionField; + + private SupplyResourceContractProjectTypeRegionalSettingsTariff[] tariffField; + + private SupplyResourceContractProjectTypeRegionalSettingsNorm[] normField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RegionType Region + { + get + { + return this.regionField; + } + set + { + this.regionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Tariff", Order=1)] + public SupplyResourceContractProjectTypeRegionalSettingsTariff[] Tariff + { + get + { + return this.tariffField; + } + set + { + this.tariffField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Norm", Order=2)] + public SupplyResourceContractProjectTypeRegionalSettingsNorm[] Norm + { + get + { + return this.normField; + } + set + { + this.normField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeRegionalSettingsTariff + { + + private string pairKeyField; + + private string priceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PriceGUID + { + get + { + return this.priceGUIDField; + } + set + { + this.priceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractProjectTypeRegionalSettingsNorm + { + + private string pairKeyField; + + private string normGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string NormGUID + { + get + { + return this.normGUIDField; + } + set + { + this.normGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportAnnulmentType + { + + private string reasonOfAnnulmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ReasonOfAnnulment + { + get + { + return this.reasonOfAnnulmentField; + } + set + { + this.reasonOfAnnulmentField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportSupplyResourceContractResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractType + { + + private object itemField; + + private object[] itemsField; + + private ItemsChoiceType12[] itemsElementNameField; + + private bool volumeDependsField; + + private bool volumeDependsFieldSpecified; + + private ExportSupplyResourceContractTypePeriod periodField; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + private nsiRef[] contractBaseField; + + private object item1Field; + + private bool isPlannedVolumeField; + + private ExportSupplyResourceContractTypePlannedVolumeType plannedVolumeTypeField; + + private bool plannedVolumeTypeFieldSpecified; + + private ExportSupplyResourceContractTypeContractSubject[] contractSubjectField; + + private ExportSupplyResourceContractTypeCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + private ExportSupplyResourceContractTypeSpecifyingQualityIndicators specifyingQualityIndicatorsField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private ExportSupplyResourceContractTypeQuality[] qualityField; + + private ExportSupplyResourceContractTypeOtherQualityIndicator[] otherQualityIndicatorField; + + private ExportSupplyResourceContractTypePlannedVolume[] plannedVolumeField; + + private bool oneTimePaymentField; + + private bool oneTimePaymentFieldSpecified; + + private ExportSupplyResourceContractTypeBillingDate billingDateField; + + private ExportSupplyResourceContractTypePaymentDate paymentDateField; + + private ExportSupplyResourceContractTypeProvidingInformationDate providingInformationDateField; + + public ExportSupplyResourceContractType() + { + this.indicationsAnyDayField = true; + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IsContract", typeof(ExportSupplyResourceContractTypeIsContract), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IsNotContract", typeof(ExportSupplyResourceContractTypeIsNotContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AutomaticRollOverOneYear", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ComptetionDate", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("IndefiniteTerm", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType12[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool VolumeDepends + { + get + { + return this.volumeDependsField; + } + set + { + this.volumeDependsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VolumeDependsSpecified + { + get + { + return this.volumeDependsFieldSpecified; + } + set + { + this.volumeDependsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ExportSupplyResourceContractTypePeriod Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractBase", Order=6)] + public nsiRef[] ContractBase + { + get + { + return this.contractBaseField; + } + set + { + this.contractBaseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingOwner", typeof(ExportSupplyResourceContractTypeApartmentBuildingOwner), Order=7)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingRepresentativeOwner", typeof(ExportSupplyResourceContractTypeApartmentBuildingRepresentativeOwner), Order=7)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingSoleOwner", typeof(ExportSupplyResourceContractTypeApartmentBuildingSoleOwner), Order=7)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseOwner", typeof(ExportSupplyResourceContractTypeLivingHouseOwner), Order=7)] + [System.Xml.Serialization.XmlElementAttribute("Offer", typeof(bool), Order=7)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(ExportSupplyResourceContractTypeOrganization), Order=7)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool IsPlannedVolume + { + get + { + return this.isPlannedVolumeField; + } + set + { + this.isPlannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public ExportSupplyResourceContractTypePlannedVolumeType PlannedVolumeType + { + get + { + return this.plannedVolumeTypeField; + } + set + { + this.plannedVolumeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PlannedVolumeTypeSpecified + { + get + { + return this.plannedVolumeTypeFieldSpecified; + } + set + { + this.plannedVolumeTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", Order=10)] + public ExportSupplyResourceContractTypeContractSubject[] ContractSubject + { + get + { + return this.contractSubjectField; + } + set + { + this.contractSubjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public ExportSupplyResourceContractTypeCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public ExportSupplyResourceContractTypeSpecifyingQualityIndicators SpecifyingQualityIndicators + { + get + { + return this.specifyingQualityIndicatorsField; + } + set + { + this.specifyingQualityIndicatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Quality", Order=15)] + public ExportSupplyResourceContractTypeQuality[] Quality + { + get + { + return this.qualityField; + } + set + { + this.qualityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OtherQualityIndicator", Order=16)] + public ExportSupplyResourceContractTypeOtherQualityIndicator[] OtherQualityIndicator + { + get + { + return this.otherQualityIndicatorField; + } + set + { + this.otherQualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVolume", Order=17)] + public ExportSupplyResourceContractTypePlannedVolume[] PlannedVolume + { + get + { + return this.plannedVolumeField; + } + set + { + this.plannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public bool OneTimePayment + { + get + { + return this.oneTimePaymentField; + } + set + { + this.oneTimePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OneTimePaymentSpecified + { + get + { + return this.oneTimePaymentFieldSpecified; + } + set + { + this.oneTimePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public ExportSupplyResourceContractTypeBillingDate BillingDate + { + get + { + return this.billingDateField; + } + set + { + this.billingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public ExportSupplyResourceContractTypePaymentDate PaymentDate + { + get + { + return this.paymentDateField; + } + set + { + this.paymentDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=21)] + public ExportSupplyResourceContractTypeProvidingInformationDate ProvidingInformationDate + { + get + { + return this.providingInformationDateField; + } + set + { + this.providingInformationDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeIsContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeIsNotContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + private System.DateTime effectiveDateField; + + private bool effectiveDateFieldSpecified; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EffectiveDateSpecified + { + get + { + return this.effectiveDateFieldSpecified; + } + set + { + this.effectiveDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType12 + { + + /// + AutomaticRollOverOneYear, + + /// + ComptetionDate, + + /// + IndefiniteTerm, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypePeriod + { + + private ExportSupplyResourceContractTypePeriodStart startField; + + private ExportSupplyResourceContractTypePeriodEnd endField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ExportSupplyResourceContractTypePeriodStart Start + { + get + { + return this.startField; + } + set + { + this.startField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSupplyResourceContractTypePeriodEnd End + { + get + { + return this.endField; + } + set + { + this.endField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypePeriodStart + { + + private string startDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public ExportSupplyResourceContractTypePeriodStart() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypePeriodEnd + { + + private string endDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public ExportSupplyResourceContractTypePeriodEnd() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeApartmentBuildingOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeApartmentBuildingRepresentativeOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeApartmentBuildingSoleOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeLivingHouseOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeOrganization : RegOrgType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypePlannedVolumeType + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeContractSubject + { + + private ExportSupplyResourceContractTypeContractSubjectServiceType serviceTypeField; + + private ExportSupplyResourceContractTypeContractSubjectMunicipalResource municipalResourceField; + + private System.DateTime startSupplyDateField; + + private System.DateTime endSupplyDateField; + + private bool endSupplyDateFieldSpecified; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ExportSupplyResourceContractTypeContractSubjectServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSupplyResourceContractTypeContractSubjectMunicipalResource MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime StartSupplyDate + { + get + { + return this.startSupplyDateField; + } + set + { + this.startSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime EndSupplyDate + { + get + { + return this.endSupplyDateField; + } + set + { + this.endSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndSupplyDateSpecified + { + get + { + return this.endSupplyDateFieldSpecified; + } + set + { + this.endSupplyDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=4)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeContractSubjectServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeContractSubjectMunicipalResource : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypeCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypeSpecifyingQualityIndicators + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeQuality + { + + private string pairKeyField; + + private nsiRef qualityIndicatorField; + + private ExportSupplyResourceContractTypeQualityIndicatorValue[] indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef QualityIndicator + { + get + { + return this.qualityIndicatorField; + } + set + { + this.qualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IndicatorValue", Order=2)] + public ExportSupplyResourceContractTypeQualityIndicatorValue[] IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeQualityIndicatorValue + { + + private object[] itemsField; + + private ItemsChoiceType13[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Correspond", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("EndRange", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Number", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartRange", typeof(decimal), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType13[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType13 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + Correspond, + + /// + EndRange, + + /// + Number, + + /// + StartRange, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeOtherQualityIndicator + { + + private string pairKeyField; + + private string indicatorNameField; + + private ExportSupplyResourceContractTypeOtherQualityIndicatorIndicatorValue indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string IndicatorName + { + get + { + return this.indicatorNameField; + } + set + { + this.indicatorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ExportSupplyResourceContractTypeOtherQualityIndicatorIndicatorValue IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeOtherQualityIndicatorIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypePlannedVolume + { + + private string pairKeyField; + + private decimal volumeField; + + private bool volumeFieldSpecified; + + private string unitField; + + private string feedingModeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VolumeSpecified + { + get + { + return this.volumeFieldSpecified; + } + set + { + this.volumeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FeedingMode + { + get + { + return this.feedingModeField; + } + set + { + this.feedingModeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeBillingDate + { + + private sbyte dateField; + + private ExportSupplyResourceContractTypeBillingDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSupplyResourceContractTypeBillingDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypeBillingDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypePaymentDate + { + + private sbyte dateField; + + private ExportSupplyResourceContractTypePaymentDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSupplyResourceContractTypePaymentDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypePaymentDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportSupplyResourceContractTypeProvidingInformationDate + { + + private sbyte dateField; + + private ExportSupplyResourceContractTypeProvidingInformationDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportSupplyResourceContractTypeProvidingInformationDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ExportSupplyResourceContractTypeProvidingInformationDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractResultType : ExportSupplyResourceContractType + { + + private string contractRootGUIDField; + + private string contractGUIDField; + + private exportSupplyResourceContractResultTypeContractState contractStateField; + + private string versionNumberField; + + private exportSupplyResourceContractResultTypeVersionStatus versionStatusField; + + private exportSupplyResourceContractResultTypeTerminateContract terminateContractField; + + private ExportAnnulmentType annulmentContractField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportSupplyResourceContractResultTypeContractState ContractState + { + get + { + return this.contractStateField; + } + set + { + this.contractStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=3)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportSupplyResourceContractResultTypeVersionStatus VersionStatus + { + get + { + return this.versionStatusField; + } + set + { + this.versionStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public exportSupplyResourceContractResultTypeTerminateContract TerminateContract + { + get + { + return this.terminateContractField; + } + set + { + this.terminateContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public ExportAnnulmentType AnnulmentContract + { + get + { + return this.annulmentContractField; + } + set + { + this.annulmentContractField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractResultTypeContractState + { + + /// + NotTakeEffect, + + /// + Proceed, + + /// + Expired, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractResultTypeVersionStatus + { + + /// + Posted, + + /// + Terminated, + + /// + Draft, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractResultTypeTerminateContract : TerminateType + { + + private nsiRef reasonRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(exportSupplyResourceContractObjectAddressResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ObjectAddressType + { + + private ObjectAddressTypeHouseType houseTypeField; + + private bool houseTypeFieldSpecified; + + private string fIASHouseGuidField; + + private string apartmentNumberField; + + private string roomNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ObjectAddressTypeHouseType HouseType + { + get + { + return this.houseTypeField; + } + set + { + this.houseTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HouseTypeSpecified + { + get + { + return this.houseTypeFieldSpecified; + } + set + { + this.houseTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ApartmentNumber + { + get + { + return this.apartmentNumberField; + } + set + { + this.apartmentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ObjectAddressTypeHouseType + { + + /// + MKD, + + /// + ZHD, + + /// + ZHDBlockZastroyki, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultType : ObjectAddressType + { + + private exportSupplyResourceContractObjectAddressResultTypePair[] pairField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private exportSupplyResourceContractObjectAddressResultTypeQuality[] qualityField; + + private exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicator[] otherQualityIndicatorField; + + private exportSupplyResourceContractObjectAddressResultTypePlannedVolume[] plannedVolumeField; + + private string objectGUIDField; + + private string contractRootGUIDField; + + private string contractGUIDField; + + private string versionNumberField; + + private exportSupplyResourceContractObjectAddressResultTypeVersionStatus versionStatusField; + + private exportSupplyResourceContractObjectAddressResultTypeCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + public exportSupplyResourceContractObjectAddressResultType() + { + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Pair", Order=0)] + public exportSupplyResourceContractObjectAddressResultTypePair[] Pair + { + get + { + return this.pairField; + } + set + { + this.pairField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Quality", Order=2)] + public exportSupplyResourceContractObjectAddressResultTypeQuality[] Quality + { + get + { + return this.qualityField; + } + set + { + this.qualityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OtherQualityIndicator", Order=3)] + public exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicator[] OtherQualityIndicator + { + get + { + return this.otherQualityIndicatorField; + } + set + { + this.otherQualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVolume", Order=4)] + public exportSupplyResourceContractObjectAddressResultTypePlannedVolume[] PlannedVolume + { + get + { + return this.plannedVolumeField; + } + set + { + this.plannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string ObjectGUID + { + get + { + return this.objectGUIDField; + } + set + { + this.objectGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=8)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public exportSupplyResourceContractObjectAddressResultTypeVersionStatus VersionStatus + { + get + { + return this.versionStatusField; + } + set + { + this.versionStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public exportSupplyResourceContractObjectAddressResultTypeCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypePair : ContractSubjectObjectAdressType + { + + private exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemType[] heatingSystemTypeField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("HeatingSystemType", Order=0)] + public exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemType[] HeatingSystemType + { + get + { + return this.heatingSystemTypeField; + } + set + { + this.heatingSystemTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemType + { + + private exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeOpenOrNot openOrNotField; + + private exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeCentralizedOrNot centralizedOrNotField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeOpenOrNot OpenOrNot + { + get + { + return this.openOrNotField; + } + set + { + this.openOrNotField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeCentralizedOrNot CentralizedOrNot + { + get + { + return this.centralizedOrNotField; + } + set + { + this.centralizedOrNotField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeOpenOrNot + { + + /// + Opened, + + /// + Closed, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractObjectAddressResultTypePairHeatingSystemTypeCentralizedOrNot + { + + /// + Centralized, + + /// + Decentralized, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypeQuality + { + + private string pairKeyField; + + private nsiRef qualityIndicatorField; + + private exportSupplyResourceContractObjectAddressResultTypeQualityIndicatorValue[] indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef QualityIndicator + { + get + { + return this.qualityIndicatorField; + } + set + { + this.qualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IndicatorValue", Order=2)] + public exportSupplyResourceContractObjectAddressResultTypeQualityIndicatorValue[] IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypeQualityIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicator + { + + private string pairKeyField; + + private string indicatorNameField; + + private exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicatorIndicatorValue indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string IndicatorName + { + get + { + return this.indicatorNameField; + } + set + { + this.indicatorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicatorIndicatorValue IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypeOtherQualityIndicatorIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressResultTypePlannedVolume + { + + private string pairKeyField; + + private decimal volumeField; + + private bool volumeFieldSpecified; + + private string unitField; + + private string feedingModeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VolumeSpecified + { + get + { + return this.volumeFieldSpecified; + } + set + { + this.volumeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FeedingMode + { + get + { + return this.feedingModeField; + } + set + { + this.feedingModeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractObjectAddressResultTypeVersionStatus + { + + /// + Posted, + + /// + Terminated, + + /// + Draft, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportSupplyResourceContractObjectAddressResultTypeCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractType + { + + private object itemField; + + private object[] itemsField; + + private ItemsChoiceType9[] itemsElementNameField; + + private SupplyResourceContractTypePeriod periodField; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + private nsiRef[] contractBaseField; + + private object item1Field; + + private bool isPlannedVolumeField; + + private SupplyResourceContractTypePlannedVolumeType plannedVolumeTypeField; + + private bool plannedVolumeTypeFieldSpecified; + + private SupplyResourceContractTypeContractSubject[] contractSubjectField; + + private SupplyResourceContractTypeCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private SupplyResourceContractTypeSpecifyingQualityIndicators specifyingQualityIndicatorsField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private SupplyResourceContractTypeObjectAddress[] objectAddressField; + + private SupplyResourceContractTypeQuality[] qualityField; + + private SupplyResourceContractTypeOtherQualityIndicator[] otherQualityIndicatorField; + + private SupplyResourceContractTypeTemperatureChart[] temperatureChartField; + + private SupplyResourceContractTypeBillingDate billingDateField; + + private SupplyResourceContractTypePaymentDate paymentDateField; + + private SupplyResourceContractTypeProvidingInformationDate providingInformationDateField; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + private bool volumeDependsField; + + private bool volumeDependsFieldSpecified; + + private bool oneTimePaymentField; + + private bool oneTimePaymentFieldSpecified; + + private SupplyResourceContractTypeAccrualProcedure accrualProcedureField; + + private bool accrualProcedureFieldSpecified; + + private SupplyResourceContractTypeTariff[] tariffField; + + private SupplyResourceContractTypeNorm[] normField; + + public SupplyResourceContractType() + { + this.indicationsAnyDayField = true; + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IsContract", typeof(SupplyResourceContractTypeIsContract), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IsNotContract", typeof(SupplyResourceContractTypeIsNotContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AutomaticRollOverOneYear", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ComptetionDate", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("IndefiniteTerm", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType9[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public SupplyResourceContractTypePeriod Period + { + get + { + return this.periodField; + } + set + { + this.periodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractBase", Order=5)] + public nsiRef[] ContractBase + { + get + { + return this.contractBaseField; + } + set + { + this.contractBaseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingOwner", typeof(SupplyResourceContractTypeApartmentBuildingOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingRepresentativeOwner", typeof(SupplyResourceContractTypeApartmentBuildingRepresentativeOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentBuildingSoleOwner", typeof(SupplyResourceContractTypeApartmentBuildingSoleOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseOwner", typeof(SupplyResourceContractTypeLivingHouseOwner), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Offer", typeof(bool), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(SupplyResourceContractTypeOrganization), Order=6)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool IsPlannedVolume + { + get + { + return this.isPlannedVolumeField; + } + set + { + this.isPlannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public SupplyResourceContractTypePlannedVolumeType PlannedVolumeType + { + get + { + return this.plannedVolumeTypeField; + } + set + { + this.plannedVolumeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PlannedVolumeTypeSpecified + { + get + { + return this.plannedVolumeTypeFieldSpecified; + } + set + { + this.plannedVolumeTypeFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", Order=9)] + public SupplyResourceContractTypeContractSubject[] ContractSubject + { + get + { + return this.contractSubjectField; + } + set + { + this.contractSubjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public SupplyResourceContractTypeCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public SupplyResourceContractTypeSpecifyingQualityIndicators SpecifyingQualityIndicators + { + get + { + return this.specifyingQualityIndicatorsField; + } + set + { + this.specifyingQualityIndicatorsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ObjectAddress", Order=13)] + public SupplyResourceContractTypeObjectAddress[] ObjectAddress + { + get + { + return this.objectAddressField; + } + set + { + this.objectAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Quality", Order=14)] + public SupplyResourceContractTypeQuality[] Quality + { + get + { + return this.qualityField; + } + set + { + this.qualityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OtherQualityIndicator", Order=15)] + public SupplyResourceContractTypeOtherQualityIndicator[] OtherQualityIndicator + { + get + { + return this.otherQualityIndicatorField; + } + set + { + this.otherQualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TemperatureChart", Order=16)] + public SupplyResourceContractTypeTemperatureChart[] TemperatureChart + { + get + { + return this.temperatureChartField; + } + set + { + this.temperatureChartField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public SupplyResourceContractTypeBillingDate BillingDate + { + get + { + return this.billingDateField; + } + set + { + this.billingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public SupplyResourceContractTypePaymentDate PaymentDate + { + get + { + return this.paymentDateField; + } + set + { + this.paymentDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=19)] + public SupplyResourceContractTypeProvidingInformationDate ProvidingInformationDate + { + get + { + return this.providingInformationDateField; + } + set + { + this.providingInformationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=20)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=21)] + public bool VolumeDepends + { + get + { + return this.volumeDependsField; + } + set + { + this.volumeDependsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool VolumeDependsSpecified + { + get + { + return this.volumeDependsFieldSpecified; + } + set + { + this.volumeDependsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=22)] + public bool OneTimePayment + { + get + { + return this.oneTimePaymentField; + } + set + { + this.oneTimePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OneTimePaymentSpecified + { + get + { + return this.oneTimePaymentFieldSpecified; + } + set + { + this.oneTimePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=23)] + public SupplyResourceContractTypeAccrualProcedure AccrualProcedure + { + get + { + return this.accrualProcedureField; + } + set + { + this.accrualProcedureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccrualProcedureSpecified + { + get + { + return this.accrualProcedureFieldSpecified; + } + set + { + this.accrualProcedureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Tariff", Order=24)] + public SupplyResourceContractTypeTariff[] Tariff + { + get + { + return this.tariffField; + } + set + { + this.tariffField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Norm", Order=25)] + public SupplyResourceContractTypeNorm[] Norm + { + get + { + return this.normField; + } + set + { + this.normField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeIsContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeIsNotContract + { + + private string contractNumberField; + + private System.DateTime signingDateField; + + private bool signingDateFieldSpecified; + + private System.DateTime effectiveDateField; + + private bool effectiveDateFieldSpecified; + + private AttachmentType[] contractAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SigningDateSpecified + { + get + { + return this.signingDateFieldSpecified; + } + set + { + this.signingDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EffectiveDateSpecified + { + get + { + return this.effectiveDateFieldSpecified; + } + set + { + this.effectiveDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=3)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType9 + { + + /// + AutomaticRollOverOneYear, + + /// + ComptetionDate, + + /// + IndefiniteTerm, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypePeriod + { + + private SupplyResourceContractTypePeriodStart startField; + + private SupplyResourceContractTypePeriodEnd endField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SupplyResourceContractTypePeriodStart Start + { + get + { + return this.startField; + } + set + { + this.startField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractTypePeriodEnd End + { + get + { + return this.endField; + } + set + { + this.endField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypePeriodStart + { + + private sbyte startDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public SupplyResourceContractTypePeriodStart() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypePeriodEnd + { + + private sbyte endDateField; + + private bool nextMonthField; + + private bool nextMonthFieldSpecified; + + public SupplyResourceContractTypePeriodEnd() + { + this.nextMonthField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NextMonth + { + get + { + return this.nextMonthField; + } + set + { + this.nextMonthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NextMonthSpecified + { + get + { + return this.nextMonthFieldSpecified; + } + set + { + this.nextMonthFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeApartmentBuildingOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeApartmentBuildingRepresentativeOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeApartmentBuildingSoleOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeLivingHouseOwner + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(DRSOIndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NoData", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RegOrg", typeof(DRSORegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeOrganization : RegOrgType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypePlannedVolumeType + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeContractSubject : ContractSubjectType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeSpecifyingQualityIndicators + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeObjectAddress : ObjectAddressType + { + + private string transportGUIDField; + + private SupplyResourceContractTypeObjectAddressPair[] pairField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private SupplyResourceContractTypeObjectAddressPlannedVolume[] plannedVolumeField; + + private SupplyResourceContractTypeObjectAddressCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + public SupplyResourceContractTypeObjectAddress() + { + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Pair", Order=1)] + public SupplyResourceContractTypeObjectAddressPair[] Pair + { + get + { + return this.pairField; + } + set + { + this.pairField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVolume", Order=3)] + public SupplyResourceContractTypeObjectAddressPlannedVolume[] PlannedVolume + { + get + { + return this.plannedVolumeField; + } + set + { + this.plannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public SupplyResourceContractTypeObjectAddressCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeObjectAddressPair + { + + private string pairKeyField; + + private System.DateTime startSupplyDateField; + + private System.DateTime endSupplyDateField; + + private bool endSupplyDateFieldSpecified; + + private SupplyResourceContractTypeObjectAddressPairHeatingSystemType heatingSystemTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime StartSupplyDate + { + get + { + return this.startSupplyDateField; + } + set + { + this.startSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EndSupplyDate + { + get + { + return this.endSupplyDateField; + } + set + { + this.endSupplyDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndSupplyDateSpecified + { + get + { + return this.endSupplyDateFieldSpecified; + } + set + { + this.endSupplyDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public SupplyResourceContractTypeObjectAddressPairHeatingSystemType HeatingSystemType + { + get + { + return this.heatingSystemTypeField; + } + set + { + this.heatingSystemTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeObjectAddressPairHeatingSystemType + { + + private SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeOpenOrNot openOrNotField; + + private SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeCentralizedOrNot centralizedOrNotField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeOpenOrNot OpenOrNot + { + get + { + return this.openOrNotField; + } + set + { + this.openOrNotField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeCentralizedOrNot CentralizedOrNot + { + get + { + return this.centralizedOrNotField; + } + set + { + this.centralizedOrNotField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeOpenOrNot + { + + /// + Opened, + + /// + Closed, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeCentralizedOrNot + { + + /// + Centralized, + + /// + Decentralized, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeObjectAddressPlannedVolume + { + + private string pairKeyField; + + private decimal volumeField; + + private string unitField; + + private string feedingModeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FeedingMode + { + get + { + return this.feedingModeField; + } + set + { + this.feedingModeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeObjectAddressCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeQuality + { + + private string addressObjectKeyField; + + private string pairKeyField; + + private nsiRef qualityIndicatorField; + + private SupplyResourceContractTypeQualityIndicatorValue indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AddressObjectKey + { + get + { + return this.addressObjectKeyField; + } + set + { + this.addressObjectKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef QualityIndicator + { + get + { + return this.qualityIndicatorField; + } + set + { + this.qualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public SupplyResourceContractTypeQualityIndicatorValue IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeQualityIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeOtherQualityIndicator + { + + private string addressObjectKeyField; + + private string pairKeyField; + + private string indicatorNameField; + + private object[] itemsField; + + private ItemsChoiceType11[] itemsElementNameField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AddressObjectKey + { + get + { + return this.addressObjectKeyField; + } + set + { + this.addressObjectKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string IndicatorName + { + get + { + return this.indicatorNameField; + } + set + { + this.indicatorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Correspond", typeof(bool), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("EndRange", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Number", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("StartRange", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=4)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType11[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType11 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + Correspond, + + /// + EndRange, + + /// + Number, + + /// + StartRange, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeTemperatureChart + { + + private string addressObjectKeyField; + + private int outsideTemperatureField; + + private decimal flowLineTemperatureField; + + private decimal oppositeLineTemperatureField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AddressObjectKey + { + get + { + return this.addressObjectKeyField; + } + set + { + this.addressObjectKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int OutsideTemperature + { + get + { + return this.outsideTemperatureField; + } + set + { + this.outsideTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal FlowLineTemperature + { + get + { + return this.flowLineTemperatureField; + } + set + { + this.flowLineTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal OppositeLineTemperature + { + get + { + return this.oppositeLineTemperatureField; + } + set + { + this.oppositeLineTemperatureField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeBillingDate + { + + private sbyte dateField; + + private SupplyResourceContractTypeBillingDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractTypeBillingDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeBillingDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypePaymentDate + { + + private sbyte dateField; + + private SupplyResourceContractTypePaymentDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractTypePaymentDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypePaymentDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeProvidingInformationDate + { + + private sbyte dateField; + + private SupplyResourceContractTypeProvidingInformationDateDateType dateTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplyResourceContractTypeProvidingInformationDateDateType DateType + { + get + { + return this.dateTypeField; + } + set + { + this.dateTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeProvidingInformationDateDateType + { + + /// + C, + + /// + N, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum SupplyResourceContractTypeAccrualProcedure + { + + /// + D, + + /// + O, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeTariff + { + + private object[] itemsField; + + private string pairKeyField; + + private string priceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AddressObjectKey", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ForAllAddressObjects", typeof(bool), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PriceGUID + { + get + { + return this.priceGUIDField; + } + set + { + this.priceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class SupplyResourceContractTypeNorm + { + + private object[] itemsField; + + private string pairKeyField; + + private string normGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AddressObjectKey", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ForAllAddressObjects", typeof(bool), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string NormGUID + { + get + { + return this.normGUIDField; + } + set + { + this.normGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractExportType + { + + private object itemField; + + private string fIASHouseGuidField; + + private string contractNumberField; + + private System.DateTime dateField; + + private bool dateFieldSpecified; + + private System.DateTime startDateField; + + private bool startDateFieldSpecified; + + private System.DateTime endDateField; + + private bool endDateFieldSpecified; + + private string contractObjectField; + + private string commentsField; + + private decimal paymentField; + + private bool paymentFieldSpecified; + + private string moneySpentDirectionField; + + private AttachmentType[] contractAttachmentField; + + private PublicPropertyContractExportTypeRentAgrConfirmationDocument[] rentAgrConfirmationDocumentField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Entrepreneur", typeof(IndType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(RegOrgType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractNumber + { + get + { + return this.contractNumberField; + } + set + { + this.contractNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateSpecified + { + get + { + return this.dateFieldSpecified; + } + set + { + this.dateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StartDateSpecified + { + get + { + return this.startDateFieldSpecified; + } + set + { + this.startDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndDateSpecified + { + get + { + return this.endDateFieldSpecified; + } + set + { + this.endDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string Comments + { + get + { + return this.commentsField; + } + set + { + this.commentsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public decimal Payment + { + get + { + return this.paymentField; + } + set + { + this.paymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PaymentSpecified + { + get + { + return this.paymentFieldSpecified; + } + set + { + this.paymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string MoneySpentDirection + { + get + { + return this.moneySpentDirectionField; + } + set + { + this.moneySpentDirectionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=10)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RentAgrConfirmationDocument", Order=11)] + public PublicPropertyContractExportTypeRentAgrConfirmationDocument[] RentAgrConfirmationDocument + { + get + { + return this.rentAgrConfirmationDocumentField; + } + set + { + this.rentAgrConfirmationDocumentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractExportTypeRentAgrConfirmationDocument + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", typeof(PublicPropertyContractExportTypeRentAgrConfirmationDocumentProtocolMeetingOwners), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PublicPropertyContractExportTypeRentAgrConfirmationDocumentProtocolMeetingOwners + { + + private string protocolNumField; + + private System.DateTime protocolDateField; + + private AttachmentType[] trustDocAttachmentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ProtocolNum + { + get + { + return this.protocolNumField; + } + set + { + this.protocolNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime ProtocolDate + { + get + { + return this.protocolDateField; + } + set + { + this.protocolDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TrustDocAttachment", Order=2)] + public AttachmentType[] TrustDocAttachment + { + get + { + return this.trustDocAttachmentField; + } + set + { + this.trustDocAttachmentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChRequestCriteriaType + { + + private object[] itemsField; + + private ItemsChoiceType7[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LastVersionOnly", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UOGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType7[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType7 + { + + /// + CharterGUID, + + /// + CharterVersionGUID, + + /// + ContractGUID, + + /// + ContractVersionGUID, + + /// + FIASHouseGuid, + + /// + LastVersionOnly, + + /// + SigningDate, + + /// + UOGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterPaymentsInfoType + { + + private System.DateTime beginDateField; + + private System.DateTime endDateField; + + private CharterPaymentsInfoTypeMaintenanceAndRepairsForMembers maintenanceAndRepairsForMembersField; + + private CharterPaymentsInfoTypeMaintenanceAndRepairsForNonMembersInfo maintenanceAndRepairsForNonMembersInfoField; + + private CharterPaymentsInfoTypeServicePayment[] servicePaymentField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime BeginDate + { + get + { + return this.beginDateField; + } + set + { + this.beginDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public CharterPaymentsInfoTypeMaintenanceAndRepairsForMembers MaintenanceAndRepairsForMembers + { + get + { + return this.maintenanceAndRepairsForMembersField; + } + set + { + this.maintenanceAndRepairsForMembersField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public CharterPaymentsInfoTypeMaintenanceAndRepairsForNonMembersInfo MaintenanceAndRepairsForNonMembersInfo + { + get + { + return this.maintenanceAndRepairsForNonMembersInfoField; + } + set + { + this.maintenanceAndRepairsForNonMembersInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ServicePayment", Order=4)] + public CharterPaymentsInfoTypeServicePayment[] ServicePayment + { + get + { + return this.servicePaymentField; + } + set + { + this.servicePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AllContractObjects", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("ContractObjectVersionGUID", typeof(string), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterPaymentsInfoTypeMaintenanceAndRepairsForMembers + { + + private decimal maintenanceAndRepairsForMembersPaymentSizeField; + + private AttachmentType[] maintenanceAndRepairsForMembersProtocolField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal MaintenanceAndRepairsForMembersPaymentSize + { + get + { + return this.maintenanceAndRepairsForMembersPaymentSizeField; + } + set + { + this.maintenanceAndRepairsForMembersPaymentSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MaintenanceAndRepairsForMembersProtocol", Order=1)] + public AttachmentType[] MaintenanceAndRepairsForMembersProtocol + { + get + { + return this.maintenanceAndRepairsForMembersProtocolField; + } + set + { + this.maintenanceAndRepairsForMembersProtocolField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterPaymentsInfoTypeMaintenanceAndRepairsForNonMembersInfo + { + + private decimal maintenanceAndRepairsForNonMembersPaymentSizeField; + + private AttachmentType[] maintenanceAndRepairsForNonMembersProtocolField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal MaintenanceAndRepairsForNonMembersPaymentSize + { + get + { + return this.maintenanceAndRepairsForNonMembersPaymentSizeField; + } + set + { + this.maintenanceAndRepairsForNonMembersPaymentSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MaintenanceAndRepairsForNonMembersProtocol", Order=1)] + public AttachmentType[] MaintenanceAndRepairsForNonMembersProtocol + { + get + { + return this.maintenanceAndRepairsForNonMembersProtocolField; + } + set + { + this.maintenanceAndRepairsForNonMembersProtocolField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterPaymentsInfoTypeServicePayment + { + + private nsiRef serviceField; + + private decimal servicePaymentSizeField; + + private bool servicePaymentSizeFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Service + { + get + { + return this.serviceField; + } + set + { + this.serviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal ServicePaymentSize + { + get + { + return this.servicePaymentSizeField; + } + set + { + this.servicePaymentSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServicePaymentSizeSpecified + { + get + { + return this.servicePaymentSizeFieldSpecified; + } + set + { + this.servicePaymentSizeFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsExportType + { + + private CharterDateDetailsExportTypePeriodMetering periodMeteringField; + + private CharterDateDetailsExportTypePaymentDocumentInterval paymentDocumentIntervalField; + + private CharterDateDetailsExportTypePaymentInterval paymentIntervalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CharterDateDetailsExportTypePeriodMetering PeriodMetering + { + get + { + return this.periodMeteringField; + } + set + { + this.periodMeteringField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public CharterDateDetailsExportTypePaymentDocumentInterval PaymentDocumentInterval + { + get + { + return this.paymentDocumentIntervalField; + } + set + { + this.paymentDocumentIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public CharterDateDetailsExportTypePaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsExportTypePeriodMetering + { + + private DaySelectionExportType startDateField; + + private DaySelectionExportType endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DaySelectionExportType StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DaySelectionExportType EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DaySelectionExportType + { + + private object itemField; + + private bool isNextMonthField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Date", typeof(sbyte), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsNextMonth + { + get + { + return this.isNextMonthField; + } + set + { + this.isNextMonthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsExportTypePaymentDocumentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType2 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType2 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType2 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterDateDetailsExportTypePaymentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType3 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType3 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType3 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterExportType + { + + private System.DateTime dateField; + + private CharterDateDetailsExportType dateDetailsField; + + private CharterExportTypeMeetingProtocol meetingProtocolField; + + private bool noCharterApproveProtocolField; + + private bool noCharterApproveProtocolFieldSpecified; + + private AttachmentType[] attachmentCharterField; + + private bool automaticRollOverOneYearField; + + private bool automaticRollOverOneYearFieldSpecified; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + public CharterExportType() + { + this.noCharterApproveProtocolField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public CharterDateDetailsExportType DateDetails + { + get + { + return this.dateDetailsField; + } + set + { + this.dateDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public CharterExportTypeMeetingProtocol MeetingProtocol + { + get + { + return this.meetingProtocolField; + } + set + { + this.meetingProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool NoCharterApproveProtocol + { + get + { + return this.noCharterApproveProtocolField; + } + set + { + this.noCharterApproveProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoCharterApproveProtocolSpecified + { + get + { + return this.noCharterApproveProtocolFieldSpecified; + } + set + { + this.noCharterApproveProtocolFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AttachmentCharter", Order=4)] + public AttachmentType[] AttachmentCharter + { + get + { + return this.attachmentCharterField; + } + set + { + this.attachmentCharterField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool AutomaticRollOverOneYear + { + get + { + return this.automaticRollOverOneYearField; + } + set + { + this.automaticRollOverOneYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AutomaticRollOverOneYearSpecified + { + get + { + return this.automaticRollOverOneYearFieldSpecified; + } + set + { + this.automaticRollOverOneYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class CharterExportTypeMeetingProtocol + { + + private AttachmentType[] protocolMeetingOwnersField; + + private string[] votingProtocolGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", Order=0)] + public AttachmentType[] ProtocolMeetingOwners + { + get + { + return this.protocolMeetingOwnersField; + } + set + { + this.protocolMeetingOwnersField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", Order=1)] + public string[] VotingProtocolGUID + { + get + { + return this.votingProtocolGUIDField; + } + set + { + this.votingProtocolGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractPaymentsInfoType + { + + private System.DateTime beginDateField; + + private System.DateTime endDateField; + + private decimal houseManagementPaymentSizeField; + + private object[] itemsField; + + private ContractPaymentsInfoTypeServicePayment[] servicePaymentField; + + private ContractPaymentsInfoTypeType typeField; + + private string contractObjectVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime BeginDate + { + get + { + return this.beginDateField; + } + set + { + this.beginDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal HouseManagementPaymentSize + { + get + { + return this.houseManagementPaymentSizeField; + } + set + { + this.houseManagementPaymentSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Protocol", typeof(AttachmentType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", typeof(string), Order=3)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ServicePayment", Order=4)] + public ContractPaymentsInfoTypeServicePayment[] ServicePayment + { + get + { + return this.servicePaymentField; + } + set + { + this.servicePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public ContractPaymentsInfoTypeType Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractPaymentsInfoTypeServicePayment + { + + private nsiRef serviceField; + + private decimal servicePaymentSizeField; + + private bool servicePaymentSizeFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Service + { + get + { + return this.serviceField; + } + set + { + this.serviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal ServicePaymentSize + { + get + { + return this.servicePaymentSizeField; + } + set + { + this.servicePaymentSizeField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ServicePaymentSizeSpecified + { + get + { + return this.servicePaymentSizeFieldSpecified; + } + set + { + this.servicePaymentSizeFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ContractPaymentsInfoTypeType + { + + /// + P, + + /// + C, + + /// + A, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractServiceType + { + + private nsiRef serviceTypeField; + + private System.DateTime startDateField; + + private System.DateTime endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BaseServiceType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Agreement", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CurrentDoc", typeof(bool), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ManageObjectType + { + + private string fIASHouseGuidField; + + private System.DateTime startDateField; + + private System.DateTime endDateField; + + private bool endDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndDateSpecified + { + get + { + return this.endDateFieldSpecified; + } + set + { + this.endDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ImprintAgreementExportType + { + + private string agreementNumberField; + + private System.DateTime agreementDateField; + + private bool agreementDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AgreementNumber + { + get + { + return this.agreementNumberField; + } + set + { + this.agreementNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime AgreementDate + { + get + { + return this.agreementDateField; + } + set + { + this.agreementDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AgreementDateSpecified + { + get + { + return this.agreementDateFieldSpecified; + } + set + { + this.agreementDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsExportType + { + + private DateDetailsExportTypePeriodMetering periodMeteringField; + + private DateDetailsExportTypePaymentDocumentInterval paymentDocumentIntervalField; + + private DateDetailsExportTypePaymentInterval paymentIntervalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DateDetailsExportTypePeriodMetering PeriodMetering + { + get + { + return this.periodMeteringField; + } + set + { + this.periodMeteringField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DateDetailsExportTypePaymentDocumentInterval PaymentDocumentInterval + { + get + { + return this.paymentDocumentIntervalField; + } + set + { + this.paymentDocumentIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public DateDetailsExportTypePaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsExportTypePeriodMetering + { + + private DaySelectionExportType startDateField; + + private DaySelectionExportType endDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public DaySelectionExportType StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DaySelectionExportType EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsExportTypePaymentDocumentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DateDetailsExportTypePaymentInterval + { + + private object itemField; + + private bool item1Field; + + private Item1ChoiceType1 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LastDay", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(sbyte), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CurrentMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextMounth", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public bool Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType1 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType1 + { + + /// + CurrentMounth, + + /// + NextMounth, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractExportType + { + + private string docNumField; + + private System.DateTime signingDateField; + + private System.DateTime effectiveDateField; + + private System.DateTime planDateComptetionField; + + private ContractExportTypeValidity validityField; + + private object itemField; + + private ItemChoiceType3 itemElementNameField; + + private ContractExportTypeProtocol protocolField; + + private nsiRef contractBaseField; + + private DateDetailsExportType dateDetailsField; + + private AttachmentType[] contractAttachmentField; + + private ContractExportTypeAgreementAttachment[] agreementAttachmentField; + + private AttachmentType[] signedOwnersField; + + private AttachmentType[] commissioningPermitAgreementField; + + private AttachmentType[] charterField; + + private AttachmentType[] localGovernmentDecisionField; + + private string registryDecisionIDField; + + private bool automaticRollOverOneYearField; + + private bool automaticRollOverOneYearFieldSpecified; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string DocNum + { + get + { + return this.docNumField; + } + set + { + this.docNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime SigningDate + { + get + { + return this.signingDateField; + } + set + { + this.signingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime EffectiveDate + { + get + { + return this.effectiveDateField; + } + set + { + this.effectiveDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime PlanDateComptetion + { + get + { + return this.planDateComptetionField; + } + set + { + this.planDateComptetionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ContractExportTypeValidity Validity + { + get + { + return this.validityField; + } + set + { + this.validityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("BuildingOwner", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("CompetentAuthority", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("Cooperative", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalHousing", typeof(RegOrgType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("Owners", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType3 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public ContractExportTypeProtocol Protocol + { + get + { + return this.protocolField; + } + set + { + this.protocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public nsiRef ContractBase + { + get + { + return this.contractBaseField; + } + set + { + this.contractBaseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public DateDetailsExportType DateDetails + { + get + { + return this.dateDetailsField; + } + set + { + this.dateDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractAttachment", Order=10)] + public AttachmentType[] ContractAttachment + { + get + { + return this.contractAttachmentField; + } + set + { + this.contractAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AgreementAttachment", Order=11)] + public ContractExportTypeAgreementAttachment[] AgreementAttachment + { + get + { + return this.agreementAttachmentField; + } + set + { + this.agreementAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SignedOwners", Order=12)] + public AttachmentType[] SignedOwners + { + get + { + return this.signedOwnersField; + } + set + { + this.signedOwnersField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CommissioningPermitAgreement", Order=13)] + public AttachmentType[] CommissioningPermitAgreement + { + get + { + return this.commissioningPermitAgreementField; + } + set + { + this.commissioningPermitAgreementField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Charter", Order=14)] + public AttachmentType[] Charter + { + get + { + return this.charterField; + } + set + { + this.charterField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LocalGovernmentDecision", Order=15)] + public AttachmentType[] LocalGovernmentDecision + { + get + { + return this.localGovernmentDecisionField; + } + set + { + this.localGovernmentDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=16)] + public string RegistryDecisionID + { + get + { + return this.registryDecisionIDField; + } + set + { + this.registryDecisionIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=17)] + public bool AutomaticRollOverOneYear + { + get + { + return this.automaticRollOverOneYearField; + } + set + { + this.automaticRollOverOneYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AutomaticRollOverOneYearSpecified + { + get + { + return this.automaticRollOverOneYearFieldSpecified; + } + set + { + this.automaticRollOverOneYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=18)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractExportTypeValidity + { + + private string monthField; + + private string yearField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType3 + { + + /// + BuildingOwner, + + /// + CompetentAuthority, + + /// + Cooperative, + + /// + MunicipalHousing, + + /// + Owners, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractExportTypeProtocol + { + + private ContractExportTypeProtocolProtocolAdd protocolAddField; + + private string[] votingProtocolGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ContractExportTypeProtocolProtocolAdd ProtocolAdd + { + get + { + return this.protocolAddField; + } + set + { + this.protocolAddField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", Order=1)] + public string[] VotingProtocolGUID + { + get + { + return this.votingProtocolGUIDField; + } + set + { + this.votingProtocolGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractExportTypeProtocolProtocolAdd + { + + private object[] itemsField; + + private ItemsChoiceType6[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ProtocolBuildingOwner", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingBoard", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolMeetingOwners", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolOK", typeof(AttachmentType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PurchaseNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType6[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType6 + { + + /// + ProtocolBuildingOwner, + + /// + ProtocolMeetingBoard, + + /// + ProtocolMeetingOwners, + + /// + ProtocolOK, + + /// + PurchaseNumber, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ContractExportTypeAgreementAttachment : AttachmentType + { + + private ImprintAgreementExportType imprintAgreementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ImprintAgreementExportType ImprintAgreement + { + get + { + return this.imprintAgreementField; + } + set + { + this.imprintAgreementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultType + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Charter", typeof(exportCAChResultTypeCharter), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Contract", typeof(exportCAChResultTypeContract), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharter : CharterExportType + { + + private exportCAChResultTypeCharterTerminate terminateField; + + private CharterStatusExportType charterStatusField; + + private string charterGUIDField; + + private string charterVersionGUIDField; + + private exportCAChResultTypeCharterContractObject[] contractObjectField; + + private exportCAChResultTypeCharterCharterPaymentsInfo[] charterPaymentsInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportCAChResultTypeCharterTerminate Terminate + { + get + { + return this.terminateField; + } + set + { + this.terminateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public CharterStatusExportType CharterStatus + { + get + { + return this.charterStatusField; + } + set + { + this.charterStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string CharterGUID + { + get + { + return this.charterGUIDField; + } + set + { + this.charterGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=4)] + public exportCAChResultTypeCharterContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterPaymentsInfo", Order=5)] + public exportCAChResultTypeCharterCharterPaymentsInfo[] CharterPaymentsInfo + { + get + { + return this.charterPaymentsInfoField; + } + set + { + this.charterPaymentsInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterTerminate : TerminateType + { + + private string reasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Reason + { + get + { + return this.reasonField; + } + set + { + this.reasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum CharterStatusExportType + { + + /// + Annul, + + /// + ApprovalProcess, + + /// + Approved, + + /// + Project, + + /// + Rejected, + + /// + Reviewed, + + /// + Terminated, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterContractObject : ManageObjectType + { + + private string contractObjectVersionGUIDField; + + private BaseServiceType baseMServiceField; + + private exportCAChResultTypeCharterContractObjectHouseService[] houseServiceField; + + private exportCAChResultTypeCharterContractObjectAddService[] addServiceField; + + private exportCAChResultTypeCharterContractObjectExclusion exclusionField; + + private StatusMKDType statusObjectField; + + private bool statusObjectFieldSpecified; + + private bool isManagedByContractField; + + private bool isManagedByContractFieldSpecified; + + public exportCAChResultTypeCharterContractObject() + { + this.isManagedByContractField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public exportCAChResultTypeCharterContractObjectHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public exportCAChResultTypeCharterContractObjectAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportCAChResultTypeCharterContractObjectExclusion Exclusion + { + get + { + return this.exclusionField; + } + set + { + this.exclusionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public StatusMKDType StatusObject + { + get + { + return this.statusObjectField; + } + set + { + this.statusObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StatusObjectSpecified + { + get + { + return this.statusObjectFieldSpecified; + } + set + { + this.statusObjectFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool IsManagedByContract + { + get + { + return this.isManagedByContractField; + } + set + { + this.isManagedByContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsManagedByContractSpecified + { + get + { + return this.isManagedByContractFieldSpecified; + } + set + { + this.isManagedByContractFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterContractObjectHouseService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterContractObjectAddService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterContractObjectExclusion + { + + private BaseServiceType baseExclusionField; + + private System.DateTime dateExclusionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseExclusion + { + get + { + return this.baseExclusionField; + } + set + { + this.baseExclusionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateExclusion + { + get + { + return this.dateExclusionField; + } + set + { + this.dateExclusionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum StatusMKDType + { + + /// + Project, + + /// + Rejected, + + /// + ApprovalProcess, + + /// + Approved, + + /// + Locked, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeCharterCharterPaymentsInfo : CharterPaymentsInfoType + { + + private string charterPaymentsInfoVersionGUIDField; + + private exportCAChResultTypeCharterCharterPaymentsInfoStatus statusField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterPaymentsInfoVersionGUID + { + get + { + return this.charterPaymentsInfoVersionGUIDField; + } + set + { + this.charterPaymentsInfoVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportCAChResultTypeCharterCharterPaymentsInfoStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportCAChResultTypeCharterCharterPaymentsInfoStatus + { + + /// + P, + + /// + A, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContract : ContractExportType + { + + private exportCAChResultTypeContractTerminate terminateField; + + private ContractStatusExportType contractStatusField; + + private string contractGUIDField; + + private string contractVersionGUIDField; + + private exportCAChResultTypeContractContractObject[] contractObjectField; + + private exportCAChResultTypeContractContractPaymentsInfo[] contractPaymentsInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportCAChResultTypeContractTerminate Terminate + { + get + { + return this.terminateField; + } + set + { + this.terminateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ContractStatusExportType ContractStatus + { + get + { + return this.contractStatusField; + } + set + { + this.contractStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=4)] + public exportCAChResultTypeContractContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractPaymentsInfo", Order=5)] + public exportCAChResultTypeContractContractPaymentsInfo[] ContractPaymentsInfo + { + get + { + return this.contractPaymentsInfoField; + } + set + { + this.contractPaymentsInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractTerminate : TerminateType + { + + private nsiRef reasonRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ContractStatusExportType + { + + /// + Project, + + /// + ApprovalProcess, + + /// + Rejected, + + /// + Approved, + + /// + Terminated, + + /// + Reviewed, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractContractObject : ManageObjectType + { + + private string contractObjectVersionGUIDField; + + private BaseServiceType baseMServiceField; + + private exportCAChResultTypeContractContractObjectHouseService[] houseServiceField; + + private exportCAChResultTypeContractContractObjectAddService[] addServiceField; + + private exportCAChResultTypeContractContractObjectExclusion exclusionField; + + private StatusMKDType statusObjectField; + + private bool statusObjectFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public exportCAChResultTypeContractContractObjectHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public exportCAChResultTypeContractContractObjectAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportCAChResultTypeContractContractObjectExclusion Exclusion + { + get + { + return this.exclusionField; + } + set + { + this.exclusionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public StatusMKDType StatusObject + { + get + { + return this.statusObjectField; + } + set + { + this.statusObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StatusObjectSpecified + { + get + { + return this.statusObjectFieldSpecified; + } + set + { + this.statusObjectFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractContractObjectHouseService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractContractObjectAddService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractContractObjectExclusion + { + + private BaseServiceType baseExclusionField; + + private System.DateTime dateExclusionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseExclusion + { + get + { + return this.baseExclusionField; + } + set + { + this.baseExclusionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateExclusion + { + get + { + return this.dateExclusionField; + } + set + { + this.dateExclusionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChResultTypeContractContractPaymentsInfo : ContractPaymentsInfoType + { + + private string contractPaymentsInfoVersionGUIDField; + + private exportCAChResultTypeContractContractPaymentsInfoStatus statusField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractPaymentsInfoVersionGUID + { + get + { + return this.contractPaymentsInfoVersionGUIDField; + } + set + { + this.contractPaymentsInfoVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportCAChResultTypeContractContractPaymentsInfoStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportCAChResultTypeContractContractPaymentsInfoStatus + { + + /// + P, + + /// + A, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportRolloverStatusCAChResultType + { + + private string[] orgPPAGUIDField; + + private exportRolloverStatusCAChResultTypeStatus statusField; + + /// + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string[] orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportRolloverStatusCAChResultTypeStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportRolloverStatusCAChResultTypeStatus + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CACh", typeof(exportRolloverStatusCAChResultTypeStatusCACh), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportRolloverStatusCAChResultTypeStatusCACh + { + + private object[] itemsField; + + private ItemsChoiceType5[] itemsElementNameField; + + private exportRolloverStatusCAChResultTypeStatusCAChState stateField; + + private bool stateFieldSpecified; + + private exportRolloverStatusCAChResultTypeStatusCAChContractObject[] contractObjectField; + + private string versionNumberField; + + private bool isRolloverField; + + private string rolloverDescriptionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterStatus", typeof(CharterStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractStatus", typeof(ContractStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PreviousCharterVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PreviousContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType5[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportRolloverStatusCAChResultTypeStatusCAChState State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateSpecified + { + get + { + return this.stateFieldSpecified; + } + set + { + this.stateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=3)] + public exportRolloverStatusCAChResultTypeStatusCAChContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=4)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool IsRollover + { + get + { + return this.isRolloverField; + } + set + { + this.isRolloverField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string RolloverDescription + { + get + { + return this.rolloverDescriptionField; + } + set + { + this.rolloverDescriptionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum CharterStatusType + { + + /// + Project, + + /// + Approved, + + /// + Terminated, + + /// + Annul, + + /// + Reviewed, + + /// + ApprovalProcess, + + /// + Rejected, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum ContractStatusType + { + + /// + Project, + + /// + ApprovalProcess, + + /// + Rejected, + + /// + Approved, + + /// + Terminated, + + /// + Reviewed, + + /// + Annul, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType5 + { + + /// + CharterGUID, + + /// + CharterStatus, + + /// + CharterVersionGUID, + + /// + ContractGUID, + + /// + ContractStatus, + + /// + ContractVersionGUID, + + /// + PreviousCharterVersionGUID, + + /// + PreviousContractVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportRolloverStatusCAChResultTypeStatusCAChState + { + + /// + Running, + + /// + NotRunning, + + /// + Expired, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportRolloverStatusCAChResultTypeStatusCAChContractObject + { + + private string fIASHouseGuidField; + + private StatusMKDType managedObjectStatusField; + + private string contractObjectVersionGUIDField; + + private bool isConflictedField; + + private bool isConflictedFieldSpecified; + + private bool isBlockedField; + + private bool isBlockedFieldSpecified; + + private string previousContractObjectVersionGUIDField; + + public exportRolloverStatusCAChResultTypeStatusCAChContractObject() + { + this.isConflictedField = true; + this.isBlockedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public StatusMKDType ManagedObjectStatus + { + get + { + return this.managedObjectStatusField; + } + set + { + this.managedObjectStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsConflicted + { + get + { + return this.isConflictedField; + } + set + { + this.isConflictedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsConflictedSpecified + { + get + { + return this.isConflictedFieldSpecified; + } + set + { + this.isConflictedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsBlocked + { + get + { + return this.isBlockedField; + } + set + { + this.isBlockedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsBlockedSpecified + { + get + { + return this.isBlockedFieldSpecified; + } + set + { + this.isBlockedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string PreviousContractObjectVersionGUID + { + get + { + return this.previousContractObjectVersionGUIDField; + } + set + { + this.previousContractObjectVersionGUIDField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(importCharterResultType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(importContractResultType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusCAChResultType + { + + private object[] itemsField; + + private ItemsChoiceType4[] itemsElementNameField; + + private exportStatusCAChResultTypeState stateField; + + private bool stateFieldSpecified; + + private exportStatusCAChResultTypeContractObject[] contractObjectField; + + private string versionNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterStatus", typeof(CharterStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractStatus", typeof(ContractStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType4[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportStatusCAChResultTypeState State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateSpecified + { + get + { + return this.stateFieldSpecified; + } + set + { + this.stateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=3)] + public exportStatusCAChResultTypeContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=4)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType4 + { + + /// + CharterGUID, + + /// + CharterStatus, + + /// + CharterVersionGUID, + + /// + ContractGUID, + + /// + ContractStatus, + + /// + ContractVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportStatusCAChResultTypeState + { + + /// + Running, + + /// + NotRunning, + + /// + Expired, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusCAChResultTypeContractObject + { + + private string fIASHouseGuidField; + + private StatusMKDType managedObjectStatusField; + + private string contractObjectVersionGUIDField; + + private bool isConflictedField; + + private bool isConflictedFieldSpecified; + + private bool isBlockedField; + + private bool isBlockedFieldSpecified; + + public exportStatusCAChResultTypeContractObject() + { + this.isConflictedField = true; + this.isBlockedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public StatusMKDType ManagedObjectStatus + { + get + { + return this.managedObjectStatusField; + } + set + { + this.managedObjectStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsConflicted + { + get + { + return this.isConflictedField; + } + set + { + this.isConflictedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsConflictedSpecified + { + get + { + return this.isConflictedFieldSpecified; + } + set + { + this.isConflictedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsBlocked + { + get + { + return this.isBlockedField; + } + set + { + this.isBlockedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsBlockedSpecified + { + get + { + return this.isBlockedFieldSpecified; + } + set + { + this.isBlockedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterResultType : exportStatusCAChResultType + { + + private ErrorMessageType errorField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ErrorMessageType Error + { + get + { + return this.errorField; + } + set + { + this.errorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractResultType : exportStatusCAChResultType + { + + private ErrorMessageType errorField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public ErrorMessageType Error + { + get + { + return this.errorField; + } + set + { + this.errorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportODSPMeteringDeviceDataResultType + { + + private string meteringDeviceRootGUIDField; + + private string meteringDeviceNumberField; + + private string fIASHouseGuidField; + + private bool isConnectedField; + + private System.DateTime updateDateTimeField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceRootGUID + { + get + { + return this.meteringDeviceRootGUIDField; + } + set + { + this.meteringDeviceRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MeteringDeviceNumber + { + get + { + return this.meteringDeviceNumberField; + } + set + { + this.meteringDeviceNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsConnected + { + get + { + return this.isConnectedField; + } + set + { + this.isConnectedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public System.DateTime UpdateDateTime + { + get + { + return this.updateDateTimeField; + } + set + { + this.updateDateTimeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceEnergy", typeof(MunicipalResourceElectricExportType), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceNotEnergy", typeof(MunicipalResourceNotElectricExportType), Order=5)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefNonResidentialPremisesType + { + + private string premisesGUIDField; + + private string premisesUniqueNumberField; + + private string premisesNumField; + + private string fIASChildHouseGuidField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesUniqueNumber + { + get + { + return this.premisesUniqueNumberField; + } + set + { + this.premisesUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefResidentialPremisesType + { + + private string premisesGUIDField; + + private string premisesUniqueNumberField; + + private string premisesNumField; + + private string fIASChildHouseGuidField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private object itemField; + + private BriefLivingRoomType[] livingRoomField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesUniqueNumber + { + get + { + return this.premisesUniqueNumberField; + } + set + { + this.premisesUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=8)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=8)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", Order=9)] + public BriefLivingRoomType[] LivingRoom + { + get + { + return this.livingRoomField; + } + set + { + this.livingRoomField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefLivingRoomType + { + + private string livingRoomGUIDField; + + private string livingRoomUniqueNumberField; + + private string roomNumberField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomUniqueNumber + { + get + { + return this.livingRoomUniqueNumberField; + } + set + { + this.livingRoomUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string RoomNumber + { + get + { + return this.roomNumberField; + } + set + { + this.roomNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefEntranceType + { + + private string entranceGUIDField; + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceGUID + { + get + { + return this.entranceGUIDField; + } + set + { + this.entranceGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefApartmentHouseType + { + + private string hCSHouseGUIDField; + + private string fIASHouseGUIDField; + + private string houseUniqueNumberField; + + private System.DateTime modificationDateField; + + private BriefEntranceType[] entranceField; + + private BriefResidentialPremisesType[] residentialPremisesField; + + private BriefNonResidentialPremisesType[] nonResidentialPremisesField; + + private nsiRef houseManagementTypeField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private System.DateTime demolishionDateField; + + private bool demolishionDateFieldSpecified; + + private string demolishionReasonField; + + private bool isAsyncProcessedField; + + private bool isAsyncProcessedFieldSpecified; + + private ExportHostelDataType exportHostelDataField; + + public BriefApartmentHouseType() + { + this.isAsyncProcessedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HCSHouseGUID + { + get + { + return this.hCSHouseGUIDField; + } + set + { + this.hCSHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGUID + { + get + { + return this.fIASHouseGUIDField; + } + set + { + this.fIASHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string HouseUniqueNumber + { + get + { + return this.houseUniqueNumberField; + } + set + { + this.houseUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entrance", Order=4)] + public BriefEntranceType[] Entrance + { + get + { + return this.entranceField; + } + set + { + this.entranceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremises", Order=5)] + public BriefResidentialPremisesType[] ResidentialPremises + { + get + { + return this.residentialPremisesField; + } + set + { + this.residentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremises", Order=6)] + public BriefNonResidentialPremisesType[] NonResidentialPremises + { + get + { + return this.nonResidentialPremisesField; + } + set + { + this.nonResidentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=11)] + public System.DateTime DemolishionDate + { + get + { + return this.demolishionDateField; + } + set + { + this.demolishionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DemolishionDateSpecified + { + get + { + return this.demolishionDateFieldSpecified; + } + set + { + this.demolishionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string DemolishionReason + { + get + { + return this.demolishionReasonField; + } + set + { + this.demolishionReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public bool IsAsyncProcessed + { + get + { + return this.isAsyncProcessedField; + } + set + { + this.isAsyncProcessedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsAsyncProcessedSpecified + { + get + { + return this.isAsyncProcessedFieldSpecified; + } + set + { + this.isAsyncProcessedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public ExportHostelDataType ExportHostelData + { + get + { + return this.exportHostelDataField; + } + set + { + this.exportHostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportHostelDataType + { + + private bool isMunicipalPropertyField; + + private bool isMunicipalPropertyFieldSpecified; + + private bool isRegionPropertyField; + + private bool isRegionPropertyFieldSpecified; + + private nsiRef hostelTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsMunicipalProperty + { + get + { + return this.isMunicipalPropertyField; + } + set + { + this.isMunicipalPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsMunicipalPropertySpecified + { + get + { + return this.isMunicipalPropertyFieldSpecified; + } + set + { + this.isMunicipalPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsRegionProperty + { + get + { + return this.isRegionPropertyField; + } + set + { + this.isRegionPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsRegionPropertySpecified + { + get + { + return this.isRegionPropertyFieldSpecified; + } + set + { + this.isRegionPropertyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef HostelType + { + get + { + return this.hostelTypeField; + } + set + { + this.hostelTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefBlockType + { + + private string blockGUIDField; + + private string blockUniqueNumberField; + + private string blockNumField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + private BriefLivingRoomType[] livingRoomField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockGUID + { + get + { + return this.blockGUIDField; + } + set + { + this.blockGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string BlockUniqueNumber + { + get + { + return this.blockUniqueNumberField; + } + set + { + this.blockUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", Order=8)] + public BriefLivingRoomType[] LivingRoom + { + get + { + return this.livingRoomField; + } + set + { + this.livingRoomField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefLivingHouseType + { + + private string hCSHouseGUIDField; + + private string fIASHouseGUIDField; + + private string houseUniqueNumberField; + + private System.DateTime modificationDateField; + + private bool hasBlocksField; + + private bool isMultipleHousesAddressField; + + private object[] itemsField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private System.DateTime demolishionDateField; + + private bool demolishionDateFieldSpecified; + + private string demolishionReasonField; + + private bool isAsyncProcessedField; + + private bool isAsyncProcessedFieldSpecified; + + private ExportHostelDataType exportHostelDataField; + + public BriefLivingHouseType() + { + this.isAsyncProcessedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HCSHouseGUID + { + get + { + return this.hCSHouseGUIDField; + } + set + { + this.hCSHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGUID + { + get + { + return this.fIASHouseGUIDField; + } + set + { + this.fIASHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string HouseUniqueNumber + { + get + { + return this.houseUniqueNumberField; + } + set + { + this.houseUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool HasBlocks + { + get + { + return this.hasBlocksField; + } + set + { + this.hasBlocksField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool IsMultipleHousesAddress + { + get + { + return this.isMultipleHousesAddressField; + } + set + { + this.isMultipleHousesAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Block", typeof(BriefBlockType), Order=6)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", typeof(BriefLivingRoomType), Order=6)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=7)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=10)] + public System.DateTime DemolishionDate + { + get + { + return this.demolishionDateField; + } + set + { + this.demolishionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DemolishionDateSpecified + { + get + { + return this.demolishionDateFieldSpecified; + } + set + { + this.demolishionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string DemolishionReason + { + get + { + return this.demolishionReasonField; + } + set + { + this.demolishionReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public bool IsAsyncProcessed + { + get + { + return this.isAsyncProcessedField; + } + set + { + this.isAsyncProcessedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsAsyncProcessedSpecified + { + get + { + return this.isAsyncProcessedFieldSpecified; + } + set + { + this.isAsyncProcessedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public ExportHostelDataType ExportHostelData + { + get + { + return this.exportHostelDataField; + } + set + { + this.exportHostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportBriefLivingHouseResultType + { + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(ErrorMessageType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseInfo", typeof(BriefLivingHouseType), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportBriefLivingHouseRequestType + { + + private string transportGUIDField; + + private string houseGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string HouseGuid + { + get + { + return this.houseGuidField; + } + set + { + this.houseGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefBasicCharactericticsType + { + + private string houseUniqueNumberField; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private OKTMORefType oKTMOField; + + private string orgPPAGUIDField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private System.DateTime demolishionDateField; + + private bool demolishionDateFieldSpecified; + + private string demolishionReasonField; + + private bool isAsyncProcessedField; + + private bool isAsyncProcessedFieldSpecified; + + private ExportHostelDataType exportHostelDataField; + + public BriefBasicCharactericticsType() + { + this.isAsyncProcessedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HouseUniqueNumber + { + get + { + return this.houseUniqueNumberField; + } + set + { + this.houseUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime DemolishionDate + { + get + { + return this.demolishionDateField; + } + set + { + this.demolishionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DemolishionDateSpecified + { + get + { + return this.demolishionDateFieldSpecified; + } + set + { + this.demolishionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string DemolishionReason + { + get + { + return this.demolishionReasonField; + } + set + { + this.demolishionReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public bool IsAsyncProcessed + { + get + { + return this.isAsyncProcessedField; + } + set + { + this.isAsyncProcessedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsAsyncProcessedSpecified + { + get + { + return this.isAsyncProcessedFieldSpecified; + } + set + { + this.isAsyncProcessedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public ExportHostelDataType ExportHostelData + { + get + { + return this.exportHostelDataField; + } + set + { + this.exportHostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefLocationType + { + + private string hCSHouseGUIDField; + + private string fIASHouseGUIDField; + + private string addressField; + + private string aOGUIDField; + + private string hOUSENUMField; + + private string bUILDNUMField; + + private string sTRUCNUMField; + + private sbyte eSTSTATUSField; + + private sbyte sTRSTATUSField; + + private bool sTRSTATUSFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HCSHouseGUID + { + get + { + return this.hCSHouseGUIDField; + } + set + { + this.hCSHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASHouseGUID + { + get + { + return this.fIASHouseGUIDField; + } + set + { + this.fIASHouseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AOGUID + { + get + { + return this.aOGUIDField; + } + set + { + this.aOGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string HOUSENUM + { + get + { + return this.hOUSENUMField; + } + set + { + this.hOUSENUMField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string BUILDNUM + { + get + { + return this.bUILDNUMField; + } + set + { + this.bUILDNUMField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string STRUCNUM + { + get + { + return this.sTRUCNUMField; + } + set + { + this.sTRUCNUMField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public sbyte ESTSTATUS + { + get + { + return this.eSTSTATUSField; + } + set + { + this.eSTSTATUSField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public sbyte STRSTATUS + { + get + { + return this.sTRSTATUSField; + } + set + { + this.sTRSTATUSField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool STRSTATUSSpecified + { + get + { + return this.sTRSTATUSFieldSpecified; + } + set + { + this.sTRSTATUSFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BriefBasicHouseType + { + + private BriefLocationType locationInfoField; + + private BriefBasicCharactericticsType basicCharacteristictsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BriefLocationType LocationInfo + { + get + { + return this.locationInfoField; + } + set + { + this.locationInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BriefBasicCharactericticsType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportBriefBasicHouseResultType + { + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("BasicHouseInfo", typeof(BriefBasicHouseType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(ErrorMessageType), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportBriefBasicCriteriaType + { + + private string itemField; + + private ItemChoiceType2 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BlockUniqueNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HouseUniqueNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomUniqueNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PremisesUniqueNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType2 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType2 + { + + /// + BlockUniqueNumber, + + /// + FIASHouseGuid, + + /// + HouseUniqueNumber, + + /// + LivingRoomUniqueNumber, + + /// + PremisesUniqueNumber, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ExportBriefBasicHouseRequestType + { + + private string transportGUIDField; + + private ExportBriefBasicCriteriaType criteriaField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ExportBriefBasicCriteriaType Criteria + { + get + { + return this.criteriaField; + } + set + { + this.criteriaField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LivingHouseExportType + { + + private HouseBasicExportType basicCharacteristictsField; + + private bool hasBlocksField; + + private bool hasBlocksFieldSpecified; + + private bool hasMultipleHousesWithSameAddressField; + + private bool hasMultipleHousesWithSameAddressFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicExportType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool HasBlocks + { + get + { + return this.hasBlocksField; + } + set + { + this.hasBlocksField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasBlocksSpecified + { + get + { + return this.hasBlocksFieldSpecified; + } + set + { + this.hasBlocksFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HasMultipleHousesWithSameAddress + { + get + { + return this.hasMultipleHousesWithSameAddressField; + } + set + { + this.hasMultipleHousesWithSameAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HasMultipleHousesWithSameAddressSpecified + { + get + { + return this.hasMultipleHousesWithSameAddressFieldSpecified; + } + set + { + this.hasMultipleHousesWithSameAddressFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseBasicExportType : OGFExportStatusType + { + + private string fIASHouseGuidField; + + private decimal totalSquareField; + + private bool totalSquareFieldSpecified; + + private nsiRef stateField; + + private nsiRef lifeCycleStageField; + + private short usedYearField; + + private bool usedYearFieldSpecified; + + private string floorCountField; + + private OKTMORefType oKTMOField; + + private nsiRef olsonTZField; + + private bool culturalHeritageField; + + private bool culturalHeritageFieldSpecified; + + private OGFData[] oGFDataField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private System.DateTime demolishionDateField; + + private bool demolishionDateFieldSpecified; + + private DemolishionReasonType demolishionReasonField; + + private ExportHostelDataType exportHostelDataField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalSquare + { + get + { + return this.totalSquareField; + } + set + { + this.totalSquareField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalSquareSpecified + { + get + { + return this.totalSquareFieldSpecified; + } + set + { + this.totalSquareFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef State + { + get + { + return this.stateField; + } + set + { + this.stateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef LifeCycleStage + { + get + { + return this.lifeCycleStageField; + } + set + { + this.lifeCycleStageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public short UsedYear + { + get + { + return this.usedYearField; + } + set + { + this.usedYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool UsedYearSpecified + { + get + { + return this.usedYearFieldSpecified; + } + set + { + this.usedYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string FloorCount + { + get + { + return this.floorCountField; + } + set + { + this.floorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public OKTMORefType OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public nsiRef OlsonTZ + { + get + { + return this.olsonTZField; + } + set + { + this.olsonTZField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool CulturalHeritage + { + get + { + return this.culturalHeritageField; + } + set + { + this.culturalHeritageField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CulturalHeritageSpecified + { + get + { + return this.culturalHeritageFieldSpecified; + } + set + { + this.culturalHeritageFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=9)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=10)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=13)] + public System.DateTime DemolishionDate + { + get + { + return this.demolishionDateField; + } + set + { + this.demolishionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DemolishionDateSpecified + { + get + { + return this.demolishionDateFieldSpecified; + } + set + { + this.demolishionDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public DemolishionReasonType DemolishionReason + { + get + { + return this.demolishionReasonField; + } + set + { + this.demolishionReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=15)] + public ExportHostelDataType ExportHostelData + { + get + { + return this.exportHostelDataField; + } + set + { + this.exportHostelDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DemolishionReasonType + { + + private AttachmentType[] documentField; + + private string descriptionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Document", Order=0)] + public AttachmentType[] Document + { + get + { + return this.documentField; + } + set + { + this.documentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class OGFExportStatusType : GKN_EGRP_KeyExportType + { + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(OGFExportStatusType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(PremisesBasicExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BlockExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(HouseBasicExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class GKN_EGRP_KeyExportType + { + + private object itemField; + + private ItemChoiceType itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CadastralNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("No_RSO_GKN_EGRP_Data", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("No_RSO_GKN_EGRP_Registered", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + CadastralNumber, + + /// + No_RSO_GKN_EGRP_Data, + + /// + No_RSO_GKN_EGRP_Registered, + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NonResidentialPremisesExportType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(ResidentialPremisesExportType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class PremisesBasicExportType : OGFExportStatusType + { + + private string premisesNumField; + + private string floorField; + + private OGFData[] oGFDataField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesNum + { + get + { + return this.premisesNumField; + } + set + { + this.premisesNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Floor + { + get + { + return this.floorField; + } + set + { + this.floorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=2)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class NonResidentialPremisesExportType : PremisesBasicExportType + { + + private string fIASChildHouseGuidField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private bool isCommonPropertyField; + + private bool isCommonPropertyFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsCommonProperty + { + get + { + return this.isCommonPropertyField; + } + set + { + this.isCommonPropertyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCommonPropertySpecified + { + get + { + return this.isCommonPropertyFieldSpecified; + } + set + { + this.isCommonPropertyFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ResidentialPremisesExportType : PremisesBasicExportType + { + + private object item1Field; + + private string fIASChildHouseGuidField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item2Field; + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceNum", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("HasNoEntrance", typeof(bool), Order=0)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=4)] + public object Item2 + { + get + { + return this.item2Field; + } + set + { + this.item2Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class BlockExportType : OGFExportStatusType + { + + private string blockNumField; + + private nsiRef premisesCharacteristicField; + + private decimal totalAreaField; + + private bool totalAreaFieldSpecified; + + private object item1Field; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private OGFData[] oGFDataField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + private BlockCategoryType categoryField; + + private bool categoryFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockNum + { + get + { + return this.blockNumField; + } + set + { + this.blockNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef PremisesCharacteristic + { + get + { + return this.premisesCharacteristicField; + } + set + { + this.premisesCharacteristicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal TotalArea + { + get + { + return this.totalAreaField; + } + set + { + this.totalAreaField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TotalAreaSpecified + { + get + { + return this.totalAreaFieldSpecified; + } + set + { + this.totalAreaFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("GrossArea", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("NoGrossArea", typeof(bool), Order=3)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=7)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public BlockCategoryType Category + { + get + { + return this.categoryField; + } + set + { + this.categoryField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CategorySpecified + { + get + { + return this.categoryFieldSpecified; + } + set + { + this.categoryFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class LiftExportType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private string factoryNumField; + + private nsiRef typeField; + + private OGFData[] oGFDataField; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string FactoryNum + { + get + { + return this.factoryNumField; + } + set + { + this.factoryNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OGFData", Order=4)] + public OGFData[] OGFData + { + get + { + return this.oGFDataField; + } + set + { + this.oGFDataField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class EntranceExportType + { + + private string entranceNumField; + + private string fIASChildHouseGuidField; + + private int storeysCountField; + + private bool storeysCountFieldSpecified; + + private short creationYearField; + + private bool creationYearFieldSpecified; + + private System.DateTime terminationDateField; + + private bool terminationDateFieldSpecified; + + private nsiRef annulmentReasonField; + + private string annulmentInfoField; + + private bool informationConfirmedField; + + private bool informationConfirmedFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string EntranceNum + { + get + { + return this.entranceNumField; + } + set + { + this.entranceNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FIASChildHouseGuid + { + get + { + return this.fIASChildHouseGuidField; + } + set + { + this.fIASChildHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int StoreysCount + { + get + { + return this.storeysCountField; + } + set + { + this.storeysCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StoreysCountSpecified + { + get + { + return this.storeysCountFieldSpecified; + } + set + { + this.storeysCountFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public short CreationYear + { + get + { + return this.creationYearField; + } + set + { + this.creationYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CreationYearSpecified + { + get + { + return this.creationYearFieldSpecified; + } + set + { + this.creationYearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime TerminationDate + { + get + { + return this.terminationDateField; + } + set + { + this.terminationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool TerminationDateSpecified + { + get + { + return this.terminationDateFieldSpecified; + } + set + { + this.terminationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public nsiRef AnnulmentReason + { + get + { + return this.annulmentReasonField; + } + set + { + this.annulmentReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string AnnulmentInfo + { + get + { + return this.annulmentInfoField; + } + set + { + this.annulmentInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool InformationConfirmed + { + get + { + return this.informationConfirmedField; + } + set + { + this.informationConfirmedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InformationConfirmedSpecified + { + get + { + return this.informationConfirmedFieldSpecified; + } + set + { + this.informationConfirmedFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class ApartmentHouseExportType + { + + private HouseBasicExportType basicCharacteristictsField; + + private string undergroundFloorCountField; + + private nsiRef overhaulFormingKindField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public HouseBasicExportType BasicCharacteristicts + { + get + { + return this.basicCharacteristictsField; + } + set + { + this.basicCharacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string UndergroundFloorCount + { + get + { + return this.undergroundFloorCountField; + } + set + { + this.undergroundFloorCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef OverhaulFormingKind + { + get + { + return this.overhaulFormingKindField; + } + set + { + this.overhaulFormingKindField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultType + { + + private string houseUniqueNumberField; + + private System.DateTime modificationDateField; + + private string houseGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HouseUniqueNumber + { + get + { + return this.houseUniqueNumberField; + } + set + { + this.houseUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string HouseGUID + { + get + { + return this.houseGUIDField; + } + set + { + this.houseGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouse", typeof(exportHouseResultTypeApartmentHouse), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouse", typeof(exportHouseResultTypeLivingHouse), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouse : ApartmentHouseExportType + { + + private exportHouseResultTypeApartmentHouseEntrance[] entranceField; + + private exportHouseResultTypeApartmentHouseResidentialPremises[] residentialPremisesField; + + private exportHouseResultTypeApartmentHouseLift[] liftField; + + private exportHouseResultTypeApartmentHouseNonResidentialPremises[] nonResidentialPremisesField; + + private nsiRef houseManagementTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Entrance", Order=0)] + public exportHouseResultTypeApartmentHouseEntrance[] Entrance + { + get + { + return this.entranceField; + } + set + { + this.entranceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremises", Order=1)] + public exportHouseResultTypeApartmentHouseResidentialPremises[] ResidentialPremises + { + get + { + return this.residentialPremisesField; + } + set + { + this.residentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Lift", Order=2)] + public exportHouseResultTypeApartmentHouseLift[] Lift + { + get + { + return this.liftField; + } + set + { + this.liftField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremises", Order=3)] + public exportHouseResultTypeApartmentHouseNonResidentialPremises[] NonResidentialPremises + { + get + { + return this.nonResidentialPremisesField; + } + set + { + this.nonResidentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouseEntrance : EntranceExportType + { + + private System.DateTime modificationDateField; + + private string entranceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string EntranceGUID + { + get + { + return this.entranceGUIDField; + } + set + { + this.entranceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouseResidentialPremises : ResidentialPremisesExportType + { + + private string premisesUniqueNumberField; + + private System.DateTime modificationDateField; + + private exportHouseResultTypeApartmentHouseResidentialPremisesLivingRoom[] livingRoomField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesUniqueNumber + { + get + { + return this.premisesUniqueNumberField; + } + set + { + this.premisesUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", Order=2)] + public exportHouseResultTypeApartmentHouseResidentialPremisesLivingRoom[] LivingRoom + { + get + { + return this.livingRoomField; + } + set + { + this.livingRoomField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouseResidentialPremisesLivingRoom : RoomExportType + { + + private string livingRoomUniqueNumberField; + + private System.DateTime modificationDateField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string LivingRoomUniqueNumber + { + get + { + return this.livingRoomUniqueNumberField; + } + set + { + this.livingRoomUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouseLift : LiftExportType + { + + private System.DateTime modificationDateField; + + private string liftGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LiftGUID + { + get + { + return this.liftGUIDField; + } + set + { + this.liftGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeApartmentHouseNonResidentialPremises : NonResidentialPremisesExportType + { + + private string premisesUniqueNumberField; + + private System.DateTime modificationDateField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PremisesUniqueNumber + { + get + { + return this.premisesUniqueNumberField; + } + set + { + this.premisesUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeLivingHouse : LivingHouseExportType + { + + private object[] itemsField; + + private string houseGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Block", typeof(exportHouseResultTypeLivingHouseBlock), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", typeof(exportHouseResultTypeLivingHouseLivingRoom), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string HouseGUID + { + get + { + return this.houseGUIDField; + } + set + { + this.houseGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeLivingHouseBlock : BlockExportType + { + + private string blockUniqueNumberField; + + private System.DateTime modificationDateField; + + private string blockGUIDField; + + private exportHouseResultTypeLivingHouseBlockLivingRoom[] livingRoomField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string BlockUniqueNumber + { + get + { + return this.blockUniqueNumberField; + } + set + { + this.blockUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string BlockGUID + { + get + { + return this.blockGUIDField; + } + set + { + this.blockGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoom", Order=3)] + public exportHouseResultTypeLivingHouseBlockLivingRoom[] LivingRoom + { + get + { + return this.livingRoomField; + } + set + { + this.livingRoomField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeLivingHouseBlockLivingRoom : RoomExportType + { + + private string livingRoomUniqueNumberField; + + private System.DateTime modificationDateField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string LivingRoomUniqueNumber + { + get + { + return this.livingRoomUniqueNumberField; + } + set + { + this.livingRoomUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseResultTypeLivingHouseLivingRoom : RoomExportType + { + + private string livingRoomUniqueNumberField; + + private System.DateTime modificationDateField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string LivingRoomUniqueNumber + { + get + { + return this.livingRoomUniqueNumberField; + } + set + { + this.livingRoomUniqueNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModificationDate + { + get + { + return this.modificationDateField; + } + set + { + this.modificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceFullInformationType + { + + private MeteringDeviceBasicCharacteristicsType basicChatacteristictsField; + + private object itemField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MeteringDeviceBasicCharacteristicsType BasicChatacteristicts + { + get + { + return this.basicChatacteristictsField; + } + set + { + this.basicChatacteristictsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedWithMetering", typeof(MeteringDeviceFullInformationTypeLinkedWithMetering), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NotLinkedWithMetering", typeof(bool), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceEnergy", typeof(MunicipalResourceElectricBaseType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResourceNotEnergy", typeof(MunicipalResourceNotElectricBaseType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResources", typeof(DeviceMunicipalResourceType), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class MeteringDeviceFullInformationTypeLinkedWithMetering + { + + private MeteringDeviceFullInformationTypeLinkedWithMeteringInstallationPlace installationPlaceField; + + private string[] linkedMeteringDeviceVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public MeteringDeviceFullInformationTypeLinkedWithMeteringInstallationPlace InstallationPlace + { + get + { + return this.installationPlaceField; + } + set + { + this.installationPlaceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedMeteringDeviceVersionGUID", Order=1)] + public string[] LinkedMeteringDeviceVersionGUID + { + get + { + return this.linkedMeteringDeviceVersionGUIDField; + } + set + { + this.linkedMeteringDeviceVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum MeteringDeviceFullInformationTypeLinkedWithMeteringInstallationPlace + { + + /// + @in, + + /// + @out, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class HouseToDemolishType + { + + private string fIASHouseGuidField; + + private System.DateTime demolishionDateField; + + private DemolishionReasonType demolishionReasonField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DemolishionDate + { + get + { + return this.demolishionDateField; + } + set + { + this.demolishionDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public DemolishionReasonType DemolishionReason + { + get + { + return this.demolishionReasonField; + } + set + { + this.demolishionReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(DemolishHouseRequestType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class DemolishHouseRequestType : BaseType + { + + private HouseToDemolishType[] houseToDemolishField; + + private string versionField; + + public DemolishHouseRequestType() + { + this.versionField = "11.1.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseToDemolish", Order=0)] + public HouseToDemolishType[] HouseToDemolish + { + get + { + return this.houseToDemolishField; + } + set + { + this.houseToDemolishField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management-service-async/", ConfigurationName="Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync")] + public interface HouseManagementPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:importMeteringDeviceData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importMeteringDeviceData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportMeteringDeviceData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportMeteringDeviceData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportODSPMeteringDeviceData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportODSPMeteringDeviceData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportODSPMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.HouseManagement.getStateRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importContractData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importContractData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importContractDataAsync(Hcs.Service.Async.HouseManagement.importContractDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importCharterData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importCharterData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importCharterDataAsync(Hcs.Service.Async.HouseManagement.importCharterDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportStatusCAChData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportStatusCAChData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportStatusCAChDataAsync(Hcs.Service.Async.HouseManagement.exportStatusCAChDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportHouseData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportHouseData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportHouseDataAsync(Hcs.Service.Async.HouseManagement.exportHouseDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importAccountData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importAccountData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importAccountDataAsync(Hcs.Service.Async.HouseManagement.importAccountDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportAccountData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportAccountData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportAccountDataAsync(Hcs.Service.Async.HouseManagement.exportAccountDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importPublicPropertyContract", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importPublicPropertyContract", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportStatusPublicPropertyContract", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportStatusPublicPropertyContract", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportStatusPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importNotificationData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importNotificationData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importNotificationDataAsync(Hcs.Service.Async.HouseManagement.importNotificationDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importVotingProtocol", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importVotingProtocol", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importVotingProtocolAsync(Hcs.Service.Async.HouseManagement.importVotingProtocolRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportVotingProtocol", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportVotingProtocol", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportVotingProtocolAsync(Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importOwnerDecision", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importOwnerDecision", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportOwnerDecision", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportOwnerDecision", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportCAChData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportCAChData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportCAChDataAsync(Hcs.Service.Async.HouseManagement.exportCAChDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importHouseUOData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importHouseUOData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importHouseUODataAsync(Hcs.Service.Async.HouseManagement.importHouseUODataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importHouseOMSData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importHouseOMSData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importHouseOMSDataAsync(Hcs.Service.Async.HouseManagement.importHouseOMSDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importHouseESPData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importHouseESPData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importHouseESPDataAsync(Hcs.Service.Async.HouseManagement.importHouseESPDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importSupplyResourceContractData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importSupplyResourceContractData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportSupplyResourceContractData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportSupplyResourceContractData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.exportSupplyResourceContractDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importAccountIndividualServices", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importAccountIndividualServices", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportAccountIndividualServices", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportAccountIndividualServices", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportSupplyResourceContractObjectAddressData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportSupplyResourceContractObjectAddressData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importSupplyResourceContractObjectAddressData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importSupplyResourceContractObjectAddressData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importSupplyResourceContractProjectData", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importSupplyResourceContractProjectData", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importSupplyResourceContractProjectDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectDataRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportRolloverStatusCACh", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportRolloverStatusCACh", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportRolloverStatusCAChAsync(Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportBriefSupplyResourceContract", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportBriefSupplyResourceContract", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportBriefSupplyResourceContractAsync(Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportBriefSocialHireContract", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportBriefSocialHireContract", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportBriefSocialHireContractAsync(Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:demolishHouse", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:demolishHouse", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task demolishHouseAsync(Hcs.Service.Async.HouseManagement.demolishHouseRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportBriefBasicHouse", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportBriefBasicHouse", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportBriefBasicHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportBriefLivingHouse", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportBriefLivingHouse", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportBriefLivingHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportBriefApartmentHouse", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportBriefApartmentHouse", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportBriefApartmentHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importExternalVotingProtocol", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importExternalVotingProtocol", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importExternalVotingProtocolAsync(Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importVotingMessage", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importVotingMessage", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importVotingMessageAsync(Hcs.Service.Async.HouseManagement.importVotingMessageRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportVotingMessage", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportVotingMessage", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportVotingMessageAsync(Hcs.Service.Async.HouseManagement.exportVotingMessageRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importOwnerRefusal", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:importOwnerRefusal", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportOwnerRefusal", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.HouseManagement.Fault), Action="urn:exportOwnerRefusal", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntpsType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ForeignBranchType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LegalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignaturePropertiesType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManifestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentReasonType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiItemType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NsiListType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DocumentPortalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PeriodOpen))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(Period))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(YearMonth))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CommonResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SignedAttachmentType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(HeaderType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MeteringDeviceFullInformationExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerRefusalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportQuestionOnDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OwnerDecisionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExternalVotingProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AnnulmentProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MessageType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(VoitingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseServiceCharterType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApprovalType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DeleteDocType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(RollOverType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ProtocolOKType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(DaySelectionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(MainInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountIndividualServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountUpdateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountReasonsImportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(AccountType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUpdateUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseESPType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseOMSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseUOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(OGFImportStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKNRelationshipStatusType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyRSOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSocialHireContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportOwnerDecisionResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportBriefSupplyResourceContractResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractProjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportSupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(IndicatorValueType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectObjectAdressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ObjectAddressType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractSubjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SupplyResourceContractType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(FIOType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PublicPropertyContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChRequestCriteriaType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(CharterExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractPaymentsInfoType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractServiceType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ManageObjectType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(TerminateType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ContractExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportRolloverStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportStatusCAChResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportODSPMeteringDeviceDataResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BriefApartmentHouseType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefLivingHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExportBriefBasicHouseRequestType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LivingHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(LiftExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(EntranceExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(GKN_EGRP_KeyExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ApartmentHouseExportType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(exportHouseResultType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeader : HeaderType + { + + private object itemField; + + private ItemChoiceType25 itemElementNameField; + + private bool isOperatorSignatureField; + + private bool isOperatorSignatureFieldSpecified; + + private ISCreator[] iSCreatorField; + + public RequestHeader() + { + this.isOperatorSignatureField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Citizen", typeof(RequestHeaderCitizen), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SenderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType25 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsOperatorSignature + { + get + { + return this.isOperatorSignatureField; + } + set + { + this.isOperatorSignatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsOperatorSignatureSpecified + { + get + { + return this.isOperatorSignatureFieldSpecified; + } + set + { + this.isOperatorSignatureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=3)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizen + { + + private object[] itemsField; + + private ItemsChoiceType23[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Document", typeof(RequestHeaderCitizenDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType23[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocument + { + + private RequestHeaderCitizenDocumentDocumentType documentTypeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RequestHeaderCitizenDocumentDocumentType DocumentType + { + get + { + return this.documentTypeField; + } + set + { + this.documentTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocumentDocumentType + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType23 + { + + /// + CitizenPPAGUID, + + /// + Document, + + /// + SNILS, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType25 + { + + /// + Citizen, + + /// + SenderID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequest : BaseType + { + + private string fIASHouseGuidField; + + private importMeteringDeviceDataRequestMeteringDevice[] meteringDeviceField; + + private string versionField; + + public importMeteringDeviceDataRequest() + { + this.versionField = "11.1.0.8"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MeteringDevice", Order=1)] + public importMeteringDeviceDataRequestMeteringDevice[] MeteringDevice + { + get + { + return this.meteringDeviceField; + } + set + { + this.meteringDeviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequestMeteringDevice + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeviceDataToCreate", typeof(MeteringDeviceFullInformationType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("DeviceDataToUpdate", typeof(importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdate), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdate + { + + private string meteringDeviceVersionGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceVersionGUID + { + get + { + return this.meteringDeviceVersionGUIDField; + } + set + { + this.meteringDeviceVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ArchiveDevice", typeof(importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateArchiveDevice), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LinkedWithMetering", typeof(importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateLinkedWithMetering), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ReplaceDevice", typeof(importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateReplaceDevice), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("UpdateAfterDevicesValues", typeof(MeteringDeviceToUpdateAfterDevicesValuesType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("UpdateBeforeDevicesValues", typeof(MeteringDeviceFullInformationType), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateArchiveDevice + { + + private nsiRef archivingReasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ArchivingReason + { + get + { + return this.archivingReasonField; + } + set + { + this.archivingReasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateLinkedWithMetering + { + + private string[] linkedMeteringDeviceVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LinkedMeteringDeviceVersionGUID", Order=0)] + public string[] LinkedMeteringDeviceVersionGUID + { + get + { + return this.linkedMeteringDeviceVersionGUIDField; + } + set + { + this.linkedMeteringDeviceVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importMeteringDeviceDataRequestMeteringDeviceDeviceDataToUpdateReplaceDevice + { + + private System.DateTime verificationDateField; + + private object itemField; + + private object[] itemsField; + + private string replacingMeteringDeviceVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime VerificationDate + { + get + { + return this.verificationDateField; + } + set + { + this.verificationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVerification", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ReasonVerification", typeof(nsiRef), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeviceValueMunicipalResourceElectric", typeof(ElectricMeteringValueBaseType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("DeviceValueMunicipalResourceNotElectric", typeof(OneRateMeteringValueBaseType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("VolumeDeviceValues", typeof(VolumeMeteringValueBaseType), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string ReplacingMeteringDeviceVersionGUID + { + get + { + return this.replacingMeteringDeviceVersionGUIDField; + } + set + { + this.replacingMeteringDeviceVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMeteringDeviceDataRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest importMeteringDeviceDataRequest; + + public importMeteringDeviceDataRequest1() + { + } + + public importMeteringDeviceDataRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest importMeteringDeviceDataRequest) + { + this.RequestHeader = RequestHeader; + this.importMeteringDeviceDataRequest = importMeteringDeviceDataRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMeteringDeviceDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importMeteringDeviceDataResponse() + { + } + + public importMeteringDeviceDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportMeteringDeviceDataRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType24[] itemsElementNameField; + + private bool includeFIASHouseGuidField; + + private bool includeFIASHouseGuidFieldSpecified; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ArchiveDateFrom", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ArchiveDateTo", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CommissioningDateFrom", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CommissioningDateTo", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IsCurrentOrganization", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceType", typeof(nsiRef), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MeteringDeviceVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MunicipalResource", typeof(nsiRef), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SearchArchived", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDateTime", typeof(System.DateTime), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType24[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IncludeFIASHouseGuid + { + get + { + return this.includeFIASHouseGuidField; + } + set + { + this.includeFIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IncludeFIASHouseGuidSpecified + { + get + { + return this.includeFIASHouseGuidFieldSpecified; + } + set + { + this.includeFIASHouseGuidFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType24 + { + + /// + ArchiveDateFrom, + + /// + ArchiveDateTo, + + /// + CommissioningDateFrom, + + /// + CommissioningDateTo, + + /// + FIASHouseGuid, + + /// + IsCurrentOrganization, + + /// + MeteringDeviceRootGUID, + + /// + MeteringDeviceType, + + /// + MeteringDeviceVersionGUID, + + /// + MunicipalResource, + + /// + SearchArchived, + + /// + UpdateDateTime, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportMeteringDeviceDataRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest exportMeteringDeviceDataRequest; + + public exportMeteringDeviceDataRequest1() + { + } + + public exportMeteringDeviceDataRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest exportMeteringDeviceDataRequest) + { + this.RequestHeader = RequestHeader; + this.exportMeteringDeviceDataRequest = exportMeteringDeviceDataRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportMeteringDeviceDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportMeteringDeviceDataResponse() + { + } + + public exportMeteringDeviceDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportODSPMeteringDeviceDataRequest : BaseType + { + + private string accountNumberField; + + private string versionField; + + public exportODSPMeteringDeviceDataRequest() + { + this.versionField = "15.3.0.0"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportODSPMeteringDeviceDataRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest exportODSPMeteringDeviceDataRequest; + + public exportODSPMeteringDeviceDataRequest1() + { + } + + public exportODSPMeteringDeviceDataRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest exportODSPMeteringDeviceDataRequest) + { + this.RequestHeader = RequestHeader; + this.exportODSPMeteringDeviceDataRequest = exportODSPMeteringDeviceDataRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportODSPMeteringDeviceDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportODSPMeteringDeviceDataResponse() + { + } + + public exportODSPMeteringDeviceDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private string versionField; + + public getStateResult() + { + this.versionField = "11.0.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(getStateResultImportResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("VotingMessage", typeof(exportVotingMessageResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("VotingProtocol", typeof(exportVotingProtocolResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportAccountIndividualServicesResult", typeof(exportAccountIndividualServicesResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportAccountResult", typeof(exportAccountResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportBriefApartmentHouseResult", typeof(getStateResultExportBriefApartmentHouseResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportBriefBasicHouseResult", typeof(getStateResultExportBriefBasicHouseResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportBriefLivingHouseResult", typeof(getStateResultExportBriefLivingHouseResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportBriefSocialHireContract", typeof(exportBriefSocialHireContractResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportBriefSupplyResourceContractResult", typeof(getStateResultExportBriefSupplyResourceContractResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportCAChResult", typeof(exportCAChResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportHouseResult", typeof(exportHouseResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportMeteringDeviceDataResult", typeof(exportMeteringDeviceDataResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportODSPMeteringDeviceDataResult", typeof(exportODSPMeteringDeviceDataResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportOwnerDecision", typeof(exportOwnerDecisionResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportOwnerRefusal", typeof(OwnerRefusalExportType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportStatusCAChResult", typeof(exportStatusCAChResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportStatusPublicPropertyContractResult", typeof(exportStatusPublicPropertyContractResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportSupplyResourceContractObjectAddress", typeof(getStateResultExportSupplyResourceContractObjectAddress), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportSupplyResourceContractResult", typeof(getStateResultExportSupplyResourceContractResult), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("rolloverCAChStatus", typeof(exportRolloverStatusCAChResultType), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResult + { + + private object[] itemsField; + + private string versionField; + + public getStateResultImportResult() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CommonResult", typeof(getStateResultImportResultCommonResult), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResult : CommonResultType + { + + private object itemField; + + private ItemChoiceType26 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportAccount", typeof(getStateResultImportResultCommonResultImportAccount), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportHouseESP", typeof(OGFImportStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportHouseOMS", typeof(OGFImportStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportHouseUO", typeof(OGFImportStatusType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportSupplyResourceContract", typeof(getStateResultImportResultCommonResultImportSupplyResourceContract), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportSupplyResourceContractObjectAddress", typeof(getStateResultImportResultCommonResultImportSupplyResourceContractObjectAddress), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportSupplyResourceContractProject", typeof(getStateResultImportResultCommonResultImportSupplyResourceContractProject), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("importCharter", typeof(importCharterResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("importContract", typeof(importContractResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("importMeteringDevice", typeof(getStateResultImportResultCommonResultImportMeteringDevice), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType26 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResultImportAccount + { + + private string unifiedAccountNumberField; + + private string serviceIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=1)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResultImportSupplyResourceContract + { + + private string contractGUIDField; + + private string contractRootGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractRootGUID + { + get + { + return this.contractRootGUIDField; + } + set + { + this.contractRootGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResultImportSupplyResourceContractObjectAddress + { + + private string contractGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResultImportSupplyResourceContractProject + { + + private string contractGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultImportResultCommonResultImportMeteringDevice + { + + private string meteringDeviceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MeteringDeviceGUID + { + get + { + return this.meteringDeviceGUIDField; + } + set + { + this.meteringDeviceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType26 + { + + /// + ImportAccount, + + /// + ImportHouseESP, + + /// + ImportHouseOMS, + + /// + ImportHouseUO, + + /// + ImportSupplyResourceContract, + + /// + ImportSupplyResourceContractObjectAddress, + + /// + ImportSupplyResourceContractProject, + + /// + importCharter, + + /// + importContract, + + /// + importMeteringDevice, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportBriefApartmentHouseResult + { + + private BriefApartmentHouseType apartmentHouseInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BriefApartmentHouseType ApartmentHouseInfo + { + get + { + return this.apartmentHouseInfoField; + } + set + { + this.apartmentHouseInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportBriefBasicHouseResult + { + + private ExportBriefBasicHouseResultType[] resultItemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ResultItem", Order=0)] + public ExportBriefBasicHouseResultType[] ResultItem + { + get + { + return this.resultItemField; + } + set + { + this.resultItemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportBriefLivingHouseResult + { + + private ExportBriefLivingHouseResultType[] resultItemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ResultItem", Order=0)] + public ExportBriefLivingHouseResultType[] ResultItem + { + get + { + return this.resultItemField; + } + set + { + this.resultItemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportBriefSupplyResourceContractResult + { + + private exportBriefSupplyResourceContractResultType[] contractField; + + private object[] itemsField; + + private ItemsChoiceType25[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Contract", Order=0)] + public exportBriefSupplyResourceContractResultType[] Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("IsLastPage", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextPageContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NextPageObjectGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType25[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType25 + { + + /// + IsLastPage, + + /// + NextPageContractRootGUID, + + /// + NextPageObjectGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractResultType + { + + private exportStatusPublicPropertyContractResultTypePublicPropertyContract[] publicPropertyContractField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PublicPropertyContract", Order=0)] + public exportStatusPublicPropertyContractResultTypePublicPropertyContract[] PublicPropertyContract + { + get + { + return this.publicPropertyContractField; + } + set + { + this.publicPropertyContractField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractResultTypePublicPropertyContract : PublicPropertyContractExportType + { + + private string contractGUIDField; + + private string statusContractField; + + private string contractVersionGUIDField; + + private string versionNumberField; + + private string statusVersionField; + + private exportStatusPublicPropertyContractResultTypePublicPropertyContractPaymentInterval paymentIntervalField; + + private exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPayment[] agreementPaymentField; + + private bool isGratuitousBasisField; + + private bool isGratuitousBasisFieldSpecified; + + public exportStatusPublicPropertyContractResultTypePublicPropertyContract() + { + this.isGratuitousBasisField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractGUID + { + get + { + return this.contractGUIDField; + } + set + { + this.contractGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string StatusContract + { + get + { + return this.statusContractField; + } + set + { + this.statusContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=3)] + public string VersionNumber + { + get + { + return this.versionNumberField; + } + set + { + this.versionNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string StatusVersion + { + get + { + return this.statusVersionField; + } + set + { + this.statusVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public exportStatusPublicPropertyContractResultTypePublicPropertyContractPaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AgreementPayment", Order=6)] + public exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPayment[] AgreementPayment + { + get + { + return this.agreementPaymentField; + } + set + { + this.agreementPaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool IsGratuitousBasis + { + get + { + return this.isGratuitousBasisField; + } + set + { + this.isGratuitousBasisField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsGratuitousBasisSpecified + { + get + { + return this.isGratuitousBasisFieldSpecified; + } + set + { + this.isGratuitousBasisFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractResultTypePublicPropertyContractPaymentInterval + { + + private object[] itemsField; + + private ItemsChoiceType8[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(DaySelectionExportType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Other", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(DaySelectionExportType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType8[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType8 + { + + /// + EndDate, + + /// + Other, + + /// + StartDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPayment + { + + private string agreementPaymentVersionGUIDField; + + private exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPaymentDatePeriod datePeriodField; + + private decimal billField; + + private decimal debtField; + + private decimal paidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AgreementPaymentVersionGUID + { + get + { + return this.agreementPaymentVersionGUIDField; + } + set + { + this.agreementPaymentVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPaymentDatePeriod DatePeriod + { + get + { + return this.datePeriodField; + } + set + { + this.datePeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Bill + { + get + { + return this.billField; + } + set + { + this.billField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Debt + { + get + { + return this.debtField; + } + set + { + this.debtField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal Paid + { + get + { + return this.paidField; + } + set + { + this.paidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractResultTypePublicPropertyContractAgreementPaymentDatePeriod + { + + private System.DateTime dateFromField; + + private System.DateTime dateToField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateFrom + { + get + { + return this.dateFromField; + } + set + { + this.dateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateTo + { + get + { + return this.dateToField; + } + set + { + this.dateToField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportSupplyResourceContractObjectAddress + { + + private exportSupplyResourceContractObjectAddressResultType[] objectAddressField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ObjectAddress", Order=0)] + public exportSupplyResourceContractObjectAddressResultType[] ObjectAddress + { + get + { + return this.objectAddressField; + } + set + { + this.objectAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ExportObjectGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("IsLastPage", typeof(bool), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class getStateResultExportSupplyResourceContractResult + { + + private exportSupplyResourceContractResultType[] contractField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Contract", Order=0)] + public exportSupplyResourceContractResultType[] Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ExportContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("IsLastPage", typeof(bool), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.getStateRequest getStateRequest) + { + this.RequestHeader = RequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequest : BaseType + { + + private importContractRequestContract[] contractField; + + private string versionField; + + public importContractRequest() + { + this.versionField = "11.9.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Contract", Order=0)] + public importContractRequestContract[] Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContract + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentContract", typeof(importContractRequestContractAnnulmentContract), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("AnnulmentContractPaymentsInfo", typeof(importContractRequestContractAnnulmentContractPaymentsInfo), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ApprovalContract", typeof(importContractRequestContractApprovalContract), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("EditContract", typeof(importContractRequestContractEditContract), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PlaceContractPaymentsInfo", typeof(importContractRequestContractPlaceContractPaymentsInfo), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PlacingContract", typeof(importContractRequestContractPlacingContract), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("RollOverContract", typeof(importContractRequestContractRollOverContract), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TerminateContract", typeof(importContractRequestContractTerminateContract), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractAnnulmentContract : AnnulmentType + { + + private bool licenseRequestField; + + private bool licenseRequestFieldSpecified; + + private string contractVersionGUIDField; + + public importContractRequestContractAnnulmentContract() + { + this.licenseRequestField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool LicenseRequest + { + get + { + return this.licenseRequestField; + } + set + { + this.licenseRequestField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LicenseRequestSpecified + { + get + { + return this.licenseRequestFieldSpecified; + } + set + { + this.licenseRequestFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractAnnulmentContractPaymentsInfo + { + + private string contractPaymentsInfoVersionGUIDField; + + private string reasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractPaymentsInfoVersionGUID + { + get + { + return this.contractPaymentsInfoVersionGUIDField; + } + set + { + this.contractPaymentsInfoVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Reason + { + get + { + return this.reasonField; + } + set + { + this.reasonField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractApprovalContract : ApprovalType + { + + private string contractVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContract : ContractType + { + + private bool licenseRequestField; + + private bool licenseRequestFieldSpecified; + + private importContractRequestContractEditContractContractObject[] contractObjectField; + + private string contractVersionGUIDField; + + private bool indicationsAnyDayField; + + private bool indicationsAnyDayFieldSpecified; + + public importContractRequestContractEditContract() + { + this.licenseRequestField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool LicenseRequest + { + get + { + return this.licenseRequestField; + } + set + { + this.licenseRequestField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LicenseRequestSpecified + { + get + { + return this.licenseRequestFieldSpecified; + } + set + { + this.licenseRequestFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=1)] + public importContractRequestContractEditContractContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IndicationsAnyDay + { + get + { + return this.indicationsAnyDayField; + } + set + { + this.indicationsAnyDayField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IndicationsAnyDaySpecified + { + get + { + return this.indicationsAnyDayFieldSpecified; + } + set + { + this.indicationsAnyDayFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObject + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Add", typeof(importContractRequestContractEditContractContractObjectAdd), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Annulment", typeof(importContractRequestContractEditContractContractObjectAnnulment), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Edit", typeof(importContractRequestContractEditContractContractObjectEdit), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectAdd : ManageObjectType + { + + private BaseServiceType baseMServiceField; + + private importContractRequestContractEditContractContractObjectAddHouseService[] houseServiceField; + + private importContractRequestContractEditContractContractObjectAddAddService[] addServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=1)] + public importContractRequestContractEditContractContractObjectAddHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=2)] + public importContractRequestContractEditContractContractObjectAddAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectAddHouseService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectAddAddService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectAnnulment + { + + private string contractObjectVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectEdit : ManageObjectType + { + + private string contractObjectVersionGUIDField; + + private BaseServiceType baseMServiceField; + + private importContractRequestContractEditContractContractObjectEditHouseService[] houseServiceField; + + private importContractRequestContractEditContractContractObjectEditAddService[] addServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public importContractRequestContractEditContractContractObjectEditHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public importContractRequestContractEditContractContractObjectEditAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectEditHouseService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractEditContractContractObjectEditAddService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractPlaceContractPaymentsInfo : ContractPaymentsInfoType + { + + private string contractVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractPlacingContract : ContractType + { + + private bool licenseRequestField; + + private bool licenseRequestFieldSpecified; + + private importContractRequestContractPlacingContractContractObject[] contractObjectField; + + public importContractRequestContractPlacingContract() + { + this.licenseRequestField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool LicenseRequest + { + get + { + return this.licenseRequestField; + } + set + { + this.licenseRequestField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LicenseRequestSpecified + { + get + { + return this.licenseRequestFieldSpecified; + } + set + { + this.licenseRequestFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=1)] + public importContractRequestContractPlacingContractContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractPlacingContractContractObject : ManageObjectType + { + + private string transportGUIDField; + + private BaseServiceType baseMServiceField; + + private importContractRequestContractPlacingContractContractObjectHouseService[] houseServiceField; + + private importContractRequestContractPlacingContractContractObjectAddService[] addServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public importContractRequestContractPlacingContractContractObjectHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public importContractRequestContractPlacingContractContractObjectAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractPlacingContractContractObjectHouseService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractPlacingContractContractObjectAddService : ContractServiceType + { + + private BaseServiceType baseServiceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceType BaseService + { + get + { + return this.baseServiceField; + } + set + { + this.baseServiceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractRollOverContract : RollOverType + { + + private bool licenseRequestField; + + private bool licenseRequestFieldSpecified; + + private string contractVersionGUIDField; + + private System.DateTime rollToDateField; + + private bool rollToDateFieldSpecified; + + public importContractRequestContractRollOverContract() + { + this.licenseRequestField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool LicenseRequest + { + get + { + return this.licenseRequestField; + } + set + { + this.licenseRequestField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LicenseRequestSpecified + { + get + { + return this.licenseRequestFieldSpecified; + } + set + { + this.licenseRequestFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime RollToDate + { + get + { + return this.rollToDateField; + } + set + { + this.rollToDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RollToDateSpecified + { + get + { + return this.rollToDateFieldSpecified; + } + set + { + this.rollToDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importContractRequestContractTerminateContract : TerminateType + { + + private bool licenseRequestField; + + private bool licenseRequestFieldSpecified; + + private nsiRef reasonRefField; + + private AttachmentType[] terminateAttachmentField; + + private string contractVersionGUIDField; + + public importContractRequestContractTerminateContract() + { + this.licenseRequestField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool LicenseRequest + { + get + { + return this.licenseRequestField; + } + set + { + this.licenseRequestField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool LicenseRequestSpecified + { + get + { + return this.licenseRequestFieldSpecified; + } + set + { + this.licenseRequestFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TerminateAttachment", Order=2)] + public AttachmentType[] TerminateAttachment + { + get + { + return this.terminateAttachmentField; + } + set + { + this.terminateAttachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importContractDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importContractRequest importContractRequest; + + public importContractDataRequest() + { + } + + public importContractDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importContractRequest importContractRequest) + { + this.RequestHeader = RequestHeader; + this.importContractRequest = importContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importContractDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importContractDataResponse() + { + } + + public importContractDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequest : BaseType + { + + private string transportGUIDField; + + private object itemField; + + private string versionField; + + public importCharterRequest() + { + this.versionField = "11.9.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentCharter", typeof(importCharterRequestAnnulmentCharter), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("AnnulmentCharterPaymentsInfo", typeof(importCharterRequestAnnulmentCharterPaymentsInfo), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("EditCharter", typeof(importCharterRequestEditCharter), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PlaceCharterPaymentsInfo", typeof(importCharterRequestPlaceCharterPaymentsInfo), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("PlacingCharter", typeof(importCharterRequestPlacingCharter), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("RollOverCharter", typeof(importCharterRequestRollOverCharter), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("TerminateCharter", typeof(importCharterRequestTerminateCharter), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestAnnulmentCharter : AnnulmentType + { + + private string charterVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestAnnulmentCharterPaymentsInfo + { + + private string charterPaymentsInfoVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterPaymentsInfoVersionGUID + { + get + { + return this.charterPaymentsInfoVersionGUIDField; + } + set + { + this.charterPaymentsInfoVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharter : CharterType + { + + private importCharterRequestEditCharterContractObject[] contractObjectField; + + private string charterVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=0)] + public importCharterRequestEditCharterContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObject + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Add", typeof(importCharterRequestEditCharterContractObjectAdd), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Annulment", typeof(importCharterRequestEditCharterContractObjectAnnulment), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Edit", typeof(importCharterRequestEditCharterContractObjectEdit), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectAdd : ManageObjectType + { + + private BaseServiceCharterType baseMServiceField; + + private importCharterRequestEditCharterContractObjectAddHouseService[] houseServiceField; + + private importCharterRequestEditCharterContractObjectAddAddService[] addServiceField; + + private bool isManagedByContractField; + + private bool isManagedByContractFieldSpecified; + + public importCharterRequestEditCharterContractObjectAdd() + { + this.isManagedByContractField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=1)] + public importCharterRequestEditCharterContractObjectAddHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=2)] + public importCharterRequestEditCharterContractObjectAddAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsManagedByContract + { + get + { + return this.isManagedByContractField; + } + set + { + this.isManagedByContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsManagedByContractSpecified + { + get + { + return this.isManagedByContractFieldSpecified; + } + set + { + this.isManagedByContractFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectAddHouseService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectAddAddService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectAnnulment + { + + private string contractObjectVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectEdit : ManageObjectType + { + + private string contractObjectVersionGUIDField; + + private BaseServiceCharterType baseMServiceField; + + private importCharterRequestEditCharterContractObjectEditHouseService[] houseServiceField; + + private importCharterRequestEditCharterContractObjectEditAddService[] addServiceField; + + private bool isManagedByContractField; + + private bool isManagedByContractFieldSpecified; + + public importCharterRequestEditCharterContractObjectEdit() + { + this.isManagedByContractField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ContractObjectVersionGUID + { + get + { + return this.contractObjectVersionGUIDField; + } + set + { + this.contractObjectVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceCharterType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public importCharterRequestEditCharterContractObjectEditHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public importCharterRequestEditCharterContractObjectEditAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsManagedByContract + { + get + { + return this.isManagedByContractField; + } + set + { + this.isManagedByContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsManagedByContractSpecified + { + get + { + return this.isManagedByContractFieldSpecified; + } + set + { + this.isManagedByContractFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectEditHouseService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestEditCharterContractObjectEditAddService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestPlaceCharterPaymentsInfo : CharterPaymentsInfoType + { + + private string charterVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestPlacingCharter : CharterType + { + + private importCharterRequestPlacingCharterContractObject[] contractObjectField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractObject", Order=0)] + public importCharterRequestPlacingCharterContractObject[] ContractObject + { + get + { + return this.contractObjectField; + } + set + { + this.contractObjectField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestPlacingCharterContractObject : ManageObjectType + { + + private string transportGUIDField; + + private BaseServiceCharterType baseMServiceField; + + private importCharterRequestPlacingCharterContractObjectHouseService[] houseServiceField; + + private importCharterRequestPlacingCharterContractObjectAddService[] addServiceField; + + private bool isManagedByContractField; + + private bool isManagedByContractFieldSpecified; + + public importCharterRequestPlacingCharterContractObject() + { + this.isManagedByContractField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public BaseServiceCharterType BaseMService + { + get + { + return this.baseMServiceField; + } + set + { + this.baseMServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("HouseService", Order=2)] + public importCharterRequestPlacingCharterContractObjectHouseService[] HouseService + { + get + { + return this.houseServiceField; + } + set + { + this.houseServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddService", Order=3)] + public importCharterRequestPlacingCharterContractObjectAddService[] AddService + { + get + { + return this.addServiceField; + } + set + { + this.addServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsManagedByContract + { + get + { + return this.isManagedByContractField; + } + set + { + this.isManagedByContractField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsManagedByContractSpecified + { + get + { + return this.isManagedByContractFieldSpecified; + } + set + { + this.isManagedByContractFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestPlacingCharterContractObjectHouseService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestPlacingCharterContractObjectAddService : ContractServiceType + { + + private BaseServiceCharterType baseServiceCharterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public BaseServiceCharterType BaseServiceCharter + { + get + { + return this.baseServiceCharterField; + } + set + { + this.baseServiceCharterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestRollOverCharter : RollOverType + { + + private string charterVersionGUIDField; + + private System.DateTime rollToDateField; + + private bool rollToDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime RollToDate + { + get + { + return this.rollToDateField; + } + set + { + this.rollToDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool RollToDateSpecified + { + get + { + return this.rollToDateFieldSpecified; + } + set + { + this.rollToDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importCharterRequestTerminateCharter : TerminateType + { + + private string reasonField; + + private string charterVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Reason + { + get + { + return this.reasonField; + } + set + { + this.reasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string CharterVersionGUID + { + get + { + return this.charterVersionGUIDField; + } + set + { + this.charterVersionGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCharterDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importCharterRequest importCharterRequest; + + public importCharterDataRequest() + { + } + + public importCharterDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importCharterRequest importCharterRequest) + { + this.RequestHeader = RequestHeader; + this.importCharterRequest = importCharterRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCharterDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importCharterDataResponse() + { + } + + public importCharterDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusCAChRequest : BaseType + { + + private exportStatusCAChRequestCriteria[] criteriaField; + + private string versionField; + + public exportStatusCAChRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Criteria", Order=0)] + public exportStatusCAChRequestCriteria[] Criteria + { + get + { + return this.criteriaField; + } + set + { + this.criteriaField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusCAChRequestCriteria + { + + private string itemField; + + private ItemChoiceType27 itemElementNameField; + + private exportStatusCAChRequestCriteriaControlObjects controlObjectsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CharterGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("CharterVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType27 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportStatusCAChRequestCriteriaControlObjects ControlObjects + { + get + { + return this.controlObjectsField; + } + set + { + this.controlObjectsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType27 + { + + /// + CharterGUID, + + /// + CharterVersionGUID, + + /// + ContractGUID, + + /// + ContractVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusCAChRequestCriteriaControlObjects + { + + private bool isConflictedField; + + private bool isConflictedFieldSpecified; + + private bool isBlockedField; + + private bool isBlockedFieldSpecified; + + public exportStatusCAChRequestCriteriaControlObjects() + { + this.isConflictedField = true; + this.isBlockedField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsConflicted + { + get + { + return this.isConflictedField; + } + set + { + this.isConflictedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsConflictedSpecified + { + get + { + return this.isConflictedFieldSpecified; + } + set + { + this.isConflictedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsBlocked + { + get + { + return this.isBlockedField; + } + set + { + this.isBlockedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsBlockedSpecified + { + get + { + return this.isBlockedFieldSpecified; + } + set + { + this.isBlockedFieldSpecified = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportStatusCAChDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportStatusCAChRequest exportStatusCAChRequest; + + public exportStatusCAChDataRequest() + { + } + + public exportStatusCAChDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportStatusCAChRequest exportStatusCAChRequest) + { + this.RequestHeader = RequestHeader; + this.exportStatusCAChRequest = exportStatusCAChRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportStatusCAChDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportStatusCAChDataResponse() + { + } + + public exportStatusCAChDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportHouseRequest : BaseType + { + + private string fIASHouseGuidField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportHouseDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportHouseRequest exportHouseRequest; + + public exportHouseDataRequest() + { + } + + public exportHouseDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportHouseRequest exportHouseRequest) + { + this.RequestHeader = RequestHeader; + this.exportHouseRequest = exportHouseRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportHouseDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportHouseDataResponse() + { + } + + public exportHouseDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importAccountRequest : BaseType + { + + private importAccountRequestAccount[] accountField; + + private string versionField; + + public importAccountRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Account", Order=0)] + public importAccountRequestAccount[] Account + { + get + { + return this.accountField; + } + set + { + this.accountField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importAccountRequestAccount : AccountType + { + + private string transportGUIDField; + + private string accountNumberField; + + private string accountGUIDField; + + private AccountReasonsImportType accountReasonsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=1)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AccountGUID + { + get + { + return this.accountGUIDField; + } + set + { + this.accountGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public AccountReasonsImportType AccountReasons + { + get + { + return this.accountReasonsField; + } + set + { + this.accountReasonsField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAccountDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importAccountRequest importAccountRequest; + + public importAccountDataRequest() + { + } + + public importAccountDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importAccountRequest importAccountRequest) + { + this.RequestHeader = RequestHeader; + this.importAccountRequest = importAccountRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAccountDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importAccountDataResponse() + { + } + + public importAccountDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType26[] itemsElementNameField; + + private string versionField; + + public exportAccountRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UnifiedAccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType26[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType26 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:UnifiedAccountNumber")] + UnifiedAccountNumber, + + /// + AccountGUID, + + /// + FIASHouseGuid, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportAccountDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportAccountRequest exportAccountRequest; + + public exportAccountDataRequest() + { + } + + public exportAccountDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportAccountRequest exportAccountRequest) + { + this.RequestHeader = RequestHeader; + this.exportAccountRequest = exportAccountRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportAccountDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportAccountDataResponse() + { + } + + public exportAccountDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importPublicPropertyContractRequest() + { + this.versionField = "11.2.0.10"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AddAgreementPayment", typeof(importPublicPropertyContractRequestAddAgreementPayment), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("AnnulAgreementPayment", typeof(importPublicPropertyContractRequestAnnulAgreementPayment), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Contract", typeof(importPublicPropertyContractRequestContract), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DelAgreementPayment", typeof(importPublicPropertyContractRequestDelAgreementPayment), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestAddAgreementPayment + { + + private string transportGUIDField; + + private string itemField; + + private ItemChoiceType28 itemElementNameField; + + private importPublicPropertyContractRequestAddAgreementPaymentDatePeriod datePeriodField; + + private decimal billField; + + private decimal debtField; + + private decimal paidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AgreementPaymentVersionGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType28 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public importPublicPropertyContractRequestAddAgreementPaymentDatePeriod DatePeriod + { + get + { + return this.datePeriodField; + } + set + { + this.datePeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal Bill + { + get + { + return this.billField; + } + set + { + this.billField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public decimal Debt + { + get + { + return this.debtField; + } + set + { + this.debtField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public decimal Paid + { + get + { + return this.paidField; + } + set + { + this.paidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType28 + { + + /// + AgreementPaymentVersionGUID, + + /// + ContractVersionGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestAddAgreementPaymentDatePeriod + { + + private System.DateTime dateFromField; + + private System.DateTime dateToField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateFrom + { + get + { + return this.dateFromField; + } + set + { + this.dateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateTo + { + get + { + return this.dateToField; + } + set + { + this.dateToField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestAnnulAgreementPayment : AnnulmentType + { + + private string transportGUIDField; + + private string agreementPaymentVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AgreementPaymentVersionGUID + { + get + { + return this.agreementPaymentVersionGUIDField; + } + set + { + this.agreementPaymentVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestContract + { + + private string transportGUIDField; + + private string contractVersionGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ContractVersionGUID + { + get + { + return this.contractVersionGUIDField; + } + set + { + this.contractVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentContract", typeof(AnnulmentType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("PublicPropertyContract", typeof(importPublicPropertyContractRequestContractPublicPropertyContract), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestContractPublicPropertyContract : PublicPropertyContractType + { + + private importPublicPropertyContractRequestContractPublicPropertyContractPaymentInterval paymentIntervalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importPublicPropertyContractRequestContractPublicPropertyContractPaymentInterval PaymentInterval + { + get + { + return this.paymentIntervalField; + } + set + { + this.paymentIntervalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestContractPublicPropertyContractPaymentInterval + { + + private object[] itemsField; + + private ItemsChoiceType27[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(DaySelectionType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Other", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(DaySelectionType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType27[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType27 + { + + /// + EndDate, + + /// + Other, + + /// + StartDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importPublicPropertyContractRequestDelAgreementPayment + { + + private string transportGUIDField; + + private string agreementPaymentVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AgreementPaymentVersionGUID + { + get + { + return this.agreementPaymentVersionGUIDField; + } + set + { + this.agreementPaymentVersionGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importPublicPropertyContractRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest importPublicPropertyContractRequest; + + public importPublicPropertyContractRequest1() + { + } + + public importPublicPropertyContractRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest importPublicPropertyContractRequest) + { + this.RequestHeader = RequestHeader; + this.importPublicPropertyContractRequest = importPublicPropertyContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importPublicPropertyContractResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importPublicPropertyContractResponse() + { + } + + public importPublicPropertyContractResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportStatusPublicPropertyContractRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType28[] itemsElementNameField; + + private string versionField; + + public exportStatusPublicPropertyContractRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractVersionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType28[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType28 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + ContractVersionGUID, + + /// + EndDate, + + /// + FIASHouseGuid, + + /// + StartDate, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportStatusPublicPropertyContractRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest exportStatusPublicPropertyContractRequest; + + public exportStatusPublicPropertyContractRequest1() + { + } + + public exportStatusPublicPropertyContractRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest exportStatusPublicPropertyContractRequest) + { + this.RequestHeader = RequestHeader; + this.exportStatusPublicPropertyContractRequest = exportStatusPublicPropertyContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportStatusPublicPropertyContractResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportStatusPublicPropertyContractResponse() + { + } + + public exportStatusPublicPropertyContractResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequest : BaseType + { + + private importNotificationRequestNotification[] notificationField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("notification", Order=0)] + public importNotificationRequestNotification[] notification + { + get + { + return this.notificationField; + } + set + { + this.notificationField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotification + { + + private string transportGUIDField; + + private string notificationGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string NotificationGUID + { + get + { + return this.notificationGUIDField; + } + set + { + this.notificationGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Create", typeof(importNotificationRequestNotificationCreate), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("DeleteNotification", typeof(DeleteDocType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("IsShipOff", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("RecallNotification", typeof(importNotificationRequestNotificationRecallNotification), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreate + { + + private object itemField; + + private bool isImportantField; + + private bool isImportantFieldSpecified; + + private string contentField; + + private object[] itemsField; + + private ItemsChoiceType29[] itemsElementNameField; + + private object[] items1Field; + + private Items1ChoiceType[] items1ElementNameField; + + private AttachmentType[] attachmentField; + + private bool isShipOffField; + + private bool isShipOffFieldSpecified; + + private bool isForPublishToMobileAppField; + + private bool isForPublishToMobileAppFieldSpecified; + + private importNotificationRequestNotificationCreateMobileAppData mobileAppDataField; + + public importNotificationRequestNotificationCreate() + { + this.isImportantField = true; + this.isShipOffField = true; + this.isForPublishToMobileAppField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Topic", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("TopicNSIRef", typeof(nsiRef), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsImportant + { + get + { + return this.isImportantField; + } + set + { + this.isImportantField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsImportantSpecified + { + get + { + return this.isImportantFieldSpecified; + } + set + { + this.isImportantFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string content + { + get + { + return this.contentField; + } + set + { + this.contentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("InspectionAuthority", typeof(RegOrgType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("IsAll", typeof(bool), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("RoomOwners", typeof(importNotificationRequestNotificationCreateRoomOwners), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("SpecialAccountOwner", typeof(RegOrgType), Order=3)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=4)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType29[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(System.DateTime), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("IsNotLimit", typeof(bool), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(System.DateTime), Order=5)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Items1ElementName")] + public object[] Items1 + { + get + { + return this.items1Field; + } + set + { + this.items1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Items1ElementName", Order=6)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Items1ChoiceType[] Items1ElementName + { + get + { + return this.items1ElementNameField; + } + set + { + this.items1ElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Attachment", Order=7)] + public AttachmentType[] Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public bool IsShipOff + { + get + { + return this.isShipOffField; + } + set + { + this.isShipOffField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsShipOffSpecified + { + get + { + return this.isShipOffFieldSpecified; + } + set + { + this.isShipOffFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public bool IsForPublishToMobileApp + { + get + { + return this.isForPublishToMobileAppField; + } + set + { + this.isForPublishToMobileAppField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsForPublishToMobileAppSpecified + { + get + { + return this.isForPublishToMobileAppFieldSpecified; + } + set + { + this.isForPublishToMobileAppFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public importNotificationRequestNotificationCreateMobileAppData MobileAppData + { + get + { + return this.mobileAppDataField; + } + set + { + this.mobileAppDataField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateRoomOwners + { + + private object itemField; + + private ItemChoiceType29 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountOpening", typeof(importNotificationRequestNotificationCreateRoomOwnersAccountOpening), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DeptsInforming", typeof(importNotificationRequestNotificationCreateRoomOwnersDeptsInforming), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OtherOrganizationSelection", typeof(importNotificationRequestNotificationCreateRoomOwnersOtherOrganizationSelection), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType29 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateRoomOwnersAccountOpening + { + + private string[] fIASHouseGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateRoomOwnersDeptsInforming + { + + private importNotificationRequestNotificationCreateRoomOwnersDeptsInformingAccount[] accountField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Account", Order=0)] + public importNotificationRequestNotificationCreateRoomOwnersDeptsInformingAccount[] Account + { + get + { + return this.accountField; + } + set + { + this.accountField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateRoomOwnersDeptsInformingAccount + { + + private decimal totalDebtField; + + private string unifiedAccountNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public decimal TotalDebt + { + get + { + return this.totalDebtField; + } + set + { + this.totalDebtField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=1)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateRoomOwnersOtherOrganizationSelection + { + + private string[] fIASHouseGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", Order=0)] + public string[] FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType29 + { + + /// + AccountOpening, + + /// + DeptsInforming, + + /// + OtherOrganizationSelection, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType29 + { + + /// + FIASHouseGuid, + + /// + InspectionAuthority, + + /// + IsAll, + + /// + RoomOwners, + + /// + SpecialAccountOwner, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Items1ChoiceType + { + + /// + EndDate, + + /// + IsNotLimit, + + /// + StartDate, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationCreateMobileAppData + { + + private bool isShortTopicField; + + private bool isPinField; + + private string urlField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsShortTopic + { + get + { + return this.isShortTopicField; + } + set + { + this.isShortTopicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsPin + { + get + { + return this.isPinField; + } + set + { + this.isPinField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string url + { + get + { + return this.urlField; + } + set + { + this.urlField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importNotificationRequestNotificationRecallNotification + { + + private string recallReasonField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RecallReason + { + get + { + return this.recallReasonField; + } + set + { + this.recallReasonField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importNotificationDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importNotificationRequest importNotificationRequest; + + public importNotificationDataRequest() + { + } + + public importNotificationDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importNotificationRequest importNotificationRequest) + { + this.RequestHeader = RequestHeader; + this.importNotificationRequest = importNotificationRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importNotificationDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importNotificationDataResponse() + { + } + + public importNotificationDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importVotingProtocolRequest : BaseType + { + + private string transportGUIDField; + + private string protocolGUIDField; + + private object itemField; + + private ItemChoiceType30 itemElementNameField; + + private string versionField; + + public importVotingProtocolRequest() + { + this.versionField = "15.4.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ProtocolGUID + { + get + { + return this.protocolGUIDField; + } + set + { + this.protocolGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Annulment", typeof(AnnulmentProtocolType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Delete", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Placing", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Protocol", typeof(importVotingProtocolRequestProtocol), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Revert", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType30 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importVotingProtocolRequestProtocol : ProtocolType + { + + private bool placingField; + + private bool placingFieldSpecified; + + public importVotingProtocolRequestProtocol() + { + this.placingField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Placing + { + get + { + return this.placingField; + } + set + { + this.placingField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool PlacingSpecified + { + get + { + return this.placingFieldSpecified; + } + set + { + this.placingFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType30 + { + + /// + Annulment, + + /// + Delete, + + /// + Placing, + + /// + Protocol, + + /// + Revert, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importVotingProtocolRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importVotingProtocolRequest importVotingProtocolRequest; + + public importVotingProtocolRequest1() + { + } + + public importVotingProtocolRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importVotingProtocolRequest importVotingProtocolRequest) + { + this.RequestHeader = RequestHeader; + this.importVotingProtocolRequest = importVotingProtocolRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importVotingProtocolResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importVotingProtocolResponse() + { + } + + public importVotingProtocolResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportVotingProtocolRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType30[] itemsElementNameField; + + private string versionField; + + public exportVotingProtocolRequest() + { + this.versionField = "15.4.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RootProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("StatusVersionProtocol", typeof(exportVotingProtocolRequestStatusVersionProtocol), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType30[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportVotingProtocolRequestStatusVersionProtocol + { + + /// + Created, + + /// + Posted, + + /// + Edited, + + /// + Annuled, + + /// + PostedFromAnotherSystem, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType30 + { + + /// + FIASHouseGuid, + + /// + RootProtocolGUID, + + /// + StatusVersionProtocol, + + /// + VotingProtocolGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportVotingProtocolRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest exportVotingProtocolRequest; + + public exportVotingProtocolRequest1() + { + } + + public exportVotingProtocolRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest exportVotingProtocolRequest) + { + this.RequestHeader = RequestHeader; + this.exportVotingProtocolRequest = exportVotingProtocolRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportVotingProtocolResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportVotingProtocolResponse() + { + } + + public exportVotingProtocolResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerDecisionRequest : BaseType + { + + private importOwnerDecisionRequestOwnerDecision[] ownerDecisionField; + + private string versionField; + + public importOwnerDecisionRequest() + { + this.versionField = "13.0.0.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerDecision", Order=0)] + public importOwnerDecisionRequestOwnerDecision[] OwnerDecision + { + get + { + return this.ownerDecisionField; + } + set + { + this.ownerDecisionField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerDecisionRequestOwnerDecision + { + + private string transportGUIDField; + + private string itemField; + + private ItemChoiceType31 itemElementNameField; + + private string rootOwnerDecisionGUIDField; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MessageGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ProtocolGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType31 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string RootOwnerDecisionGUID + { + get + { + return this.rootOwnerDecisionGUIDField; + } + set + { + this.rootOwnerDecisionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulDecision", typeof(bool), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("Decision", typeof(OwnerDecisionType), Order=4)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType31 + { + + /// + MessageGUID, + + /// + ProtocolGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOwnerDecisionRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest importOwnerDecisionRequest; + + public importOwnerDecisionRequest1() + { + } + + public importOwnerDecisionRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest importOwnerDecisionRequest) + { + this.RequestHeader = RequestHeader; + this.importOwnerDecisionRequest = importOwnerDecisionRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOwnerDecisionResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importOwnerDecisionResponse() + { + } + + public importOwnerDecisionResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportOwnerDecisionRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType31[] itemsElementNameField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("MessageGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RootOwnerDecisionGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RootProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("VotingProtocolGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType31[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType31 + { + + /// + MessageGUID, + + /// + RootOwnerDecisionGUID, + + /// + RootProtocolGUID, + + /// + VotingProtocolGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOwnerDecisionRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest exportOwnerDecisionRequest; + + public exportOwnerDecisionRequest1() + { + } + + public exportOwnerDecisionRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest exportOwnerDecisionRequest) + { + this.RequestHeader = RequestHeader; + this.exportOwnerDecisionRequest = exportOwnerDecisionRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOwnerDecisionResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportOwnerDecisionResponse() + { + } + + public exportOwnerDecisionResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportCAChAsyncRequest : BaseType + { + + private exportCAChRequestCriteriaType[] criteriaField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Criteria", Order=0)] + public exportCAChRequestCriteriaType[] Criteria + { + get + { + return this.criteriaField; + } + set + { + this.criteriaField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportCAChDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportCAChAsyncRequest exportCAChAsyncRequest; + + public exportCAChDataRequest() + { + } + + public exportCAChDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportCAChAsyncRequest exportCAChAsyncRequest) + { + this.RequestHeader = RequestHeader; + this.exportCAChAsyncRequest = exportCAChAsyncRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportCAChDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportCAChDataResponse() + { + } + + public exportCAChDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequest : BaseType + { + + private object itemField; + + private bool inheritMissingValuesField; + + private bool inheritMissingValuesFieldSpecified; + + private string versionField; + + public importHouseUORequest() + { + this.inheritMissingValuesField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouse", typeof(importHouseUORequestApartmentHouse), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouse", typeof(importHouseUORequestLivingHouse), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool InheritMissingValues + { + get + { + return this.inheritMissingValuesField; + } + set + { + this.inheritMissingValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InheritMissingValuesSpecified + { + get + { + return this.inheritMissingValuesFieldSpecified; + } + set + { + this.inheritMissingValuesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouse + { + + private object itemField; + + private importHouseUORequestApartmentHouseNonResidentialPremiseToCreate[] nonResidentialPremiseToCreateField; + + private importHouseUORequestApartmentHouseNonResidentialPremiseToUpdate[] nonResidentialPremiseToUpdateField; + + private importHouseUORequestApartmentHouseEntranceToCreate[] entranceToCreateField; + + private importHouseUORequestApartmentHouseEntranceToUpdate[] entranceToUpdateField; + + private importHouseUORequestApartmentHouseResidentialPremises[] residentialPremisesField; + + private importHouseUORequestApartmentHouseLiftToCreate[] liftToCreateField; + + private importHouseUORequestApartmentHouseLiftToUpdate[] liftToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToCreate", typeof(importHouseUORequestApartmentHouseApartmentHouseToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToUpdate", typeof(importHouseUORequestApartmentHouseApartmentHouseToUpdate), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToCreate", Order=1)] + public importHouseUORequestApartmentHouseNonResidentialPremiseToCreate[] NonResidentialPremiseToCreate + { + get + { + return this.nonResidentialPremiseToCreateField; + } + set + { + this.nonResidentialPremiseToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToUpdate", Order=2)] + public importHouseUORequestApartmentHouseNonResidentialPremiseToUpdate[] NonResidentialPremiseToUpdate + { + get + { + return this.nonResidentialPremiseToUpdateField; + } + set + { + this.nonResidentialPremiseToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToCreate", Order=3)] + public importHouseUORequestApartmentHouseEntranceToCreate[] EntranceToCreate + { + get + { + return this.entranceToCreateField; + } + set + { + this.entranceToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToUpdate", Order=4)] + public importHouseUORequestApartmentHouseEntranceToUpdate[] EntranceToUpdate + { + get + { + return this.entranceToUpdateField; + } + set + { + this.entranceToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremises", Order=5)] + public importHouseUORequestApartmentHouseResidentialPremises[] ResidentialPremises + { + get + { + return this.residentialPremisesField; + } + set + { + this.residentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToCreate", Order=6)] + public importHouseUORequestApartmentHouseLiftToCreate[] LiftToCreate + { + get + { + return this.liftToCreateField; + } + set + { + this.liftToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToUpdate", Order=7)] + public importHouseUORequestApartmentHouseLiftToUpdate[] LiftToUpdate + { + get + { + return this.liftToUpdateField; + } + set + { + this.liftToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseApartmentHouseToCreate : ApartmentHouseUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseApartmentHouseToUpdate : ApartmentHouseUpdateUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseNonResidentialPremiseToCreate : NonResidentialPremisesUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseNonResidentialPremiseToUpdate : NonResidentialPremisesUpdateUOType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseEntranceToCreate : EntranceUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseEntranceToUpdate : EntranceUpdateUOType + { + + private string transportGUIDField; + + private string entranceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string EntranceGUID + { + get + { + return this.entranceGUIDField; + } + set + { + this.entranceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseResidentialPremises + { + + private GKN_EGRP_KeyType itemField; + + private importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToCreate[] livingRoomToCreateField; + + private importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] livingRoomToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToCreate", typeof(importHouseUORequestApartmentHouseResidentialPremisesResidentialPremisesToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToUpdate", typeof(importHouseUORequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate), Order=0)] + public GKN_EGRP_KeyType Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", Order=1)] + public importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToCreate[] LivingRoomToCreate + { + get + { + return this.livingRoomToCreateField; + } + set + { + this.livingRoomToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", Order=2)] + public importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] LivingRoomToUpdate + { + get + { + return this.livingRoomToUpdateField; + } + set + { + this.livingRoomToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseResidentialPremisesResidentialPremisesToCreate : ResidentialPremisesUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate : ResidentialPremisesUpdateUOType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToCreate : RoomUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseResidentialPremisesLivingRoomToUpdate : RoomUpdateUOType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseLiftToCreate : LiftUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestApartmentHouseLiftToUpdate : LiftUpdateUOType + { + + private string transportGUIDField; + + private string liftGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LiftGUID + { + get + { + return this.liftGUIDField; + } + set + { + this.liftGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouse + { + + private object itemField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingHouseToCreate", typeof(importHouseUORequestLivingHouseLivingHouseToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseToUpdate", typeof(importHouseUORequestLivingHouseLivingHouseToUpdate), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Blocks", typeof(importHouseUORequestLivingHouseBlocks), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", typeof(importHouseUORequestLivingHouseLivingRoomToCreate), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", typeof(importHouseUORequestLivingHouseLivingRoomToUpdate), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseLivingHouseToCreate : LivingHouseUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseLivingHouseToUpdate : LivingHouseUpdateUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseBlocks + { + + private GKN_EGRP_KeyType itemField; + + private importHouseUORequestLivingHouseBlocksLivingRoomToCreate[] livingRoomToCreateField; + + private importHouseUORequestLivingHouseBlocksLivingRoomToUpdate[] livingRoomToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BlockToCreate", typeof(importHouseUORequestLivingHouseBlocksBlockToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("BlockToUpdate", typeof(importHouseUORequestLivingHouseBlocksBlockToUpdate), Order=0)] + public GKN_EGRP_KeyType Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", Order=1)] + public importHouseUORequestLivingHouseBlocksLivingRoomToCreate[] LivingRoomToCreate + { + get + { + return this.livingRoomToCreateField; + } + set + { + this.livingRoomToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", Order=2)] + public importHouseUORequestLivingHouseBlocksLivingRoomToUpdate[] LivingRoomToUpdate + { + get + { + return this.livingRoomToUpdateField; + } + set + { + this.livingRoomToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseBlocksBlockToCreate : BlockUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseBlocksBlockToUpdate : BlockUpdateUOType + { + + private string transportGUIDField; + + private string blockGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string BlockGUID + { + get + { + return this.blockGUIDField; + } + set + { + this.blockGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseBlocksLivingRoomToCreate : RoomUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseBlocksLivingRoomToUpdate : RoomUpdateUOType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseLivingRoomToCreate : RoomUOType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseUORequestLivingHouseLivingRoomToUpdate : RoomUpdateUOType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseUODataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importHouseUORequest importHouseUORequest; + + public importHouseUODataRequest() + { + } + + public importHouseUODataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseUORequest importHouseUORequest) + { + this.RequestHeader = RequestHeader; + this.importHouseUORequest = importHouseUORequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseUODataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importHouseUODataResponse() + { + } + + public importHouseUODataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequest : BaseType + { + + private object itemField; + + private bool inheritMissingValuesField; + + private bool inheritMissingValuesFieldSpecified; + + private string versionField; + + public importHouseOMSRequest() + { + this.inheritMissingValuesField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouse", typeof(importHouseOMSRequestApartmentHouse), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouse", typeof(importHouseOMSRequestLivingHouse), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool InheritMissingValues + { + get + { + return this.inheritMissingValuesField; + } + set + { + this.inheritMissingValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InheritMissingValuesSpecified + { + get + { + return this.inheritMissingValuesFieldSpecified; + } + set + { + this.inheritMissingValuesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouse + { + + private object itemField; + + private importHouseOMSRequestApartmentHouseNonResidentialPremiseToCreate[] nonResidentialPremiseToCreateField; + + private importHouseOMSRequestApartmentHouseNonResidentialPremiseToUpdate[] nonResidentialPremiseToUpdateField; + + private importHouseOMSRequestApartmentHouseEntranceToCreate[] entranceToCreateField; + + private importHouseOMSRequestApartmentHouseEntranceToUpdate[] entranceToUpdateField; + + private importHouseOMSRequestApartmentHouseResidentialPremises[] residentialPremisesField; + + private importHouseOMSRequestApartmentHouseLiftToCreate[] liftToCreateField; + + private importHouseOMSRequestApartmentHouseLiftToUpdate[] liftToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToCreate", typeof(importHouseOMSRequestApartmentHouseApartmentHouseToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToUpdate", typeof(importHouseOMSRequestApartmentHouseApartmentHouseToUpdate), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToCreate", Order=1)] + public importHouseOMSRequestApartmentHouseNonResidentialPremiseToCreate[] NonResidentialPremiseToCreate + { + get + { + return this.nonResidentialPremiseToCreateField; + } + set + { + this.nonResidentialPremiseToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToUpdate", Order=2)] + public importHouseOMSRequestApartmentHouseNonResidentialPremiseToUpdate[] NonResidentialPremiseToUpdate + { + get + { + return this.nonResidentialPremiseToUpdateField; + } + set + { + this.nonResidentialPremiseToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToCreate", Order=3)] + public importHouseOMSRequestApartmentHouseEntranceToCreate[] EntranceToCreate + { + get + { + return this.entranceToCreateField; + } + set + { + this.entranceToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToUpdate", Order=4)] + public importHouseOMSRequestApartmentHouseEntranceToUpdate[] EntranceToUpdate + { + get + { + return this.entranceToUpdateField; + } + set + { + this.entranceToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremises", Order=5)] + public importHouseOMSRequestApartmentHouseResidentialPremises[] ResidentialPremises + { + get + { + return this.residentialPremisesField; + } + set + { + this.residentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToCreate", Order=6)] + public importHouseOMSRequestApartmentHouseLiftToCreate[] LiftToCreate + { + get + { + return this.liftToCreateField; + } + set + { + this.liftToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToUpdate", Order=7)] + public importHouseOMSRequestApartmentHouseLiftToUpdate[] LiftToUpdate + { + get + { + return this.liftToUpdateField; + } + set + { + this.liftToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseApartmentHouseToCreate : ApartmentHouseOMSType + { + + private nsiRef houseManagementTypeField; + + private string transportGUIDField; + + private System.DateTime managementPeriodFromField; + + private bool managementPeriodFromFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ManagementPeriodFrom + { + get + { + return this.managementPeriodFromField; + } + set + { + this.managementPeriodFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ManagementPeriodFromSpecified + { + get + { + return this.managementPeriodFromFieldSpecified; + } + set + { + this.managementPeriodFromFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseApartmentHouseToUpdate : ApartmentHouseUpdateOMSType + { + + private string transportGUIDField; + + private nsiRef houseManagementTypeField; + + private System.DateTime managementPeriodFromField; + + private bool managementPeriodFromFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ManagementPeriodFrom + { + get + { + return this.managementPeriodFromField; + } + set + { + this.managementPeriodFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ManagementPeriodFromSpecified + { + get + { + return this.managementPeriodFromFieldSpecified; + } + set + { + this.managementPeriodFromFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseNonResidentialPremiseToCreate : NonResidentialPremisesOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseNonResidentialPremiseToUpdate : NonResidentialPremisesUpdateOMSType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseEntranceToCreate : EntranceOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseEntranceToUpdate : EntranceUpdateOMSType + { + + private string transportGUIDField; + + private string entranceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string EntranceGUID + { + get + { + return this.entranceGUIDField; + } + set + { + this.entranceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseResidentialPremises + { + + private GKN_EGRP_KeyType itemField; + + private importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToCreate[] livingRoomToCreateField; + + private importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] livingRoomToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToCreate", typeof(importHouseOMSRequestApartmentHouseResidentialPremisesResidentialPremisesToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToUpdate", typeof(importHouseOMSRequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate), Order=0)] + public GKN_EGRP_KeyType Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", Order=1)] + public importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToCreate[] LivingRoomToCreate + { + get + { + return this.livingRoomToCreateField; + } + set + { + this.livingRoomToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", Order=2)] + public importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] LivingRoomToUpdate + { + get + { + return this.livingRoomToUpdateField; + } + set + { + this.livingRoomToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseResidentialPremisesResidentialPremisesToCreate : ResidentialPremisesOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate : ResidentialPremisesUpdateOMSType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToCreate : RoomOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseResidentialPremisesLivingRoomToUpdate : RoomUpdateOMSType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseLiftToCreate : LiftOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestApartmentHouseLiftToUpdate : LiftUpdateOMSType + { + + private string transportGUIDField; + + private string liftGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LiftGUID + { + get + { + return this.liftGUIDField; + } + set + { + this.liftGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouse + { + + private object itemField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingHouseToCreate", typeof(importHouseOMSRequestLivingHouseLivingHouseToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("LivingHouseToUpdate", typeof(importHouseOMSRequestLivingHouseLivingHouseToUpdate), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Blocks", typeof(importHouseOMSRequestLivingHouseBlocks), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", typeof(importHouseOMSRequestLivingHouseLivingRoomToCreate), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", typeof(importHouseOMSRequestLivingHouseLivingRoomToUpdate), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseLivingHouseToCreate : LivingHouseOMSType + { + + private string transportGUIDField; + + private nsiRef houseManagementTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseLivingHouseToUpdate : LivingHouseUpdateOMSType + { + + private string transportGUIDField; + + private nsiRef houseManagementTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseBlocks + { + + private GKN_EGRP_KeyType itemField; + + private importHouseOMSRequestLivingHouseBlocksLivingRoomToCreate[] livingRoomToCreateField; + + private importHouseOMSRequestLivingHouseBlocksLivingRoomToUpdate[] livingRoomToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("BlockToCreate", typeof(importHouseOMSRequestLivingHouseBlocksBlockToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("BlockToUpdate", typeof(importHouseOMSRequestLivingHouseBlocksBlockToUpdate), Order=0)] + public GKN_EGRP_KeyType Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", Order=1)] + public importHouseOMSRequestLivingHouseBlocksLivingRoomToCreate[] LivingRoomToCreate + { + get + { + return this.livingRoomToCreateField; + } + set + { + this.livingRoomToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", Order=2)] + public importHouseOMSRequestLivingHouseBlocksLivingRoomToUpdate[] LivingRoomToUpdate + { + get + { + return this.livingRoomToUpdateField; + } + set + { + this.livingRoomToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseBlocksBlockToCreate : BlockOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseBlocksBlockToUpdate : BlockUpdateOMSType + { + + private string transportGUIDField; + + private string blockGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string BlockGUID + { + get + { + return this.blockGUIDField; + } + set + { + this.blockGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseBlocksLivingRoomToCreate : RoomOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseBlocksLivingRoomToUpdate : RoomUpdateOMSType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseLivingRoomToCreate : RoomOMSType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseOMSRequestLivingHouseLivingRoomToUpdate : RoomUpdateOMSType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseOMSDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importHouseOMSRequest importHouseOMSRequest; + + public importHouseOMSDataRequest() + { + } + + public importHouseOMSDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseOMSRequest importHouseOMSRequest) + { + this.RequestHeader = RequestHeader; + this.importHouseOMSRequest = importHouseOMSRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseOMSDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importHouseOMSDataResponse() + { + } + + public importHouseOMSDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequest : BaseType + { + + private importHouseESPRequestApartmentHouse apartmentHouseField; + + private bool inheritMissingValuesField; + + private bool inheritMissingValuesFieldSpecified; + + private string versionField; + + public importHouseESPRequest() + { + this.inheritMissingValuesField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importHouseESPRequestApartmentHouse ApartmentHouse + { + get + { + return this.apartmentHouseField; + } + set + { + this.apartmentHouseField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool InheritMissingValues + { + get + { + return this.inheritMissingValuesField; + } + set + { + this.inheritMissingValuesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool InheritMissingValuesSpecified + { + get + { + return this.inheritMissingValuesFieldSpecified; + } + set + { + this.inheritMissingValuesFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouse + { + + private object itemField; + + private importHouseESPRequestApartmentHouseNonResidentialPremiseToCreate[] nonResidentialPremiseToCreateField; + + private importHouseESPRequestApartmentHouseNonResidentialPremiseToUpdate[] nonResidentialPremiseToUpdateField; + + private importHouseESPRequestApartmentHouseEntranceToCreate[] entranceToCreateField; + + private importHouseESPRequestApartmentHouseEntranceToUpdate[] entranceToUpdateField; + + private importHouseESPRequestApartmentHouseResidentialPremises[] residentialPremisesField; + + private importHouseESPRequestApartmentHouseLiftToCreate[] liftToCreateField; + + private importHouseESPRequestApartmentHouseLiftToUpdate[] liftToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToCreate", typeof(importHouseESPRequestApartmentHouseApartmentHouseToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ApartmentHouseToUpdate", typeof(importHouseESPRequestApartmentHouseApartmentHouseToUpdate), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToCreate", Order=1)] + public importHouseESPRequestApartmentHouseNonResidentialPremiseToCreate[] NonResidentialPremiseToCreate + { + get + { + return this.nonResidentialPremiseToCreateField; + } + set + { + this.nonResidentialPremiseToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NonResidentialPremiseToUpdate", Order=2)] + public importHouseESPRequestApartmentHouseNonResidentialPremiseToUpdate[] NonResidentialPremiseToUpdate + { + get + { + return this.nonResidentialPremiseToUpdateField; + } + set + { + this.nonResidentialPremiseToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToCreate", Order=3)] + public importHouseESPRequestApartmentHouseEntranceToCreate[] EntranceToCreate + { + get + { + return this.entranceToCreateField; + } + set + { + this.entranceToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EntranceToUpdate", Order=4)] + public importHouseESPRequestApartmentHouseEntranceToUpdate[] EntranceToUpdate + { + get + { + return this.entranceToUpdateField; + } + set + { + this.entranceToUpdateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremises", Order=5)] + public importHouseESPRequestApartmentHouseResidentialPremises[] ResidentialPremises + { + get + { + return this.residentialPremisesField; + } + set + { + this.residentialPremisesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToCreate", Order=6)] + public importHouseESPRequestApartmentHouseLiftToCreate[] LiftToCreate + { + get + { + return this.liftToCreateField; + } + set + { + this.liftToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LiftToUpdate", Order=7)] + public importHouseESPRequestApartmentHouseLiftToUpdate[] LiftToUpdate + { + get + { + return this.liftToUpdateField; + } + set + { + this.liftToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseApartmentHouseToCreate : ApartmentHouseESPType + { + + private string transportGUIDField; + + private nsiRef houseManagementTypeField; + + private System.DateTime managementPeriodFromField; + + private bool managementPeriodFromFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ManagementPeriodFrom + { + get + { + return this.managementPeriodFromField; + } + set + { + this.managementPeriodFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ManagementPeriodFromSpecified + { + get + { + return this.managementPeriodFromFieldSpecified; + } + set + { + this.managementPeriodFromFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseApartmentHouseToUpdate : ApartmentHouseUpdateESPType + { + + private string transportGUIDField; + + private nsiRef houseManagementTypeField; + + private System.DateTime managementPeriodFromField; + + private bool managementPeriodFromFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef HouseManagementType + { + get + { + return this.houseManagementTypeField; + } + set + { + this.houseManagementTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ManagementPeriodFrom + { + get + { + return this.managementPeriodFromField; + } + set + { + this.managementPeriodFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ManagementPeriodFromSpecified + { + get + { + return this.managementPeriodFromFieldSpecified; + } + set + { + this.managementPeriodFromFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseNonResidentialPremiseToCreate : NonResidentialPremisesESPType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseNonResidentialPremiseToUpdate : NonResidentialPremisesUpdateESPType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseEntranceToCreate : EntranceESPType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseEntranceToUpdate : EntranceUpdateESPType + { + + private string transportGUIDField; + + private string entranceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string EntranceGUID + { + get + { + return this.entranceGUIDField; + } + set + { + this.entranceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseResidentialPremises + { + + private GKN_EGRP_KeyType itemField; + + private importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToCreate[] livingRoomToCreateField; + + private importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] livingRoomToUpdateField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToCreate", typeof(importHouseESPRequestApartmentHouseResidentialPremisesResidentialPremisesToCreate), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremisesToUpdate", typeof(importHouseESPRequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate), Order=0)] + public GKN_EGRP_KeyType Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToCreate", Order=1)] + public importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToCreate[] LivingRoomToCreate + { + get + { + return this.livingRoomToCreateField; + } + set + { + this.livingRoomToCreateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("LivingRoomToUpdate", Order=2)] + public importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToUpdate[] LivingRoomToUpdate + { + get + { + return this.livingRoomToUpdateField; + } + set + { + this.livingRoomToUpdateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseResidentialPremisesResidentialPremisesToCreate : ResidentialPremisesESPType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseResidentialPremisesResidentialPremisesToUpdate : ResidentialPremisesUpdateESPType + { + + private string transportGUIDField; + + private string premisesGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PremisesGUID + { + get + { + return this.premisesGUIDField; + } + set + { + this.premisesGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToCreate : RoomESPType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseResidentialPremisesLivingRoomToUpdate : RoomUpdateESPType + { + + private string transportGUIDField; + + private string livingRoomGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LivingRoomGUID + { + get + { + return this.livingRoomGUIDField; + } + set + { + this.livingRoomGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseLiftToCreate : LiftESPType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importHouseESPRequestApartmentHouseLiftToUpdate : LiftUpdateESPType + { + + private string transportGUIDField; + + private string liftGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string LiftGUID + { + get + { + return this.liftGUIDField; + } + set + { + this.liftGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseESPDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importHouseESPRequest importHouseESPRequest; + + public importHouseESPDataRequest() + { + } + + public importHouseESPDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseESPRequest importHouseESPRequest) + { + this.RequestHeader = RequestHeader; + this.importHouseESPRequest = importHouseESPRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importHouseESPDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importHouseESPDataResponse() + { + } + + public importHouseESPDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractRequest : BaseType + { + + private importSupplyResourceContractRequestContract[] contractField; + + private string versionField; + + public importSupplyResourceContractRequest() + { + this.versionField = "11.3.0.5"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Contract", Order=0)] + public importSupplyResourceContractRequestContract[] Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractRequestContract + { + + private string transportGUIDField; + + private string itemField; + + private ItemChoiceType32 itemElementNameField; + + private object item1Field; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType32 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AnnulmentContract", typeof(AnnulmentType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("RollOverContract", typeof(importSupplyResourceContractRequestContractRollOverContract), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("SupplyResourceContract", typeof(SupplyResourceContractType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("TerminateContract", typeof(importSupplyResourceContractRequestContractTerminateContract), Order=3)] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType32 + { + + /// + ContractGUID, + + /// + ContractRootGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractRequestContractRollOverContract + { + + private System.DateTime rollOverDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime RollOverDate + { + get + { + return this.rollOverDateField; + } + set + { + this.rollOverDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractRequestContractTerminateContract : TerminateType + { + + private nsiRef reasonRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef ReasonRef + { + get + { + return this.reasonRefField; + } + set + { + this.reasonRefField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importSupplyResourceContractRequest importSupplyResourceContractRequest; + + public importSupplyResourceContractDataRequest() + { + } + + public importSupplyResourceContractDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractRequest importSupplyResourceContractRequest) + { + this.RequestHeader = RequestHeader; + this.importSupplyResourceContractRequest = importSupplyResourceContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importSupplyResourceContractDataResponse() + { + } + + public importSupplyResourceContractDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType32[] itemsElementNameField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", typeof(exportSupplyResourceContractRequestContractSubject), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ExportContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateEnd", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateStart", typeof(System.DateTime), DataType="date", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType32[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractRequestContractSubject + { + + private exportSupplyResourceContractRequestContractSubjectServiceType serviceTypeField; + + private nsiRef municipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportSupplyResourceContractRequestContractSubjectServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractRequestContractSubjectServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType32 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + ContractRootGUID, + + /// + ContractSubject, + + /// + ExportContractRootGUID, + + /// + FIASHouseGuid, + + /// + SigningDateEnd, + + /// + SigningDateStart, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSupplyResourceContractDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportSupplyResourceContractRequest exportSupplyResourceContractRequest; + + public exportSupplyResourceContractDataRequest() + { + } + + public exportSupplyResourceContractDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportSupplyResourceContractRequest exportSupplyResourceContractRequest) + { + this.RequestHeader = RequestHeader; + this.exportSupplyResourceContractRequest = exportSupplyResourceContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSupplyResourceContractDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportSupplyResourceContractDataResponse() + { + } + + public exportSupplyResourceContractDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importAccountIndividualServicesRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importAccountIndividualServicesRequest() + { + this.versionField = "11.0.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteIndividualService", typeof(importAccountIndividualServicesRequestDeleteIndividualService), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("IndividualService", typeof(importAccountIndividualServicesRequestIndividualService), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importAccountIndividualServicesRequestDeleteIndividualService + { + + private string transportGUIDField; + + private string accountIndividualServiceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string AccountIndividualServiceGUID + { + get + { + return this.accountIndividualServiceGUIDField; + } + set + { + this.accountIndividualServiceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importAccountIndividualServicesRequestIndividualService : AccountIndividualServiceType + { + + private string transportGUIDField; + + private string itemField; + + private ItemChoiceType33 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("AccountIndividualServiceGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType33 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType33 + { + + /// + AccountGUID, + + /// + AccountIndividualServiceGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAccountIndividualServicesRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest importAccountIndividualServicesRequest; + + public importAccountIndividualServicesRequest1() + { + } + + public importAccountIndividualServicesRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest importAccountIndividualServicesRequest) + { + this.RequestHeader = RequestHeader; + this.importAccountIndividualServicesRequest = importAccountIndividualServicesRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAccountIndividualServicesResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importAccountIndividualServicesResponse() + { + } + + public importAccountIndividualServicesResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportAccountIndividualServicesRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType33[] itemsElementNameField; + + private string versionField; + + public exportAccountIndividualServicesRequest() + { + this.versionField = "11.0.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountGuid", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("AccountIndividualServiceGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType33[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType33 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:AccountGuid")] + AccountGuid, + + /// + AccountIndividualServiceGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportAccountIndividualServicesRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest exportAccountIndividualServicesRequest; + + public exportAccountIndividualServicesRequest1() + { + } + + public exportAccountIndividualServicesRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest exportAccountIndividualServicesRequest) + { + this.RequestHeader = RequestHeader; + this.exportAccountIndividualServicesRequest = exportAccountIndividualServicesRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportAccountIndividualServicesResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportAccountIndividualServicesResponse() + { + } + + public exportAccountIndividualServicesResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportSupplyResourceContractObjectAddressRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType34[] itemsElementNameField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ExportObjectGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType34[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType34 + { + + /// + ContractGUID, + + /// + ContractRootGUID, + + /// + ExportObjectGUID, + + /// + FIASHouseGuid, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSupplyResourceContractObjectAddressDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressRequest exportSupplyResourceContractObjectAddressRequest; + + public exportSupplyResourceContractObjectAddressDataRequest() + { + } + + public exportSupplyResourceContractObjectAddressDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressRequest exportSupplyResourceContractObjectAddressRequest) + { + this.RequestHeader = RequestHeader; + this.exportSupplyResourceContractObjectAddressRequest = exportSupplyResourceContractObjectAddressRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportSupplyResourceContractObjectAddressDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportSupplyResourceContractObjectAddressDataResponse() + { + } + + public exportSupplyResourceContractObjectAddressDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequest : BaseType + { + + private string itemField; + + private ItemChoiceType34 itemElementNameField; + + private importSupplyResourceContractObjectAddressRequestObjectAddress[] objectAddressField; + + private string versionField; + + public importSupplyResourceContractObjectAddressRequest() + { + this.versionField = "11.7.0.3"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType34 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ObjectAddress", Order=2)] + public importSupplyResourceContractObjectAddressRequestObjectAddress[] ObjectAddress + { + get + { + return this.objectAddressField; + } + set + { + this.objectAddressField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType34 + { + + /// + ContractGUID, + + /// + ContractRootGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddress + { + + private string transportGUIDField; + + private string objectGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ObjectGUID + { + get + { + return this.objectGUIDField; + } + set + { + this.objectGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteObject", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("LoadObject", typeof(importSupplyResourceContractObjectAddressRequestObjectAddressLoadObject), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObject : ObjectAddressType + { + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPair[] pairField; + + private bool noConnectionToWaterSupplyField; + + private bool noConnectionToWaterSupplyFieldSpecified; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQuality[] qualityField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectOtherQualityIndicator[] otherQualityIndicatorField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTemperatureChart[] temperatureChartField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPlannedVolume[] plannedVolumeField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectCountingResource countingResourceField; + + private bool countingResourceFieldSpecified; + + private bool meteringDeviceInformationField; + + private bool meteringDeviceInformationFieldSpecified; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTariff[] tariffField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectNorm[] normField; + + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObject() + { + this.noConnectionToWaterSupplyField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Pair", Order=0)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPair[] Pair + { + get + { + return this.pairField; + } + set + { + this.pairField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool NoConnectionToWaterSupply + { + get + { + return this.noConnectionToWaterSupplyField; + } + set + { + this.noConnectionToWaterSupplyField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool NoConnectionToWaterSupplySpecified + { + get + { + return this.noConnectionToWaterSupplyFieldSpecified; + } + set + { + this.noConnectionToWaterSupplyFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Quality", Order=2)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQuality[] Quality + { + get + { + return this.qualityField; + } + set + { + this.qualityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OtherQualityIndicator", Order=3)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectOtherQualityIndicator[] OtherQualityIndicator + { + get + { + return this.otherQualityIndicatorField; + } + set + { + this.otherQualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("TemperatureChart", Order=4)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTemperatureChart[] TemperatureChart + { + get + { + return this.temperatureChartField; + } + set + { + this.temperatureChartField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PlannedVolume", Order=5)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPlannedVolume[] PlannedVolume + { + get + { + return this.plannedVolumeField; + } + set + { + this.plannedVolumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectCountingResource CountingResource + { + get + { + return this.countingResourceField; + } + set + { + this.countingResourceField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool CountingResourceSpecified + { + get + { + return this.countingResourceFieldSpecified; + } + set + { + this.countingResourceFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool MeteringDeviceInformation + { + get + { + return this.meteringDeviceInformationField; + } + set + { + this.meteringDeviceInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MeteringDeviceInformationSpecified + { + get + { + return this.meteringDeviceInformationFieldSpecified; + } + set + { + this.meteringDeviceInformationFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Tariff", Order=8)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTariff[] Tariff + { + get + { + return this.tariffField; + } + set + { + this.tariffField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Norm", Order=9)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectNorm[] Norm + { + get + { + return this.normField; + } + set + { + this.normField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPair : ContractSubjectObjectAdressType + { + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemType heatingSystemTypeField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemType HeatingSystemType + { + get + { + return this.heatingSystemTypeField; + } + set + { + this.heatingSystemTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemType + { + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeOpenOrNot openOrNotField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeCentralizedOrNot centralizedOrNotField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeOpenOrNot OpenOrNot + { + get + { + return this.openOrNotField; + } + set + { + this.openOrNotField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeCentralizedOrNot CentralizedOrNot + { + get + { + return this.centralizedOrNotField; + } + set + { + this.centralizedOrNotField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeOpenOrNot + { + + /// + Opened, + + /// + Closed, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPairHeatingSystemTypeCentralizedOrNot + { + + /// + Centralized, + + /// + Decentralized, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQuality + { + + private string pairKeyField; + + private nsiRef qualityIndicatorField; + + private importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQualityIndicatorValue indicatorValueField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef QualityIndicator + { + get + { + return this.qualityIndicatorField; + } + set + { + this.qualityIndicatorField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQualityIndicatorValue IndicatorValue + { + get + { + return this.indicatorValueField; + } + set + { + this.indicatorValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectQualityIndicatorValue : IndicatorValueType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectOtherQualityIndicator + { + + private string pairKeyField; + + private string indicatorNameField; + + private object[] itemsField; + + private ItemsChoiceType35[] itemsElementNameField; + + private string additionalInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string IndicatorName + { + get + { + return this.indicatorNameField; + } + set + { + this.indicatorNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Correspond", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("EndRange", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Number", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("StartRange", typeof(decimal), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType35[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string AdditionalInformation + { + get + { + return this.additionalInformationField; + } + set + { + this.additionalInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType35 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + Correspond, + + /// + EndRange, + + /// + Number, + + /// + StartRange, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTemperatureChart + { + + private int outsideTemperatureField; + + private decimal flowLineTemperatureField; + + private decimal oppositeLineTemperatureField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public int OutsideTemperature + { + get + { + return this.outsideTemperatureField; + } + set + { + this.outsideTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal FlowLineTemperature + { + get + { + return this.flowLineTemperatureField; + } + set + { + this.flowLineTemperatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal OppositeLineTemperature + { + get + { + return this.oppositeLineTemperatureField; + } + set + { + this.oppositeLineTemperatureField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectPlannedVolume + { + + private string pairKeyField; + + private decimal volumeField; + + private string unitField; + + private string feedingModeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Volume + { + get + { + return this.volumeField; + } + set + { + this.volumeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Unit + { + get + { + return this.unitField; + } + set + { + this.unitField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string FeedingMode + { + get + { + return this.feedingModeField; + } + set + { + this.feedingModeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectCountingResource + { + + /// + R, + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectTariff + { + + private string pairKeyField; + + private string priceGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string PriceGUID + { + get + { + return this.priceGUIDField; + } + set + { + this.priceGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractObjectAddressRequestObjectAddressLoadObjectNorm + { + + private string pairKeyField; + + private string normGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PairKey + { + get + { + return this.pairKeyField; + } + set + { + this.pairKeyField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string NormGUID + { + get + { + return this.normGUIDField; + } + set + { + this.normGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractObjectAddressDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressRequest importSupplyResourceContractObjectAddressRequest; + + public importSupplyResourceContractObjectAddressDataRequest() + { + } + + public importSupplyResourceContractObjectAddressDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressRequest importSupplyResourceContractObjectAddressRequest) + { + this.RequestHeader = RequestHeader; + this.importSupplyResourceContractObjectAddressRequest = importSupplyResourceContractObjectAddressRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractObjectAddressDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importSupplyResourceContractObjectAddressDataResponse() + { + } + + public importSupplyResourceContractObjectAddressDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractProjectRequest : BaseType + { + + private importSupplyResourceContractProjectRequestContract[] contractField; + + private string versionField; + + public importSupplyResourceContractProjectRequest() + { + this.versionField = "11.7.0.3"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Contract", Order=0)] + public importSupplyResourceContractProjectRequestContract[] Contract + { + get + { + return this.contractField; + } + set + { + this.contractField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importSupplyResourceContractProjectRequestContract + { + + private string transportGUIDField; + + private string itemField; + + private ItemChoiceType35 itemElementNameField; + + private object item1Field; + + private Item1ChoiceType10 item1ElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType35 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractProject", typeof(SupplyResourceContractProjectType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("DeleteContractProject", typeof(bool), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("PlacingContractProject", typeof(bool), Order=3)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public object Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType10 Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemChoiceType35 + { + + /// + ContractGUID, + + /// + ContractRootGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum Item1ChoiceType10 + { + + /// + ContractProject, + + /// + DeleteContractProject, + + /// + PlacingContractProject, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractProjectDataRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectRequest importSupplyResourceContractProjectRequest; + + public importSupplyResourceContractProjectDataRequest() + { + } + + public importSupplyResourceContractProjectDataRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectRequest importSupplyResourceContractProjectRequest) + { + this.RequestHeader = RequestHeader; + this.importSupplyResourceContractProjectRequest = importSupplyResourceContractProjectRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplyResourceContractProjectDataResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importSupplyResourceContractProjectDataResponse() + { + } + + public importSupplyResourceContractProjectDataResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISRequestHeader : HeaderType + { + + private ISCreator[] iSCreatorField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=0)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportRolloverStatusCAChRequest : BaseType + { + + private System.DateTime dateToField; + + private System.DateTime dateFromField; + + private string[] orgPPAGUIDField; + + private string versionField; + + public exportRolloverStatusCAChRequest() + { + this.versionField = "11.12.0.7"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime DateTo + { + get + { + return this.dateToField; + } + set + { + this.dateToField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateFrom + { + get + { + return this.dateFromField; + } + set + { + this.dateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=2)] + public string[] orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportRolloverStatusCAChRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest exportRolloverStatusCAChRequest; + + public exportRolloverStatusCAChRequest1() + { + } + + public exportRolloverStatusCAChRequest1(Hcs.Service.Async.HouseManagement.ISRequestHeader ISRequestHeader, Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest exportRolloverStatusCAChRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportRolloverStatusCAChRequest = exportRolloverStatusCAChRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportRolloverStatusCAChResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportRolloverStatusCAChResponse() + { + } + + public exportRolloverStatusCAChResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractRequest : BaseType + { + + private string nextPageContractRootGUIDField; + + private string nextPageObjectGUIDField; + + private object[] itemsField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string NextPageContractRootGUID + { + get + { + return this.nextPageContractRootGUIDField; + } + set + { + this.nextPageContractRootGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string NextPageObjectGUID + { + get + { + return this.nextPageObjectGUIDField; + } + set + { + this.nextPageObjectGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Criteria", typeof(exportBriefSupplyResourceContractRequestCriteria), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Organization", typeof(RegOrgType), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractRequestCriteria + { + + private string fIASHouseGuidField; + + private object[] itemsField; + + private ItemsChoiceType36[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractSubject", typeof(exportBriefSupplyResourceContractRequestCriteriaContractSubject), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateEnd", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateStart", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType36[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractRequestCriteriaContractSubject + { + + private exportBriefSupplyResourceContractRequestCriteriaContractSubjectServiceType serviceTypeField; + + private nsiRef municipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportBriefSupplyResourceContractRequestCriteriaContractSubjectServiceType ServiceType + { + get + { + return this.serviceTypeField; + } + set + { + this.serviceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef MunicipalResource + { + get + { + return this.municipalResourceField; + } + set + { + this.municipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSupplyResourceContractRequestCriteriaContractSubjectServiceType : nsiRef + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType36 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + ContractRootGUID, + + /// + ContractSubject, + + /// + SigningDateEnd, + + /// + SigningDateStart, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefSupplyResourceContractRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest exportBriefSupplyResourceContractRequest; + + public exportBriefSupplyResourceContractRequest1() + { + } + + public exportBriefSupplyResourceContractRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest exportBriefSupplyResourceContractRequest) + { + this.RequestHeader = RequestHeader; + this.exportBriefSupplyResourceContractRequest = exportBriefSupplyResourceContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefSupplyResourceContractResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportBriefSupplyResourceContractResponse() + { + } + + public exportBriefSupplyResourceContractResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSocialHireContractRequest : BaseType + { + + private exportBriefSocialHireContractRequestCriteria[] criteriaField; + + private string versionField; + + public exportBriefSocialHireContractRequest() + { + this.versionField = "11.14.0.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Criteria", Order=0)] + public exportBriefSocialHireContractRequestCriteria[] Criteria + { + get + { + return this.criteriaField; + } + set + { + this.criteriaField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefSocialHireContractRequestCriteria + { + + private string fIASHouseGuidField; + + private object[] itemsField; + + private ItemsChoiceType37[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ContractGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractNumber", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ContractRootGUID", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateEnd", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("SigningDateStart", typeof(System.DateTime), DataType="date", Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Type", typeof(exportBriefSocialHireContractRequestCriteriaType), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType37[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public enum exportBriefSocialHireContractRequestCriteriaType + { + + /// + D, + + /// + M, + + /// + S, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType37 + { + + /// + ContractGUID, + + /// + ContractNumber, + + /// + ContractRootGUID, + + /// + SigningDateEnd, + + /// + SigningDateStart, + + /// + Type, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefSocialHireContractRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest exportBriefSocialHireContractRequest; + + public exportBriefSocialHireContractRequest1() + { + } + + public exportBriefSocialHireContractRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest exportBriefSocialHireContractRequest) + { + this.RequestHeader = RequestHeader; + this.exportBriefSocialHireContractRequest = exportBriefSocialHireContractRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefSocialHireContractResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportBriefSocialHireContractResponse() + { + } + + public exportBriefSocialHireContractResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class demolishHouseRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Name="demolishHouseRequest", Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.DemolishHouseRequestType demolishHouseRequest1; + + public demolishHouseRequest() + { + } + + public demolishHouseRequest(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.DemolishHouseRequestType demolishHouseRequest1) + { + this.RequestHeader = RequestHeader; + this.demolishHouseRequest1 = demolishHouseRequest1; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class demolishHouseResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public demolishHouseResponse() + { + } + + public demolishHouseResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefBasicHouseRequest : BaseType + { + + private ExportBriefBasicHouseRequestType[] requestItemField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("RequestItem", Order=0)] + public ExportBriefBasicHouseRequestType[] RequestItem + { + get + { + return this.requestItemField; + } + set + { + this.requestItemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefBasicHouseRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest exportBriefBasicHouseRequest; + + public exportBriefBasicHouseRequest1() + { + } + + public exportBriefBasicHouseRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest exportBriefBasicHouseRequest) + { + this.RequestHeader = RequestHeader; + this.exportBriefBasicHouseRequest = exportBriefBasicHouseRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefBasicHouseResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportBriefBasicHouseResponse() + { + } + + public exportBriefBasicHouseResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefLivingHouseRequest : BaseType + { + + private ExportBriefLivingHouseRequestType[] requestItemField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("RequestItem", Order=0)] + public ExportBriefLivingHouseRequestType[] RequestItem + { + get + { + return this.requestItemField; + } + set + { + this.requestItemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefLivingHouseRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest exportBriefLivingHouseRequest; + + public exportBriefLivingHouseRequest1() + { + } + + public exportBriefLivingHouseRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest exportBriefLivingHouseRequest) + { + this.RequestHeader = RequestHeader; + this.exportBriefLivingHouseRequest = exportBriefLivingHouseRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefLivingHouseResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportBriefLivingHouseResponse() + { + } + + public exportBriefLivingHouseResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportBriefApartmentHouseRequest : BaseType + { + + private string houseGuidField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string HouseGuid + { + get + { + return this.houseGuidField; + } + set + { + this.houseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefApartmentHouseRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest exportBriefApartmentHouseRequest; + + public exportBriefApartmentHouseRequest1() + { + } + + public exportBriefApartmentHouseRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest exportBriefApartmentHouseRequest) + { + this.RequestHeader = RequestHeader; + this.exportBriefApartmentHouseRequest = exportBriefApartmentHouseRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportBriefApartmentHouseResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportBriefApartmentHouseResponse() + { + } + + public exportBriefApartmentHouseResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importExternalVotingProtocolRequest : BaseType + { + + private string transportGUIDField; + + private string messageGUIDField; + + private ExternalVotingProtocolType externalVotingProtocolField; + + private string versionField; + + public importExternalVotingProtocolRequest() + { + this.versionField = "13.1.8.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ExternalVotingProtocolType ExternalVotingProtocol + { + get + { + return this.externalVotingProtocolField; + } + set + { + this.externalVotingProtocolField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importExternalVotingProtocolRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest importExternalVotingProtocolRequest; + + public importExternalVotingProtocolRequest1() + { + } + + public importExternalVotingProtocolRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest importExternalVotingProtocolRequest) + { + this.RequestHeader = RequestHeader; + this.importExternalVotingProtocolRequest = importExternalVotingProtocolRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importExternalVotingProtocolResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importExternalVotingProtocolResponse() + { + } + + public importExternalVotingProtocolResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importVotingMessageRequest : BaseType + { + + private string transportGUIDField; + + private string messageGUIDField; + + private object itemField; + + private string versionField; + + public importVotingMessageRequest() + { + this.versionField = "15.4.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Annulment", typeof(AnnulmentProtocolType), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Refuse", typeof(bool), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("VotingMessage", typeof(MessageType), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importVotingMessageRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importVotingMessageRequest importVotingMessageRequest; + + public importVotingMessageRequest1() + { + } + + public importVotingMessageRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importVotingMessageRequest importVotingMessageRequest) + { + this.RequestHeader = RequestHeader; + this.importVotingMessageRequest = importVotingMessageRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importVotingMessageResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importVotingMessageResponse() + { + } + + public importVotingMessageResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportVotingMessageRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType38[] itemsElementNameField; + + private string versionField; + + public exportVotingMessageRequest() + { + this.versionField = "15.4.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MessageGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType38[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType38 + { + + /// + FIASHouseGuid, + + /// + MessageGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportVotingMessageRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportVotingMessageRequest exportVotingMessageRequest; + + public exportVotingMessageRequest1() + { + } + + public exportVotingMessageRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportVotingMessageRequest exportVotingMessageRequest) + { + this.RequestHeader = RequestHeader; + this.exportVotingMessageRequest = exportVotingMessageRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportVotingMessageResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportVotingMessageResponse() + { + } + + public exportVotingMessageResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerRefusalRequest : BaseType + { + + private importOwnerRefusalRequestOwnerRefusal[] ownerRefusalField; + + private string versionField; + + public importOwnerRefusalRequest() + { + this.versionField = "13.1.8.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OwnerRefusal", Order=0)] + public importOwnerRefusalRequestOwnerRefusal[] OwnerRefusal + { + get + { + return this.ownerRefusalField; + } + set + { + this.ownerRefusalField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerRefusalRequestOwnerRefusal + { + + private string transportGUIDField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Annulment", typeof(importOwnerRefusalRequestOwnerRefusalAnnulment), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Edit", typeof(importOwnerRefusalRequestOwnerRefusalEdit), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Publish", typeof(importOwnerRefusalRequestOwnerRefusalPublish), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerRefusalRequestOwnerRefusalAnnulment + { + + private string ownerRefusalGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OwnerRefusalGUID + { + get + { + return this.ownerRefusalGUIDField; + } + set + { + this.ownerRefusalGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerRefusalRequestOwnerRefusalEdit + { + + private string ownerRefusalGUIDField; + + private OwnerRefusalType ownerRefusalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OwnerRefusalGUID + { + get + { + return this.ownerRefusalGUIDField; + } + set + { + this.ownerRefusalGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OwnerRefusalType OwnerRefusal + { + get + { + return this.ownerRefusalField; + } + set + { + this.ownerRefusalField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class importOwnerRefusalRequestOwnerRefusalPublish + { + + private string messageGUIDField; + + private OwnerRefusalType ownerRefusalField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public OwnerRefusalType OwnerRefusal + { + get + { + return this.ownerRefusalField; + } + set + { + this.ownerRefusalField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOwnerRefusalRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest importOwnerRefusalRequest; + + public importOwnerRefusalRequest1() + { + } + + public importOwnerRefusalRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest importOwnerRefusalRequest) + { + this.RequestHeader = RequestHeader; + this.importOwnerRefusalRequest = importOwnerRefusalRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOwnerRefusalResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public importOwnerRefusalResponse() + { + } + + public importOwnerRefusalResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/")] + public partial class exportOwnerRefusalRequest : BaseType + { + + private string[] itemsField; + + private ItemsChoiceType39[] itemsElementNameField; + + private string versionField; + + public exportOwnerRefusalRequest() + { + this.versionField = "13.1.8.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("MessageGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OwnerRefusalGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType39[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", IncludeInSchema=false)] + public enum ItemsChoiceType39 + { + + /// + MessageGUID, + + /// + OwnerRefusalGUID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOwnerRefusalRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/house-management/", Order=0)] + public Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest exportOwnerRefusalRequest; + + public exportOwnerRefusalRequest1() + { + } + + public exportOwnerRefusalRequest1(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest exportOwnerRefusalRequest) + { + this.RequestHeader = RequestHeader; + this.exportOwnerRefusalRequest = exportOwnerRefusalRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOwnerRefusalResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.HouseManagement.AckRequest AckRequest; + + public exportOwnerRefusalResponse() + { + } + + public exportOwnerRefusalResponse(Hcs.Service.Async.HouseManagement.ResultHeader ResultHeader, Hcs.Service.Async.HouseManagement.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface HouseManagementPortsTypeAsyncChannel : Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class HouseManagementPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public HouseManagementPortsTypeAsyncClient() : + base(HouseManagementPortsTypeAsyncClient.GetDefaultBinding(), HouseManagementPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.HouseManagementPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public HouseManagementPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(HouseManagementPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), HouseManagementPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public HouseManagementPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(HouseManagementPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public HouseManagementPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(HouseManagementPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public HouseManagementPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest1 request) + { + return base.Channel.importMeteringDeviceDataAsync(request); + } + + public System.Threading.Tasks.Task importMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest importMeteringDeviceDataRequest) + { + Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest1 inValue = new Hcs.Service.Async.HouseManagement.importMeteringDeviceDataRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importMeteringDeviceDataRequest = importMeteringDeviceDataRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importMeteringDeviceDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest1 request) + { + return base.Channel.exportMeteringDeviceDataAsync(request); + } + + public System.Threading.Tasks.Task exportMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest exportMeteringDeviceDataRequest) + { + Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportMeteringDeviceDataRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportMeteringDeviceDataRequest = exportMeteringDeviceDataRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportMeteringDeviceDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportODSPMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest1 request) + { + return base.Channel.exportODSPMeteringDeviceDataAsync(request); + } + + public System.Threading.Tasks.Task exportODSPMeteringDeviceDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest exportODSPMeteringDeviceDataRequest) + { + Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportODSPMeteringDeviceDataRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportODSPMeteringDeviceDataRequest = exportODSPMeteringDeviceDataRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportODSPMeteringDeviceDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.getStateAsync(Hcs.Service.Async.HouseManagement.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.getStateRequest getStateRequest) + { + Hcs.Service.Async.HouseManagement.getStateRequest1 inValue = new Hcs.Service.Async.HouseManagement.getStateRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).getStateAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importContractDataAsync(Hcs.Service.Async.HouseManagement.importContractDataRequest request) + { + return base.Channel.importContractDataAsync(request); + } + + public System.Threading.Tasks.Task importContractDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importContractRequest importContractRequest) + { + Hcs.Service.Async.HouseManagement.importContractDataRequest inValue = new Hcs.Service.Async.HouseManagement.importContractDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importContractRequest = importContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importContractDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importCharterDataAsync(Hcs.Service.Async.HouseManagement.importCharterDataRequest request) + { + return base.Channel.importCharterDataAsync(request); + } + + public System.Threading.Tasks.Task importCharterDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importCharterRequest importCharterRequest) + { + Hcs.Service.Async.HouseManagement.importCharterDataRequest inValue = new Hcs.Service.Async.HouseManagement.importCharterDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importCharterRequest = importCharterRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importCharterDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportStatusCAChDataAsync(Hcs.Service.Async.HouseManagement.exportStatusCAChDataRequest request) + { + return base.Channel.exportStatusCAChDataAsync(request); + } + + public System.Threading.Tasks.Task exportStatusCAChDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportStatusCAChRequest exportStatusCAChRequest) + { + Hcs.Service.Async.HouseManagement.exportStatusCAChDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportStatusCAChDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportStatusCAChRequest = exportStatusCAChRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportStatusCAChDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportHouseDataAsync(Hcs.Service.Async.HouseManagement.exportHouseDataRequest request) + { + return base.Channel.exportHouseDataAsync(request); + } + + public System.Threading.Tasks.Task exportHouseDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportHouseRequest exportHouseRequest) + { + Hcs.Service.Async.HouseManagement.exportHouseDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportHouseDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportHouseRequest = exportHouseRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportHouseDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importAccountDataAsync(Hcs.Service.Async.HouseManagement.importAccountDataRequest request) + { + return base.Channel.importAccountDataAsync(request); + } + + public System.Threading.Tasks.Task importAccountDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importAccountRequest importAccountRequest) + { + Hcs.Service.Async.HouseManagement.importAccountDataRequest inValue = new Hcs.Service.Async.HouseManagement.importAccountDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importAccountRequest = importAccountRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importAccountDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportAccountDataAsync(Hcs.Service.Async.HouseManagement.exportAccountDataRequest request) + { + return base.Channel.exportAccountDataAsync(request); + } + + public System.Threading.Tasks.Task exportAccountDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportAccountRequest exportAccountRequest) + { + Hcs.Service.Async.HouseManagement.exportAccountDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportAccountDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportAccountRequest = exportAccountRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportAccountDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest1 request) + { + return base.Channel.importPublicPropertyContractAsync(request); + } + + public System.Threading.Tasks.Task importPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest importPublicPropertyContractRequest) + { + Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest1 inValue = new Hcs.Service.Async.HouseManagement.importPublicPropertyContractRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importPublicPropertyContractRequest = importPublicPropertyContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importPublicPropertyContractAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportStatusPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest1 request) + { + return base.Channel.exportStatusPublicPropertyContractAsync(request); + } + + public System.Threading.Tasks.Task exportStatusPublicPropertyContractAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest exportStatusPublicPropertyContractRequest) + { + Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportStatusPublicPropertyContractRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportStatusPublicPropertyContractRequest = exportStatusPublicPropertyContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportStatusPublicPropertyContractAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importNotificationDataAsync(Hcs.Service.Async.HouseManagement.importNotificationDataRequest request) + { + return base.Channel.importNotificationDataAsync(request); + } + + public System.Threading.Tasks.Task importNotificationDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importNotificationRequest importNotificationRequest) + { + Hcs.Service.Async.HouseManagement.importNotificationDataRequest inValue = new Hcs.Service.Async.HouseManagement.importNotificationDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importNotificationRequest = importNotificationRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importNotificationDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importVotingProtocolAsync(Hcs.Service.Async.HouseManagement.importVotingProtocolRequest1 request) + { + return base.Channel.importVotingProtocolAsync(request); + } + + public System.Threading.Tasks.Task importVotingProtocolAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importVotingProtocolRequest importVotingProtocolRequest) + { + Hcs.Service.Async.HouseManagement.importVotingProtocolRequest1 inValue = new Hcs.Service.Async.HouseManagement.importVotingProtocolRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importVotingProtocolRequest = importVotingProtocolRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importVotingProtocolAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportVotingProtocolAsync(Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest1 request) + { + return base.Channel.exportVotingProtocolAsync(request); + } + + public System.Threading.Tasks.Task exportVotingProtocolAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest exportVotingProtocolRequest) + { + Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportVotingProtocolRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportVotingProtocolRequest = exportVotingProtocolRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportVotingProtocolAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest1 request) + { + return base.Channel.importOwnerDecisionAsync(request); + } + + public System.Threading.Tasks.Task importOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest importOwnerDecisionRequest) + { + Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest1 inValue = new Hcs.Service.Async.HouseManagement.importOwnerDecisionRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importOwnerDecisionRequest = importOwnerDecisionRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importOwnerDecisionAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest1 request) + { + return base.Channel.exportOwnerDecisionAsync(request); + } + + public System.Threading.Tasks.Task exportOwnerDecisionAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest exportOwnerDecisionRequest) + { + Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportOwnerDecisionRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportOwnerDecisionRequest = exportOwnerDecisionRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportOwnerDecisionAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportCAChDataAsync(Hcs.Service.Async.HouseManagement.exportCAChDataRequest request) + { + return base.Channel.exportCAChDataAsync(request); + } + + public System.Threading.Tasks.Task exportCAChDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportCAChAsyncRequest exportCAChAsyncRequest) + { + Hcs.Service.Async.HouseManagement.exportCAChDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportCAChDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportCAChAsyncRequest = exportCAChAsyncRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportCAChDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importHouseUODataAsync(Hcs.Service.Async.HouseManagement.importHouseUODataRequest request) + { + return base.Channel.importHouseUODataAsync(request); + } + + public System.Threading.Tasks.Task importHouseUODataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseUORequest importHouseUORequest) + { + Hcs.Service.Async.HouseManagement.importHouseUODataRequest inValue = new Hcs.Service.Async.HouseManagement.importHouseUODataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importHouseUORequest = importHouseUORequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importHouseUODataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importHouseOMSDataAsync(Hcs.Service.Async.HouseManagement.importHouseOMSDataRequest request) + { + return base.Channel.importHouseOMSDataAsync(request); + } + + public System.Threading.Tasks.Task importHouseOMSDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseOMSRequest importHouseOMSRequest) + { + Hcs.Service.Async.HouseManagement.importHouseOMSDataRequest inValue = new Hcs.Service.Async.HouseManagement.importHouseOMSDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importHouseOMSRequest = importHouseOMSRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importHouseOMSDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importHouseESPDataAsync(Hcs.Service.Async.HouseManagement.importHouseESPDataRequest request) + { + return base.Channel.importHouseESPDataAsync(request); + } + + public System.Threading.Tasks.Task importHouseESPDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importHouseESPRequest importHouseESPRequest) + { + Hcs.Service.Async.HouseManagement.importHouseESPDataRequest inValue = new Hcs.Service.Async.HouseManagement.importHouseESPDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importHouseESPRequest = importHouseESPRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importHouseESPDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractDataRequest request) + { + return base.Channel.importSupplyResourceContractDataAsync(request); + } + + public System.Threading.Tasks.Task importSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractRequest importSupplyResourceContractRequest) + { + Hcs.Service.Async.HouseManagement.importSupplyResourceContractDataRequest inValue = new Hcs.Service.Async.HouseManagement.importSupplyResourceContractDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importSupplyResourceContractRequest = importSupplyResourceContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importSupplyResourceContractDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.exportSupplyResourceContractDataRequest request) + { + return base.Channel.exportSupplyResourceContractDataAsync(request); + } + + public System.Threading.Tasks.Task exportSupplyResourceContractDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportSupplyResourceContractRequest exportSupplyResourceContractRequest) + { + Hcs.Service.Async.HouseManagement.exportSupplyResourceContractDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportSupplyResourceContractDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportSupplyResourceContractRequest = exportSupplyResourceContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportSupplyResourceContractDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest1 request) + { + return base.Channel.importAccountIndividualServicesAsync(request); + } + + public System.Threading.Tasks.Task importAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest importAccountIndividualServicesRequest) + { + Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest1 inValue = new Hcs.Service.Async.HouseManagement.importAccountIndividualServicesRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importAccountIndividualServicesRequest = importAccountIndividualServicesRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importAccountIndividualServicesAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest1 request) + { + return base.Channel.exportAccountIndividualServicesAsync(request); + } + + public System.Threading.Tasks.Task exportAccountIndividualServicesAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest exportAccountIndividualServicesRequest) + { + Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportAccountIndividualServicesRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportAccountIndividualServicesRequest = exportAccountIndividualServicesRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportAccountIndividualServicesAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressDataRequest request) + { + return base.Channel.exportSupplyResourceContractObjectAddressDataAsync(request); + } + + public System.Threading.Tasks.Task exportSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressRequest exportSupplyResourceContractObjectAddressRequest) + { + Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressDataRequest inValue = new Hcs.Service.Async.HouseManagement.exportSupplyResourceContractObjectAddressDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportSupplyResourceContractObjectAddressRequest = exportSupplyResourceContractObjectAddressRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportSupplyResourceContractObjectAddressDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressDataRequest request) + { + return base.Channel.importSupplyResourceContractObjectAddressDataAsync(request); + } + + public System.Threading.Tasks.Task importSupplyResourceContractObjectAddressDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressRequest importSupplyResourceContractObjectAddressRequest) + { + Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressDataRequest inValue = new Hcs.Service.Async.HouseManagement.importSupplyResourceContractObjectAddressDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importSupplyResourceContractObjectAddressRequest = importSupplyResourceContractObjectAddressRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importSupplyResourceContractObjectAddressDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importSupplyResourceContractProjectDataAsync(Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectDataRequest request) + { + return base.Channel.importSupplyResourceContractProjectDataAsync(request); + } + + public System.Threading.Tasks.Task importSupplyResourceContractProjectDataAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectRequest importSupplyResourceContractProjectRequest) + { + Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectDataRequest inValue = new Hcs.Service.Async.HouseManagement.importSupplyResourceContractProjectDataRequest(); + inValue.RequestHeader = RequestHeader; + inValue.importSupplyResourceContractProjectRequest = importSupplyResourceContractProjectRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importSupplyResourceContractProjectDataAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportRolloverStatusCAChAsync(Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest1 request) + { + return base.Channel.exportRolloverStatusCAChAsync(request); + } + + public System.Threading.Tasks.Task exportRolloverStatusCAChAsync(Hcs.Service.Async.HouseManagement.ISRequestHeader ISRequestHeader, Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest exportRolloverStatusCAChRequest) + { + Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportRolloverStatusCAChRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportRolloverStatusCAChRequest = exportRolloverStatusCAChRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportRolloverStatusCAChAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportBriefSupplyResourceContractAsync(Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest1 request) + { + return base.Channel.exportBriefSupplyResourceContractAsync(request); + } + + public System.Threading.Tasks.Task exportBriefSupplyResourceContractAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest exportBriefSupplyResourceContractRequest) + { + Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportBriefSupplyResourceContractRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportBriefSupplyResourceContractRequest = exportBriefSupplyResourceContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportBriefSupplyResourceContractAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportBriefSocialHireContractAsync(Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest1 request) + { + return base.Channel.exportBriefSocialHireContractAsync(request); + } + + public System.Threading.Tasks.Task exportBriefSocialHireContractAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest exportBriefSocialHireContractRequest) + { + Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportBriefSocialHireContractRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportBriefSocialHireContractRequest = exportBriefSocialHireContractRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportBriefSocialHireContractAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.demolishHouseAsync(Hcs.Service.Async.HouseManagement.demolishHouseRequest request) + { + return base.Channel.demolishHouseAsync(request); + } + + public System.Threading.Tasks.Task demolishHouseAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.DemolishHouseRequestType demolishHouseRequest1) + { + Hcs.Service.Async.HouseManagement.demolishHouseRequest inValue = new Hcs.Service.Async.HouseManagement.demolishHouseRequest(); + inValue.RequestHeader = RequestHeader; + inValue.demolishHouseRequest1 = demolishHouseRequest1; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).demolishHouseAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportBriefBasicHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest1 request) + { + return base.Channel.exportBriefBasicHouseAsync(request); + } + + public System.Threading.Tasks.Task exportBriefBasicHouseAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest exportBriefBasicHouseRequest) + { + Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportBriefBasicHouseRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportBriefBasicHouseRequest = exportBriefBasicHouseRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportBriefBasicHouseAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportBriefLivingHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest1 request) + { + return base.Channel.exportBriefLivingHouseAsync(request); + } + + public System.Threading.Tasks.Task exportBriefLivingHouseAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest exportBriefLivingHouseRequest) + { + Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportBriefLivingHouseRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportBriefLivingHouseRequest = exportBriefLivingHouseRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportBriefLivingHouseAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportBriefApartmentHouseAsync(Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest1 request) + { + return base.Channel.exportBriefApartmentHouseAsync(request); + } + + public System.Threading.Tasks.Task exportBriefApartmentHouseAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest exportBriefApartmentHouseRequest) + { + Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportBriefApartmentHouseRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportBriefApartmentHouseRequest = exportBriefApartmentHouseRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportBriefApartmentHouseAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importExternalVotingProtocolAsync(Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest1 request) + { + return base.Channel.importExternalVotingProtocolAsync(request); + } + + public System.Threading.Tasks.Task importExternalVotingProtocolAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest importExternalVotingProtocolRequest) + { + Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest1 inValue = new Hcs.Service.Async.HouseManagement.importExternalVotingProtocolRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importExternalVotingProtocolRequest = importExternalVotingProtocolRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importExternalVotingProtocolAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importVotingMessageAsync(Hcs.Service.Async.HouseManagement.importVotingMessageRequest1 request) + { + return base.Channel.importVotingMessageAsync(request); + } + + public System.Threading.Tasks.Task importVotingMessageAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importVotingMessageRequest importVotingMessageRequest) + { + Hcs.Service.Async.HouseManagement.importVotingMessageRequest1 inValue = new Hcs.Service.Async.HouseManagement.importVotingMessageRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importVotingMessageRequest = importVotingMessageRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importVotingMessageAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportVotingMessageAsync(Hcs.Service.Async.HouseManagement.exportVotingMessageRequest1 request) + { + return base.Channel.exportVotingMessageAsync(request); + } + + public System.Threading.Tasks.Task exportVotingMessageAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportVotingMessageRequest exportVotingMessageRequest) + { + Hcs.Service.Async.HouseManagement.exportVotingMessageRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportVotingMessageRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportVotingMessageRequest = exportVotingMessageRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportVotingMessageAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.importOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest1 request) + { + return base.Channel.importOwnerRefusalAsync(request); + } + + public System.Threading.Tasks.Task importOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest importOwnerRefusalRequest) + { + Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest1 inValue = new Hcs.Service.Async.HouseManagement.importOwnerRefusalRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importOwnerRefusalRequest = importOwnerRefusalRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).importOwnerRefusalAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync.exportOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest1 request) + { + return base.Channel.exportOwnerRefusalAsync(request); + } + + public System.Threading.Tasks.Task exportOwnerRefusalAsync(Hcs.Service.Async.HouseManagement.RequestHeader RequestHeader, Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest exportOwnerRefusalRequest) + { + Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest1 inValue = new Hcs.Service.Async.HouseManagement.exportOwnerRefusalRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportOwnerRefusalRequest = exportOwnerRefusalRequest; + return ((Hcs.Service.Async.HouseManagement.HouseManagementPortsTypeAsync)(this)).exportOwnerRefusalAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.HouseManagementPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.HouseManagementPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-home-management-service/services/HomeManagem" + + "entAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return HouseManagementPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.HouseManagementPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return HouseManagementPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.HouseManagementPortAsync); + } + + public enum EndpointConfiguration + { + + HouseManagementPortAsync, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/ConnectedService.json new file mode 100644 index 0000000..bfc70aa --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.Nsi" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/Reference.cs new file mode 100644 index 0000000..8c23908 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Nsi/Reference.cs @@ -0,0 +1,5997 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.Nsi +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-service-async/", ConfigurationName="Hcs.Service.Async.Nsi.NsiPortsTypeAsync")] + public interface NsiPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:importAdditionalServices", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importAdditionalServices", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importAdditionalServicesAsync(Hcs.Service.Async.Nsi.importAdditionalServicesRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importMunicipalServices", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importMunicipalServices", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importMunicipalServicesAsync(Hcs.Service.Async.Nsi.importMunicipalServicesRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importOrganizationWorks", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importOrganizationWorks", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importOrganizationWorksAsync(Hcs.Service.Async.Nsi.importOrganizationWorksRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importCommunalInfrastructureSystem", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importCommunalInfrastructureSystem", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importCommunalInfrastructureSystemAsync(Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Nsi.getStateRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportDataProviderNsiItem", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:exportDataProviderNsiItem", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportDataProviderNsiItemAsync(Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportDataProviderPagingNsiItem", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:exportDataProviderPagingNsiItem", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportDataProviderPagingNsiItemAsync(Hcs.Service.Async.Nsi.exportDataProviderPagingNsiItemRequest request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importCapitalRepairWork", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importCapitalRepairWork", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importCapitalRepairWorkAsync(Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importBaseDecisionMSP", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importBaseDecisionMSP", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importBaseDecisionMSPAsync(Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importGeneralNeedsMunicipalResource", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Nsi.Fault), Action="urn:importGeneralNeedsMunicipalResource", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importGeneralNeedsMunicipalResourceAsync(Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeader : HeaderType + { + + private object itemField; + + private ItemChoiceType1 itemElementNameField; + + private bool isOperatorSignatureField; + + private bool isOperatorSignatureFieldSpecified; + + private ISCreator[] iSCreatorField; + + public RequestHeader() + { + this.isOperatorSignatureField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Citizen", typeof(RequestHeaderCitizen), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SenderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsOperatorSignature + { + get + { + return this.isOperatorSignatureField; + } + set + { + this.isOperatorSignatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsOperatorSignatureSpecified + { + get + { + return this.isOperatorSignatureFieldSpecified; + } + set + { + this.isOperatorSignatureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=3)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizen + { + + private object[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Document", typeof(RequestHeaderCitizenDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocument + { + + private RequestHeaderCitizenDocumentDocumentType documentTypeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RequestHeaderCitizenDocumentDocumentType DocumentType + { + get + { + return this.documentTypeField; + } + set + { + this.documentTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocumentDocumentType + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + CitizenPPAGUID, + + /// + Document, + + /// + SNILS, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + Citizen, + + /// + SenderID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importAdditionalServicesRequest : BaseType + { + + private importAdditionalServicesRequestImportAdditionalServiceType[] importAdditionalServiceTypeField; + + private importAdditionalServicesRequestRecoverAdditionalServiceType[] recoverAdditionalServiceTypeField; + + private importAdditionalServicesRequestDeleteAdditionalServiceType[] deleteAdditionalServiceTypeField; + + private string versionField; + + public importAdditionalServicesRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportAdditionalServiceType", Order=0)] + public importAdditionalServicesRequestImportAdditionalServiceType[] ImportAdditionalServiceType + { + get + { + return this.importAdditionalServiceTypeField; + } + set + { + this.importAdditionalServiceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverAdditionalServiceType", Order=1)] + public importAdditionalServicesRequestRecoverAdditionalServiceType[] RecoverAdditionalServiceType + { + get + { + return this.recoverAdditionalServiceTypeField; + } + set + { + this.recoverAdditionalServiceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteAdditionalServiceType", Order=2)] + public importAdditionalServicesRequestDeleteAdditionalServiceType[] DeleteAdditionalServiceType + { + get + { + return this.deleteAdditionalServiceTypeField; + } + set + { + this.deleteAdditionalServiceTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importAdditionalServicesRequestImportAdditionalServiceType + { + + private string transportGUIDField; + + private string elementGuidField; + + private string additionalServiceTypeNameField; + + private string itemField; + + private ItemChoiceType itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string AdditionalServiceTypeName + { + get + { + return this.additionalServiceTypeNameField; + } + set + { + this.additionalServiceTypeNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + [System.Xml.Serialization.XmlElementAttribute("StringDimensionUnit", typeof(string), Order=3)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + StringDimensionUnit, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importAdditionalServicesRequestRecoverAdditionalServiceType + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importAdditionalServicesRequestDeleteAdditionalServiceType + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAdditionalServicesRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importAdditionalServicesRequest importAdditionalServicesRequest; + + public importAdditionalServicesRequest1() + { + } + + public importAdditionalServicesRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importAdditionalServicesRequest importAdditionalServicesRequest) + { + this.RequestHeader = RequestHeader; + this.importAdditionalServicesRequest = importAdditionalServicesRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importAdditionalServicesResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importAdditionalServicesResponse() + { + } + + public importAdditionalServicesResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importMunicipalServicesRequest : BaseType + { + + private importMunicipalServicesRequestImportMainMunicipalService[] importMainMunicipalServiceField; + + private importMunicipalServicesRequestRecoverMainMunicipalService[] recoverMainMunicipalServiceField; + + private importMunicipalServicesRequestDeleteMainMunicipalService[] deleteMainMunicipalServiceField; + + private string versionField; + + public importMunicipalServicesRequest() + { + this.versionField = "11.0.0.4"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportMainMunicipalService", Order=0)] + public importMunicipalServicesRequestImportMainMunicipalService[] ImportMainMunicipalService + { + get + { + return this.importMainMunicipalServiceField; + } + set + { + this.importMainMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverMainMunicipalService", Order=1)] + public importMunicipalServicesRequestRecoverMainMunicipalService[] RecoverMainMunicipalService + { + get + { + return this.recoverMainMunicipalServiceField; + } + set + { + this.recoverMainMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteMainMunicipalService", Order=2)] + public importMunicipalServicesRequestDeleteMainMunicipalService[] DeleteMainMunicipalService + { + get + { + return this.deleteMainMunicipalServiceField; + } + set + { + this.deleteMainMunicipalServiceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importMunicipalServicesRequestImportMainMunicipalService + { + + private string transportGUIDField; + + private string elementGuidField; + + private nsiRef municipalServiceRefField; + + private bool generalNeedsField; + + private bool generalNeedsFieldSpecified; + + private bool selfProducedField; + + private bool selfProducedFieldSpecified; + + private string mainMunicipalServiceNameField; + + private nsiRef municipalResourceRefField; + + private string oKEIField; + + private object itemField; + + public importMunicipalServicesRequestImportMainMunicipalService() + { + this.generalNeedsField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public nsiRef MunicipalServiceRef + { + get + { + return this.municipalServiceRefField; + } + set + { + this.municipalServiceRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool GeneralNeeds + { + get + { + return this.generalNeedsField; + } + set + { + this.generalNeedsField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool GeneralNeedsSpecified + { + get + { + return this.generalNeedsFieldSpecified; + } + set + { + this.generalNeedsFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool SelfProduced + { + get + { + return this.selfProducedField; + } + set + { + this.selfProducedField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SelfProducedSpecified + { + get + { + return this.selfProducedFieldSpecified; + } + set + { + this.selfProducedFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string MainMunicipalServiceName + { + get + { + return this.mainMunicipalServiceNameField; + } + set + { + this.mainMunicipalServiceNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public nsiRef MunicipalResourceRef + { + get + { + return this.municipalResourceRefField; + } + set + { + this.municipalResourceRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=7)] + public string OKEI + { + get + { + return this.oKEIField; + } + set + { + this.oKEIField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SortOrder", typeof(string), Order=8)] + [System.Xml.Serialization.XmlElementAttribute("SortOrderNotDefined", typeof(bool), Order=8)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importMunicipalServicesRequestRecoverMainMunicipalService + { + + private string transportGUIDField; + + private string elementGuidField; + + private bool hierarchyRecoverField; + + private bool hierarchyRecoverFieldSpecified; + + public importMunicipalServicesRequestRecoverMainMunicipalService() + { + this.hierarchyRecoverField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HierarchyRecover + { + get + { + return this.hierarchyRecoverField; + } + set + { + this.hierarchyRecoverField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HierarchyRecoverSpecified + { + get + { + return this.hierarchyRecoverFieldSpecified; + } + set + { + this.hierarchyRecoverFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importMunicipalServicesRequestDeleteMainMunicipalService + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMunicipalServicesRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importMunicipalServicesRequest importMunicipalServicesRequest; + + public importMunicipalServicesRequest1() + { + } + + public importMunicipalServicesRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importMunicipalServicesRequest importMunicipalServicesRequest) + { + this.RequestHeader = RequestHeader; + this.importMunicipalServicesRequest = importMunicipalServicesRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importMunicipalServicesResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importMunicipalServicesResponse() + { + } + + public importMunicipalServicesResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importOrganizationWorksRequest : BaseType + { + + private ImportOrganizationWorkType[] importOrganizationWorkField; + + private importOrganizationWorksRequestRecoverOrganizationWork[] recoverOrganizationWorkField; + + private importOrganizationWorksRequestDeleteOrganizationWork[] deleteOrganizationWorkField; + + private string versionField; + + public importOrganizationWorksRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportOrganizationWork", Order=0)] + public ImportOrganizationWorkType[] ImportOrganizationWork + { + get + { + return this.importOrganizationWorkField; + } + set + { + this.importOrganizationWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverOrganizationWork", Order=1)] + public importOrganizationWorksRequestRecoverOrganizationWork[] RecoverOrganizationWork + { + get + { + return this.recoverOrganizationWorkField; + } + set + { + this.recoverOrganizationWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteOrganizationWork", Order=2)] + public importOrganizationWorksRequestDeleteOrganizationWork[] DeleteOrganizationWork + { + get + { + return this.deleteOrganizationWorkField; + } + set + { + this.deleteOrganizationWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class ImportOrganizationWorkType + { + + private string transportGUIDField; + + private object itemField; + + private string workNameField; + + private nsiRef serviceTypeRefField; + + private nsiRef[] requiredServiceRefField; + + private string item1Field; + + private Item1ChoiceType item1ElementNameField; + + private ImportOrganizationWorkType[] importOrganizationWorkField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ElementGuid", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("InsertInCopiedWorks", typeof(bool), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string WorkName + { + get + { + return this.workNameField; + } + set + { + this.workNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef ServiceTypeRef + { + get + { + return this.serviceTypeRefField; + } + set + { + this.serviceTypeRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RequiredServiceRef", Order=4)] + public nsiRef[] RequiredServiceRef + { + get + { + return this.requiredServiceRefField; + } + set + { + this.requiredServiceRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKEI", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=5)] + [System.Xml.Serialization.XmlElementAttribute("StringDimensionUnit", typeof(string), Order=5)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("Item1ElementName")] + public string Item1 + { + get + { + return this.item1Field; + } + set + { + this.item1Field = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public Item1ChoiceType Item1ElementName + { + get + { + return this.item1ElementNameField; + } + set + { + this.item1ElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportOrganizationWork", Order=7)] + public ImportOrganizationWorkType[] ImportOrganizationWork + { + get + { + return this.importOrganizationWorkField; + } + set + { + this.importOrganizationWorkField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", IncludeInSchema=false)] + public enum Item1ChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:OKEI")] + OKEI, + + /// + StringDimensionUnit, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importOrganizationWorksRequestRecoverOrganizationWork + { + + private string transportGUIDField; + + private string elementGuidField; + + private bool hierarchyRecoverField; + + private bool hierarchyRecoverFieldSpecified; + + public importOrganizationWorksRequestRecoverOrganizationWork() + { + this.hierarchyRecoverField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool HierarchyRecover + { + get + { + return this.hierarchyRecoverField; + } + set + { + this.hierarchyRecoverField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool HierarchyRecoverSpecified + { + get + { + return this.hierarchyRecoverFieldSpecified; + } + set + { + this.hierarchyRecoverFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importOrganizationWorksRequestDeleteOrganizationWork + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOrganizationWorksRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importOrganizationWorksRequest importOrganizationWorksRequest; + + public importOrganizationWorksRequest1() + { + } + + public importOrganizationWorksRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importOrganizationWorksRequest importOrganizationWorksRequest) + { + this.RequestHeader = RequestHeader; + this.importOrganizationWorksRequest = importOrganizationWorksRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importOrganizationWorksResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importOrganizationWorksResponse() + { + } + + public importOrganizationWorksResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCommunalInfrastructureSystemRequest : BaseType + { + + private importCommunalInfrastructureSystemType[] importCommunalInfrastructureSystemField; + + private importCommunalInfrastructureSystemRequestRecoverCommunalInfrastructureSystem[] recoverCommunalInfrastructureSystemField; + + private importCommunalInfrastructureSystemRequestDeleteCommunalInfrastructureSystem[] deleteCommunalInfrastructureSystemField; + + private string versionField; + + public importCommunalInfrastructureSystemRequest() + { + this.versionField = "11.5.0.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportCommunalInfrastructureSystem", Order=0)] + public importCommunalInfrastructureSystemType[] ImportCommunalInfrastructureSystem + { + get + { + return this.importCommunalInfrastructureSystemField; + } + set + { + this.importCommunalInfrastructureSystemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverCommunalInfrastructureSystem", Order=1)] + public importCommunalInfrastructureSystemRequestRecoverCommunalInfrastructureSystem[] RecoverCommunalInfrastructureSystem + { + get + { + return this.recoverCommunalInfrastructureSystemField; + } + set + { + this.recoverCommunalInfrastructureSystemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteCommunalInfrastructureSystem", Order=2)] + public importCommunalInfrastructureSystemRequestDeleteCommunalInfrastructureSystem[] DeleteCommunalInfrastructureSystem + { + get + { + return this.deleteCommunalInfrastructureSystemField; + } + set + { + this.deleteCommunalInfrastructureSystemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCommunalInfrastructureSystemType + { + + private string transportGUIDField; + + private string elementGuidField; + + private string systemNameField; + + private nsiRef communalSystemInfrastructureTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string SystemName + { + get + { + return this.systemNameField; + } + set + { + this.systemNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef CommunalSystemInfrastructureType + { + get + { + return this.communalSystemInfrastructureTypeField; + } + set + { + this.communalSystemInfrastructureTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCommunalInfrastructureSystemRequestRecoverCommunalInfrastructureSystem + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCommunalInfrastructureSystemRequestDeleteCommunalInfrastructureSystem + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCommunalInfrastructureSystemRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest importCommunalInfrastructureSystemRequest; + + public importCommunalInfrastructureSystemRequest1() + { + } + + public importCommunalInfrastructureSystemRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest importCommunalInfrastructureSystemRequest) + { + this.RequestHeader = RequestHeader; + this.importCommunalInfrastructureSystemRequest = importCommunalInfrastructureSystemRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCommunalInfrastructureSystemResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importCommunalInfrastructureSystemResponse() + { + } + + public importCommunalInfrastructureSystemResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private string versionField; + + public getStateResult() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(CommonResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiItem", typeof(NsiItemType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiList", typeof(NsiListType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiPagingItem", typeof(getStateResultNsiPagingItem), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemType + { + + private string nsiItemRegistryNumberField; + + private System.DateTime createdField; + + private NsiElementType[] nsiElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElement", Order=2)] + public NsiElementType[] NsiElement + { + get + { + return this.nsiElementField; + } + set + { + this.nsiElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementType + { + + private string codeField; + + private string gUIDField; + + private System.DateTime[] itemsField; + + private ItemsChoiceType4[] itemsElementNameField; + + private bool isActualField; + + private NsiElementFieldType[] nsiElementFieldField; + + private NsiElementType[] childElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Modified", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public System.DateTime[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType4[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElementField", Order=5)] + public NsiElementFieldType[] NsiElementField + { + get + { + return this.nsiElementFieldField; + } + set + { + this.nsiElementFieldField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ChildElement", Order=6)] + public NsiElementType[] ChildElement + { + get + { + return this.childElementField; + } + set + { + this.childElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", IncludeInSchema=false)] + public enum ItemsChoiceType4 + { + + /// + EndDate, + + /// + Modified, + + /// + StartDate, + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementAttachmentFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFiasAddressRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementOkeiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementEnumFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementIntegerFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementDateFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFloatFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementBooleanFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementStringFieldType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public abstract partial class NsiElementFieldType + { + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementAttachmentFieldType : NsiElementFieldType + { + + private AttachmentType documentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AttachmentType Document + { + get + { + return this.documentField; + } + set + { + this.documentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AttachmentType + { + + private string nameField; + + private string descriptionField; + + private Attachment attachmentField; + + private string attachmentHASHField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Attachment Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AttachmentHASH + { + get + { + return this.attachmentHASHField; + } + set + { + this.attachmentHASHField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Attachment + { + + private string attachmentGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AttachmentGUID + { + get + { + return this.attachmentGUIDField; + } + set + { + this.attachmentGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldType : NsiElementFieldType + { + + private NsiElementFiasAddressRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementFiasAddressRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldTypeNsiRef + { + + private string guidField; + + private string aoGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Guid + { + get + { + return this.guidField; + } + set + { + this.guidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string aoGuid + { + get + { + return this.aoGuidField; + } + set + { + this.aoGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementOkeiRefFieldType : NsiElementFieldType + { + + private string codeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldType : NsiElementFieldType + { + + private NsiElementNsiRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private nsiRef refField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef Ref + { + get + { + return this.refField; + } + set + { + this.refField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldType : NsiElementFieldType + { + + private NsiElementNsiFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public enum ListGroup + { + + /// + NSI, + + /// + NSIRAO, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldType : NsiElementFieldType + { + + private NsiElementEnumFieldTypePosition[] positionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Position", Order=0)] + public NsiElementEnumFieldTypePosition[] Position + { + get + { + return this.positionField; + } + set + { + this.positionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldTypePosition + { + + private object gUIDField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public object GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementIntegerFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementDateFieldType : NsiElementFieldType + { + + private System.DateTime valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFloatFieldType : NsiElementFieldType + { + + private float valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public float Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementBooleanFieldType : NsiElementFieldType + { + + private bool valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementStringFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiListType + { + + private System.DateTime createdField; + + private NsiItemInfoType[] nsiItemInfoField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiItemInfo", Order=1)] + public NsiItemInfoType[] NsiItemInfo + { + get + { + return this.nsiItemInfoField; + } + set + { + this.nsiItemInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemInfoType + { + + private string registryNumberField; + + private string nameField; + + private System.DateTime modifiedField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime Modified + { + get + { + return this.modifiedField; + } + set + { + this.modifiedField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class getStateResultNsiPagingItem : NsiItemType + { + + private int totalItemsCountField; + + private int totalPagesField; + + private object currentPageField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public int TotalItemsCount + { + get + { + return this.totalItemsCountField; + } + set + { + this.totalItemsCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int TotalPages + { + get + { + return this.totalPagesField; + } + set + { + this.totalPagesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public object CurrentPage + { + get + { + return this.currentPageField; + } + set + { + this.currentPageField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.getStateRequest getStateRequest) + { + this.RequestHeader = RequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class exportDataProviderNsiItemRequest : BaseType + { + + private exportDataProviderNsiItemRequestRegistryNumber registryNumberField; + + private System.DateTime modifiedAfterField; + + private bool modifiedAfterFieldSpecified; + + private string versionField; + + public exportDataProviderNsiItemRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportDataProviderNsiItemRequestRegistryNumber RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime ModifiedAfter + { + get + { + return this.modifiedAfterField; + } + set + { + this.modifiedAfterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ModifiedAfterSpecified + { + get + { + return this.modifiedAfterFieldSpecified; + } + set + { + this.modifiedAfterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public enum exportDataProviderNsiItemRequestRegistryNumber + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("1")] + Item1, + + /// + [System.Xml.Serialization.XmlEnumAttribute("51")] + Item51, + + /// + [System.Xml.Serialization.XmlEnumAttribute("59")] + Item59, + + /// + [System.Xml.Serialization.XmlEnumAttribute("219")] + Item219, + + /// + [System.Xml.Serialization.XmlEnumAttribute("272")] + Item272, + + /// + [System.Xml.Serialization.XmlEnumAttribute("302")] + Item302, + + /// + [System.Xml.Serialization.XmlEnumAttribute("337")] + Item337, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderNsiItemRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest exportDataProviderNsiItemRequest; + + public exportDataProviderNsiItemRequest1() + { + } + + public exportDataProviderNsiItemRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest exportDataProviderNsiItemRequest) + { + this.RequestHeader = RequestHeader; + this.exportDataProviderNsiItemRequest = exportDataProviderNsiItemRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderNsiItemResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public exportDataProviderNsiItemResponse() + { + } + + public exportDataProviderNsiItemResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class exportDataProviderNsiPagingItemRequest : BaseType + { + + private exportDataProviderNsiPagingItemRequestRegistryNumber registryNumberField; + + private int pageField; + + private System.DateTime modifiedAfterField; + + private bool modifiedAfterFieldSpecified; + + private string versionField; + + public exportDataProviderNsiPagingItemRequest() + { + this.versionField = "11.1.0.5"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public exportDataProviderNsiPagingItemRequestRegistryNumber RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int Page + { + get + { + return this.pageField; + } + set + { + this.pageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime ModifiedAfter + { + get + { + return this.modifiedAfterField; + } + set + { + this.modifiedAfterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ModifiedAfterSpecified + { + get + { + return this.modifiedAfterFieldSpecified; + } + set + { + this.modifiedAfterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public enum exportDataProviderNsiPagingItemRequestRegistryNumber + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("1")] + Item1, + + /// + [System.Xml.Serialization.XmlEnumAttribute("51")] + Item51, + + /// + [System.Xml.Serialization.XmlEnumAttribute("59")] + Item59, + + /// + [System.Xml.Serialization.XmlEnumAttribute("219")] + Item219, + + /// + [System.Xml.Serialization.XmlEnumAttribute("302")] + Item302, + + /// + [System.Xml.Serialization.XmlEnumAttribute("337")] + Item337, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderPagingNsiItemRequest + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.exportDataProviderNsiPagingItemRequest exportDataProviderNsiPagingItemRequest; + + public exportDataProviderPagingNsiItemRequest() + { + } + + public exportDataProviderPagingNsiItemRequest(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.exportDataProviderNsiPagingItemRequest exportDataProviderNsiPagingItemRequest) + { + this.RequestHeader = RequestHeader; + this.exportDataProviderNsiPagingItemRequest = exportDataProviderNsiPagingItemRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderPagingNsiItemResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public exportDataProviderPagingNsiItemResponse() + { + } + + public exportDataProviderPagingNsiItemResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCapitalRepairWorkRequest : BaseType + { + + private ImportCapitalRepairWorkType[] importCapitalRepairWorkField; + + private importCapitalRepairWorkRequestRecoverCapitalRepairWork[] recoverCapitalRepairWorkField; + + private importCapitalRepairWorkRequestDeleteCapitalRepairWork[] deleteCapitalRepairWorkField; + + private string versionField; + + public importCapitalRepairWorkRequest() + { + this.versionField = "11.1.0.5"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportCapitalRepairWork", Order=0)] + public ImportCapitalRepairWorkType[] ImportCapitalRepairWork + { + get + { + return this.importCapitalRepairWorkField; + } + set + { + this.importCapitalRepairWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverCapitalRepairWork", Order=1)] + public importCapitalRepairWorkRequestRecoverCapitalRepairWork[] RecoverCapitalRepairWork + { + get + { + return this.recoverCapitalRepairWorkField; + } + set + { + this.recoverCapitalRepairWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteCapitalRepairWork", Order=2)] + public importCapitalRepairWorkRequestDeleteCapitalRepairWork[] DeleteCapitalRepairWork + { + get + { + return this.deleteCapitalRepairWorkField; + } + set + { + this.deleteCapitalRepairWorkField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class ImportCapitalRepairWorkType + { + + private string transportGUIDField; + + private string elementGuidField; + + private string serviceNameField; + + private nsiRef workGroupRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string ServiceName + { + get + { + return this.serviceNameField; + } + set + { + this.serviceNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef WorkGroupRef + { + get + { + return this.workGroupRefField; + } + set + { + this.workGroupRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCapitalRepairWorkRequestRecoverCapitalRepairWork + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importCapitalRepairWorkRequestDeleteCapitalRepairWork + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCapitalRepairWorkRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest importCapitalRepairWorkRequest; + + public importCapitalRepairWorkRequest1() + { + } + + public importCapitalRepairWorkRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest importCapitalRepairWorkRequest) + { + this.RequestHeader = RequestHeader; + this.importCapitalRepairWorkRequest = importCapitalRepairWorkRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importCapitalRepairWorkResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importCapitalRepairWorkResponse() + { + } + + public importCapitalRepairWorkResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importBaseDecisionMSPRequest : BaseType + { + + private importBaseDecisionMSPType[] importBaseDecisionMSPField; + + private importBaseDecisionMSPRequestRecoverBaseDecisionMSP[] recoverBaseDecisionMSPField; + + private importBaseDecisionMSPRequestDeleteBaseDecisionMSP[] deleteBaseDecisionMSPField; + + private string versionField; + + public importBaseDecisionMSPRequest() + { + this.versionField = "11.1.0.5"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportBaseDecisionMSP", Order=0)] + public importBaseDecisionMSPType[] ImportBaseDecisionMSP + { + get + { + return this.importBaseDecisionMSPField; + } + set + { + this.importBaseDecisionMSPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("RecoverBaseDecisionMSP", Order=1)] + public importBaseDecisionMSPRequestRecoverBaseDecisionMSP[] RecoverBaseDecisionMSP + { + get + { + return this.recoverBaseDecisionMSPField; + } + set + { + this.recoverBaseDecisionMSPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteBaseDecisionMSP", Order=2)] + public importBaseDecisionMSPRequestDeleteBaseDecisionMSP[] DeleteBaseDecisionMSP + { + get + { + return this.deleteBaseDecisionMSPField; + } + set + { + this.deleteBaseDecisionMSPField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importBaseDecisionMSPType + { + + private string transportGUIDField; + + private string elementGuidField; + + private string decisionNameField; + + private nsiRef decisionTypeField; + + private bool isAppliedToSubsidiariesField; + + private bool isAppliedToRefundOfChargesField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string DecisionName + { + get + { + return this.decisionNameField; + } + set + { + this.decisionNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef DecisionType + { + get + { + return this.decisionTypeField; + } + set + { + this.decisionTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsAppliedToSubsidiaries + { + get + { + return this.isAppliedToSubsidiariesField; + } + set + { + this.isAppliedToSubsidiariesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool IsAppliedToRefundOfCharges + { + get + { + return this.isAppliedToRefundOfChargesField; + } + set + { + this.isAppliedToRefundOfChargesField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importBaseDecisionMSPRequestRecoverBaseDecisionMSP + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importBaseDecisionMSPRequestDeleteBaseDecisionMSP + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importBaseDecisionMSPRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest importBaseDecisionMSPRequest; + + public importBaseDecisionMSPRequest1() + { + } + + public importBaseDecisionMSPRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest importBaseDecisionMSPRequest) + { + this.RequestHeader = RequestHeader; + this.importBaseDecisionMSPRequest = importBaseDecisionMSPRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importBaseDecisionMSPResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importBaseDecisionMSPResponse() + { + } + + public importBaseDecisionMSPResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importGeneralNeedsMunicipalResourceRequest() + { + this.versionField = "12.2.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DeleteGeneralMunicipalResource", typeof(importGeneralNeedsMunicipalResourceRequestDeleteGeneralMunicipalResource), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RecoverGeneralMunicipalResource", typeof(importGeneralNeedsMunicipalResourceRequestRecoverGeneralMunicipalResource), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("TopLevelMunicipalResource", typeof(importGeneralNeedsMunicipalResourceRequestTopLevelMunicipalResource), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceRequestDeleteGeneralMunicipalResource + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceRequestRecoverGeneralMunicipalResource + { + + private string transportGUIDField; + + private string elementGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceRequestTopLevelMunicipalResource + { + + private sbyte parentCodeField; + + private string transportGUIDField; + + private importGeneralNeedsMunicipalResourceRequestTopLevelMunicipalResourceImportGeneralMunicipalResource[] importGeneralMunicipalResourceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte ParentCode + { + get + { + return this.parentCodeField; + } + set + { + this.parentCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ImportGeneralMunicipalResource", Order=2)] + public importGeneralNeedsMunicipalResourceRequestTopLevelMunicipalResourceImportGeneralMunicipalResource[] ImportGeneralMunicipalResource + { + get + { + return this.importGeneralMunicipalResourceField; + } + set + { + this.importGeneralMunicipalResourceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceRequestTopLevelMunicipalResourceImportGeneralMunicipalResource : importGeneralNeedsMunicipalResourceType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/")] + public partial class importGeneralNeedsMunicipalResourceType + { + + private string transportGUIDField; + + private string elementGuidField; + + private string generalMunicipalResourceNameField; + + private nsiRef municipalResourceRefField; + + private string oKEIField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ElementGuid + { + get + { + return this.elementGuidField; + } + set + { + this.elementGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string GeneralMunicipalResourceName + { + get + { + return this.generalMunicipalResourceNameField; + } + set + { + this.generalMunicipalResourceNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public nsiRef MunicipalResourceRef + { + get + { + return this.municipalResourceRefField; + } + set + { + this.municipalResourceRefField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=4)] + public string OKEI + { + get + { + return this.oKEIField; + } + set + { + this.oKEIField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SortOrder", typeof(string), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("SortOrderNotDefined", typeof(bool), Order=5)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importGeneralNeedsMunicipalResourceRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi/", Order=0)] + public Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest importGeneralNeedsMunicipalResourceRequest; + + public importGeneralNeedsMunicipalResourceRequest1() + { + } + + public importGeneralNeedsMunicipalResourceRequest1(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest importGeneralNeedsMunicipalResourceRequest) + { + this.RequestHeader = RequestHeader; + this.importGeneralNeedsMunicipalResourceRequest = importGeneralNeedsMunicipalResourceRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importGeneralNeedsMunicipalResourceResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Nsi.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Nsi.AckRequest AckRequest; + + public importGeneralNeedsMunicipalResourceResponse() + { + } + + public importGeneralNeedsMunicipalResourceResponse(Hcs.Service.Async.Nsi.ResultHeader ResultHeader, Hcs.Service.Async.Nsi.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface NsiPortsTypeAsyncChannel : Hcs.Service.Async.Nsi.NsiPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class NsiPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.Nsi.NsiPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public NsiPortsTypeAsyncClient() : + base(NsiPortsTypeAsyncClient.GetDefaultBinding(), NsiPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.NsiPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), NsiPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importAdditionalServicesAsync(Hcs.Service.Async.Nsi.importAdditionalServicesRequest1 request) + { + return base.Channel.importAdditionalServicesAsync(request); + } + + public System.Threading.Tasks.Task importAdditionalServicesAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importAdditionalServicesRequest importAdditionalServicesRequest) + { + Hcs.Service.Async.Nsi.importAdditionalServicesRequest1 inValue = new Hcs.Service.Async.Nsi.importAdditionalServicesRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importAdditionalServicesRequest = importAdditionalServicesRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importAdditionalServicesAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importMunicipalServicesAsync(Hcs.Service.Async.Nsi.importMunicipalServicesRequest1 request) + { + return base.Channel.importMunicipalServicesAsync(request); + } + + public System.Threading.Tasks.Task importMunicipalServicesAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importMunicipalServicesRequest importMunicipalServicesRequest) + { + Hcs.Service.Async.Nsi.importMunicipalServicesRequest1 inValue = new Hcs.Service.Async.Nsi.importMunicipalServicesRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importMunicipalServicesRequest = importMunicipalServicesRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importMunicipalServicesAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importOrganizationWorksAsync(Hcs.Service.Async.Nsi.importOrganizationWorksRequest1 request) + { + return base.Channel.importOrganizationWorksAsync(request); + } + + public System.Threading.Tasks.Task importOrganizationWorksAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importOrganizationWorksRequest importOrganizationWorksRequest) + { + Hcs.Service.Async.Nsi.importOrganizationWorksRequest1 inValue = new Hcs.Service.Async.Nsi.importOrganizationWorksRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importOrganizationWorksRequest = importOrganizationWorksRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importOrganizationWorksAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importCommunalInfrastructureSystemAsync(Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest1 request) + { + return base.Channel.importCommunalInfrastructureSystemAsync(request); + } + + public System.Threading.Tasks.Task importCommunalInfrastructureSystemAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest importCommunalInfrastructureSystemRequest) + { + Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest1 inValue = new Hcs.Service.Async.Nsi.importCommunalInfrastructureSystemRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importCommunalInfrastructureSystemRequest = importCommunalInfrastructureSystemRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importCommunalInfrastructureSystemAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.getStateAsync(Hcs.Service.Async.Nsi.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.getStateRequest getStateRequest) + { + Hcs.Service.Async.Nsi.getStateRequest1 inValue = new Hcs.Service.Async.Nsi.getStateRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).getStateAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.exportDataProviderNsiItemAsync(Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest1 request) + { + return base.Channel.exportDataProviderNsiItemAsync(request); + } + + public System.Threading.Tasks.Task exportDataProviderNsiItemAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest exportDataProviderNsiItemRequest) + { + Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest1 inValue = new Hcs.Service.Async.Nsi.exportDataProviderNsiItemRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportDataProviderNsiItemRequest = exportDataProviderNsiItemRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).exportDataProviderNsiItemAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.exportDataProviderPagingNsiItemAsync(Hcs.Service.Async.Nsi.exportDataProviderPagingNsiItemRequest request) + { + return base.Channel.exportDataProviderPagingNsiItemAsync(request); + } + + public System.Threading.Tasks.Task exportDataProviderPagingNsiItemAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.exportDataProviderNsiPagingItemRequest exportDataProviderNsiPagingItemRequest) + { + Hcs.Service.Async.Nsi.exportDataProviderPagingNsiItemRequest inValue = new Hcs.Service.Async.Nsi.exportDataProviderPagingNsiItemRequest(); + inValue.RequestHeader = RequestHeader; + inValue.exportDataProviderNsiPagingItemRequest = exportDataProviderNsiPagingItemRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).exportDataProviderPagingNsiItemAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importCapitalRepairWorkAsync(Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest1 request) + { + return base.Channel.importCapitalRepairWorkAsync(request); + } + + public System.Threading.Tasks.Task importCapitalRepairWorkAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest importCapitalRepairWorkRequest) + { + Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest1 inValue = new Hcs.Service.Async.Nsi.importCapitalRepairWorkRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importCapitalRepairWorkRequest = importCapitalRepairWorkRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importCapitalRepairWorkAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importBaseDecisionMSPAsync(Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest1 request) + { + return base.Channel.importBaseDecisionMSPAsync(request); + } + + public System.Threading.Tasks.Task importBaseDecisionMSPAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest importBaseDecisionMSPRequest) + { + Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest1 inValue = new Hcs.Service.Async.Nsi.importBaseDecisionMSPRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importBaseDecisionMSPRequest = importBaseDecisionMSPRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importBaseDecisionMSPAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Nsi.NsiPortsTypeAsync.importGeneralNeedsMunicipalResourceAsync(Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest1 request) + { + return base.Channel.importGeneralNeedsMunicipalResourceAsync(request); + } + + public System.Threading.Tasks.Task importGeneralNeedsMunicipalResourceAsync(Hcs.Service.Async.Nsi.RequestHeader RequestHeader, Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest importGeneralNeedsMunicipalResourceRequest) + { + Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest1 inValue = new Hcs.Service.Async.Nsi.importGeneralNeedsMunicipalResourceRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importGeneralNeedsMunicipalResourceRequest = importGeneralNeedsMunicipalResourceRequest; + return ((Hcs.Service.Async.Nsi.NsiPortsTypeAsync)(this)).importGeneralNeedsMunicipalResourceAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.NsiPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.NsiPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-nsi-service/services/NsiAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return NsiPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.NsiPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return NsiPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.NsiPortAsync); + } + + public enum EndpointConfiguration + { + + NsiPortAsync, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/ConnectedService.json new file mode 100644 index 0000000..7062da1 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.NsiCommon" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/Reference.cs new file mode 100644 index 0000000..e4f1799 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.NsiCommon/Reference.cs @@ -0,0 +1,3279 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.NsiCommon +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common-service-async/", ConfigurationName="Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync")] + public interface NsiPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportNsiList", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.NsiCommon.Fault), Action="urn:exportNsiList", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportNsiListAsync(Hcs.Service.Async.NsiCommon.exportNsiListRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportNsiItem", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.NsiCommon.Fault), Action="urn:exportNsiItem", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportNsiItemAsync(Hcs.Service.Async.NsiCommon.exportNsiItemRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportNsiPagingItem", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.NsiCommon.Fault), Action="urn:exportNsiPagingItem", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportNsiPagingItemAsync(Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.NsiCommon.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.NsiCommon.getStateRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISRequestHeader : HeaderType + { + + private ISCreator[] iSCreatorField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=0)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/")] + public partial class exportNsiListRequest : BaseType + { + + private ListGroup listGroupField; + + private bool listGroupFieldSpecified; + + private string versionField; + + public exportNsiListRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", Order=0)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ListGroupSpecified + { + get + { + return this.listGroupFieldSpecified; + } + set + { + this.listGroupFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public enum ListGroup + { + + /// + NSI, + + /// + NSIRAO, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiListRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/", Order=0)] + public Hcs.Service.Async.NsiCommon.exportNsiListRequest exportNsiListRequest; + + public exportNsiListRequest1() + { + } + + public exportNsiListRequest1(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiListRequest exportNsiListRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportNsiListRequest = exportNsiListRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiListResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.NsiCommon.AckRequest AckRequest; + + public exportNsiListResponse() + { + } + + public exportNsiListResponse(Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader, Hcs.Service.Async.NsiCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/")] + public partial class exportNsiItemRequest : BaseType + { + + private string registryNumberField; + + private ListGroup listGroupField; + + private System.DateTime modifiedAfterField; + + private bool modifiedAfterFieldSpecified; + + private string versionField; + + public exportNsiItemRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", Order=1)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime ModifiedAfter + { + get + { + return this.modifiedAfterField; + } + set + { + this.modifiedAfterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ModifiedAfterSpecified + { + get + { + return this.modifiedAfterFieldSpecified; + } + set + { + this.modifiedAfterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiItemRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/", Order=0)] + public Hcs.Service.Async.NsiCommon.exportNsiItemRequest exportNsiItemRequest; + + public exportNsiItemRequest1() + { + } + + public exportNsiItemRequest1(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiItemRequest exportNsiItemRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportNsiItemRequest = exportNsiItemRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiItemResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.NsiCommon.AckRequest AckRequest; + + public exportNsiItemResponse() + { + } + + public exportNsiItemResponse(Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader, Hcs.Service.Async.NsiCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/")] + public partial class exportNsiPagingItemRequest : BaseType + { + + private string registryNumberField; + + private ListGroup listGroupField; + + private int pageField; + + private System.DateTime modifiedAfterField; + + private bool modifiedAfterFieldSpecified; + + private string versionField; + + public exportNsiPagingItemRequest() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", Order=1)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public int Page + { + get + { + return this.pageField; + } + set + { + this.pageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public System.DateTime ModifiedAfter + { + get + { + return this.modifiedAfterField; + } + set + { + this.modifiedAfterField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ModifiedAfterSpecified + { + get + { + return this.modifiedAfterFieldSpecified; + } + set + { + this.modifiedAfterFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiPagingItemRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/", Order=0)] + public Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest exportNsiPagingItemRequest; + + public exportNsiPagingItemRequest1() + { + } + + public exportNsiPagingItemRequest1(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest exportNsiPagingItemRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportNsiPagingItemRequest = exportNsiPagingItemRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportNsiPagingItemResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.NsiCommon.AckRequest AckRequest; + + public exportNsiPagingItemResponse() + { + } + + public exportNsiPagingItemResponse(Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader, Hcs.Service.Async.NsiCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object itemField; + + private string versionField; + + public getStateResult() + { + this.versionField = "10.0.1.2"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiItem", typeof(NsiItemType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiList", typeof(NsiListType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NsiPagingItem", typeof(getStateResultNsiPagingItem), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemType + { + + private string nsiItemRegistryNumberField; + + private System.DateTime createdField; + + private NsiElementType[] nsiElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElement", Order=2)] + public NsiElementType[] NsiElement + { + get + { + return this.nsiElementField; + } + set + { + this.nsiElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementType + { + + private string codeField; + + private string gUIDField; + + private System.DateTime[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + private bool isActualField; + + private NsiElementFieldType[] nsiElementFieldField; + + private NsiElementType[] childElementField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("EndDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("Modified", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("StartDate", typeof(System.DateTime), Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public System.DateTime[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiElementField", Order=5)] + public NsiElementFieldType[] NsiElementField + { + get + { + return this.nsiElementFieldField; + } + set + { + this.nsiElementFieldField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ChildElement", Order=6)] + public NsiElementType[] ChildElement + { + get + { + return this.childElementField; + } + set + { + this.childElementField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + EndDate, + + /// + Modified, + + /// + StartDate, + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementAttachmentFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFiasAddressRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementOkeiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiRefFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementNsiFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementEnumFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementIntegerFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementDateFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementFloatFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementBooleanFieldType))] + [System.Xml.Serialization.XmlIncludeAttribute(typeof(NsiElementStringFieldType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public abstract partial class NsiElementFieldType + { + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementAttachmentFieldType : NsiElementFieldType + { + + private AttachmentType documentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AttachmentType Document + { + get + { + return this.documentField; + } + set + { + this.documentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AttachmentType + { + + private string nameField; + + private string descriptionField; + + private Attachment attachmentField; + + private string attachmentHASHField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public Attachment Attachment + { + get + { + return this.attachmentField; + } + set + { + this.attachmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string AttachmentHASH + { + get + { + return this.attachmentHASHField; + } + set + { + this.attachmentHASHField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Attachment + { + + private string attachmentGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AttachmentGUID + { + get + { + return this.attachmentGUIDField; + } + set + { + this.attachmentGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldType : NsiElementFieldType + { + + private NsiElementFiasAddressRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementFiasAddressRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFiasAddressRefFieldTypeNsiRef + { + + private string guidField; + + private string aoGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Guid + { + get + { + return this.guidField; + } + set + { + this.guidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string aoGuid + { + get + { + return this.aoGuidField; + } + set + { + this.aoGuidField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementOkeiRefFieldType : NsiElementFieldType + { + + private string codeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldType : NsiElementFieldType + { + + private NsiElementNsiRefFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiRefFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiRefFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private nsiRef refField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public nsiRef Ref + { + get + { + return this.refField; + } + set + { + this.refField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldType : NsiElementFieldType + { + + private NsiElementNsiFieldTypeNsiRef nsiRefField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NsiElementNsiFieldTypeNsiRef NsiRef + { + get + { + return this.nsiRefField; + } + set + { + this.nsiRefField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementNsiFieldTypeNsiRef + { + + private string nsiItemRegistryNumberField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string NsiItemRegistryNumber + { + get + { + return this.nsiItemRegistryNumberField; + } + set + { + this.nsiItemRegistryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldType : NsiElementFieldType + { + + private NsiElementEnumFieldTypePosition[] positionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Position", Order=0)] + public NsiElementEnumFieldTypePosition[] Position + { + get + { + return this.positionField; + } + set + { + this.positionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementEnumFieldTypePosition + { + + private object gUIDField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public object GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementIntegerFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementDateFieldType : NsiElementFieldType + { + + private System.DateTime valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementFloatFieldType : NsiElementFieldType + { + + private float valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public float Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementBooleanFieldType : NsiElementFieldType + { + + private bool valueField; + + private bool valueFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ValueSpecified + { + get + { + return this.valueFieldSpecified; + } + set + { + this.valueFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiElementStringFieldType : NsiElementFieldType + { + + private string valueField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiListType + { + + private System.DateTime createdField; + + private NsiItemInfoType[] nsiItemInfoField; + + private ListGroup listGroupField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Created + { + get + { + return this.createdField; + } + set + { + this.createdField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NsiItemInfo", Order=1)] + public NsiItemInfoType[] NsiItemInfo + { + get + { + return this.nsiItemInfoField; + } + set + { + this.nsiItemInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public ListGroup ListGroup + { + get + { + return this.listGroupField; + } + set + { + this.listGroupField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class NsiItemInfoType + { + + private string registryNumberField; + + private string nameField; + + private System.DateTime modifiedField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="positiveInteger", Order=0)] + public string RegistryNumber + { + get + { + return this.registryNumberField; + } + set + { + this.registryNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public System.DateTime Modified + { + get + { + return this.modifiedField; + } + set + { + this.modifiedField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/")] + public partial class getStateResultNsiPagingItem : NsiItemType + { + + private int totalItemsCountField; + + private int totalPagesField; + + private object currentPageField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public int TotalItemsCount + { + get + { + return this.totalItemsCountField; + } + set + { + this.totalItemsCountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public int TotalPages + { + get + { + return this.totalPagesField; + } + set + { + this.totalPagesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public object CurrentPage + { + get + { + return this.currentPageField; + } + set + { + this.currentPageField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.NsiCommon.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.getStateRequest getStateRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-common/", Order=0)] + public Hcs.Service.Async.NsiCommon.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.NsiCommon.ResultHeader ResultHeader, Hcs.Service.Async.NsiCommon.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface NsiPortsTypeAsyncChannel : Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class NsiPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public NsiPortsTypeAsyncClient() : + base(NsiPortsTypeAsyncClient.GetDefaultBinding(), NsiPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.NsiPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), NsiPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(NsiPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public NsiPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync.exportNsiListAsync(Hcs.Service.Async.NsiCommon.exportNsiListRequest1 request) + { + return base.Channel.exportNsiListAsync(request); + } + + public System.Threading.Tasks.Task exportNsiListAsync(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiListRequest exportNsiListRequest) + { + Hcs.Service.Async.NsiCommon.exportNsiListRequest1 inValue = new Hcs.Service.Async.NsiCommon.exportNsiListRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportNsiListRequest = exportNsiListRequest; + return ((Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync)(this)).exportNsiListAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync.exportNsiItemAsync(Hcs.Service.Async.NsiCommon.exportNsiItemRequest1 request) + { + return base.Channel.exportNsiItemAsync(request); + } + + public System.Threading.Tasks.Task exportNsiItemAsync(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiItemRequest exportNsiItemRequest) + { + Hcs.Service.Async.NsiCommon.exportNsiItemRequest1 inValue = new Hcs.Service.Async.NsiCommon.exportNsiItemRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportNsiItemRequest = exportNsiItemRequest; + return ((Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync)(this)).exportNsiItemAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync.exportNsiPagingItemAsync(Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest1 request) + { + return base.Channel.exportNsiPagingItemAsync(request); + } + + public System.Threading.Tasks.Task exportNsiPagingItemAsync(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest exportNsiPagingItemRequest) + { + Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest1 inValue = new Hcs.Service.Async.NsiCommon.exportNsiPagingItemRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportNsiPagingItemRequest = exportNsiPagingItemRequest; + return ((Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync)(this)).exportNsiPagingItemAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync.getStateAsync(Hcs.Service.Async.NsiCommon.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.NsiCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.NsiCommon.getStateRequest getStateRequest) + { + Hcs.Service.Async.NsiCommon.getStateRequest1 inValue = new Hcs.Service.Async.NsiCommon.getStateRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.NsiCommon.NsiPortsTypeAsync)(this)).getStateAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.NsiPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.NsiPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-nsi-common-service/services/NsiCommonAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return NsiPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.NsiPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return NsiPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.NsiPortAsync); + } + + public enum EndpointConfiguration + { + + NsiPortAsync, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/ConnectedService.json new file mode 100644 index 0000000..53dc263 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.OrgRegistryCommon" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/Reference.cs new file mode 100644 index 0000000..b158fa2 --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.OrgRegistryCommon/Reference.cs @@ -0,0 +1,4578 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.OrgRegistryCommon +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class OKTMORefType + { + + private string codeField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class TerritoryDelegatedAccessRightType + { + + private string accessRightGUIDField; + + private OKTMORefType[] oKTMOField; + + private nsiRef[] regionField; + + private bool allTerritoriesField; + + private bool allTerritoriesFieldSpecified; + + public TerritoryDelegatedAccessRightType() + { + this.allTerritoriesField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccessRightGUID + { + get + { + return this.accessRightGUIDField; + } + set + { + this.accessRightGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("OKTMO", Order=1)] + public OKTMORefType[] OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Region", Order=2)] + public nsiRef[] Region + { + get + { + return this.regionField; + } + set + { + this.regionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool AllTerritories + { + get + { + return this.allTerritoriesField; + } + set + { + this.allTerritoriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AllTerritoriesSpecified + { + get + { + return this.allTerritoriesFieldSpecified; + } + set + { + this.allTerritoriesFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class ObjectsDelegatedAccessRightType + { + + private string accessRightGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccessRightGUID + { + get + { + return this.accessRightGUIDField; + } + set + { + this.accessRightGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AllObjects", typeof(bool), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ObjectInfo", typeof(ObjectsDelegatedAccessRightTypeObjectInfo), Order=1)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class ObjectsDelegatedAccessRightTypeObjectInfo + { + + private string objectGUIDField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ObjectGUID + { + get + { + return this.objectGUIDField; + } + set + { + this.objectGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class AccessRequest + { + + private string accessRequestGUIDField; + + private AccessRequestType typeField; + + private System.DateTime applicationDateField; + + private System.DateTime startDateField; + + private System.DateTime endDateField; + + private bool endDateFieldSpecified; + + private AccessRequestStatus statusField; + + private System.DateTime statusChangeDateField; + + private bool statusChangeDateFieldSpecified; + + private string statusReasonField; + + private AccessRequestDelegatedAccessRight[] delegatedAccessRightField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccessRequestGUID + { + get + { + return this.accessRequestGUIDField; + } + set + { + this.accessRequestGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public AccessRequestType Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=2)] + public System.DateTime ApplicationDate + { + get + { + return this.applicationDateField; + } + set + { + this.applicationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime StartDate + { + get + { + return this.startDateField; + } + set + { + this.startDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime EndDate + { + get + { + return this.endDateField; + } + set + { + this.endDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool EndDateSpecified + { + get + { + return this.endDateFieldSpecified; + } + set + { + this.endDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public AccessRequestStatus Status + { + get + { + return this.statusField; + } + set + { + this.statusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=6)] + public System.DateTime StatusChangeDate + { + get + { + return this.statusChangeDateField; + } + set + { + this.statusChangeDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StatusChangeDateSpecified + { + get + { + return this.statusChangeDateFieldSpecified; + } + set + { + this.statusChangeDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string StatusReason + { + get + { + return this.statusReasonField; + } + set + { + this.statusReasonField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("DelegatedAccessRight", Order=8)] + public AccessRequestDelegatedAccessRight[] DelegatedAccessRight + { + get + { + return this.delegatedAccessRightField; + } + set + { + this.delegatedAccessRightField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public enum AccessRequestType + { + + /// + ForInformationSystemOperator, + + /// + ForCalculationCenter, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public enum AccessRequestStatus + { + + /// + Created, + + /// + Accepted, + + /// + Declined, + + /// + Revoked, + + /// + Annulled, + + /// + Closed, + + /// + Preset, + + /// + Waiting_approval, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class AccessRequestDelegatedAccessRight + { + + private string accessRightGUIDField; + + private AccessRequestDelegatedAccessRightTerritoryInfo territoryInfoField; + + private AccessRequestDelegatedAccessRightObjectInfo objectInfoField; + + private bool isActualField; + + private nsiRef[] informationTypeField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string AccessRightGUID + { + get + { + return this.accessRightGUIDField; + } + set + { + this.accessRightGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public AccessRequestDelegatedAccessRightTerritoryInfo TerritoryInfo + { + get + { + return this.territoryInfoField; + } + set + { + this.territoryInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public AccessRequestDelegatedAccessRightObjectInfo ObjectInfo + { + get + { + return this.objectInfoField; + } + set + { + this.objectInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("InformationType", Order=4)] + public nsiRef[] InformationType + { + get + { + return this.informationTypeField; + } + set + { + this.informationTypeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class AccessRequestDelegatedAccessRightTerritoryInfo + { + + private bool itemField; + + private ItemChoiceType itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AllTerritories", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ExistListOfTerritory", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + AllTerritories, + + /// + ExistListOfTerritory, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class AccessRequestDelegatedAccessRightObjectInfo + { + + private bool itemField; + + private ItemChoiceType1 itemElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AllObjects", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ExistListOfObjects", typeof(bool), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public bool Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + AllObjects, + + /// + ExistListOfObjects, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportDelegatedAccessType + { + + private RegOrgType parentOrgField; + + private string orgPPAGUIDField; + + private RegOrgType regOrgField; + + private AccessRequest[] accessRequestField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RegOrgType ParentOrg + { + get + { + return this.parentOrgField; + } + set + { + this.parentOrgField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=2)] + public RegOrgType RegOrg + { + get + { + return this.regOrgField; + } + set + { + this.regOrgField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccessRequest", Order=3)] + public AccessRequest[] AccessRequest + { + get + { + return this.accessRequestField; + } + set + { + this.accessRequestField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgType + { + + private string orgRootEntityGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgRootEntityGUID + { + get + { + return this.orgRootEntityGUIDField; + } + set + { + this.orgRootEntityGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportDataProviderResultType + { + + private string dataProviderGUIDField; + + private bool isActualField; + + private RegOrgType regOrgField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string DataProviderGUID + { + get + { + return this.dataProviderGUIDField; + } + set + { + this.dataProviderGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=2)] + public RegOrgType RegOrg + { + get + { + return this.regOrgField; + } + set + { + this.regOrgField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class ForeignBranchType + { + + private string fullNameField; + + private string shortNameField; + + private string nZAField; + + private string iNNField; + + private string kPPField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime accreditationStartDateField; + + private System.DateTime accreditationEndDateField; + + private bool accreditationEndDateFieldSpecified; + + private string registrationCountryField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=2)] + public string NZA + { + get + { + return this.nZAField; + } + set + { + this.nZAField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=7)] + public System.DateTime AccreditationStartDate + { + get + { + return this.accreditationStartDateField; + } + set + { + this.accreditationStartDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime AccreditationEndDate + { + get + { + return this.accreditationEndDateField; + } + set + { + this.accreditationEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool AccreditationEndDateSpecified + { + get + { + return this.accreditationEndDateFieldSpecified; + } + set + { + this.accreditationEndDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string RegistrationCountry + { + get + { + return this.registrationCountryField; + } + set + { + this.registrationCountryField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class EntpsType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + private EntpsTypeSex sexField; + + private bool sexFieldSpecified; + + private string oGRNIPField; + + private System.DateTime stateRegistrationDateField; + + private bool stateRegistrationDateFieldSpecified; + + private string iNNField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public EntpsTypeSex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string OGRNIP + { + get + { + return this.oGRNIPField; + } + set + { + this.oGRNIPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=5)] + public System.DateTime StateRegistrationDate + { + get + { + return this.stateRegistrationDateField; + } + set + { + this.stateRegistrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateRegistrationDateSpecified + { + get + { + return this.stateRegistrationDateFieldSpecified; + } + set + { + this.stateRegistrationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=6)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public enum EntpsTypeSex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class RegOrgVersionType + { + + private string orgVersionGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string orgVersionGUID + { + get + { + return this.orgVersionGUIDField; + } + set + { + this.orgVersionGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class SubsidiaryType + { + + private string fullNameField; + + private string shortNameField; + + private string oGRNField; + + private string iNNField; + + private string kPPField; + + private string oKOPFField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime activityEndDateField; + + private bool activityEndDateFieldSpecified; + + private SubsidiaryTypeSourceName sourceNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=2)] + public string OGRN + { + get + { + return this.oGRNField; + } + set + { + this.oGRNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=4)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=5)] + public string OKOPF + { + get + { + return this.oKOPFField; + } + set + { + this.oKOPFField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)] + public System.DateTime ActivityEndDate + { + get + { + return this.activityEndDateField; + } + set + { + this.activityEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ActivityEndDateSpecified + { + get + { + return this.activityEndDateFieldSpecified; + } + set + { + this.activityEndDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public SubsidiaryTypeSourceName SourceName + { + get + { + return this.sourceNameField; + } + set + { + this.sourceNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class SubsidiaryTypeSourceName + { + + private System.DateTime dateField; + + private string valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="date")] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/")] + public partial class LegalType + { + + private string shortNameField; + + private string fullNameField; + + private string commercialNameField; + + private string oGRNField; + + private System.DateTime stateRegistrationDateField; + + private bool stateRegistrationDateFieldSpecified; + + private string iNNField; + + private string kPPField; + + private string oKOPFField; + + private string addressField; + + private string fIASHouseGuidField; + + private System.DateTime activityEndDateField; + + private bool activityEndDateFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ShortName + { + get + { + return this.shortNameField; + } + set + { + this.shortNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FullName + { + get + { + return this.fullNameField; + } + set + { + this.fullNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string CommercialName + { + get + { + return this.commercialNameField; + } + set + { + this.commercialNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=3)] + public string OGRN + { + get + { + return this.oGRNField; + } + set + { + this.oGRNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=4)] + public System.DateTime StateRegistrationDate + { + get + { + return this.stateRegistrationDateField; + } + set + { + this.stateRegistrationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool StateRegistrationDateSpecified + { + get + { + return this.stateRegistrationDateFieldSpecified; + } + set + { + this.stateRegistrationDateFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=5)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=6)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=7)] + public string OKOPF + { + get + { + return this.oKOPFField; + } + set + { + this.oKOPFField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string Address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=10)] + public System.DateTime ActivityEndDate + { + get + { + return this.activityEndDateField; + } + set + { + this.activityEndDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ActivityEndDateSpecified + { + get + { + return this.activityEndDateFieldSpecified; + } + set + { + this.activityEndDateFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryResultType + { + + private string orgRootEntityGUIDField; + + private exportOrgRegistryResultTypeOrgVersion orgVersionField; + + private string orgPPAGUIDField; + + private nsiRef[] organizationRolesField; + + private bool isRegisteredField; + + private bool isRegisteredFieldSpecified; + + public exportOrgRegistryResultType() + { + this.isRegisteredField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=0)] + public string orgRootEntityGUID + { + get + { + return this.orgRootEntityGUIDField; + } + set + { + this.orgRootEntityGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportOrgRegistryResultTypeOrgVersion OrgVersion + { + get + { + return this.orgVersionField; + } + set + { + this.orgVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=2)] + public string orgPPAGUID + { + get + { + return this.orgPPAGUIDField; + } + set + { + this.orgPPAGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("organizationRoles", Order=3)] + public nsiRef[] organizationRoles + { + get + { + return this.organizationRolesField; + } + set + { + this.organizationRolesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public bool isRegistered + { + get + { + return this.isRegisteredField; + } + set + { + this.isRegisteredField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isRegisteredSpecified + { + get + { + return this.isRegisteredFieldSpecified; + } + set + { + this.isRegisteredFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryResultTypeOrgVersion + { + + private string orgVersionGUIDField; + + private System.DateTime lastEditingDateField; + + private bool isActualField; + + private object itemField; + + private exportOrgRegistryResultTypeOrgVersionRegistryOrganizationStatus registryOrganizationStatusField; + + private bool registryOrganizationStatusFieldSpecified; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=0)] + public string orgVersionGUID + { + get + { + return this.orgVersionGUIDField; + } + set + { + this.orgVersionGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime lastEditingDate + { + get + { + return this.lastEditingDateField; + } + set + { + this.lastEditingDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entrp", typeof(EntpsType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("ForeignBranch", typeof(ForeignBranchType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(LegalType), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Subsidiary", typeof(exportOrgRegistryResultTypeOrgVersionSubsidiary), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public exportOrgRegistryResultTypeOrgVersionRegistryOrganizationStatus registryOrganizationStatus + { + get + { + return this.registryOrganizationStatusField; + } + set + { + this.registryOrganizationStatusField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool registryOrganizationStatusSpecified + { + get + { + return this.registryOrganizationStatusFieldSpecified; + } + set + { + this.registryOrganizationStatusFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryResultTypeOrgVersionSubsidiary : SubsidiaryType + { + + private string statusVersionField; + + private exportOrgRegistryResultTypeOrgVersionSubsidiaryParentOrg parentOrgField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string StatusVersion + { + get + { + return this.statusVersionField; + } + set + { + this.statusVersionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public exportOrgRegistryResultTypeOrgVersionSubsidiaryParentOrg ParentOrg + { + get + { + return this.parentOrgField; + } + set + { + this.parentOrgField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryResultTypeOrgVersionSubsidiaryParentOrg + { + + private RegOrgVersionType regOrgVersionField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=0)] + public RegOrgVersionType RegOrgVersion + { + get + { + return this.regOrgVersionField; + } + set + { + this.regOrgVersionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public enum exportOrgRegistryResultTypeOrgVersionRegistryOrganizationStatus + { + + /// + P, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common-service-" + + "async/", ConfigurationName="Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync")] + public interface RegOrgPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.OrgRegistryCommon.getStateRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportOrgRegistry", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:exportOrgRegistry", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportOrgRegistryAsync(Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportDataProvider", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:exportDataProvider", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportDataProviderAsync(Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportDelegatedAccess", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:exportDelegatedAccess", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportObjectsDelegatedAccess", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:exportObjectsDelegatedAccess", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportObjectsDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportTerritoryDelegatedAccess", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.OrgRegistryCommon.Fault), Action="urn:exportTerritoryDelegatedAccess", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(SubsidiaryType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportTerritoryDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISRequestHeader : HeaderType + { + + private ISCreator[] iSCreatorField; + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=0)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private bool isNextPageField; + + private bool isNextPageFieldSpecified; + + private string versionField; + + public getStateResult() + { + this.isNextPageField = true; + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(CommonResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportDataProviderResult", typeof(exportDataProviderResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportDelegatedAccessResult", typeof(exportDelegatedAccessType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportObjectsDelegatedAccessResult", typeof(ObjectsDelegatedAccessRightType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportOrgRegistryResult", typeof(exportOrgRegistryResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportTerritoryDelegatedAccess", typeof(TerritoryDelegatedAccessRightType), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public bool IsNextPage + { + get + { + return this.isNextPageField; + } + set + { + this.isNextPageField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsNextPageSpecified + { + get + { + return this.isNextPageFieldSpecified; + } + set + { + this.isNextPageFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.getStateRequest getStateRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryRequest : BaseType + { + + private exportOrgRegistryRequestSearchCriteria[] searchCriteriaField; + + private System.DateTime lastEditingDateFromField; + + private bool lastEditingDateFromFieldSpecified; + + private string versionField; + + public exportOrgRegistryRequest() + { + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SearchCriteria", Order=0)] + public exportOrgRegistryRequestSearchCriteria[] SearchCriteria + { + get + { + return this.searchCriteriaField; + } + set + { + this.searchCriteriaField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime lastEditingDateFrom + { + get + { + return this.lastEditingDateFromField; + } + set + { + this.lastEditingDateFromField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool lastEditingDateFromSpecified + { + get + { + return this.lastEditingDateFromFieldSpecified; + } + set + { + this.lastEditingDateFromFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportOrgRegistryRequestSearchCriteria + { + + private string[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + private bool isRegisteredField; + + private bool isRegisteredFieldSpecified; + + public exportOrgRegistryRequestSearchCriteria() + { + this.isRegisteredField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("KPP", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NZA", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OGRN", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("OGRNIP", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgRootEntityGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgVersionGUID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool isRegistered + { + get + { + return this.isRegisteredField; + } + set + { + this.isRegisteredField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool isRegisteredSpecified + { + get + { + return this.isRegisteredFieldSpecified; + } + set + { + this.isRegisteredFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-base/:KPP")] + KPP, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-base/:NZA")] + NZA, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-base/:OGRN")] + OGRN, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-base/:OGRNIP")] + OGRNIP, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/:orgRootEn" + + "tityGUID")] + orgRootEntityGUID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/organizations-registry-base/:orgVersio" + + "nGUID")] + orgVersionGUID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOrgRegistryRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest exportOrgRegistryRequest; + + public exportOrgRegistryRequest1() + { + } + + public exportOrgRegistryRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest exportOrgRegistryRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportOrgRegistryRequest = exportOrgRegistryRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportOrgRegistryResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest; + + public exportOrgRegistryResponse() + { + } + + public exportOrgRegistryResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportDataProviderRequest : BaseType + { + + private bool isActualField; + + private bool isActualFieldSpecified; + + private string versionField; + + public exportDataProviderRequest() + { + this.isActualField = true; + this.versionField = "10.0.2.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public bool IsActual + { + get + { + return this.isActualField; + } + set + { + this.isActualField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsActualSpecified + { + get + { + return this.isActualFieldSpecified; + } + set + { + this.isActualFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest exportDataProviderRequest; + + public exportDataProviderRequest1() + { + } + + public exportDataProviderRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest exportDataProviderRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportDataProviderRequest = exportDataProviderRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDataProviderResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest; + + public exportDataProviderResponse() + { + } + + public exportDataProviderResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportDelegatedAccessRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public exportDelegatedAccessRequest() + { + this.versionField = "11.2.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccessRequestGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Page", typeof(int), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Status", typeof(AccessRequestStatus), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDelegatedAccessRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest exportDelegatedAccessRequest; + + public exportDelegatedAccessRequest1() + { + } + + public exportDelegatedAccessRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest exportDelegatedAccessRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportDelegatedAccessRequest = exportDelegatedAccessRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportDelegatedAccessResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest; + + public exportDelegatedAccessResponse() + { + } + + public exportDelegatedAccessResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportObjectsDelegatedAccessRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public exportObjectsDelegatedAccessRequest() + { + this.versionField = "11.2.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccessRightGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Page", typeof(int), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportObjectsDelegatedAccessRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest exportObjectsDelegatedAccessRequest; + + public exportObjectsDelegatedAccessRequest1() + { + } + + public exportObjectsDelegatedAccessRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest exportObjectsDelegatedAccessRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportObjectsDelegatedAccessRequest = exportObjectsDelegatedAccessRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportObjectsDelegatedAccessResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest; + + public exportObjectsDelegatedAccessResponse() + { + } + + public exportObjectsDelegatedAccessResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/")] + public partial class exportTerritoryDelegatedAccessRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public exportTerritoryDelegatedAccessRequest() + { + this.versionField = "11.2.0.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("AccessRightGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Page", typeof(int), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportTerritoryDelegatedAccessRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-registry-common/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest exportTerritoryDelegatedAccessRequest; + + public exportTerritoryDelegatedAccessRequest1() + { + } + + public exportTerritoryDelegatedAccessRequest1(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest exportTerritoryDelegatedAccessRequest) + { + this.ISRequestHeader = ISRequestHeader; + this.exportTerritoryDelegatedAccessRequest = exportTerritoryDelegatedAccessRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportTerritoryDelegatedAccessResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest; + + public exportTerritoryDelegatedAccessResponse() + { + } + + public exportTerritoryDelegatedAccessResponse(Hcs.Service.Async.OrgRegistryCommon.ResultHeader ResultHeader, Hcs.Service.Async.OrgRegistryCommon.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface RegOrgPortsTypeAsyncChannel : Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class RegOrgPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public RegOrgPortsTypeAsyncClient() : + base(RegOrgPortsTypeAsyncClient.GetDefaultBinding(), RegOrgPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.RegOrgAsyncPort.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public RegOrgPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(RegOrgPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), RegOrgPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public RegOrgPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(RegOrgPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public RegOrgPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(RegOrgPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public RegOrgPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.getStateAsync(Hcs.Service.Async.OrgRegistryCommon.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.getStateRequest getStateRequest) + { + Hcs.Service.Async.OrgRegistryCommon.getStateRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.getStateRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).getStateAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.exportOrgRegistryAsync(Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest1 request) + { + return base.Channel.exportOrgRegistryAsync(request); + } + + public System.Threading.Tasks.Task exportOrgRegistryAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest exportOrgRegistryRequest) + { + Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.exportOrgRegistryRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportOrgRegistryRequest = exportOrgRegistryRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).exportOrgRegistryAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.exportDataProviderAsync(Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest1 request) + { + return base.Channel.exportDataProviderAsync(request); + } + + public System.Threading.Tasks.Task exportDataProviderAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest exportDataProviderRequest) + { + Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.exportDataProviderRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportDataProviderRequest = exportDataProviderRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).exportDataProviderAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.exportDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest1 request) + { + return base.Channel.exportDelegatedAccessAsync(request); + } + + public System.Threading.Tasks.Task exportDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest exportDelegatedAccessRequest) + { + Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.exportDelegatedAccessRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportDelegatedAccessRequest = exportDelegatedAccessRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).exportDelegatedAccessAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.exportObjectsDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest1 request) + { + return base.Channel.exportObjectsDelegatedAccessAsync(request); + } + + public System.Threading.Tasks.Task exportObjectsDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest exportObjectsDelegatedAccessRequest) + { + Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.exportObjectsDelegatedAccessRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportObjectsDelegatedAccessRequest = exportObjectsDelegatedAccessRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).exportObjectsDelegatedAccessAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync.exportTerritoryDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest1 request) + { + return base.Channel.exportTerritoryDelegatedAccessAsync(request); + } + + public System.Threading.Tasks.Task exportTerritoryDelegatedAccessAsync(Hcs.Service.Async.OrgRegistryCommon.ISRequestHeader ISRequestHeader, Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest exportTerritoryDelegatedAccessRequest) + { + Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest1 inValue = new Hcs.Service.Async.OrgRegistryCommon.exportTerritoryDelegatedAccessRequest1(); + inValue.ISRequestHeader = ISRequestHeader; + inValue.exportTerritoryDelegatedAccessRequest = exportTerritoryDelegatedAccessRequest; + return ((Hcs.Service.Async.OrgRegistryCommon.RegOrgPortsTypeAsync)(this)).exportTerritoryDelegatedAccessAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.RegOrgAsyncPort)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.RegOrgAsyncPort)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-org-registry-common-service/services/OrgRegi" + + "stryCommonAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return RegOrgPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.RegOrgAsyncPort); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return RegOrgPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.RegOrgAsyncPort); + } + + public enum EndpointConfiguration + { + + RegOrgAsyncPort, + } + } +} diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/ConnectedService.json b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/ConnectedService.json new file mode 100644 index 0000000..d6930ff --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/ConnectedService.json @@ -0,0 +1,16 @@ +{ + "ExtendedData": { + "inputs": [ + "../../HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-service-async.wsdl" + ], + "collectionTypes": [ + "System.Array", + "System.Collections.Generic.Dictionary`2" + ], + "namespaceMappings": [ + "*, Hcs.Service.Async.Payments" + ], + "targetFramework": "net8.0", + "typeReuseMode": "All" + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/Reference.cs b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/Reference.cs new file mode 100644 index 0000000..31b46df --- /dev/null +++ b/Hcs.ClientNet/Connected Services/Hcs.Service.Async.Payments/Reference.cs @@ -0,0 +1,5773 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторного создания кода. +// +//------------------------------------------------------------------------------ + +namespace Hcs.Service.Async.Payments +{ + + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class Fault + { + + private string errorCodeField; + + private string errorMessageField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ErrorMessage + { + get + { + return this.errorMessageField; + } + set + { + this.errorMessageField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecution139Type + { + + private NotificationOfOrderExecution139TypeOrderInfo orderInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NotificationOfOrderExecution139TypeOrderInfo OrderInfo + { + get + { + return this.orderInfoField; + } + set + { + this.orderInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecution139TypeOrderInfo + { + + private string orderIDField; + + private System.DateTime orderDateField; + + private decimal amountField; + + private bool onlinePaymentField; + + private bool onlinePaymentFieldSpecified; + + private NotificationOfOrderExecution139TypeOrderInfoMonthAndYear monthAndYearField; + + private string[] itemsField; + + private ItemsChoiceType4[] itemsElementNameField; + + private string paymentInformationGUIDField; + + public NotificationOfOrderExecution139TypeOrderInfo() + { + this.onlinePaymentField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OrderID + { + get + { + return this.orderIDField; + } + set + { + this.orderIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime OrderDate + { + get + { + return this.orderDateField; + } + set + { + this.orderDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public bool OnlinePayment + { + get + { + return this.onlinePaymentField; + } + set + { + this.onlinePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OnlinePaymentSpecified + { + get + { + return this.onlinePaymentFieldSpecified; + } + set + { + this.onlinePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public NotificationOfOrderExecution139TypeOrderInfoMonthAndYear MonthAndYear + { + get + { + return this.monthAndYearField; + } + set + { + this.monthAndYearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=5)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=5)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentGUID", typeof(string), Order=5)] + [System.Xml.Serialization.XmlElementAttribute("ServiceIDGUID", typeof(string), Order=5)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=6)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType4[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string PaymentInformationGUID + { + get + { + return this.paymentInformationGUIDField; + } + set + { + this.paymentInformationGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecution139TypeOrderInfoMonthAndYear + { + + private short yearField; + + private int monthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemsChoiceType4 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + + /// + PaymentDocumentGUID, + + /// + ServiceIDGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class PaymentInformationType + { + + private string recipientINNField; + + private string recipientKPPField; + + private string bankNameField; + + private string paymentRecipientField; + + private string bankBIKField; + + private string operatingAccountNumberField; + + private string correspondentBankAccountField; + + private string kBKField; + + private string oKTMOField; + + private string numberBudgetaryAccountField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RecipientINN + { + get + { + return this.recipientINNField; + } + set + { + this.recipientINNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RecipientKPP + { + get + { + return this.recipientKPPField; + } + set + { + this.recipientKPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string BankName + { + get + { + return this.bankNameField; + } + set + { + this.bankNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PaymentRecipient + { + get + { + return this.paymentRecipientField; + } + set + { + this.paymentRecipientField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string BankBIK + { + get + { + return this.bankBIKField; + } + set + { + this.bankBIKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string operatingAccountNumber + { + get + { + return this.operatingAccountNumberField; + } + set + { + this.operatingAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string CorrespondentBankAccount + { + get + { + return this.correspondentBankAccountField; + } + set + { + this.correspondentBankAccountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string KBK + { + get + { + return this.kBKField; + } + set + { + this.kBKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string NumberBudgetaryAccount + { + get + { + return this.numberBudgetaryAccountField; + } + set + { + this.numberBudgetaryAccountField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/nsi-base/")] + public partial class nsiRef + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(IndType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class FIOType + { + + private string surnameField; + + private string firstNameField; + + private string patronymicField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Surname + { + get + { + return this.surnameField; + } + set + { + this.surnameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string FirstName + { + get + { + return this.firstNameField; + } + set + { + this.firstNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Patronymic + { + get + { + return this.patronymicField; + } + set + { + this.patronymicField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class IndType : FIOType + { + + private Sex sexField; + + private bool sexFieldSpecified; + + private System.DateTime dateOfBirthField; + + private bool dateOfBirthFieldSpecified; + + private object itemField; + + private string placeBirthField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public Sex Sex + { + get + { + return this.sexField; + } + set + { + this.sexField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool SexSpecified + { + get + { + return this.sexFieldSpecified; + } + set + { + this.sexFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime DateOfBirth + { + get + { + return this.dateOfBirthField; + } + set + { + this.dateOfBirthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool DateOfBirthSpecified + { + get + { + return this.dateOfBirthFieldSpecified; + } + set + { + this.dateOfBirthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ID", typeof(ID), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=2)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PlaceBirth + { + get + { + return this.placeBirthField; + } + set + { + this.placeBirthField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public enum Sex + { + + /// + M, + + /// + F, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/individual-registry-base/")] + public partial class ID + { + + private nsiRef typeField; + + private string seriesField; + + private string numberField; + + private System.DateTime issueDateField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public nsiRef Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=3)] + public System.DateTime IssueDate + { + get + { + return this.issueDateField; + } + set + { + this.issueDateField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionType + { + + private NotificationOfOrderExecutionTypeSupplierInfo supplierInfoField; + + private NotificationOfOrderExecutionTypeRecipientInfo recipientInfoField; + + private NotificationOfOrderExecutionTypeOrderInfo orderInfoField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public NotificationOfOrderExecutionTypeSupplierInfo SupplierInfo + { + get + { + return this.supplierInfoField; + } + set + { + this.supplierInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public NotificationOfOrderExecutionTypeRecipientInfo RecipientInfo + { + get + { + return this.recipientInfoField; + } + set + { + this.recipientInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public NotificationOfOrderExecutionTypeOrderInfo OrderInfo + { + get + { + return this.orderInfoField; + } + set + { + this.orderInfoField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeSupplierInfo + { + + private string supplierIDField; + + private string supplierNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string SupplierID + { + get + { + return this.supplierIDField; + } + set + { + this.supplierIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string SupplierName + { + get + { + return this.supplierNameField; + } + set + { + this.supplierNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeRecipientInfo + { + + private string iNNField; + + private object itemField; + + private NotificationOfOrderExecutionTypeRecipientInfoPaymentInformation paymentInformationField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entpr", typeof(FIOType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("EntprFIO", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(NotificationOfOrderExecutionTypeRecipientInfoLegal), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public NotificationOfOrderExecutionTypeRecipientInfoPaymentInformation PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeRecipientInfoLegal + { + + private string kPPField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeRecipientInfoPaymentInformation : PaymentInformationType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeOrderInfo + { + + private string orderIDField; + + private System.DateTime orderDateField; + + private string orderNumField; + + private decimal amountField; + + private string paymentPurposeField; + + private bool onlinePaymentField; + + private bool onlinePaymentFieldSpecified; + + private string commentField; + + private string paymentDocumentIDField; + + private string paymentDocumentNumberField; + + private short yearField; + + private int monthField; + + private string unifiedAccountNumberField; + + private NotificationOfOrderExecutionTypeOrderInfoAddressAndConsumer addressAndConsumerField; + + private NotificationOfOrderExecutionTypeOrderInfoService serviceField; + + private string accountNumberField; + + public NotificationOfOrderExecutionTypeOrderInfo() + { + this.onlinePaymentField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OrderID + { + get + { + return this.orderIDField; + } + set + { + this.orderIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime OrderDate + { + get + { + return this.orderDateField; + } + set + { + this.orderDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string OrderNum + { + get + { + return this.orderNumField; + } + set + { + this.orderNumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string PaymentPurpose + { + get + { + return this.paymentPurposeField; + } + set + { + this.paymentPurposeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool OnlinePayment + { + get + { + return this.onlinePaymentField; + } + set + { + this.onlinePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OnlinePaymentSpecified + { + get + { + return this.onlinePaymentFieldSpecified; + } + set + { + this.onlinePaymentFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string Comment + { + get + { + return this.commentField; + } + set + { + this.commentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=7)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=8)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=9)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=10)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=11)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public NotificationOfOrderExecutionTypeOrderInfoAddressAndConsumer AddressAndConsumer + { + get + { + return this.addressAndConsumerField; + } + set + { + this.addressAndConsumerField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public NotificationOfOrderExecutionTypeOrderInfoService Service + { + get + { + return this.serviceField; + } + set + { + this.serviceField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=14)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeOrderInfoAddressAndConsumer + { + + private string fIASHouseGuidField; + + private string[] itemsField; + + private ItemsChoiceType3[] itemsElementNameField; + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Apartment", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NonLivingApartment", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialBlock", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Placement", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlock", typeof(string), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlockRoom", typeof(string), Order=1)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public string[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=2)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType3[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("INN", typeof(string), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Ind", typeof(FIOType), Order=3)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/", IncludeInSchema=false)] + public enum ItemsChoiceType3 + { + + /// + Apartment, + + /// + NonLivingApartment, + + /// + NonResidentialBlock, + + /// + Placement, + + /// + ResidentialBlock, + + /// + ResidentialBlockRoom, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionTypeOrderInfoService + { + + private string serviceIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ObjectType + { + + private System.Xml.XmlNode[] anyField; + + private string idField; + + private string mimeTypeField; + + private string encodingField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string MimeType + { + get + { + return this.mimeTypeField; + } + set + { + this.mimeTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Encoding + { + get + { + return this.encodingField; + } + set + { + this.encodingField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SPKIDataType + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKISexp", typeof(byte[]), DataType="base64Binary", Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class PGPDataType + { + + private object[] itemsField; + + private ItemsChoiceType1[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyID", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPKeyPacket", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType1[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + PGPKeyID, + + /// + PGPKeyPacket, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509IssuerSerialType + { + + private string x509IssuerNameField; + + private string x509SerialNumberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string X509IssuerName + { + get + { + return this.x509IssuerNameField; + } + set + { + this.x509IssuerNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=1)] + public string X509SerialNumber + { + get + { + return this.x509SerialNumberField; + } + set + { + this.x509SerialNumberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class X509DataType + { + + private object[] itemsField; + + private ItemsChoiceType[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509CRL", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Certificate", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509IssuerSerial", typeof(X509IssuerSerialType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SKI", typeof(byte[]), DataType="base64Binary", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509SubjectName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + X509CRL, + + /// + X509Certificate, + + /// + X509IssuerSerial, + + /// + X509SKI, + + /// + X509SubjectName, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RetrievalMethodType + { + + private TransformType[] transformsField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class TransformType + { + + private object[] itemsField; + + private string[] textField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("XPath", typeof(string), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class RSAKeyValueType + { + + private byte[] modulusField; + + private byte[] exponentField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] Modulus + { + get + { + return this.modulusField; + } + set + { + this.modulusField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Exponent + { + get + { + return this.exponentField; + } + set + { + this.exponentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DSAKeyValueType + { + + private byte[] pField; + + private byte[] qField; + + private byte[] gField; + + private byte[] yField; + + private byte[] jField; + + private byte[] seedField; + + private byte[] pgenCounterField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=0)] + public byte[] P + { + get + { + return this.pField; + } + set + { + this.pField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=1)] + public byte[] Q + { + get + { + return this.qField; + } + set + { + this.qField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] G + { + get + { + return this.gField; + } + set + { + this.gField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=3)] + public byte[] Y + { + get + { + return this.yField; + } + set + { + this.yField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=4)] + public byte[] J + { + get + { + return this.jField; + } + set + { + this.jField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=5)] + public byte[] Seed + { + get + { + return this.seedField; + } + set + { + this.seedField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=6)] + public byte[] PgenCounter + { + get + { + return this.pgenCounterField; + } + set + { + this.pgenCounterField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyValueType + { + + private object itemField; + + private string[] textField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("DSAKeyValue", typeof(DSAKeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RSAKeyValue", typeof(RSAKeyValueType), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class KeyInfoType + { + + private object[] itemsField; + + private ItemsChoiceType2[] itemsElementNameField; + + private string[] textField; + + private string idField; + + /// + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyName", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("KeyValue", typeof(KeyValueType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("MgmtData", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PGPData", typeof(PGPDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("RetrievalMethod", typeof(RetrievalMethodType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SPKIData", typeof(SPKIDataType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("X509Data", typeof(X509DataType), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType2[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + public string[] Text + { + get + { + return this.textField; + } + set + { + this.textField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", IncludeInSchema=false)] + public enum ItemsChoiceType2 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("##any:")] + Item, + + /// + KeyName, + + /// + KeyValue, + + /// + MgmtData, + + /// + PGPData, + + /// + RetrievalMethod, + + /// + SPKIData, + + /// + X509Data, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureValueType + { + + private string idField; + + private byte[] valueField; + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute(DataType="base64Binary")] + public byte[] Value + { + get + { + return this.valueField; + } + set + { + this.valueField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class DigestMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class ReferenceType + { + + private TransformType[] transformsField; + + private DigestMethodType digestMethodField; + + private byte[] digestValueField; + + private string idField; + + private string uRIField; + + private string typeField; + + /// + [System.Xml.Serialization.XmlArrayAttribute(Order=0)] + [System.Xml.Serialization.XmlArrayItemAttribute("Transform", IsNullable=false)] + public TransformType[] Transforms + { + get + { + return this.transformsField; + } + set + { + this.transformsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public DigestMethodType DigestMethod + { + get + { + return this.digestMethodField; + } + set + { + this.digestMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary", Order=2)] + public byte[] DigestValue + { + get + { + return this.digestValueField; + } + set + { + this.digestValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string URI + { + get + { + return this.uRIField; + } + set + { + this.uRIField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Type + { + get + { + return this.typeField; + } + set + { + this.typeField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureMethodType + { + + private string hMACOutputLengthField; + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="integer", Order=0)] + public string HMACOutputLength + { + get + { + return this.hMACOutputLengthField; + } + set + { + this.hMACOutputLengthField = value; + } + } + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=1)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class CanonicalizationMethodType + { + + private System.Xml.XmlNode[] anyField; + + private string algorithmField; + + /// + [System.Xml.Serialization.XmlTextAttribute()] + [System.Xml.Serialization.XmlAnyElementAttribute(Order=0)] + public System.Xml.XmlNode[] Any + { + get + { + return this.anyField; + } + set + { + this.anyField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="anyURI")] + public string Algorithm + { + get + { + return this.algorithmField; + } + set + { + this.algorithmField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignedInfoType + { + + private CanonicalizationMethodType canonicalizationMethodField; + + private SignatureMethodType signatureMethodField; + + private ReferenceType[] referenceField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public CanonicalizationMethodType CanonicalizationMethod + { + get + { + return this.canonicalizationMethodField; + } + set + { + this.canonicalizationMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureMethodType SignatureMethod + { + get + { + return this.signatureMethodField; + } + set + { + this.signatureMethodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Reference", Order=2)] + public ReferenceType[] Reference + { + get + { + return this.referenceField; + } + set + { + this.referenceField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#")] + public partial class SignatureType + { + + private SignedInfoType signedInfoField; + + private SignatureValueType signatureValueField; + + private KeyInfoType keyInfoField; + + private ObjectType[] objectField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public SignedInfoType SignedInfo + { + get + { + return this.signedInfoField; + } + set + { + this.signedInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SignatureValueType SignatureValue + { + get + { + return this.signatureValueField; + } + set + { + this.signatureValueField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public KeyInfoType KeyInfo + { + get + { + return this.keyInfoField; + } + set + { + this.keyInfoField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Object", Order=3)] + public ObjectType[] Object + { + get + { + return this.objectField; + } + set + { + this.objectField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.Xml.Serialization.XmlIncludeAttribute(typeof(BaseAsyncResponseType))] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseType + { + + private SignatureType signatureField; + + private string idField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://www.w3.org/2000/09/xmldsig#", Order=0)] + public SignatureType Signature + { + get + { + return this.signatureField; + } + set + { + this.signatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute()] + public string Id + { + get + { + return this.idField; + } + set + { + this.idField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class BaseAsyncResponseType : BaseType + { + + private sbyte requestStateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public sbyte RequestState + { + get + { + return this.requestStateField; + } + set + { + this.requestStateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ServiceModel.ServiceContractAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment-service-async/", ConfigurationName="Hcs.Service.Async.Payments.PaymentPortsTypeAsync")] + public interface PaymentPortsTypeAsync + { + + [System.ServiceModel.OperationContractAttribute(Action="urn:importNotificationsOfOrderExecution", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Payments.Fault), Action="urn:importNotificationsOfOrderExecution", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecution139Type))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importNotificationsOfOrderExecutionCancellation", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Payments.Fault), Action="urn:importNotificationsOfOrderExecutionCancellation", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecution139Type))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importNotificationsOfOrderExecutionCancellationAsync(Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:getState", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Payments.Fault), Action="urn:getState", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecution139Type))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Payments.getStateRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:exportPaymentDocumentDetails", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Payments.Fault), Action="urn:exportPaymentDocumentDetails", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecution139Type))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task exportPaymentDocumentDetailsAsync(Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest1 request); + + [System.ServiceModel.OperationContractAttribute(Action="urn:importSupplierNotificationsOfOrderExecution", ReplyAction="*")] + [System.ServiceModel.FaultContractAttribute(typeof(Hcs.Service.Async.Payments.Fault), Action="urn:importSupplierNotificationsOfOrderExecution", Name="Fault", Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecution139Type))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(PaymentInformationType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NotificationOfOrderExecutionType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(BaseType))] + System.Threading.Tasks.Task importSupplierNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest1 request); + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeader : HeaderType + { + + private object itemField; + + private ItemChoiceType itemElementNameField; + + private bool isOperatorSignatureField; + + private bool isOperatorSignatureFieldSpecified; + + private ISCreator[] iSCreatorField; + + public RequestHeader() + { + this.isOperatorSignatureField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Citizen", typeof(RequestHeaderCitizen), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SenderID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("orgPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public bool IsOperatorSignature + { + get + { + return this.isOperatorSignatureField; + } + set + { + this.isOperatorSignatureField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsOperatorSignatureSpecified + { + get + { + return this.isOperatorSignatureFieldSpecified; + } + set + { + this.isOperatorSignatureFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ISCreator", Order=3)] + public ISCreator[] ISCreator + { + get + { + return this.iSCreatorField; + } + set + { + this.iSCreatorField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizen + { + + private object[] itemsField; + + private ItemsChoiceType5[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute("CitizenPPAGUID", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Document", typeof(RequestHeaderCitizenDocument), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("SNILS", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType5[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocument + { + + private RequestHeaderCitizenDocumentDocumentType documentTypeField; + + private string seriesField; + + private string numberField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public RequestHeaderCitizenDocumentDocumentType DocumentType + { + get + { + return this.documentTypeField; + } + set + { + this.documentTypeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Series + { + get + { + return this.seriesField; + } + set + { + this.seriesField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Number + { + get + { + return this.numberField; + } + set + { + this.numberField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class RequestHeaderCitizenDocumentDocumentType + { + + private string codeField; + + private string gUIDField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Code + { + get + { + return this.codeField; + } + set + { + this.codeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemsChoiceType5 + { + + /// + CitizenPPAGUID, + + /// + Document, + + /// + SNILS, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", IncludeInSchema=false)] + public enum ItemChoiceType + { + + /// + Citizen, + + /// + SenderID, + + /// + orgPPAGUID, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ISCreator + { + + private string iSNameField; + + private string iSOperatorNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ISName + { + get + { + return this.iSNameField; + } + set + { + this.iSNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string ISOperatorName + { + get + { + return this.iSOperatorNameField; + } + set + { + this.iSOperatorNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class HeaderType + { + + private System.DateTime dateField; + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public System.DateTime Date + { + get + { + return this.dateField; + } + set + { + this.dateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importNotificationsOfOrderExecutionRequest : BaseType + { + + private object[] itemsField; + + private string versionField; + + public importNotificationsOfOrderExecutionRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NotificationOfOrderExecution139Type", typeof(importNotificationsOfOrderExecutionRequestNotificationOfOrderExecution139Type), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NotificationOfOrderExecutionType", typeof(importNotificationsOfOrderExecutionRequestNotificationOfOrderExecutionType), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importNotificationsOfOrderExecutionRequestNotificationOfOrderExecution139Type : NotificationOfOrderExecution139Type + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importNotificationsOfOrderExecutionRequestNotificationOfOrderExecutionType : NotificationOfOrderExecutionType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ResultHeader : HeaderType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequest + { + + private AckRequestAck ackField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public AckRequestAck Ack + { + get + { + return this.ackField; + } + set + { + this.ackField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class AckRequestAck + { + + private string messageGUIDField; + + private string requesterMessageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RequesterMessageGUID + { + get + { + return this.requesterMessageGUIDField; + } + set + { + this.requesterMessageGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importNotificationsOfOrderExecutionRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", Order=0)] + public Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest importNotificationsOfOrderExecutionRequest; + + public importNotificationsOfOrderExecutionRequest1() + { + } + + public importNotificationsOfOrderExecutionRequest1(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest importNotificationsOfOrderExecutionRequest) + { + this.RequestHeader = RequestHeader; + this.importNotificationsOfOrderExecutionRequest = importNotificationsOfOrderExecutionRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importNotificationsOfOrderExecutionResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Payments.AckRequest AckRequest; + + public importNotificationsOfOrderExecutionResponse() + { + } + + public importNotificationsOfOrderExecutionResponse(Hcs.Service.Async.Payments.ResultHeader ResultHeader, Hcs.Service.Async.Payments.AckRequest AckRequest) + { + this.ResultHeader = ResultHeader; + this.AckRequest = AckRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importNotificationsOfOrderExecutionCancellationRequest : BaseType + { + + private NotificationOfOrderExecutionCancellationType[] notificationOfOrderExecutionCancellationField; + + private string versionField; + + public importNotificationsOfOrderExecutionCancellationRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("NotificationOfOrderExecutionCancellation", Order=0)] + public NotificationOfOrderExecutionCancellationType[] NotificationOfOrderExecutionCancellation + { + get + { + return this.notificationOfOrderExecutionCancellationField; + } + set + { + this.notificationOfOrderExecutionCancellationField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class NotificationOfOrderExecutionCancellationType + { + + private string orderIDField; + + private System.DateTime cancellationDateField; + + private string commentField; + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string OrderID + { + get + { + return this.orderIDField; + } + set + { + this.orderIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=1)] + public System.DateTime CancellationDate + { + get + { + return this.cancellationDateField; + } + set + { + this.cancellationDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string Comment + { + get + { + return this.commentField; + } + set + { + this.commentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importNotificationsOfOrderExecutionCancellationRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", Order=0)] + public Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest importNotificationsOfOrderExecutionCancellationRequest; + + public importNotificationsOfOrderExecutionCancellationRequest1() + { + } + + public importNotificationsOfOrderExecutionCancellationRequest1(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest importNotificationsOfOrderExecutionCancellationRequest) + { + this.RequestHeader = RequestHeader; + this.importNotificationsOfOrderExecutionCancellationRequest = importNotificationsOfOrderExecutionCancellationRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class getStateRequest + { + + private string messageGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string MessageGUID + { + get + { + return this.messageGUIDField; + } + set + { + this.messageGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class getStateResult : BaseAsyncResponseType + { + + private object[] itemsField; + + private string versionField; + + public getStateResult() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ImportResult", typeof(CommonResultType), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("exportPaymentDocumentDetailsResult", typeof(getStateResultExportPaymentDocumentDetailsResult), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class ErrorMessageType + { + + private string errorCodeField; + + private string descriptionField; + + private string stackTraceField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string ErrorCode + { + get + { + return this.errorCodeField; + } + set + { + this.errorCodeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Description + { + get + { + return this.descriptionField; + } + set + { + this.descriptionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string StackTrace + { + get + { + return this.stackTraceField; + } + set + { + this.stackTraceField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultType + { + + private string gUIDField; + + private string transportGUIDField; + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string GUID + { + get + { + return this.gUIDField; + } + set + { + this.gUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Error", typeof(CommonResultTypeError), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UniqueNumber", typeof(string), Order=2)] + [System.Xml.Serialization.XmlElementAttribute("UpdateDate", typeof(System.DateTime), Order=2)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public partial class CommonResultTypeError : ErrorMessageType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class getStateResultExportPaymentDocumentDetailsResult + { + + private object[] itemsField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Charge", typeof(getStateResultExportPaymentDocumentDetailsResultCharge), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Service", typeof(Service), Order=0)] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class getStateResultExportPaymentDocumentDetailsResultCharge + { + + private PaymentDocument[] paymentDocumentField; + + /// + [System.Xml.Serialization.XmlElementAttribute("PaymentDocument", Order=0)] + public PaymentDocument[] PaymentDocument + { + get + { + return this.paymentDocumentField; + } + set + { + this.paymentDocumentField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocument + { + + private string paymentDocumentIDField; + + private string paymentDocumentNumberField; + + private string unifiedAccountNumberField; + + private string accountNumberField; + + private string serviceIDField; + + private PaymentDocumentDetailsType paymentDocumentDetailsField; + + private short yearField; + + private bool yearFieldSpecified; + + private int monthField; + + private bool monthFieldSpecified; + + private string paymentDocumentGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + public string PaymentDocumentID + { + get + { + return this.paymentDocumentIDField; + } + set + { + this.paymentDocumentIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=1)] + public string PaymentDocumentNumber + { + get + { + return this.paymentDocumentNumberField; + } + set + { + this.paymentDocumentNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=2)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=3)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=4)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public PaymentDocumentDetailsType PaymentDocumentDetails + { + get + { + return this.paymentDocumentDetailsField; + } + set + { + this.paymentDocumentDetailsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=6)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool YearSpecified + { + get + { + return this.yearFieldSpecified; + } + set + { + this.yearFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=7)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool MonthSpecified + { + get + { + return this.monthFieldSpecified; + } + set + { + this.monthFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string PaymentDocumentGUID + { + get + { + return this.paymentDocumentGUIDField; + } + set + { + this.paymentDocumentGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsType + { + + private PaymentDocumentDetailsTypeConsumerInformation consumerInformationField; + + private PaymentDocumentDetailsTypeExecutorInformation executorInformationField; + + private decimal reminderField; + + private object[] itemsField; + + private ItemsChoiceType7[] itemsElementNameField; + + private string purposeField; + + private string pDServiceNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public PaymentDocumentDetailsTypeConsumerInformation ConsumerInformation + { + get + { + return this.consumerInformationField; + } + set + { + this.consumerInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public PaymentDocumentDetailsTypeExecutorInformation ExecutorInformation + { + get + { + return this.executorInformationField; + } + set + { + this.executorInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public decimal Reminder + { + get + { + return this.reminderField; + } + set + { + this.reminderField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=3)] + [System.Xml.Serialization.XmlElementAttribute("Debt", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlElementAttribute("TotalWithDebtAndAdvance", typeof(decimal), Order=3)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=4)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType7[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string Purpose + { + get + { + return this.purposeField; + } + set + { + this.purposeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string PDServiceName + { + get + { + return this.pDServiceNameField; + } + set + { + this.pDServiceNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeConsumerInformation + { + + private object itemField; + + private PaymentDocumentDetailsTypeConsumerInformationAddress[] addressField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Entpr", typeof(PaymentDocumentDetailsTypeConsumerInformationEntpr), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(PaymentDocumentDetailsTypeConsumerInformationLegal), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("address", Order=1)] + public PaymentDocumentDetailsTypeConsumerInformationAddress[] address + { + get + { + return this.addressField; + } + set + { + this.addressField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeConsumerInformationEntpr + { + + private string iNNField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeConsumerInformationLegal + { + + private string nameField; + + private string kPPField; + + private string iNNField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=1)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=2)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeConsumerInformationAddress + { + + private string regionField; + + private string areaField; + + private string cityField; + + private string placeField; + + private string streetField; + + private string housenumField; + + private string fIASHouseGuidField; + + private string buildnumField; + + private string strucnumField; + + private string apartmentField; + + private string placementField; + + private string address_stringField; + + private string residential_blockField; + + private string residential_block_roomField; + + private string non_residential_blockField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string region + { + get + { + return this.regionField; + } + set + { + this.regionField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string area + { + get + { + return this.areaField; + } + set + { + this.areaField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string city + { + get + { + return this.cityField; + } + set + { + this.cityField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string place + { + get + { + return this.placeField; + } + set + { + this.placeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string street + { + get + { + return this.streetField; + } + set + { + this.streetField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string housenum + { + get + { + return this.housenumField; + } + set + { + this.housenumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string FIASHouseGuid + { + get + { + return this.fIASHouseGuidField; + } + set + { + this.fIASHouseGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public string buildnum + { + get + { + return this.buildnumField; + } + set + { + this.buildnumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string strucnum + { + get + { + return this.strucnumField; + } + set + { + this.strucnumField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string apartment + { + get + { + return this.apartmentField; + } + set + { + this.apartmentField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string placement + { + get + { + return this.placementField; + } + set + { + this.placementField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=11)] + public string address_string + { + get + { + return this.address_stringField; + } + set + { + this.address_stringField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=12)] + public string residential_block + { + get + { + return this.residential_blockField; + } + set + { + this.residential_blockField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=13)] + public string residential_block_room + { + get + { + return this.residential_block_roomField; + } + set + { + this.residential_block_roomField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=14)] + public string non_residential_block + { + get + { + return this.non_residential_blockField; + } + set + { + this.non_residential_blockField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeExecutorInformation + { + + private string iNNField; + + private object itemField; + + private PaymentDocumentDetailsTypeExecutorInformationPaymentInformation[] paymentInformationField; + + private string mailingAddressField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entpr", typeof(FIOType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(PaymentDocumentDetailsTypeExecutorInformationLegal), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PaymentInformation", Order=2)] + public PaymentDocumentDetailsTypeExecutorInformationPaymentInformation[] PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string MailingAddress + { + get + { + return this.mailingAddressField; + } + set + { + this.mailingAddressField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeExecutorInformationLegal + { + + private string kPPField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class PaymentDocumentDetailsTypeExecutorInformationPaymentInformation : PaymentInformationExportType + { + + private string paymentInformationGuidField; + + private decimal reminderField; + + private bool reminderFieldSpecified; + + private string accountNumberField; + + private string serviceIDField; + + private object[] itemsField; + + private ItemsChoiceType6[] itemsElementNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public decimal Reminder + { + get + { + return this.reminderField; + } + set + { + this.reminderField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool ReminderSpecified + { + get + { + return this.reminderFieldSpecified; + } + set + { + this.reminderFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=2)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=3)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ErrorMessage", typeof(ErrorMessageType), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=4)] + [System.Xml.Serialization.XmlElementAttribute("DebtOrAdvance", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlElementAttribute("TotalWithDebtAndAdvance", typeof(decimal), Order=4)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=5)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType6[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", IncludeInSchema=false)] + public enum ItemsChoiceType6 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:ErrorMessage")] + ErrorMessage, + + /// + DebtOrAdvance, + + /// + TotalWithDebtAndAdvance, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payments-base/")] + public partial class PaymentInformationExportType + { + + private string recipientINNField; + + private string recipientKPPField; + + private string bankNameField; + + private string paymentRecipientField; + + private string bankBIKField; + + private string operatingAccountNumberField; + + private string correspondentBankAccountField; + + private bool isCapitalRepairField; + + private bool isCapitalRepairFieldSpecified; + + private string kBKField; + + private string oKTMOField; + + private string numberBudgetaryAccountField; + + public PaymentInformationExportType() + { + this.isCapitalRepairField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string RecipientINN + { + get + { + return this.recipientINNField; + } + set + { + this.recipientINNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string RecipientKPP + { + get + { + return this.recipientKPPField; + } + set + { + this.recipientKPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public string BankName + { + get + { + return this.bankNameField; + } + set + { + this.bankNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string PaymentRecipient + { + get + { + return this.paymentRecipientField; + } + set + { + this.paymentRecipientField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public string BankBIK + { + get + { + return this.bankBIKField; + } + set + { + this.bankBIKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string operatingAccountNumber + { + get + { + return this.operatingAccountNumberField; + } + set + { + this.operatingAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string CorrespondentBankAccount + { + get + { + return this.correspondentBankAccountField; + } + set + { + this.correspondentBankAccountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=7)] + public bool IsCapitalRepair + { + get + { + return this.isCapitalRepairField; + } + set + { + this.isCapitalRepairField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool IsCapitalRepairSpecified + { + get + { + return this.isCapitalRepairFieldSpecified; + } + set + { + this.isCapitalRepairFieldSpecified = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=8)] + public string KBK + { + get + { + return this.kBKField; + } + set + { + this.kBKField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=9)] + public string OKTMO + { + get + { + return this.oKTMOField; + } + set + { + this.oKTMOField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=10)] + public string NumberBudgetaryAccount + { + get + { + return this.numberBudgetaryAccountField; + } + set + { + this.numberBudgetaryAccountField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", IncludeInSchema=false)] + public enum ItemsChoiceType7 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:ErrorMessage")] + ErrorMessage, + + /// + Debt, + + /// + TotalWithDebtAndAdvance, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class Service + { + + private string unifiedAccountNumberField; + + private string accountNumberField; + + private string serviceIDField; + + private string serviceIDGuidField; + + private ServiceExecutorInformation executorInformationField; + + private string purposeField; + + private string pDServiceNameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + public string UnifiedAccountNumber + { + get + { + return this.unifiedAccountNumberField; + } + set + { + this.unifiedAccountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=1)] + public string AccountNumber + { + get + { + return this.accountNumberField; + } + set + { + this.accountNumberField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=2)] + public string ServiceID + { + get + { + return this.serviceIDField; + } + set + { + this.serviceIDField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string ServiceIDGuid + { + get + { + return this.serviceIDGuidField; + } + set + { + this.serviceIDGuidField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public ServiceExecutorInformation ExecutorInformation + { + get + { + return this.executorInformationField; + } + set + { + this.executorInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public string Purpose + { + get + { + return this.purposeField; + } + set + { + this.purposeField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=6)] + public string PDServiceName + { + get + { + return this.pDServiceNameField; + } + set + { + this.pDServiceNameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class ServiceExecutorInformation + { + + private string iNNField; + + private object itemField; + + private ServiceExecutorInformationPaymentInformation[] paymentInformationField; + + private string mailingAddressField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("Entpr", typeof(FIOType), Order=1)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(ServiceExecutorInformationLegal), Order=1)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("PaymentInformation", Order=2)] + public ServiceExecutorInformationPaymentInformation[] PaymentInformation + { + get + { + return this.paymentInformationField; + } + set + { + this.paymentInformationField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + public string MailingAddress + { + get + { + return this.mailingAddressField; + } + set + { + this.mailingAddressField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class ServiceExecutorInformationLegal + { + + private string kPPField; + + private string nameField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public string Name + { + get + { + return this.nameField; + } + set + { + this.nameField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class ServiceExecutorInformationPaymentInformation : PaymentInformationExportType + { + + private string paymentInformationGuidField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=0)] + public string PaymentInformationGuid + { + get + { + return this.paymentInformationGuidField; + } + set + { + this.paymentInformationGuidField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public Hcs.Service.Async.Payments.getStateRequest getStateRequest; + + public getStateRequest1() + { + } + + public getStateRequest1(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.getStateRequest getStateRequest) + { + this.RequestHeader = RequestHeader; + this.getStateRequest = getStateRequest; + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class getStateResponse + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.ResultHeader ResultHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", Order=0)] + public Hcs.Service.Async.Payments.getStateResult getStateResult; + + public getStateResponse() + { + } + + public getStateResponse(Hcs.Service.Async.Payments.ResultHeader ResultHeader, Hcs.Service.Async.Payments.getStateResult getStateResult) + { + this.ResultHeader = ResultHeader; + this.getStateResult = getStateResult; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class exportPaymentDocumentDetailsRequest : BaseType + { + + private object[] itemsField; + + private ItemsChoiceType8[] itemsElementNameField; + + private exportPaymentDocumentDetailsRequestAmountRequired amountRequiredField; + + private string versionField; + + /// + [System.Xml.Serialization.XmlElementAttribute("AccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("UnifiedAccountNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Month", typeof(int), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Year", typeof(short), Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentNumber", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=0)] + [System.Xml.Serialization.XmlElementAttribute("FIASHouseGuid", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialApartment", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("NonResidentialBlock", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlock", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialBlockRoom", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremise", typeof(string), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("ResidentialPremiseRoom", typeof(string), Order=0)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")] + public object[] Items + { + get + { + return this.itemsField; + } + set + { + this.itemsField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ItemsElementName", Order=1)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemsChoiceType8[] ItemsElementName + { + get + { + return this.itemsElementNameField; + } + set + { + this.itemsElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=2)] + public exportPaymentDocumentDetailsRequestAmountRequired AmountRequired + { + get + { + return this.amountRequiredField; + } + set + { + this.amountRequiredField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", IncludeInSchema=false)] + public enum ItemsChoiceType8 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:AccountNumber")] + AccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:UnifiedAccountNumber")] + UnifiedAccountNumber, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Month")] + Month, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/base/:Year")] + Year, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentNumber")] + PaymentDocumentNumber, + + /// + FIASHouseGuid, + + /// + NonResidentialApartment, + + /// + NonResidentialBlock, + + /// + ResidentialBlock, + + /// + ResidentialBlockRoom, + + /// + ResidentialPremise, + + /// + ResidentialPremiseRoom, + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class exportPaymentDocumentDetailsRequestAmountRequired + { + + private object itemField; + + /// + [System.Xml.Serialization.XmlElementAttribute("Individual", typeof(Individual), Order=0)] + [System.Xml.Serialization.XmlElementAttribute("Legal", typeof(exportPaymentDocumentDetailsRequestAmountRequiredLegal), Order=0)] + public object Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class Individual : FIOType + { + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class exportPaymentDocumentDetailsRequestAmountRequiredLegal + { + + private string iNNField; + + private string kPPField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=0)] + public string INN + { + get + { + return this.iNNField; + } + set + { + this.iNNField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/organizations-base/", Order=1)] + public string KPP + { + get + { + return this.kPPField; + } + set + { + this.kPPField = value; + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class exportPaymentDocumentDetailsRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", Order=0)] + public Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest exportPaymentDocumentDetailsRequest; + + public exportPaymentDocumentDetailsRequest1() + { + } + + public exportPaymentDocumentDetailsRequest1(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest exportPaymentDocumentDetailsRequest) + { + this.RequestHeader = RequestHeader; + this.exportPaymentDocumentDetailsRequest = exportPaymentDocumentDetailsRequest; + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importSupplierNotificationsOfOrderExecutionRequest : BaseType + { + + private importSupplierNotificationsOfOrderExecutionRequestSupplierNotificationOfOrderExecution[] supplierNotificationOfOrderExecutionField; + + private string versionField; + + public importSupplierNotificationsOfOrderExecutionRequest() + { + this.versionField = "10.0.1.1"; + } + + /// + [System.Xml.Serialization.XmlElementAttribute("SupplierNotificationOfOrderExecution", Order=0)] + public importSupplierNotificationsOfOrderExecutionRequestSupplierNotificationOfOrderExecution[] SupplierNotificationOfOrderExecution + { + get + { + return this.supplierNotificationOfOrderExecutionField; + } + set + { + this.supplierNotificationOfOrderExecutionField = value; + } + } + + /// + [System.Xml.Serialization.XmlAttributeAttribute(Form=System.Xml.Schema.XmlSchemaForm.Qualified, Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public string version + { + get + { + return this.versionField; + } + set + { + this.versionField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class importSupplierNotificationsOfOrderExecutionRequestSupplierNotificationOfOrderExecution : SupplierNotificationOfOrderExecutionType + { + + private string transportGUIDField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public string TransportGUID + { + get + { + return this.transportGUIDField; + } + set + { + this.transportGUIDField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class SupplierNotificationOfOrderExecutionType + { + + private System.DateTime orderDateField; + + private SupplierNotificationOfOrderExecutionTypeOrderPeriod orderPeriodField; + + private string itemField; + + private ItemChoiceType1 itemElementNameField; + + private decimal amountField; + + private bool onlinePaymentField; + + private bool onlinePaymentFieldSpecified; + + public SupplierNotificationOfOrderExecutionType() + { + this.onlinePaymentField = true; + } + + /// + [System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=0)] + public System.DateTime OrderDate + { + get + { + return this.orderDateField; + } + set + { + this.orderDateField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=1)] + public SupplierNotificationOfOrderExecutionTypeOrderPeriod OrderPeriod + { + get + { + return this.orderPeriodField; + } + set + { + this.orderPeriodField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute("ServiceID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/account-base/", Order=2)] + [System.Xml.Serialization.XmlElementAttribute("PaymentDocumentID", typeof(string), Namespace="http://dom.gosuslugi.ru/schema/integration/bills-base/", Order=2)] + [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")] + public string Item + { + get + { + return this.itemField; + } + set + { + this.itemField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=3)] + [System.Xml.Serialization.XmlIgnoreAttribute()] + public ItemChoiceType1 ItemElementName + { + get + { + return this.itemElementNameField; + } + set + { + this.itemElementNameField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=4)] + public decimal Amount + { + get + { + return this.amountField; + } + set + { + this.amountField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Order=5)] + public bool OnlinePayment + { + get + { + return this.onlinePaymentField; + } + set + { + this.onlinePaymentField = value; + } + } + + /// + [System.Xml.Serialization.XmlIgnoreAttribute()] + public bool OnlinePaymentSpecified + { + get + { + return this.onlinePaymentFieldSpecified; + } + set + { + this.onlinePaymentFieldSpecified = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://dom.gosuslugi.ru/schema/integration/payment/")] + public partial class SupplierNotificationOfOrderExecutionTypeOrderPeriod + { + + private int monthField; + + private short yearField; + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=0)] + public int Month + { + get + { + return this.monthField; + } + set + { + this.monthField = value; + } + } + + /// + [System.Xml.Serialization.XmlElementAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/", Order=1)] + public short Year + { + get + { + return this.yearField; + } + set + { + this.yearField = value; + } + } + } + + /// + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", IncludeInSchema=false)] + public enum ItemChoiceType1 + { + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/account-base/:ServiceID")] + ServiceID, + + /// + [System.Xml.Serialization.XmlEnumAttribute("http://dom.gosuslugi.ru/schema/integration/bills-base/:PaymentDocumentID")] + PaymentDocumentID, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + [System.ServiceModel.MessageContractAttribute(IsWrapped=false)] + public partial class importSupplierNotificationsOfOrderExecutionRequest1 + { + + [System.ServiceModel.MessageHeaderAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/base/")] + public Hcs.Service.Async.Payments.RequestHeader RequestHeader; + + [System.ServiceModel.MessageBodyMemberAttribute(Namespace="http://dom.gosuslugi.ru/schema/integration/payment/", Order=0)] + public Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest importSupplierNotificationsOfOrderExecutionRequest; + + public importSupplierNotificationsOfOrderExecutionRequest1() + { + } + + public importSupplierNotificationsOfOrderExecutionRequest1(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest importSupplierNotificationsOfOrderExecutionRequest) + { + this.RequestHeader = RequestHeader; + this.importSupplierNotificationsOfOrderExecutionRequest = importSupplierNotificationsOfOrderExecutionRequest; + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public interface PaymentPortsTypeAsyncChannel : Hcs.Service.Async.Payments.PaymentPortsTypeAsync, System.ServiceModel.IClientChannel + { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "8.0.0")] + public partial class PaymentPortsTypeAsyncClient : System.ServiceModel.ClientBase, Hcs.Service.Async.Payments.PaymentPortsTypeAsync + { + + /// + /// Реализуйте этот разделяемый метод для настройки конечной точки службы. + /// + /// Настраиваемая конечная точка + /// Учетные данные клиента. + static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials); + + public PaymentPortsTypeAsyncClient() : + base(PaymentPortsTypeAsyncClient.GetDefaultBinding(), PaymentPortsTypeAsyncClient.GetDefaultEndpointAddress()) + { + this.Endpoint.Name = EndpointConfiguration.PaymentPortAsync.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public PaymentPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration) : + base(PaymentPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), PaymentPortsTypeAsyncClient.GetEndpointAddress(endpointConfiguration)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public PaymentPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : + base(PaymentPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress)) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public PaymentPortsTypeAsyncClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : + base(PaymentPortsTypeAsyncClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress) + { + this.Endpoint.Name = endpointConfiguration.ToString(); + ConfigureEndpoint(this.Endpoint, this.ClientCredentials); + } + + public PaymentPortsTypeAsyncClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(binding, remoteAddress) + { + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Payments.PaymentPortsTypeAsync.importNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest1 request) + { + return base.Channel.importNotificationsOfOrderExecutionAsync(request); + } + + public System.Threading.Tasks.Task importNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest importNotificationsOfOrderExecutionRequest) + { + Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest1 inValue = new Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importNotificationsOfOrderExecutionRequest = importNotificationsOfOrderExecutionRequest; + return ((Hcs.Service.Async.Payments.PaymentPortsTypeAsync)(this)).importNotificationsOfOrderExecutionAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Payments.PaymentPortsTypeAsync.importNotificationsOfOrderExecutionCancellationAsync(Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest1 request) + { + return base.Channel.importNotificationsOfOrderExecutionCancellationAsync(request); + } + + public System.Threading.Tasks.Task importNotificationsOfOrderExecutionCancellationAsync(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest importNotificationsOfOrderExecutionCancellationRequest) + { + Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest1 inValue = new Hcs.Service.Async.Payments.importNotificationsOfOrderExecutionCancellationRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importNotificationsOfOrderExecutionCancellationRequest = importNotificationsOfOrderExecutionCancellationRequest; + return ((Hcs.Service.Async.Payments.PaymentPortsTypeAsync)(this)).importNotificationsOfOrderExecutionCancellationAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Payments.PaymentPortsTypeAsync.getStateAsync(Hcs.Service.Async.Payments.getStateRequest1 request) + { + return base.Channel.getStateAsync(request); + } + + public System.Threading.Tasks.Task getStateAsync(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.getStateRequest getStateRequest) + { + Hcs.Service.Async.Payments.getStateRequest1 inValue = new Hcs.Service.Async.Payments.getStateRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.getStateRequest = getStateRequest; + return ((Hcs.Service.Async.Payments.PaymentPortsTypeAsync)(this)).getStateAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Payments.PaymentPortsTypeAsync.exportPaymentDocumentDetailsAsync(Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest1 request) + { + return base.Channel.exportPaymentDocumentDetailsAsync(request); + } + + public System.Threading.Tasks.Task exportPaymentDocumentDetailsAsync(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest exportPaymentDocumentDetailsRequest) + { + Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest1 inValue = new Hcs.Service.Async.Payments.exportPaymentDocumentDetailsRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.exportPaymentDocumentDetailsRequest = exportPaymentDocumentDetailsRequest; + return ((Hcs.Service.Async.Payments.PaymentPortsTypeAsync)(this)).exportPaymentDocumentDetailsAsync(inValue); + } + + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)] + System.Threading.Tasks.Task Hcs.Service.Async.Payments.PaymentPortsTypeAsync.importSupplierNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest1 request) + { + return base.Channel.importSupplierNotificationsOfOrderExecutionAsync(request); + } + + public System.Threading.Tasks.Task importSupplierNotificationsOfOrderExecutionAsync(Hcs.Service.Async.Payments.RequestHeader RequestHeader, Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest importSupplierNotificationsOfOrderExecutionRequest) + { + Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest1 inValue = new Hcs.Service.Async.Payments.importSupplierNotificationsOfOrderExecutionRequest1(); + inValue.RequestHeader = RequestHeader; + inValue.importSupplierNotificationsOfOrderExecutionRequest = importSupplierNotificationsOfOrderExecutionRequest; + return ((Hcs.Service.Async.Payments.PaymentPortsTypeAsync)(this)).importSupplierNotificationsOfOrderExecutionAsync(inValue); + } + + public virtual System.Threading.Tasks.Task OpenAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen)); + } + + #if !NET6_0_OR_GREATER + public virtual System.Threading.Tasks.Task CloseAsync() + { + return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose)); + } + #endif + + private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.PaymentPortAsync)) + { + System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding(); + result.MaxBufferSize = int.MaxValue; + result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max; + result.MaxReceivedMessageSize = int.MaxValue; + result.AllowCookies = true; + result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport; + return result; + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration) + { + if ((endpointConfiguration == EndpointConfiguration.PaymentPortAsync)) + { + return new System.ServiceModel.EndpointAddress("https://api.dom.gosuslugi.ru/ext-bus-payment-service/services/PaymentAsync"); + } + throw new System.InvalidOperationException(string.Format("Не удалось найти конечную точку с именем \"{0}\".", endpointConfiguration)); + } + + private static System.ServiceModel.Channels.Binding GetDefaultBinding() + { + return PaymentPortsTypeAsyncClient.GetBindingForEndpoint(EndpointConfiguration.PaymentPortAsync); + } + + private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress() + { + return PaymentPortsTypeAsyncClient.GetEndpointAddress(EndpointConfiguration.PaymentPortAsync); + } + + public enum EndpointConfiguration + { + + PaymentPortAsync, + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn18BitCharString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn18BitCharString.cs new file mode 100644 index 0000000..f5e2e65 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn18BitCharString.cs @@ -0,0 +1,21 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn18BitCharString : Asn1CharString + { + public const int BitsPerCharA = 8; + public const int BitsPerCharU = 7; + + protected internal Asn18BitCharString(short typeCode) + : base(typeCode) + { + } + + protected internal Asn18BitCharString(string data, short typeCode) + : base(data, typeCode) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeBuffer.cs new file mode 100644 index 0000000..c4abc3f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeBuffer.cs @@ -0,0 +1,400 @@ +using GostCryptography.Properties; +using System; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerDecodeBuffer : Asn1DecodeBuffer + { + private readonly IntHolder _lenHolder; + private readonly Asn1Tag _tagHolder; + + private Asn1Tag _lastParsedTag; + private MemoryStream _openTypeCaptureBuffer; + private MemoryStream _parserCaptureBuffer; + + public Asn1BerDecodeBuffer(byte[] msgdata) + : base(msgdata) + { + _tagHolder = new Asn1Tag(); + _lenHolder = new IntHolder(); + } + + public Asn1BerDecodeBuffer(Stream inputStream) + : base(inputStream) + { + _tagHolder = new Asn1Tag(); + _lenHolder = new IntHolder(); + } + + public virtual Asn1Tag LastTag + { + get { return _lastParsedTag; } + } + + public static int CalcIndefLen(byte[] data, int offset, int len) + { + Asn1BerDecodeBuffer buffer; + + if ((offset == 0) && (len == data.Length)) + { + buffer = new Asn1BerDecodeBuffer(data); + } + else + { + var destinationArray = new byte[len]; + Array.Copy(data, offset, destinationArray, 0, len); + buffer = new Asn1BerDecodeBuffer(destinationArray); + } + + var tag = new Asn1Tag(); + var num = buffer.DecodeTagAndLength(tag); + + if (num == Asn1Status.IndefiniteLength) + { + var num2 = 1; + num = 0; + + while (num2 > 0) + { + var byteCount = buffer.ByteCount; + var num4 = buffer.DecodeTagAndLength(tag); + num += buffer.ByteCount - byteCount; + + if (num4 > 0) + { + buffer.Skip(num4); + num += num4; + } + else + { + if (num4 == Asn1Status.IndefiniteLength) + { + num2++; + continue; + } + if (tag.IsEoc() && (num4 == 0)) + { + num2--; + } + } + } + } + + return num; + } + + public virtual int DecodeLength() + { + var num3 = 0; + var num2 = Read(); + + if (num2 < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + if (num2 <= 0x80) + { + if (num2 == 0x80) + { + return Asn1Status.IndefiniteLength; + } + + return num2; + } + + var num = num2 & 0x7f; + + if (num > 4) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + while (num > 0) + { + num2 = Read(); + + if (num2 < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + num3 = (num3 * 0x100) + num2; + num--; + } + + return num3; + } + + public virtual byte[] DecodeOpenType() + { + return DecodeOpenType(true); + } + + public virtual byte[] DecodeOpenType(bool saveData) + { + if (saveData) + { + if (_openTypeCaptureBuffer == null) + { + _openTypeCaptureBuffer = new MemoryStream(0x100); + } + else + { + _openTypeCaptureBuffer.Seek(0L, SeekOrigin.Begin); + _openTypeCaptureBuffer.SetLength(0L); + } + + AddCaptureBuffer(_openTypeCaptureBuffer); + } + + DecodeOpenTypeElement(_tagHolder, _lenHolder, saveData); + + if (saveData) + { + var buffer = _openTypeCaptureBuffer.ToArray(); + RemoveCaptureBuffer(_openTypeCaptureBuffer); + return buffer; + } + + return null; + } + + private void DecodeOpenTypeElement(Asn1Tag tag, IntHolder len, bool saveData) + { + var nbytes = DecodeTagAndLength(tag); + var byteCount = base.ByteCount; + + if (nbytes > 0) + { + if (saveData) + { + Capture(nbytes); + } + else + { + Skip(nbytes); + } + } + else if (nbytes == Asn1Status.IndefiniteLength) + { + MovePastEoc(saveData); + } + + len.Value = base.ByteCount - byteCount; + } + + public virtual void DecodeTag(Asn1Tag tag) + { + var num = Read(); + + if (num < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + tag.Class = (short)(num & 0xc0); + tag.Form = (short)(num & 0x20); + tag.IdCode = num & 0x1f; + + if (tag.IdCode == 0x1f) + { + var num2 = 0L; + var num3 = 0; + + do + { + num = Read(); + + if (num < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + num2 = (num2 * 0x80L) + (num & 0x7f); + + if ((num2 > 0x7fffffffL) || (num3++ > 8)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidTagValue); + } + + } + while ((num & 0x80) != 0); + + tag.IdCode = (int)num2; + } + + _lastParsedTag = tag; + } + + public virtual int DecodeTagAndLength(Asn1Tag tag) + { + DecodeTag(tag); + return DecodeLength(); + } + + public virtual bool MatchTag(Asn1Tag tag) + { + return MatchTag(tag.Class, tag.Form, tag.IdCode, null, null); + } + + public virtual bool MatchTag(Asn1Tag tag, Asn1Tag parsedTag, IntHolder parsedLen) + { + return MatchTag(tag.Class, tag.Form, tag.IdCode, parsedTag, parsedLen); + } + + public virtual bool MatchTag(short tagClass, short tagForm, int tagIdCode, Asn1Tag parsedTag, IntHolder parsedLen) + { + Mark(); + + var tag = parsedTag ?? _tagHolder; + var holder = parsedLen ?? _lenHolder; + + holder.Value = DecodeTagAndLength(tag); + + if (!tag.Equals(tagClass, tagForm, tagIdCode)) + { + Reset(); + return false; + } + + return true; + } + + protected void MovePastEoc(bool saveData) + { + var tag = new Asn1Tag(); + var num = 1; + + while (num > 0) + { + var nbytes = DecodeTagAndLength(tag); + + if (nbytes > 0) + { + if (saveData) + { + Capture(nbytes); + } + else + { + Skip(nbytes); + } + } + else if (nbytes == Asn1Status.IndefiniteLength) + { + num++; + } + else if (tag.IsEoc() && (nbytes == 0)) + { + num--; + } + } + } + + public virtual void Parse(IAsn1TaggedEventHandler handler) + { + if (_parserCaptureBuffer == null) + { + RemoveCaptureBuffer(_parserCaptureBuffer); + } + + if (_parserCaptureBuffer == null) + { + _parserCaptureBuffer = new MemoryStream(0x100); + AddCaptureBuffer(_parserCaptureBuffer); + } + else + { + _parserCaptureBuffer.Seek(0L, SeekOrigin.Begin); + _parserCaptureBuffer.SetLength(0L); + } + + ParseElement(handler, _tagHolder, _lenHolder); + } + + private void ParseCons(IAsn1TaggedEventHandler handler, int len) + { + var tag2 = new Asn1Tag(); + var holder = new IntHolder(); + var byteCount = base.ByteCount; + + while (true) + { + ParseElement(handler, tag2, holder); + + if (len == Asn1Status.IndefiniteLength) + { + if (tag2.IsEoc() && (holder.Value == 0)) + { + return; + } + + continue; + } + + if ((base.ByteCount - byteCount) >= len) + { + return; + } + } + } + + private void ParseElement(IAsn1TaggedEventHandler handler, Asn1Tag tag, IntHolder len) + { + _parserCaptureBuffer.Seek(0L, SeekOrigin.Begin); + _parserCaptureBuffer.SetLength(0L); + + len.Value = DecodeTagAndLength(tag); + + if (!tag.IsEoc() || (len.Value != 0)) + { + handler.StartElement(tag, len.Value, _parserCaptureBuffer.ToArray()); + + _parserCaptureBuffer.Seek(0L, SeekOrigin.Begin); + _parserCaptureBuffer.SetLength(0L); + + if ((len.Value > 0) || (len.Value == Asn1Status.IndefiniteLength)) + { + if (tag.Constructed) + { + ParseCons(handler, len.Value); + } + else + { + ParsePrim(handler, len.Value); + } + } + + handler.EndElement(tag); + } + } + + private void ParsePrim(IAsn1TaggedEventHandler handler, int len) + { + var buffer = new byte[len]; + Read(buffer); + handler.Contents(buffer); + } + + public virtual Asn1Tag PeekTag() + { + var parsedTag = new Asn1Tag(); + PeekTag(parsedTag); + return parsedTag; + } + + public virtual void PeekTag(Asn1Tag parsedTag) + { + Mark(); + DecodeTag(parsedTag); + Reset(); + } + + public override int ReadByte() + { + return Read(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeContext.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeContext.cs new file mode 100644 index 0000000..d722fb2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerDecodeContext.cs @@ -0,0 +1,72 @@ +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerDecodeContext + { + private readonly int _decBufByteCount; + private readonly Asn1BerDecodeBuffer _decodeBuffer; + private readonly int _elemLength; + private readonly Asn1Tag _tagHolder; + + public Asn1BerDecodeContext(Asn1BerDecodeBuffer decodeBuffer, int elemLength) + { + _decodeBuffer = decodeBuffer; + _decBufByteCount = decodeBuffer.ByteCount; + _elemLength = elemLength; + _tagHolder = new Asn1Tag(); + } + + public virtual bool Expired() + { + if (_elemLength == Asn1Status.IndefiniteLength) + { + var parsedLen = new IntHolder(); + var flag = _decodeBuffer.MatchTag(0, 0, 0, null, parsedLen); + + if (flag) + { + _decodeBuffer.Reset(); + } + + return flag; + } + + var num = _decodeBuffer.ByteCount - _decBufByteCount; + + return (num >= _elemLength); + } + + public virtual bool MatchElemTag(Asn1Tag tag, IntHolder parsedLen, bool advance) + { + return MatchElemTag(tag.Class, tag.Form, tag.IdCode, parsedLen, advance); + } + + public virtual bool MatchElemTag(short tagClass, short tagForm, int tagIdCode, IntHolder parsedLen, bool advance) + { + if (Expired()) + { + return false; + } + + var flag = _decodeBuffer.MatchTag(tagClass, tagForm, tagIdCode, _tagHolder, parsedLen); + + if ((_elemLength != Asn1Status.IndefiniteLength) && (parsedLen.Value != Asn1Status.IndefiniteLength)) + { + var num = _decodeBuffer.ByteCount - _decBufByteCount; + + if ((parsedLen.Value < 0) || (parsedLen.Value > (_elemLength - num))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + } + + if (flag && !advance) + { + _decodeBuffer.Reset(); + } + + return flag; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerEncodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerEncodeBuffer.cs new file mode 100644 index 0000000..7c30475 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerEncodeBuffer.cs @@ -0,0 +1,305 @@ +using System; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerEncodeBuffer : Asn1EncodeBuffer + { + public Asn1BerEncodeBuffer() + { + ByteIndex = SizeIncrement - 1; + } + + public Asn1BerEncodeBuffer(int sizeIncrement) + : base(sizeIncrement) + { + ByteIndex = SizeIncrement - 1; + } + + public virtual MemoryStream ByteArrayInputStream + { + get + { + var index = ByteIndex + 1; + return new MemoryStream(Data, index, Data.Length - index); + } + } + + public override byte[] MsgCopy + { + get + { + var sourceIndex = ByteIndex + 1; + var length = Data.Length - sourceIndex; + var destinationArray = new byte[length]; + + Array.Copy(Data, sourceIndex, destinationArray, 0, length); + + return destinationArray; + } + } + + public override int MsgLength + { + get + { + var num = ByteIndex + 1; + return (Data.Length - num); + } + } + + public virtual void BinDump() + { + BinDump(null); + } + + public override void BinDump(StreamWriter outs, string varName) + { + var buffer = new Asn1BerDecodeBuffer(ByteArrayInputStream); + + try + { + buffer.Parse(new Asn1BerMessageDumpHandler(outs)); + } + catch (Exception exception) + { + Console.Out.WriteLine(exception.Message); + Console.Error.Write(exception.StackTrace); + Console.Error.Flush(); + } + } + + protected internal override void CheckSize(int bytesRequired) + { + if (bytesRequired > (ByteIndex + 1)) + { + var num = ((bytesRequired - 1) / SizeIncrement) + 1; + var num2 = num * SizeIncrement; + var destinationArray = new byte[Data.Length + num2]; + var destinationIndex = (ByteIndex + num2) + 1; + var length = Data.Length - (ByteIndex + 1); + + Array.Copy(Data, ByteIndex + 1, destinationArray, destinationIndex, length); + + Data = destinationArray; + ByteIndex = destinationIndex - 1; + } + } + + public override void Copy(byte data) + { + if (ByteIndex < 0) + { + CheckSize(1); + } + + Data[ByteIndex--] = data; + } + + public override void Copy(byte[] data) + { + CheckSize(data.Length); + ByteIndex -= data.Length; + + Array.Copy(data, 0, Data, ByteIndex + 1, data.Length); + } + + public virtual void Copy(string data) + { + var length = data.Length; + CheckSize(length); + ByteIndex -= length; + + for (var i = 0; i < length; ++i) + { + Data[(ByteIndex + i) + 1] = (byte)data[i]; + } + } + + public virtual void Copy(byte[] data, int startOffset, int length) + { + CheckSize(length); + ByteIndex -= length; + + Array.Copy(data, startOffset, Data, ByteIndex + 1, length); + } + + public virtual int EncodeIdentifier(int ident) + { + var flag = true; + var num = 0; + var num2 = ident; + + do + { + if (ByteIndex < 0) + { + CheckSize(1); + } + + Data[ByteIndex] = (byte)(num2 % 0x80); + + if (!flag) + { + Data[ByteIndex] = (byte)(Data[ByteIndex] | 0x80); + } + else + { + flag = false; + } + + ByteIndex--; + num2 /= 0x80; + num++; + + } + while (num2 > 0); + + return num; + } + + public virtual int EncodeIntValue(long ivalue) + { + long num2; + long num = ivalue; + + var num3 = 0; + + do + { + num2 = num % 0x100L; + num /= 0x100L; + + if ((num < 0L) && (num2 != 0L)) + { + num -= 1L; + } + + Copy((byte)num2); + + num3++; + } + while ((num != 0L) && (num != -1L)); + + if ((ivalue > 0L) && ((num2 & 0x80L) == 0x80L)) + { + Copy(0); + num3++; + return num3; + } + + if ((ivalue < 0L) && ((num2 & 0x80L) == 0L)) + { + Copy(0xff); + num3++; + } + + return num3; + } + + public virtual int EncodeLength(int len) + { + var num = 0; + + bool flag; + + if (len >= 0) + { + flag = len > 0x7f; + + var num2 = len; + + do + { + if (ByteIndex < 0) + { + CheckSize(1); + } + + Data[ByteIndex--] = (byte)(num2 % 0x100); + num++; + num2 /= 0x100; + } + while (num2 > 0); + } + else + { + flag = len == Asn1Status.IndefiniteLength; + } + + if (flag) + { + if (ByteIndex < 0) + { + CheckSize(1); + } + + Data[ByteIndex--] = (byte)(num | 0x80); + num++; + } + + return num; + } + + public virtual int EncodeTag(Asn1Tag tag) + { + var num = (byte)(((byte)tag.Class) | ((byte)tag.Form)); + var num2 = 0; + + if (tag.IdCode < 0x1f) + { + Copy((byte)(num | tag.IdCode)); + num2++; + return num2; + } + + num2 += EncodeIdentifier(tag.IdCode); + Copy((byte)(num | 0x1f)); + num2++; + + return num2; + } + + public virtual int EncodeTagAndLength(Asn1Tag tag, int len) + { + return (EncodeLength(len) + EncodeTag(tag)); + } + + public virtual int EncodeTagAndLength(short tagClass, short tagForm, int tagIdCode, int len) + { + var tag = new Asn1Tag(tagClass, tagForm, tagIdCode); + return EncodeTagAndLength(tag, len); + } + + public override Stream GetInputStream() + { + return ByteArrayInputStream; + } + + public override void Reset() + { + ByteIndex = Data.Length - 1; + } + + public override string ToString() + { + var num = ByteIndex + 1; + var num2 = Data.Length - num; + var str = new StringBuilder("").ToString(); + + for (var i = 0; i < num2; ++i) + { + str = str + Asn1Util.ToHexString(Data[i + num]); + } + + return str; + } + + public override void Write(Stream outs) + { + var offset = ByteIndex + 1; + outs.Write(Data, offset, Data.Length - offset); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerInputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerInputStream.cs new file mode 100644 index 0000000..ea16aa9 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerInputStream.cs @@ -0,0 +1,41 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerInputStream : Asn1BerDecodeBuffer, IAsn1InputStream + { + public Asn1BerInputStream(Stream inputStream) + : base(inputStream) + { + } + + public virtual int Available() + { + var inputStream = GetInputStream(); + + if (inputStream != null) + { + var num = inputStream.Length - inputStream.Position; + return (int)num; + } + + return 0; + } + + public virtual void Close() + { + var inputStream = GetInputStream(); + + if (inputStream != null) + { + inputStream.Close(); + } + } + + public virtual bool MarkSupported() + { + var inputStream = GetInputStream(); + return ((inputStream != null) && inputStream.CanSeek); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerMessageDumpHandler.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerMessageDumpHandler.cs new file mode 100644 index 0000000..fd37fb7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerMessageDumpHandler.cs @@ -0,0 +1,135 @@ +using System; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerMessageDumpHandler : IAsn1TaggedEventHandler + { + private const int MaxBytesPerLine = 12; + + private int _offset; + private readonly StreamWriter _printStream; + + public Asn1BerMessageDumpHandler() + { + _printStream = new StreamWriter(Console.OpenStandardOutput()) { AutoFlush = true }; + _offset = 0; + } + + public Asn1BerMessageDumpHandler(StreamWriter outs) + { + _printStream = outs; + _offset = 0; + } + + public virtual void Contents(byte[] data) + { + if (data.Length != 0) + { + PrintOffset(); + + var flag = true; + var builder = new StringBuilder(100); + var builder2 = new StringBuilder(100); + + for (var i = 0; i < data.Length; ++i) + { + builder.Append(Asn1Util.ToHexString(data[i])); + builder.Append(' '); + + int num2 = data[i]; + + if ((num2 >= 0x20) && (num2 <= 0x7f)) + { + builder2.Append((char)num2); + } + else + { + builder2.Append('.'); + } + + if (((i + 1) % MaxBytesPerLine) == 0) + { + if (!flag) + { + _printStream.Write(" : "); + } + else + { + flag = false; + } + + _printStream.WriteLine(builder + ": " + builder2); + + builder.Length = 0; + builder2.Length = 0; + } + } + + if (builder.Length > 0) + { + while (builder.Length < 0x24) + { + builder.Append(' '); + } + + if (!flag) + { + _printStream.Write(" : "); + } + + _printStream.WriteLine(builder + ": " + builder2); + } + + _offset += data.Length; + } + } + + public virtual void EndElement(Asn1Tag tag) + { + } + + public virtual void StartElement(Asn1Tag tag, int len, byte[] tagLenBytes) + { + PrintOffset(); + + new StringBuilder(40); // WTF? + + var index = 0; + + while (index < tagLenBytes.Length) + { + _printStream.Write(Asn1Util.ToHexString(tagLenBytes[index])); + _printStream.Write(' '); + index++; + } + + while (index < MaxBytesPerLine) + { + _printStream.Write(" "); + index++; + } + + _printStream.Write(": "); + _printStream.Write(tag.Constructed ? "C " : "P "); + _printStream.Write(tag + " "); + _printStream.WriteLine(Convert.ToString(len)); + _offset += tagLenBytes.Length; + } + + private void PrintOffset() + { + var str = Convert.ToString(_offset); + var num = 4 - str.Length; + + for (var i = 0; i < num; ++i) + { + _printStream.Write('0'); + } + + _printStream.Write(str); + _printStream.Write(" : "); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerOutputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerOutputStream.cs new file mode 100644 index 0000000..97fbd26 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BerOutputStream.cs @@ -0,0 +1,277 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1BerOutputStream : Asn1OutputStream + { + private static readonly byte[] Eoc = new byte[2]; + + public Asn1BerOutputStream(Stream outputStream) + : base(new BufferedStream(outputStream)) + { + } + + public Asn1BerOutputStream(Stream outputStream, int bufSize) + : base((bufSize == 0) ? outputStream : new BufferedStream(outputStream, bufSize)) + { + } + + public virtual void Encode(Asn1Type type, bool explicitTagging) + { + type.Encode(this, explicitTagging); + } + + public virtual void EncodeBitString(byte[] data, int numbits, bool explicitTagging, Asn1Tag tag) + { + if (explicitTagging) + { + EncodeTag(tag); + } + + var count = (numbits + 7) / 8; + EncodeLength(count + 1); + + var num2 = numbits % 8; + + if (num2 != 0) + { + num2 = 8 - num2; + data[count - 1] = (byte)(data[count - 1] & ((byte)~((1 << num2) - 1))); + } + + OutputStream.WriteByte((byte)num2); + + if (count > 0) + { + OutputStream.Write(data, 0, count); + } + } + + public virtual void EncodeBmpString(string data, bool explicitTagging, Asn1Tag tag) + { + if (explicitTagging) + { + EncodeTag(tag); + } + + if (data == null) + { + EncodeLength(0); + } + else + { + EncodeLength(data.Length * 2); + + var length = data.Length; + + for (var i = 0; i < length; i++) + { + var num3 = data[i]; + var num2 = num3 / 0x100; + var num = num3 % 0x100; + + OutputStream.WriteByte((byte)num2); + OutputStream.WriteByte((byte)num); + } + } + } + + public virtual void EncodeCharString(string data, bool explicitTagging, Asn1Tag tag) + { + if (explicitTagging) + { + EncodeTag(tag); + } + + if (data == null) + { + EncodeLength(0); + } + else + { + EncodeLength(data.Length); + var buffer = Asn1Util.ToByteArray(data); + OutputStream.Write(buffer, 0, buffer.Length); + } + } + + public virtual void EncodeEoc() + { + OutputStream.Write(Eoc, 0, Eoc.Length); + } + + public virtual void EncodeIdentifier(long ident) + { + var number = 0x7fL; + var identBytesCount = Asn1RunTime.GetIdentBytesCount(ident); + + number = number << (7 * identBytesCount); + + if (identBytesCount > 0) + { + while (identBytesCount > 0) + { + number = Asn1Util.UrShift(number, 7); + identBytesCount--; + + var num3 = Asn1Util.UrShift(ident & number, identBytesCount * 7); + + if (identBytesCount != 0) + { + num3 |= 0x80L; + } + + OutputStream.WriteByte((byte)num3); + } + } + else + { + OutputStream.WriteByte(0); + } + } + + public virtual void EncodeIntValue(long data, bool encodeLen) + { + long num2; + var num = data; + var buffer = new byte[9]; + var len = 0; + var length = buffer.Length; + + do + { + num2 = num % 0x100L; + num /= 0x100L; + + if ((num < 0L) && (num2 != 0L)) + { + num -= 1L; + } + + buffer[--length] = (byte)num2; + len++; + } + while ((num != 0L) && (num != -1L)); + + if ((data > 0L) && ((num2 & 0x80L) == 0x80L)) + { + buffer[--length] = 0; + len++; + } + else if ((data < 0L) && ((num2 & 0x80L) == 0L)) + { + buffer[--length] = 0xff; + len++; + } + + if (encodeLen) + { + EncodeLength(len); + } + + OutputStream.Write(buffer, length, len); + } + + public virtual void EncodeLength(int len) + { + if (len >= 0) + { + var bytesCount = Asn1Util.GetBytesCount(len); + + if (len > 0x7f) + { + OutputStream.WriteByte((byte)(bytesCount | 0x80)); + } + for (var i = (8 * bytesCount) - 8; i >= 0; i -= 8) + { + var num3 = (byte)((len >> i) & 0xff); + OutputStream.WriteByte(num3); + } + } + else if (len == Asn1Status.IndefiniteLength) + { + OutputStream.WriteByte(0x80); + } + } + + public virtual void EncodeOctetString(byte[] data, bool explicitTagging, Asn1Tag tag) + { + if (explicitTagging) + { + EncodeTag(tag); + } + if (data == null) + { + EncodeLength(0); + } + else + { + EncodeLength(data.Length); + OutputStream.Write(data, 0, data.Length); + } + } + + public virtual void EncodeTag(Asn1Tag tag) + { + var num = (byte)(((byte)tag.Class) | ((byte)tag.Form)); + if (tag.IdCode < 0x1f) + { + OutputStream.WriteByte((byte)(num | tag.IdCode)); + } + else + { + OutputStream.WriteByte((byte)(num | 0x1f)); + EncodeIdentifier(tag.IdCode); + } + } + + public virtual void EncodeTag(short tagClass, short tagForm, int tagIdCode) + { + EncodeTag(new Asn1Tag(tagClass, tagForm, tagIdCode)); + } + + public virtual void EncodeTagAndIndefLen(Asn1Tag tag) + { + EncodeTag(tag); + OutputStream.WriteByte(0x80); + } + + public virtual void EncodeTagAndIndefLen(short tagClass, short tagForm, int tagIdCode) + { + EncodeTag(new Asn1Tag(tagClass, tagForm, tagIdCode)); + OutputStream.WriteByte(0x80); + } + + public virtual void EncodeTagAndLength(Asn1Tag tag, int len) + { + EncodeTag(tag); + EncodeLength(len); + } + + public virtual void EncodeUnivString(int[] data, bool explicitTagging, Asn1Tag tag) + { + if (explicitTagging) + { + EncodeTag(tag); + } + if (data == null) + { + EncodeLength(0); + } + else + { + EncodeLength(data.Length * 4); + var length = data.Length; + + for (var i = 0; i < length; ++i) + { + var number = data[i]; + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 0x18) & 0xff)); + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 0x10) & 0xff)); + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 8) & 0xff)); + OutputStream.WriteByte((byte)(number & 0xff)); + } + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BigInteger.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BigInteger.cs new file mode 100644 index 0000000..53cad2c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BigInteger.cs @@ -0,0 +1,136 @@ +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1BigInteger : Asn1Type + { + private const int MaxBigIntLen = 0x186a0; + + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, BigIntegerTypeCode); + public static readonly BigInteger Zero = new BigInteger(); + + private BigInteger _value; + + public Asn1BigInteger() + { + _value = new BigInteger(); + } + + public Asn1BigInteger(BigInteger value) + { + _value = value; + } + + public Asn1BigInteger(string value) + { + _value = new BigInteger(value); + } + + public Asn1BigInteger(string value, int radix) + { + _value = new BigInteger(value, radix); + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var length = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + _value = DecodeValue(buffer, length); + buffer.TypeCode = 2; + } + + public BigInteger DecodeValue(Asn1DecodeBuffer buffer, int length) + { + var ivalue = new byte[length]; + + if (length > MaxBigIntLen) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1TooBigIntegerValue, length); + } + + for (var i = 0; i < length; ++i) + { + ivalue[i] = (byte)buffer.ReadByte(); + } + + var integer = new BigInteger(); + + if (length > 0) + { + integer.SetData(ivalue); + } + + return integer; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = EncodeValue(buffer, _value, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + var buffer = new Asn1BerEncodeBuffer(); + var len = EncodeValue(buffer, _value, true); + + outs.EncodeLength(len); + outs.Write(buffer.MsgCopy); + } + + private static int EncodeValue(Asn1EncodeBuffer buffer, BigInteger ivalue, bool doCopy) + { + var data = ivalue.GetData(); + var length = data.Length; + + for (var i = length - 1; i >= 0; --i) + { + if (doCopy) + { + buffer.Copy(data[i]); + } + } + + return length; + } + + public virtual bool Equals(long value) + { + return _value.Equals(value); + } + + public override bool Equals(object value) + { + var integer = value as Asn1BigInteger; + + if (integer == null) + { + return false; + } + + return _value.Equals(integer._value); + } + + public override int GetHashCode() + { + return _value.GetHashCode(); + } + + public override string ToString() + { + return _value.ToString(10); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BitString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BitString.cs new file mode 100644 index 0000000..8b6e8dd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BitString.cs @@ -0,0 +1,454 @@ +using GostCryptography.Properties; +using System; +using System.Collections; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1BitString : Asn1Type + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, BitStringTypeCode); + + [NonSerialized] + public byte[] Value; + + [NonSerialized] + public int NumBits; + + public Asn1BitString() + { + NumBits = 0; + Value = null; + } + + public Asn1BitString(bool[] bitValues) + { + AllocBitArray(bitValues.Length); + + var index = 0; + var num4 = 0x80; + var num = 0; + var num2 = 0; + + while (num < bitValues.Length) + { + if (bitValues[num]) + { + num2 |= num4; + } + + num4 = num4 >> 1; + + if (num4 == 0) + { + Value[index++] = (byte)num2; + num4 = 0x80; + num2 = 0; + } + + num++; + } + + if (num4 != 0x80) + { + Value[index] = (byte)num2; + } + } + + public Asn1BitString(BitArray bitArray) + { + AllocBitArray(bitArray.Length); + + var index = 0; + var num4 = 0x80; + var num = 0; + var num2 = 0; + + while (num < bitArray.Length) + { + if (bitArray.Get(num)) + { + num2 |= num4; + } + + num4 = num4 >> 1; + + if (num4 == 0) + { + Value[index++] = (byte)num2; + num4 = 0x80; + num2 = 0; + } + + num++; + } + + if (num4 != 0x80) + { + Value[index] = (byte)num2; + } + } + + public Asn1BitString(string value) + { + var numbits = new IntHolder(); + Value = Asn1Value.ParseString(value, numbits); + + NumBits = numbits.Value; + } + + public Asn1BitString(int numBits, byte[] data) + { + NumBits = numBits; + Value = data; + } + + private void AllocBitArray(int numbits) + { + NumBits = numbits; + + var num = (NumBits + 7) / 8; + + if ((Value == null) || (Value.Length < num)) + { + Value = new byte[num]; + } + } + + public virtual void Clear(int bitIndex) + { + this[bitIndex] = false; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + var lastTag = buffer.LastTag; + + if ((lastTag == null) || !lastTag.Constructed) + { + if (elemLength < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + if (elemLength != 0) + { + var num8 = elemLength - 1; + var num7 = buffer.Read(); + + if (num7 < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + if ((num7 < 0) || (num7 > 7)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfBitString, num7); + } + + if ((num8 == 0) && (num7 != 0)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + NumBits = (num8 * 8) - num7; + Value = new byte[num8]; + buffer.Read(Value); + } + else + { + NumBits = 0; + Value = null; + } + } + else + { + var num3 = 0; + var offset = 0; + var index = -1; + var num6 = 0; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + + while (!context.Expired()) + { + var nbytes = MatchTag(buffer, Tag); + + if (nbytes <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + num3 += nbytes; + + if (offset == 0) + { + AllocBitArray(num3 * 8); + } + else + { + ReallocBitArray(num3 * 8); + } + + index = offset; + buffer.Read(Value, offset, nbytes); + offset = num3; + } + + if (index >= 0) + { + num6 = Value[index]; + + if (((offset - index) - 1) > 0) + { + Array.Copy(Value, index + 1, Value, index, (offset - index) - 1); + } + + num3--; + } + + if ((num6 < 0) || (num6 > 7)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfBitString, num6); + } + + ReallocBitArray((num3 * 8) - num6); + + if (elemLength == Asn1Status.IndefiniteLength) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + buffer.TypeCode = 3; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var length = (NumBits + 7) / 8; + var num2 = NumBits % 8; + + if (num2 != 0) + { + num2 = 8 - num2; + Value[length - 1] = (byte)(Value[length - 1] & ((byte)~((1 << num2) - 1))); + } + + if (length != 0) + { + buffer.Copy(Value, 0, length); + } + + buffer.Copy((byte)num2); + length++; + + if (explicitTagging) + { + length += buffer.EncodeTagAndLength(Tag, length); + } + + return length; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeBitString(Value, NumBits, explicitTagging, Tag); + } + + public override bool Equals(object value) + { + var str = value as Asn1BitString; + + if (str == null) + { + return false; + } + + return Equals(str.NumBits, str.Value); + } + + public virtual bool Equals(int nbits, byte[] value) + { + if (nbits != NumBits) + { + return false; + } + + var num = ((nbits - 1) / 8) + 1; + + for (var i = 0; i < num; ++i) + { + if (value[i] != Value[i]) + { + return false; + } + } + + return true; + } + + public virtual bool Get(int bitno) + { + var index = bitno / 8; + var num2 = 1 << (7 - (bitno % 8)); + + if ((Value != null) && (Value.Length >= index)) + { + int num3 = Value[index]; + return ((num3 & num2) != 0); + } + + return false; + } + + public override int GetHashCode() + { + return (Value != null) ? Value.GetHashCode() : base.GetHashCode(); + } + + private void ReallocBitArray(int numbits) + { + NumBits = numbits; + var num = (NumBits + 7) / 8; + + if (Value.Length != num) + { + var value = Value; + Value = new byte[num]; + + if (value != null) + { + Array.Copy(value, 0, Value, 0, Math.Min(value.Length, num)); + } + } + } + + public virtual void Set(int bitIndex) + { + Set(bitIndex, true); + } + + public virtual void Set(int bitIndex, bool value) + { + var index = bitIndex / 8; + var num2 = 1 << (7 - (bitIndex % 8)); + var num3 = index + 1; + + if (Value == null) + { + Value = new byte[num3]; + } + else if (Value.Length < num3) + { + var destinationArray = new byte[num3]; + Array.Copy(Value, 0, destinationArray, 0, Value.Length); + Value = destinationArray; + } + + int num4 = Value[index]; + num4 = value ? (num4 | num2) : (num4 & ~num2); + Value[index] = (byte)num4; + + if ((bitIndex + 1) > NumBits) + { + NumBits = bitIndex + 1; + } + } + + public virtual bool[] ToBoolArray() + { + var flagArray = new bool[NumBits]; + + var num4 = 0; + var numbits = NumBits; + + foreach (var num3 in Value) + { + var num5 = 0x80; + var num = (numbits < 8) ? numbits : 8; + + for (var j = 0; j < num; ++j) + { + flagArray[num4++] = (num3 & num5) != 0; + num5 = num5 >> 1; + } + + numbits -= 8; + } + + return flagArray; + } + + public virtual string ToHexString() + { + var str = new StringBuilder("").ToString(); + + foreach (var b in Value) + { + str = str + Asn1Util.ToHexString(b); + } + + return str; + } + + public override string ToString() + { + var str = new StringBuilder("").ToString(); + + if (NumBits <= 0x10) + { + if (NumBits != 0) + { + var flagArray = ToBoolArray(); + + foreach (bool b in flagArray) + { + str = str + (b ? "1" : "0"); + } + } + + return str; + } + + var num2 = 4; + var capacity = (NumBits + 3) / 4; + var builder = new StringBuilder(capacity); + + if (Value != null) + { + var num4 = 0; + var index = 0; + + while (num4 < capacity) + { + var num6 = (Value[index] >> num2) & 15; + builder.Append((char)(num6 + ((num6 >= 10) ? 0x57 : 0x30))); + num2 -= 4; + + if (num2 < 0) + { + num2 = 4; + index++; + } + + num4++; + } + } + + return builder.ToString(); + } + + public virtual bool this[int bitIndex] + { + get { return Get(bitIndex); } + set { Set(bitIndex, value); } + } + + public override int Length + { + get { return NumBits; } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BmpString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BmpString.cs new file mode 100644 index 0000000..8fb53c8 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1BmpString.cs @@ -0,0 +1,124 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1BmpString : Asn1CharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, BmpStringTypeCode); + + public Asn1BmpString() + : base(BmpStringTypeCode) + { + } + + public Asn1BmpString(string data) + : base(data, BmpStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + var len = elemLength; + var sb = new StringBuilder(); + + var lastTag = buffer.LastTag; + + if ((lastTag == null) || !lastTag.Constructed) + { + sb.EnsureCapacity(elemLength / 2); + ReadSegment(buffer, sb, len); + } + else + { + var capacity = 0; + var context = new Asn1BerDecodeContext(buffer, elemLength); + + while (!context.Expired()) + { + var num3 = MatchTag(buffer, Asn1OctetString.Tag); + + if (num3 <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + capacity += num3; + sb.EnsureCapacity(capacity); + ReadSegment(buffer, sb, num3); + } + + if (elemLength == Asn1Status.IndefiniteLength) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + Value = sb.ToString(); + buffer.TypeCode = BmpStringTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var length = Value.Length; + + for (var i = length - 1; i >= 0; --i) + { + var num3 = Value[i]; + var num = num3 % 0x100; + var num2 = num3 / 0x100; + + buffer.Copy((byte)num); + buffer.Copy((byte)num2); + } + + length *= 2; + + if (explicitTagging) + { + length += buffer.EncodeTagAndLength(Tag, length); + } + + return length; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeBmpString(Value, explicitTagging, Tag); + } + + private static void ReadSegment(Asn1DecodeBuffer buffer, StringBuilder sb, int len) + { + if ((len % 2) != 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + while (len > 0) + { + var num = buffer.Read(); + + if (num == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + var num2 = num * 0x100; + len--; + num = buffer.Read(); + + if (num == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + num2 += num; + len--; + sb.Append((char)num2); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Boolean.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Boolean.cs new file mode 100644 index 0000000..80a2327 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Boolean.cs @@ -0,0 +1,101 @@ +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Boolean : Asn1Type + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, BooleanTypeCode); + public static readonly Asn1Boolean FalseValue = new Asn1Boolean(false); + public static readonly Asn1Boolean TrueValue = new Asn1Boolean(true); + + [NonSerialized] + public bool Value; + + public Asn1Boolean() + { + Value = false; + } + + public Asn1Boolean(bool value) + { + Value = value; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + if (explicitTagging) + { + MatchTag(buffer, Tag); + } + + var num = buffer.Read(); + + if (num < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + buffer.TypeCode = BooleanTypeCode; + Value = num != 0; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 1; + + buffer.Copy(Value ? byte.MaxValue : ((byte)0)); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeLength(1); + outs.WriteByte(Value ? -1 : 0); + } + + public virtual bool Equals(bool value) + { + return (Value == value); + } + + public override bool Equals(object value) + { + var flag = value as Asn1Boolean; + + if (flag == null) + { + return false; + } + + return (Value == flag.Value); + } + + public override int GetHashCode() + { + return Value.GetHashCode(); + } + + public override string ToString() + { + if (!Value) + { + return "FALSE"; + } + + return "TRUE"; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerInputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerInputStream.cs new file mode 100644 index 0000000..6daa3f9 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerInputStream.cs @@ -0,0 +1,12 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1CerInputStream : Asn1BerInputStream + { + public Asn1CerInputStream(Stream inputStream) + : base(inputStream) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerOutputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerOutputStream.cs new file mode 100644 index 0000000..ebf585f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CerOutputStream.cs @@ -0,0 +1,236 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1CerOutputStream : Asn1BerOutputStream + { + public Asn1CerOutputStream(Stream outputStream) + : base(outputStream) + { + } + + public Asn1CerOutputStream(Stream outputStream, int bufSize) + : base(outputStream, bufSize) + { + } + + public override void Encode(Asn1Type type, bool explicitTagging) + { + type.Encode(this, explicitTagging); + } + + public override void EncodeBitString(byte[] value, int numbits, bool explicitTagging, Asn1Tag tag) + { + if ((((numbits + 7) / 8) + 1) <= 0x3e8) + { + base.EncodeBitString(value, numbits, explicitTagging, tag); + } + else + { + if (explicitTagging) + { + EncodeTagAndIndefLen(Asn1BitString.Tag.Class, 0x20, Asn1BitString.Tag.IdCode); + } + else + { + OutputStream.WriteByte(0x80); + } + + var num = (numbits + 7) / 8; + var num2 = numbits % 8; + + if (num2 != 0) + { + num2 = 8 - num2; + value[num - 1] = (byte)(value[num - 1] & ((byte)~((1 << num2) - 1))); + } + + for (var i = 0; i < num; i += 0x3e8) + { + var len = num - i; + + if (len > 0x3e8) + { + len = 0x3e8; + EncodeTagAndLength(Asn1BitString.Tag, len); + } + else + { + EncodeTagAndLength(Asn1BitString.Tag, len + 1); + OutputStream.WriteByte((byte)num2); + } + + if (len > 0) + { + OutputStream.Write(value, i, len); + } + } + + EncodeEoc(); + } + } + + public override void EncodeBmpString(string value, bool explicitTagging, Asn1Tag tag) + { + if ((value == null) || (value.Length <= 500)) + { + base.EncodeBmpString(value, explicitTagging, tag); + } + else + { + if (explicitTagging) + { + EncodeTagAndIndefLen(Asn1BmpString.Tag.Class, 0x20, Asn1BmpString.Tag.IdCode); + } + else + { + OutputStream.WriteByte(0x80); + } + + for (var i = 0; i < value.Length; i += 500) + { + var num2 = value.Length - i; + + if (num2 > 500) + { + num2 = 500; + } + + EncodeTagAndLength(Asn1OctetString.Tag, num2 * 2); + + for (var j = 0; j < num2; j++) + { + var num5 = value[j + i]; + var num4 = num5 / 0x100; + + var num3 = num5 % 0x100; + OutputStream.WriteByte((byte)num4); + OutputStream.WriteByte((byte)num3); + } + } + + EncodeEoc(); + } + } + + public override void EncodeCharString(string value, bool explicitTagging, Asn1Tag tag) + { + if ((value == null) || (value.Length <= 0x3e8)) + { + base.EncodeCharString(value, explicitTagging, tag); + } + else + { + var data = Asn1Util.ToByteArray(value); + + if (explicitTagging) + { + EncodeTag(tag.Class, 0x20, tag.IdCode); + } + + EncodeOctetString(data, false, tag); + } + } + + public override void EncodeOctetString(byte[] value, bool explicitTagging, Asn1Tag tag) + { + if ((value == null) || (value.Length <= 0x3e8)) + { + base.EncodeOctetString(value, explicitTagging, tag); + } + else + { + if (explicitTagging) + { + EncodeTagAndIndefLen(Asn1OctetString.Tag.Class, 0x20, Asn1OctetString.Tag.IdCode); + } + else + { + OutputStream.WriteByte(0x80); + } + + for (var i = 0; i < value.Length; i += 0x3e8) + { + var len = value.Length - i; + + if (len > 0x3e8) + { + len = 0x3e8; + } + + EncodeTagAndLength(Asn1OctetString.Tag, len); + Write(value, i, len); + } + + EncodeEoc(); + } + } + + public virtual void EncodeStringTag(int nbytes, Asn1Tag tag) + { + if (nbytes <= 0x3e8) + { + EncodeTag(tag); + } + else + { + EncodeTag(tag.Class, 0x20, tag.IdCode); + } + } + + public virtual void EncodeStringTag(int nbytes, short tagClass, short tagForm, int tagIdCode) + { + if (nbytes <= 0x3e8) + { + EncodeTag(new Asn1Tag(tagClass, tagForm, tagIdCode)); + } + else + { + EncodeTag(tagClass, 0x20, tagIdCode); + } + } + + public override void EncodeUnivString(int[] value, bool explicitTagging, Asn1Tag tag) + { + if ((value == null) || (value.Length <= 250)) + { + base.EncodeUnivString(value, explicitTagging, tag); + } + else + { + if (explicitTagging) + { + EncodeTagAndIndefLen(Asn1UniversalString.Tag.Class, 0x20, Asn1UniversalString.Tag.IdCode); + } + else + { + OutputStream.WriteByte(0x80); + } + + for (var i = 0; i < value.Length; i += 250) + { + var num2 = value.Length - i; + + if (num2 > 250) + { + num2 = 250; + } + + EncodeTagAndLength(Asn1OctetString.Tag, num2 * 4); + + for (int j = 0; j < num2; j++) + { + var number = value[j + i]; + + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 0x18) & 0xff)); + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 0x10) & 0xff)); + OutputStream.WriteByte((byte)(Asn1Util.UrShift(number, 8) & 0xff)); + OutputStream.WriteByte((byte)(number & 0xff)); + } + } + + EncodeEoc(); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharRange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharRange.cs new file mode 100644 index 0000000..f80bbb3 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharRange.cs @@ -0,0 +1,46 @@ +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1CharRange : Asn1CharSet + { + private readonly int _lower; + private readonly int _upper; + + public Asn1CharRange(int lower, int upper) + : base((upper - lower) + 1) + { + _lower = lower; + _upper = upper; + } + + public override int MaxValue + { + get { return _upper; } + } + + public override int GetCharAtIndex(int index) + { + index += _lower; + + if (index > _upper) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, "Character index", index); + } + + return index; + } + + public override int GetCharIndex(int charValue) + { + var num = charValue - _lower; + + if (num < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, "Character index", charValue); + } + + return num; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharSet.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharSet.cs new file mode 100644 index 0000000..43659b3 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharSet.cs @@ -0,0 +1,35 @@ +namespace GostCryptography.Asn1.Ber +{ + public abstract class Asn1CharSet + { + private readonly int _aBitsPerChar; + private readonly int _uBitsPerChar; + + protected internal Asn1CharSet(int nchars) + { + _uBitsPerChar = Asn1Integer.GetBitCount(nchars - 1); + _aBitsPerChar = 1; + + while (_uBitsPerChar > _aBitsPerChar) + { + _aBitsPerChar = _aBitsPerChar << 1; + } + } + + public abstract int MaxValue { get; } + + public abstract int GetCharAtIndex(int index); + + public abstract int GetCharIndex(int charValue); + + public virtual int GetNumBitsPerChar(bool aligned) + { + if (!aligned) + { + return _uBitsPerChar; + } + + return _aBitsPerChar; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharString.cs new file mode 100644 index 0000000..44b319f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1CharString.cs @@ -0,0 +1,153 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1CharString : Asn1Type + { + [NonSerialized] + protected StringBuilder StringBuffer; + + [NonSerialized] + private readonly short _typeCode; + + [NonSerialized] + public string Value; + + protected internal Asn1CharString(short typeCode) + { + Value = new StringBuilder().ToString(); + _typeCode = typeCode; + } + + protected internal Asn1CharString(string data, short typeCode) + { + Value = data; + _typeCode = typeCode; + } + + public override int Length + { + get { return Value.Length; } + } + + protected virtual void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength, Asn1Tag tag) + { + int num2; + var elemLength = explicitTagging ? MatchTag(buffer, tag) : implicitLength; + var num3 = elemLength; + var num4 = 0; + + if (StringBuffer == null) + { + StringBuffer = new StringBuilder(); + } + + var lastTag = buffer.LastTag; + + if ((lastTag == null) || !lastTag.Constructed) + { + if (num3 < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + StringBuffer.Length = num3; + + while (num3 > 0) + { + num2 = buffer.Read(); + + if (num2 == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + StringBuffer[num4++] = (char)num2; + num3--; + } + } + else + { + var capacity = 0; + var context = new Asn1BerDecodeContext(buffer, elemLength); + + while (!context.Expired()) + { + var num5 = MatchTag(buffer, Asn1OctetString.Tag); + + if (num5 <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + capacity += num5; + StringBuffer.EnsureCapacity(capacity); + + while (num5 > 0) + { + num2 = buffer.Read(); + + if (num2 == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + StringBuffer.Append((char)num2); + num5--; + } + } + + if (elemLength == Asn1Status.IndefiniteLength) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + Value = StringBuffer.ToString(); + buffer.TypeCode = (short)tag.IdCode; + } + + protected virtual int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging, Asn1Tag tag) + { + var length = Value.Length; + buffer.Copy(Value); + + if (explicitTagging) + { + length += buffer.EncodeTagAndLength(tag, length); + } + + return length; + } + + public override bool Equals(object value) + { + var str = value as Asn1CharString; + + if (str == null) + { + return false; + } + + return Equals(str.Value); + } + + public bool Equals(string value) + { + return Value.Equals(value); + } + + public override int GetHashCode() + { + return (Value != null) ? Value.GetHashCode() : base.GetHashCode(); + } + + public override string ToString() + { + return Value; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Choice.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Choice.cs new file mode 100644 index 0000000..435e9ef --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Choice.cs @@ -0,0 +1,52 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1Choice : Asn1Type + { + [NonSerialized] + private int _choiceId; + + [NonSerialized] + protected Asn1Type Element; + + public virtual int ChoiceId => _choiceId; + + public abstract string ElemName { get; } + + public virtual Asn1Type GetElement() + { + return Element; + } + + public virtual void SetElement(int choiceId, Asn1Type element) + { + _choiceId = choiceId; + + Element = element; + } + + public override bool Equals(object value) + { + var choice = value as Asn1Choice; + + if (choice == null) + { + return false; + } + + if (_choiceId != choice._choiceId) + { + return false; + } + + return Element.Equals(choice.Element); + } + + public override int GetHashCode() + { + return Element?.GetHashCode() ?? base.GetHashCode(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ChoiceExt.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ChoiceExt.cs new file mode 100644 index 0000000..c2c54f4 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ChoiceExt.cs @@ -0,0 +1,23 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1ChoiceExt : Asn1OpenType + { + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + base.Decode(buffer, false, 0); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return base.Encode(buffer, false); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + base.Encode(outs, false); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DecodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DecodeBuffer.cs new file mode 100644 index 0000000..92f9042 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DecodeBuffer.cs @@ -0,0 +1,325 @@ +using GostCryptography.Properties; +using System; +using System.Collections; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public abstract class Asn1DecodeBuffer : Asn1MessageBuffer + { + private readonly ArrayList _captureBufferList; + private int _byteCount; + private Stream _inputStream; + private long _markedPosition; + private ArrayList _namedEventHandlerList; + private int _savedByteCount; + private short _typeCode; + private int[] _oidBuffer; + + protected Asn1DecodeBuffer(byte[] msgdata) + { + _namedEventHandlerList = new ArrayList(); + _captureBufferList = new ArrayList(5); + + SetInputStream(msgdata, 0, msgdata.Length); + } + + protected Asn1DecodeBuffer(Stream inputStream) + { + _namedEventHandlerList = new ArrayList(); + _captureBufferList = new ArrayList(5); + + _inputStream = inputStream.CanSeek ? inputStream : new BufferedStream(inputStream); + + Init(); + } + + public virtual int ByteCount + { + get { return _byteCount; } + } + + public virtual Asn1DecodeBuffer EventHandlerList + { + set { _namedEventHandlerList = value._namedEventHandlerList; } + } + + public virtual short TypeCode + { + set { _typeCode = value; } + } + + public virtual void AddCaptureBuffer(MemoryStream buffer) + { + _captureBufferList.Add(buffer); + } + + public virtual void AddNamedEventHandler(IAsn1NamedEventHandler handler) + { + _namedEventHandlerList.Add(handler); + } + + public virtual void Capture(int nbytes) + { + for (var i = 0; i < nbytes; i++) + { + var num = _inputStream.ReadByte(); + + if (num == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + foreach (MemoryStream s in _captureBufferList) + { + s.WriteByte((byte)num); + } + + _byteCount++; + } + } + + public virtual long DecodeIntValue(int length, bool signExtend) + { + return Asn1RunTime.DecodeIntValue(this, length, signExtend); + } + + public virtual int[] DecodeOidContents(int llen) + { + var index = 0; + + if (_oidBuffer == null) + { + _oidBuffer = new int[0x80]; + } + + while (llen > 0) + { + int num; + + if (index >= 0x80) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidObjectIdException); + } + + _oidBuffer[index] = 0; + + do + { + num = ReadByte(); + _oidBuffer[index] = (_oidBuffer[index] * 0x80) + (num & 0x7f); + llen--; + } + while ((num & 0x80) != 0); + + if (index == 0) + { + var num3 = _oidBuffer[0]; + + _oidBuffer[0] = ((num3 / 40) >= 2) ? 2 : (num3 / 40); + _oidBuffer[1] = (_oidBuffer[0] == 2) ? (num3 - 80) : (num3 % 40); + + index = 2; + } + else + { + index++; + } + } + + if (llen != 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + var destinationArray = new int[index]; + Array.Copy(_oidBuffer, 0, destinationArray, 0, index); + return destinationArray; + } + + public virtual int[] DecodeRelOidContents(int llen) + { + var index = 0; + + if (_oidBuffer == null) + { + _oidBuffer = new int[0x80]; + } + + while (llen > 0) + { + int num; + + if (index >= 0x80) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidObjectIdException); + } + + _oidBuffer[index] = 0; + + do + { + num = ReadByte(); + _oidBuffer[index] = (_oidBuffer[index] * 0x80) + (num & 0x7f); + llen--; + } + while ((num & 0x80) != 0); + + index++; + } + + if (llen != 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + var destinationArray = new int[index]; + Array.Copy(_oidBuffer, 0, destinationArray, 0, index); + return destinationArray; + } + + public override Stream GetInputStream() + { + return _inputStream; + } + + public virtual void HexDump() + { + HexDump(_inputStream); + } + + protected virtual void Init() + { + _byteCount = 0; + _markedPosition = 0L; + _savedByteCount = 0; + } + + public virtual void InvokeCharacters(string svalue) + { + var enumerator = _namedEventHandlerList.GetEnumerator(); + + while (enumerator.MoveNext()) + { + ((IAsn1NamedEventHandler)enumerator.Current).Characters(svalue, _typeCode); + } + } + + public virtual void InvokeEndElement(string name, int index) + { + var enumerator = _namedEventHandlerList.GetEnumerator(); + + while (enumerator.MoveNext()) + { + ((IAsn1NamedEventHandler)enumerator.Current).EndElement(name, index); + } + } + + public virtual void InvokeStartElement(string name, int index) + { + var enumerator = _namedEventHandlerList.GetEnumerator(); + + while (enumerator.MoveNext()) + { + ((IAsn1NamedEventHandler)enumerator.Current).StartElement(name, index); + } + } + + public virtual void Mark() + { + _savedByteCount = _byteCount; + _markedPosition = _inputStream.Position; + } + + public virtual int Read() + { + var num = _inputStream.ReadByte(); + + if (num == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + foreach (MemoryStream s in _captureBufferList) + { + s.WriteByte((byte)num); + } + + _byteCount++; + + return num; + } + + public virtual void Read(byte[] buffer) + { + Read(buffer, 0, buffer.Length); + } + + public virtual void Read(byte[] buffer, int offset, int nbytes) + { + var count = nbytes; + var num3 = offset; + + while (count > 0) + { + var num = _inputStream.Read(buffer, num3, count); + + if (num <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, ByteCount); + } + + num3 += num; + count -= num; + } + + foreach (MemoryStream s in _captureBufferList) + { + s.Write(buffer, offset, nbytes); + } + + _byteCount += nbytes; + } + + public abstract int ReadByte(); + + public virtual void RemoveCaptureBuffer(MemoryStream buffer) + { + for (var i = 0; i < _captureBufferList.Count; i++) + { + if (buffer == _captureBufferList[i]) + { + _captureBufferList.RemoveAt(i); + return; + } + } + } + + public virtual void Reset() + { + try + { + _inputStream.Position = _markedPosition; + _byteCount = _savedByteCount; + } + catch (Exception) + { + } + } + + public virtual void SetInputStream(byte[] msgdata, int offset, int length) + { + _inputStream = new MemoryStream(msgdata, offset, length); + + Init(); + } + + public virtual long Skip(long nbytes) + { + var inputStream = _inputStream; + var position = inputStream.Position; + + return (inputStream.Seek(nbytes, SeekOrigin.Current) - position); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerDecodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerDecodeBuffer.cs new file mode 100644 index 0000000..ae9d954 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerDecodeBuffer.cs @@ -0,0 +1,17 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1DerDecodeBuffer : Asn1BerDecodeBuffer + { + public Asn1DerDecodeBuffer(byte[] msgdata) + : base(msgdata) + { + } + + public Asn1DerDecodeBuffer(Stream inputStream) + : base(inputStream) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerEncodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerEncodeBuffer.cs new file mode 100644 index 0000000..e164809 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerEncodeBuffer.cs @@ -0,0 +1,16 @@ +namespace GostCryptography.Asn1.Ber +{ + public class Asn1DerEncodeBuffer : Asn1BerEncodeBuffer + { + public Asn1DerEncodeBuffer() + { + ByteIndex = SizeIncrement - 1; + } + + public Asn1DerEncodeBuffer(int sizeIncrement) + : base(sizeIncrement) + { + ByteIndex = SizeIncrement - 1; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerInputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerInputStream.cs new file mode 100644 index 0000000..08f84eb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DerInputStream.cs @@ -0,0 +1,42 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1DerInputStream : Asn1DerDecodeBuffer, IAsn1InputStream + { + public Asn1DerInputStream(Stream inputStream) + : base(inputStream) + { + } + + public virtual int Available() + { + var inputStream = GetInputStream(); + + if (inputStream != null) + { + var num = inputStream.Length - inputStream.Position; + return (int)num; + } + + return 0; + } + + public virtual void Close() + { + var inputStream = GetInputStream(); + + if (inputStream != null) + { + inputStream.Close(); + } + } + + public virtual bool MarkSupported() + { + var inputStream = GetInputStream(); + + return ((inputStream != null) && inputStream.CanSeek); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DiscreteCharSet.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DiscreteCharSet.cs new file mode 100644 index 0000000..9e12bcd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1DiscreteCharSet.cs @@ -0,0 +1,58 @@ +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1DiscreteCharSet : Asn1CharSet + { + private readonly int[] _charSet; + + public Asn1DiscreteCharSet(string charSet) + : base(charSet.Length) + { + _charSet = new int[charSet.Length]; + + for (var i = 0; i < _charSet.Length; i++) + { + _charSet[i] = charSet[i]; + } + } + + public Asn1DiscreteCharSet(int[] charSet) + : base(charSet.Length) + { + _charSet = charSet; + } + + public override int MaxValue + { + get { return _charSet[_charSet.Length - 1]; } + } + + public override int GetCharAtIndex(int index) + { + if (index >= _charSet.Length) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, "Character index", index); + } + + return _charSet[index]; + } + + public override int GetCharIndex(int charValue) + { + var index = 0; + + while ((index < _charSet.Length) && (_charSet[index] != charValue)) + { + index++; + } + + if (index >= _charSet.Length) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, "Character index", charValue); + } + + return index; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1EncodeBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1EncodeBuffer.cs new file mode 100644 index 0000000..24ac31e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1EncodeBuffer.cs @@ -0,0 +1,84 @@ +using System; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public abstract class Asn1EncodeBuffer : Asn1MessageBuffer + { + public const int DefaultSizeIncrement = 0x400; + + protected byte[] Data; + protected int ByteIndex; + protected int SizeIncrement; + + protected Asn1EncodeBuffer() + { + InitBuffer(DefaultSizeIncrement); + } + + protected Asn1EncodeBuffer(int sizeIncrement) + { + if (sizeIncrement == 0) + { + sizeIncrement = DefaultSizeIncrement; + } + + InitBuffer(sizeIncrement); + } + + public abstract byte[] MsgCopy { get; } + + public abstract int MsgLength { get; } + + public virtual void BinDump(string varName) + { + var outs = new StreamWriter(Console.OpenStandardOutput(), Console.Out.Encoding) + { + AutoFlush = true + }; + + BinDump(outs, varName); + } + + public abstract void BinDump(StreamWriter outs, string varName); + + protected internal virtual void CheckSize(int bytesRequired) + { + if ((ByteIndex + bytesRequired) > Data.Length) + { + var num = ((bytesRequired - 1) / SizeIncrement) + 1; + var num2 = num * SizeIncrement; + var destinationArray = new byte[Data.Length + num2]; + + Array.Copy(Data, 0, destinationArray, 0, ByteIndex + 1); + + Data = destinationArray; + } + } + + public abstract void Copy(byte value); + + public abstract void Copy(byte[] value); + + public virtual void HexDump() + { + HexDump(GetInputStream()); + } + + public virtual void HexDump(StreamWriter outs) + { + HexDump(GetInputStream(), outs); + } + + protected virtual void InitBuffer(int sizeIncrement) + { + SizeIncrement = sizeIncrement; + Data = new byte[SizeIncrement]; + ByteIndex = 0; + } + + public abstract void Reset(); + + public abstract void Write(Stream outs); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Enumerated.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Enumerated.cs new file mode 100644 index 0000000..8fb4eb6 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Enumerated.cs @@ -0,0 +1,80 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1Enumerated : Asn1Type + { + public const int Undefined = -999; + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, EnumeratedTypeCode); + + [NonSerialized] + public int Value; + + public Asn1Enumerated() + { + Value = Undefined; + } + + public Asn1Enumerated(int value) + { + Value = value; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var length = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + Value = (int)Asn1RunTime.DecodeIntValue(buffer, length, true); + buffer.TypeCode = EnumeratedTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = buffer.EncodeIntValue(Value); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeIntValue(Value, true); + } + + public virtual bool Equals(int value) + { + return (Value == value); + } + + public override bool Equals(object value) + { + var enumerated = value as Asn1Enumerated; + + return (enumerated != null && Value == enumerated.Value); + } + + public override int GetHashCode() + { + return Value.GetHashCode(); + } + + public virtual int ParseValue(string value) + { + return -1; + } + + public override string ToString() + { + return null; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralString.cs new file mode 100644 index 0000000..1cde4f5 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1GeneralString : Asn1VarWidthCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, GeneralStringTypeCode); + + public Asn1GeneralString() + : base(GeneralStringTypeCode) + { + } + + public Asn1GeneralString(string data) + : base(data, GeneralStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralizedTime.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralizedTime.cs new file mode 100644 index 0000000..249dcfb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GeneralizedTime.cs @@ -0,0 +1,343 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1GeneralizedTime : Asn1Time + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, GeneralTimeTypeCode); + + public Asn1GeneralizedTime() + : base(GeneralTimeTypeCode, false) + { + } + + public Asn1GeneralizedTime(bool useDerRules) + : base(GeneralTimeTypeCode, useDerRules) + { + } + + public Asn1GeneralizedTime(string data) + : base(data, GeneralTimeTypeCode, false) + { + } + + public Asn1GeneralizedTime(string data, bool useDerRules) + : base(data, GeneralTimeTypeCode, useDerRules) + { + } + + public virtual int Century + { + get + { + var yearValue = Year; + + if (yearValue < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValue, yearValue); + } + + return (yearValue / 100); + } + set + { + if ((value < 0) || (value > 0x63)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidCenturyValue, value); + } + + SafeParseString(); + YearValue = (value * 100) + (YearValue % 100); + CompileString(); + } + } + + protected override bool CompileString() + { + int minuteValue; + + if (((YearValue < 0) || (MonthValue <= 0)) || ((DayValue <= 0) || (HourValue < 0))) + { + return false; + } + + Value = ""; + + if (StringBuffer == null) + { + StringBuffer = new StringBuilder(); + } + else + { + StringBuffer.Length = 0; + } + + if ((DerRules || UtcFlag) && ((DiffHourValue != 0) || (DiffMinValue != 0))) + { + var time = GetTime(); + time.AddMinutes(-DiffMinValue); + time.AddHours(-DiffHourValue); + + PutInteger(4, time.Year); + PutInteger(2, time.Month); + PutInteger(2, time.Day); + PutInteger(2, time.Hour); + + minuteValue = time.Minute; + } + else + { + PutInteger(4, YearValue); + PutInteger(2, MonthValue); + PutInteger(2, DayValue); + PutInteger(2, HourValue); + + minuteValue = MinuteValue; + } + + if ((DerRules || (minuteValue > 0)) || ((SecondValue > 0) || (SecFraction.Length > 0))) + { + PutInteger(2, minuteValue); + + if ((DerRules || (SecondValue > 0)) || (SecFraction.Length > 0)) + { + PutInteger(2, SecondValue); + + if (SecFraction.Length > 0) + { + StringBuffer.Append('.'); + StringBuffer.Append(SecFraction); + } + } + } + + if (DerRules || UtcFlag) + { + StringBuffer.Append('Z'); + } + else if ((DiffHourValue != 0) || (DiffMinValue != 0)) + { + StringBuffer.Append((DiffHourValue > 0) ? '+' : '-'); + + if (DiffMinValue != 0) + { + PutInteger(2, Math.Abs(DiffHourValue)); + PutInteger(2, Math.Abs(DiffMinValue)); + } + else + { + PutInteger(2, Math.Abs(DiffHourValue)); + } + } + + Value = StringBuffer.ToString(); + + return true; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + Encode(outs, explicitTagging, Tag); + } + + public override void ParseString(string data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull("data"); + } + + Clear(); + + var off = new IntHolder(0); + + try + { + YearValue = ParseInt(data, off, 4); + MonthValue = ParseInt(data, off, 2); + DayValue = ParseInt(data, off, 2); + + if (YearValue < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValue, YearValue); + } + + if ((MonthValue < 1) || (MonthValue > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMonthValue, MonthValue); + } + + int num = DaysInMonth[MonthValue]; + + if (((MonthValue == 2) && ((YearValue % 4) == 0)) && (((YearValue % 100) != 0) || ((YearValue % 400) == 0))) + { + num++; + } + + if ((DayValue < 1) || (DayValue > num)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDayValue, DayValue); + } + + var num2 = 0; + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1HoursExpected); + } + + HourValue = ParseInt(data, off, 2); + num2++; + + if (char.IsDigit(CharAt(data, off.Value))) + { + MinuteValue = ParseInt(data, off, 2); + num2++; + + if (char.IsDigit(CharAt(data, off.Value))) + { + SecondValue = ParseInt(data, off, 2); + num2++; + } + } + + if ((num2 >= 1) && ((HourValue < 0) || (HourValue > 0x17))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidHourValue, HourValue); + } + + if ((num2 >= 2) && ((MinuteValue < 0) || (MinuteValue > 0x3b))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMinuteValue, MinuteValue); + } + + if ((num2 == 3) && ((SecondValue < 0) || (SecondValue > 0x3b))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidSecondValue, SecondValue); + } + + var ch = CharAt(data, off.Value); + + if (DerRules && (ch == ',')) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDecimalMark); + } + + if ((ch == '.') || (ch == ',')) + { + off.Value++; + + if (num2 != 3) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedSymbol); + } + + var length = 0; + + while (char.IsDigit(CharAt(data, off.Value + length))) + { + length++; + } + + if (length == 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedSymbol); + } + + SecFraction = data.Substring(off.Value, length); + off.Value += length; + } + + if (CharAt(data, off.Value) == 'Z') + { + off.Value++; + UtcFlag = true; + + if (off.Value != data.Length) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedValuesAtEndOfString); + } + } + else + { + if (DerRules) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedZoneOffset); + } + + UtcFlag = false; + + var ch2 = CharAt(data, off.Value); + + switch (ch2) + { + case '-': + case '+': + off.Value++; + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHour); + } + + DiffHourValue = ParseInt(data, off, 2); + + if (char.IsDigit(CharAt(data, off.Value))) + { + DiffMinValue = ParseInt(data, off, 2); + } + + if ((DiffHourValue < 0) || (DiffHourValue > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHourValue, DiffHourValue); + } + + if ((DiffMinValue < 0) || (DiffMinValue > 0x3b)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffMinuteValue, DiffMinValue); + } + + if (ch2 == '-') + { + DiffHourValue = -DiffHourValue; + DiffMinValue = -DiffMinValue; + } + break; + } + } + + Parsed = true; + + if (data != Value) + { + CompileString(); + } + } + catch (IndexOutOfRangeException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDateFormat); + } + catch (FormatException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidNumberFormat); + } + catch (ArgumentException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDateFormat); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GraphicString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GraphicString.cs new file mode 100644 index 0000000..03a6450 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1GraphicString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1GraphicString : Asn1VarWidthCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, GraphicStringTypeCode); + + public Asn1GraphicString() + : base(GraphicStringTypeCode) + { + } + + public Asn1GraphicString(string data) + : base(data, GraphicStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(base.Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Ia5String.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Ia5String.cs new file mode 100644 index 0000000..a017115 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Ia5String.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Ia5String : Asn18BitCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, Ia5StringTypeCode); + + public Asn1Ia5String() + : base(Ia5StringTypeCode) + { + } + + public Asn1Ia5String(string data) + : base(data, Ia5StringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Integer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Integer.cs new file mode 100644 index 0000000..1079db2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Integer.cs @@ -0,0 +1,91 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Integer : Asn1Type + { + public const int SizeOfInt = 4; + public const int SizeOfLong = 8; + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, BigIntegerTypeCode); + + [NonSerialized] + public long Value; + + public Asn1Integer() + { + Value = 0L; + } + + public Asn1Integer(long value) + { + Value = value; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var length = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + Value = Asn1RunTime.DecodeIntValue(buffer, length, true); + buffer.TypeCode = BigIntegerTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = buffer.EncodeIntValue(Value); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeIntValue(Value, true); + } + + public virtual bool Equals(long value) + { + return (Value == value); + } + + public override bool Equals(object value) + { + var integer = value as Asn1Integer; + + if (integer == null) + { + return false; + } + + return (Value == integer.Value); + } + + public virtual int GetBitCount() + { + return Asn1RunTime.GetLongBitCount(Value); + } + + public static int GetBitCount(long ivalue) + { + return Asn1RunTime.GetLongBitCount(ivalue); + } + + public override int GetHashCode() + { + return Value.GetHashCode(); + } + + public override string ToString() + { + return Convert.ToString(Value); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1MessageBuffer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1MessageBuffer.cs new file mode 100644 index 0000000..076f669 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1MessageBuffer.cs @@ -0,0 +1,24 @@ +using System; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public abstract class Asn1MessageBuffer + { + public abstract Stream GetInputStream(); + + public static void HexDump(Stream ins) + { + var outs = new StreamWriter(Console.OpenStandardOutput(), Console.Out.Encoding) + { + AutoFlush = true + }; + + HexDump(ins, outs); + } + + public static void HexDump(Stream ins, StreamWriter outs) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Null.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Null.cs new file mode 100644 index 0000000..3c28b23 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Null.cs @@ -0,0 +1,48 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Null : Asn1Type + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, NullTypeCode); + public static readonly Asn1Null NullValue = new Asn1Null(); + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + if (explicitTagging) + { + MatchTag(buffer, Tag); + } + + buffer.TypeCode = NullTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeLength(0); + } + + public override string ToString() + { + return "NULL"; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1NumericString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1NumericString.cs new file mode 100644 index 0000000..9618db6 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1NumericString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1NumericString : Asn18BitCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, NumericStringTypeCode); + + public Asn1NumericString() + : base(NumericStringTypeCode) + { + } + + public Asn1NumericString(string data) + : base(data, NumericStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectDescriptor.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectDescriptor.cs new file mode 100644 index 0000000..9923958 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectDescriptor.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1ObjectDescriptor : Asn1VarWidthCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, ObjectDescriptorTypeCode); + + public Asn1ObjectDescriptor() + : base(ObjectDescriptorTypeCode) + { + } + + public Asn1ObjectDescriptor(string data) + : base(data, ObjectDescriptorTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectIdentifier.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectIdentifier.cs new file mode 100644 index 0000000..1f82b71 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1ObjectIdentifier.cs @@ -0,0 +1,133 @@ +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1ObjectIdentifier : Asn1Type + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, ObjectIdentifierTypeCode); + + [NonSerialized] + protected OidValue OidValue; + + public OidValue Oid => OidValue; + + + public Asn1ObjectIdentifier() + { + OidValue = null; + } + + public Asn1ObjectIdentifier(OidValue oidValue) + { + OidValue = oidValue; + } + + public static Asn1ObjectIdentifier FromString(string value) + { + return string.IsNullOrEmpty(value) ? null : new Asn1ObjectIdentifier(OidValue.FromString(value)); + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var len = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + + if (len <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + OidValue = OidValue.FromArray(buffer.DecodeOidContents(len)); + buffer.TypeCode = ObjectIdentifierTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (((OidValue.Items.Length < 2) || (OidValue.Items[0] > 2)) || ((OidValue.Items[0] != 2) && (OidValue.Items[1] > 0x27))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidObjectIdException); + } + + var len = 0; + + for (var i = OidValue.Items.Length - 1; i >= 1; i--) + { + len += buffer.EncodeIdentifier((i == 1) ? ((OidValue.Items[0] * 40) + OidValue.Items[1]) : OidValue.Items[i]); + } + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (((OidValue.Items.Length < 2) || (OidValue.Items[0] > 2)) || ((OidValue.Items[0] != 2) && (OidValue.Items[1] > 0x27))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidObjectIdException); + } + + var len = 1; + + for (var i = 2; i < OidValue.Items.Length; i++) + { + len += Asn1RunTime.GetIdentBytesCount(OidValue.Items[i]); + } + + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeLength(len); + var ident = (OidValue.Items[0] * 40) + OidValue.Items[1]; + outs.EncodeIdentifier(ident); + + for (var i = 2; i < OidValue.Items.Length; i++) + { + outs.EncodeIdentifier(OidValue.Items[i]); + } + } + + public override bool Equals(object obj) + { + if (this == obj) + { + return true; + } + + if (!(obj is Asn1ObjectIdentifier)) + { + return false; + } + + var other = (Asn1ObjectIdentifier)obj; + + if (OidValue == other.OidValue) + { + return true; + } + + if (OidValue == null || other.OidValue == null) + { + return false; + } + + return OidValue.Equals(other.OidValue); + } + + public override int GetHashCode() + { + return OidValue?.GetHashCode() ?? base.GetHashCode(); + } + + public override string ToString() + { + return OidValue?.ToString() ?? base.ToString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OctetString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OctetString.cs new file mode 100644 index 0000000..9cd0255 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OctetString.cs @@ -0,0 +1,234 @@ +using GostCryptography.Properties; +using System; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1OctetString : Asn1Type, IComparable + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, OctetStringTypeCode); + + [NonSerialized] + public byte[] Value; + + public Asn1OctetString() + { + Value = null; + } + + public Asn1OctetString(byte[] data) + { + Value = data; + } + + public Asn1OctetString(string value) + { + Value = string.IsNullOrEmpty(value) ? new byte[0] : Asn1Value.ParseString(value); + } + + public Asn1OctetString(byte[] data, int offset, int nbytes) + { + Value = new byte[nbytes]; + + if (data != null) + { + Array.Copy(data, offset, Value, 0, nbytes); + } + } + + public override int Length + { + get { return Value.Length; } + } + + public virtual int CompareTo(object octstr) + { + var value = ((Asn1OctetString)octstr).Value; + var num = (Value.Length < value.Length) ? Value.Length : value.Length; + + for (var i = 0; i < num; i++) + { + var num2 = Value[i] & 0xff; + var num3 = value[i] & 0xff; + + if (num2 < num3) + { + return -1; + } + + if (num2 > num3) + { + return 1; + } + } + + if (Value.Length == value.Length) + { + return 0; + } + + if (Value.Length < value.Length) + { + return -1; + } + + return 1; + } + + private void AllocByteArray(int nbytes) + { + if (Value == null) + { + Value = new byte[nbytes]; + } + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + var lastTag = buffer.LastTag; + + if ((lastTag == null) || !lastTag.Constructed) + { + if (elemLength < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + Value = new byte[elemLength]; + + if (elemLength != 0) + { + buffer.Read(Value); + } + } + else + { + var nbytes = 0; + var offset = 0; + var context = new Asn1BerDecodeContext(buffer, elemLength); + + while (!context.Expired()) + { + var num2 = MatchTag(buffer, Tag); + + if (num2 <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + nbytes += num2; + + if (offset == 0) + { + Value = new byte[nbytes]; + } + else + { + ReAllocByteArray(nbytes); + } + + buffer.Read(Value, offset, num2); + offset = nbytes; + } + + if (elemLength == Asn1Status.IndefiniteLength) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + buffer.TypeCode = OctetStringTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (Value == null) + { + Value = new byte[0]; + } + + var length = Value.Length; + + if (length != 0) + { + buffer.Copy(Value); + } + + if (explicitTagging) + { + length += buffer.EncodeTagAndLength(Tag, length); + } + + return length; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeOctetString(Value, explicitTagging, Tag); + } + + public bool Equals(byte[] value) + { + if (value.Length != Value.Length) + { + return false; + } + + for (var i = 0; i < value.Length; i++) + { + if (value[i] != Value[i]) + { + return false; + } + } + + return true; + } + + public override bool Equals(object value) + { + var str = value as Asn1OctetString; + + return (str != null) && Equals(str.Value); + } + + public override int GetHashCode() + { + return (Value != null) ? Value.GetHashCode() : base.GetHashCode(); + } + + private void ReAllocByteArray(int nbytes) + { + var value = Value; + Value = new byte[nbytes]; + + if (value != null) + { + Array.Copy(value, 0, Value, 0, value.Length); + } + } + + public virtual Stream ToInputStream() + { + return new MemoryStream(Value, 0, Value.Length); + } + + public override string ToString() + { + var str = new StringBuilder("").ToString(); + + if (Value != null) + { + foreach (var b in Value) + { + str = str + Asn1Util.ToHexString(b); + } + } + + return str; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenExt.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenExt.cs new file mode 100644 index 0000000..bc901b2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenExt.cs @@ -0,0 +1,86 @@ +using System; +using System.Collections; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1OpenExt : Asn1Type + { + [NonSerialized] + public ArrayList Value = new ArrayList(); + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + DecodeComponent(buffer); + } + + public virtual void DecodeComponent(Asn1BerDecodeBuffer buffer) + { + var type = new Asn1OpenType(); + type.Decode(buffer, false, 0); + Value.Add(type); + } + + public virtual void DecodeEventComponent(Asn1BerDecodeBuffer buffer) + { + buffer.InvokeStartElement("...", -1); + + var type = new Asn1OpenType(); + type.Decode(buffer, false, 0); + + Value.Add(type); + + buffer.InvokeCharacters(type.ToString()); + buffer.InvokeEndElement("...", -1); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var num = 0; + + for (var i = Value.Count - 1; i >= 0; i--) + { + var type = (Asn1OpenType)Value[i]; + num += type.Encode(buffer, false); + } + + return num; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + foreach (Asn1OpenType type in Value) + { + if (type != null) + { + type.Encode(outs, false); + } + } + } + + public override string ToString() + { + if (Value == null) + { + return ""; + } + + var builder = new StringBuilder(); + + for (var i = 0; i < Value.Count; i++) + { + var type = (Asn1OpenType)Value[i]; + + if (i != 0) + { + builder.Append(", "); + } + + builder.Append(type); + } + + return builder.ToString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenType.cs new file mode 100644 index 0000000..c937781 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OpenType.cs @@ -0,0 +1,102 @@ +using System; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1OpenType : Asn1OctetString + { + private const string EncodedDataMessage = "ENCODED DATA"; + + [NonSerialized] + private readonly Asn1EncodeBuffer _encodeBuffer; + + [NonSerialized] + private readonly int _length; + + [NonSerialized] + private readonly bool _textEncoding; + + public Asn1OpenType() + { + _length = 0; + _textEncoding = false; + } + + public Asn1OpenType(byte[] data) + : base(data) + { + _length = 0; + _textEncoding = false; + } + + public Asn1OpenType(Asn1EncodeBuffer buffer) + { + if (buffer is Asn1BerEncodeBuffer) + { + _length = buffer.MsgLength; + _encodeBuffer = buffer; + } + else + { + Value = buffer.MsgCopy; + } + + _textEncoding = false; + } + + public Asn1OpenType(byte[] data, int offset, int nbytes) + : base(data, offset, nbytes) + { + _length = 0; + _textEncoding = false; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Value = buffer.DecodeOpenType(); + buffer.TypeCode = OpenTypeTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (Value == null) + { + return _length; + } + + return base.Encode(buffer, false); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (Value != null) + { + outs.Write(Value); + } + } + + public override string ToString() + { + if (Value != null) + { + try + { + return (_textEncoding ? Encoding.UTF8.GetString(Value, 0, Value.Length) : base.ToString()); + } + catch (IOException) + { + return null; + } + } + + if (_encodeBuffer != null) + { + return _encodeBuffer.ToString(); + } + + return EncodedDataMessage; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OutputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OutputStream.cs new file mode 100644 index 0000000..de0ca7d --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1OutputStream.cs @@ -0,0 +1,86 @@ +using GostCryptography.Properties; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public abstract class Asn1OutputStream : Stream + { + protected readonly Stream OutputStream; + + public Asn1OutputStream(Stream outputStream) + { + OutputStream = outputStream; + } + + public override bool CanRead + { + get { return false; } + } + + public override bool CanSeek + { + get { return OutputStream.CanSeek; } + } + + public override bool CanWrite + { + get { return OutputStream.CanWrite; } + } + + public override long Length + { + get { return OutputStream.Length; } + } + + public override long Position + { + get { return OutputStream.Position; } + set { OutputStream.Position = value; } + } + + public override void Close() + { + OutputStream.Close(); + } + + public override void Flush() + { + OutputStream.Flush(); + } + + public override int Read(byte[] buffer, int offset, int count) + { + throw ExceptionUtility.NotSupported(Resources.Asn1ReadOutputStreamNotSupported); + } + + public override long Seek(long offset, SeekOrigin origin) + { + return OutputStream.Seek(offset, origin); + } + + public override void SetLength(long value) + { + OutputStream.SetLength(value); + } + + public virtual void Write(byte[] b) + { + OutputStream.Write(b, 0, b.Length); + } + + public override void Write(byte[] b, int off, int len) + { + OutputStream.Write(b, off, len); + } + + public override void WriteByte(byte b) + { + OutputStream.WriteByte(b); + } + + public virtual void WriteByte(int b) + { + OutputStream.WriteByte((byte)b); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1PrintableString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1PrintableString.cs new file mode 100644 index 0000000..e0e7ffd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1PrintableString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1PrintableString : Asn18BitCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, PrintableStringTypeCode); + + public Asn1PrintableString() + : base(PrintableStringTypeCode) + { + } + + public Asn1PrintableString(string data) + : base(data, PrintableStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Real.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Real.cs new file mode 100644 index 0000000..846bed0 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Real.cs @@ -0,0 +1,370 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Real : Asn1Type + { + private const int MinusInfinity = 0x41; + private const int PlusInfinity = 0x40; + private const int RealBase2 = 0; + private const int RealBase8 = 0x10; + private const int RealBase16 = 0x20; + private const int RealBaseMask = 0x30; + private const int RealBinary = 0x80; + private const int RealExplen1 = 0; + private const int RealExplen2 = 1; + private const int RealExplen3 = 2; + private const int RealExplenLong = 3; + private const int RealExplenMask = 3; + private const int RealFactorMask = 12; + private const int RealIso6093Mask = 0x3f; + + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, RealTypeCode); + + [NonSerialized] + public double Value; + + public Asn1Real() + { + Value = 0.0; + } + + public Asn1Real(double value) + { + Value = value; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var length = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + + if (length == 0) + { + Value = 0.0; + } + else + { + var num2 = buffer.ReadByte(); + + if (length == 1) + { + switch (num2) + { + case PlusInfinity: + Value = double.PositiveInfinity; + return; + + case MinusInfinity: + Value = double.NegativeInfinity; + return; + } + + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + length--; + + if ((num2 & RealBinary) == 0) + { + var num8 = length; + var num9 = 0; + + var builder = new StringBuilder { Length = num8 }; + + while (num8 > 0) + { + var num7 = buffer.Read(); + + if (num7 == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + builder[num9++] = (char)num7; + num8--; + } + + var num10 = num2 & RealIso6093Mask; + var num11 = 0; + + for (var i = 0; i < builder.Length; i++) + { + var ch = builder[i]; + + if ((num10 >= 2) && (ch == ',')) + { + builder[i] = '.'; + num11++; + } + else if (((num10 >= 1) && (((ch >= '0') && (ch <= '9')) || ((ch == '+') || (ch == '-')))) || (((num10 >= 2) && (ch == '.')) || ((num10 == 3) && ((ch == 'E') || (ch == 'e'))))) + { + num11++; + } + else if ((num11 != 0) || (ch != ' ')) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + } + try + { + Value = double.Parse(builder.ToString()); + } + catch (FormatException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + } + else + { + int num6; + int num3; + + switch ((num2 & RealExplenMask)) + { + case RealExplen1: + num3 = 1; + break; + + case RealExplen2: + num3 = 2; + break; + + case RealExplen3: + num3 = 3; + break; + + default: + num3 = buffer.ReadByte(); + length--; + break; + } + + var num4 = (int)Asn1RunTime.DecodeIntValue(buffer, num3, true); + length -= num3; + + var num5 = Asn1RunTime.DecodeIntValue(buffer, length, false) * (1L << ((num2 & RealFactorMask) >> 2)); + + switch ((num2 & RealBaseMask)) + { + case RealBase2: + num6 = 2; + break; + + case RealBase8: + num6 = 8; + break; + + case RealBase16: + num6 = 16; + break; + + default: + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + Value = num5 * Math.Pow(num6, num4); + + if ((num2 & PlusInfinity) != 0) + { + Value = -Value; + } + } + + buffer.TypeCode = RealTypeCode; + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (double.IsNegativeInfinity(Value)) + { + len = buffer.EncodeIntValue(MinusInfinity); + } + else if (double.IsPositiveInfinity(Value)) + { + len = buffer.EncodeIntValue(PlusInfinity); + } + + else if (Value != 0.0) + { + var num2 = BitConverter.DoubleToInt64Bits(Value); + var num3 = ((num2 >> RealIso6093Mask) == 0L) ? 1 : -1; + var num4 = ((int)((num2 >> 0x34) & 0x7ffL)) - 0x433; + var w = (num4 == 0) ? ((num2 & 0xfffffffffffffL) << 1) : ((num2 & 0xfffffffffffffL) | 0x10000000000000L); + + if (w != 0L) + { + var bits = TrailingZerosCnt(w); + w = Asn1Util.UrShift(w, bits); + num4 += bits; + } + + len += buffer.EncodeIntValue(w); + + var num7 = buffer.EncodeIntValue(num4); + len += num7; + + var num8 = RealBinary; + + if (num3 == -1) + { + num8 |= PlusInfinity; + } + + switch (num7) + { + case RealExplen2: + break; + + case RealExplen3: + num8 |= 1; + break; + + case RealExplenLong: + num8 |= 2; + break; + + default: + num8 |= 3; + len += buffer.EncodeIntValue(num7); + break; + } + + buffer.Copy((byte)num8); + len++; + } + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + if (Value == 0.0) + { + outs.EncodeLength(0); + } + else if (Value == double.NegativeInfinity) + { + outs.EncodeIntValue(MinusInfinity, true); + } + else if (Value == double.PositiveInfinity) + { + outs.EncodeIntValue(PlusInfinity, true); + } + else + { + var len = 1; + var num2 = BitConverter.DoubleToInt64Bits(Value); + var num3 = ((num2 >> RealIso6093Mask) == 0L) ? 1 : -1; + var num4 = ((int)((num2 >> 0x34) & 0x7ffL)) - 0x433; + var w = (num4 == 0) ? ((num2 & 0xfffffffffffffL) << 1) : ((num2 & 0xfffffffffffffL) | 0x10000000000000L); + + if (w != 0L) + { + var bits = TrailingZerosCnt(w); + w = Asn1Util.UrShift(w, bits); + num4 += bits; + len += Asn1Util.GetUlongBytesCount(w); + } + else + { + len++; + } + + var num7 = RealBinary; + + if (num3 == -1) + { + num7 |= PlusInfinity; + } + + var bytesCount = Asn1Util.GetBytesCount(num4); + len += bytesCount; + + switch (bytesCount) + { + case RealExplen2: + break; + + case RealExplen3: + num7 |= 1; + break; + + case RealExplenLong: + num7 |= 2; + break; + + default: + num7 |= 3; + len++; + break; + } + + outs.EncodeLength(len); + outs.WriteByte((byte)num7); + + if ((num7 & 3) == 3) + { + outs.EncodeIntValue(bytesCount, false); + } + + outs.EncodeIntValue(num4, false); + outs.EncodeIntValue(w, false); + } + } + + public virtual bool Equals(double value) + { + return (Value == value); + } + + public override bool Equals(object value) + { + var real = value as Asn1Real; + + if (real == null) + { + return false; + } + + return (Value == real.Value); + } + + public override int GetHashCode() + { + return Value.GetHashCode(); + } + + public override string ToString() + { + return Value.ToString(); + } + + private static int TrailingZerosCnt(long w) + { + var num = Asn1RunTime.IntTrailingZerosCnt((int)w); + + if (num >= RealBase16) + { + return (Asn1RunTime.IntTrailingZerosCnt((int)Asn1Util.UrShift(w, RealBase16)) + RealBase16); + } + + return num; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RelativeOid.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RelativeOid.cs new file mode 100644 index 0000000..f80db0c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RelativeOid.cs @@ -0,0 +1,71 @@ +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1RelativeOid : Asn1ObjectIdentifier + { + public new static readonly Asn1Tag Tag = new Asn1Tag(0, 0, RelativeOidTypeCode); + + public Asn1RelativeOid() + { + } + + public Asn1RelativeOid(OidValue oidValue) + : base(oidValue) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var len = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + OidValue = OidValue.FromArray(buffer.DecodeRelOidContents(len)); + buffer.TypeCode = RelativeOidTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (OidValue.Items.Length < 1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidObjectIdException); + } + + var len = 0; + + for (var i = OidValue.Items.Length - 1; i >= 0; i--) + { + len += buffer.EncodeIdentifier(OidValue.Items[i]); + } + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + var len = 0; + + foreach (var i in OidValue.Items) + { + len += Asn1RunTime.GetIdentBytesCount(i); + } + + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeLength(len); + + foreach (var i in OidValue.Items) + { + outs.EncodeIdentifier(i); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RunTime.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RunTime.cs new file mode 100644 index 0000000..e311a4f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1RunTime.cs @@ -0,0 +1,151 @@ +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Ber +{ + public static class Asn1RunTime + { + public const int LicBer = 1; + public const int LicPer = 2; + public const int LicXer = 4; + public const long Bit0Mask = -9223372036854775808L; + + public static long DecodeIntValue(Asn1DecodeBuffer buffer, int length, bool signExtend) + { + var num = 0L; + + if (length > 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1IntegerValueIsTooLarge); + } + + for (var i = 0; i < length; i++) + { + var num2 = buffer.ReadByte(); + + if (num2 < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + if ((i == 0) && signExtend) + { + num = (num2 > 0x7f) ? -1 : 0; + } + + num = (num * 0x100L) + num2; + } + + return num; + } + + public static int GetIdentBytesCount(long ident) + { + if (ident < 0x80L) + { + return 1; + } + + if (ident < 0x4000L) + { + return 2; + } + + if (ident < 0x200000L) + { + return 3; + } + + if (ident < 0x10000000L) + { + return 4; + } + + if (ident < 0x800000000L) + { + return 5; + } + + if (ident < 0x40000000000L) + { + return 6; + } + + if (ident < 0x2000000000000L) + { + return 7; + } + + if (ident < 0x100000000000000L) + { + return 8; + } + + return 9; + } + + public static int GetLongBitCount(long ivalue) + { + var num = ivalue & Bit0Mask; + var num2 = 0; + + if (ivalue != 0L) + { + while ((ivalue & Bit0Mask) == num) + { + num2++; + ivalue = ivalue << 1; + } + + if (num == Bit0Mask) + { + num2--; + } + + return (0x40 - num2); + } + + return 0; + } + + public static int GetLongBytesCount(long value) + { + var num = 0x7f80000000000000L; + var num2 = 8; + + if (value < 0L) + { + value ^= -1L; + } + + while ((num2 > 1) && ((value & num) == 0L)) + { + num = num >> 8; + num2--; + } + + return num2; + } + + public static int GetUlongBytesCount(long value) + { + var number = -72057594037927936L; + var num2 = 8; + + while ((num2 > 1) && ((value & number) == 0L)) + { + number = Asn1Util.UrShift(number, 8); + num2--; + } + + return num2; + } + + public static int IntTrailingZerosCnt(int w) + { + return (0x20 - + (((w & 0xffff) != 0) + ? (((w & 0xff) != 0) ? ((((w & 15) != 0) ? (((w & 3) != 0) ? (((w & 1) != 0) ? 8 : 7) : (((w & 4) != 0) ? 6 : 5)) : (((w & 0x30) != 0) ? (((w & 0x10) != 0) ? 4 : 3) : (((w & 0x40) != 0) ? 2 : (((w & 0x80) != 0) ? 1 : 0)))) + 0x18) : (((((w = Asn1Util.UrShift(w, 8)) & 15) != 0) ? (((w & 3) != 0) ? (((w & 1) != 0) ? 8 : 7) : (((w & 4) != 0) ? 6 : 5)) : (((w & 0x30) != 0) ? (((w & 0x10) != 0) ? 4 : 3) : (((w & 0x40) != 0) ? 2 : (((w & 0x80) != 0) ? 1 : 0)))) + 0x10)) + : ((((w = Asn1Util.UrShift(w, 0x10)) & 0xff) != 0) ? ((((w & 15) != 0) ? (((w & 3) != 0) ? (((w & 1) != 0) ? 8 : 7) : (((w & 4) != 0) ? 6 : 5)) : (((w & 0x30) != 0) ? (((w & 0x10) != 0) ? 4 : 3) : (((w & 0x40) != 0) ? 2 : (((w & 0x80) != 0) ? 1 : 0)))) + 8) : ((((w = Asn1Util.UrShift(w, 8)) & 15) != 0) ? (((w & 3) != 0) ? (((w & 1) != 0) ? 8 : 7) : (((w & 4) != 0) ? 6 : 5)) : (((w & 0x30) != 0) ? (((w & 0x10) != 0) ? 4 : 3) : (((w & 0x40) != 0) ? 2 : (((w & 0x80) != 0) ? 1 : 0))))))); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Status.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Status.cs new file mode 100644 index 0000000..f4b714b --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Status.cs @@ -0,0 +1,7 @@ +namespace GostCryptography.Asn1.Ber +{ + public static class Asn1Status + { + public const int IndefiniteLength = -9999; + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1T61String.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1T61String.cs new file mode 100644 index 0000000..19942de --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1T61String.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1T61String : Asn1VarWidthCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, T61StringTypeCode); + + public Asn1T61String() + : base(T61StringTypeCode) + { + } + + public Asn1T61String(string data) + : base(data, T61StringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Tag.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Tag.cs new file mode 100644 index 0000000..d901a05 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Tag.cs @@ -0,0 +1,106 @@ +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Tag + { + public const short Universal = 0; + public const short Private = 0xc0; + public const short Application = 0x40; + + public const short Bit8Mask = 0x80; + public const short ClassMask = 0xc0; + public const short CONS = 0x20; + public const short CTXT = 0x80; + public const bool EXPL = true; + public const short EXTIDCODE = 0x1f; + public const short FormMask = 0x20; + public const short IDMask = 0x1f; + public const bool IMPL = false; + public const short L7BitsMask = 0x7f; + public const short PRIM = 0; + + public static readonly Asn1Tag Eoc = new Asn1Tag(0, 0, Asn1Type.EocTypeCode); + public static readonly Asn1Tag Set = new Asn1Tag(0, 0x20, Asn1Type.SetTypeCode); + public static readonly Asn1Tag Sequence = new Asn1Tag(0, 0x20, Asn1Type.SequenceTypeCode); + public static readonly Asn1Tag Enumerated = new Asn1Tag(0, 0, Asn1Type.EnumeratedTypeCode); + + [NonSerialized] + public short Class; + + [NonSerialized] + public short Form; + + [NonSerialized] + public int IdCode; + + public Asn1Tag() + { + Class = 0; + Form = 0; + IdCode = 0; + } + + public Asn1Tag(short tagclass, short form, int idCode) + { + Class = tagclass; + Form = form; + IdCode = idCode; + } + + public virtual bool Constructed + { + get { return (Form == 0x20); } + } + + public bool Equals(Asn1Tag tag) + { + return Equals(tag.Class, tag.Form, tag.IdCode); + } + + public virtual bool Equals(short tagclass, short form, int idCode) + { + return ((Class == tagclass) && (IdCode == idCode)); + } + + public virtual bool IsEoc() + { + return Equals(0, 0, 0); + } + + public override string ToString() + { + var builder = new StringBuilder(); + builder.Append("["); + + switch (Class) + { + case 0x80: + break; + + case Private: + builder.Append("PRIVATE "); + break; + + case Universal: + builder.Append("UNIVERSAL "); + break; + + case Application: + builder.Append("APPLICATION "); + break; + + default: + builder.Append("??? "); + break; + } + + builder.Append(Convert.ToString(IdCode)); + builder.Append("]"); + + return builder.ToString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Time.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Time.cs new file mode 100644 index 0000000..e3a924c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Time.cs @@ -0,0 +1,554 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1Time : Asn18BitCharString, IComparable + { + public const int January = 1; + public const int February = 2; + public const int March = 3; + public const int April = 4; + public const int May = 5; + public const int June = 6; + public const int July = 7; + public const int August = 8; + public const int September = 9; + public const int October = 10; + public const int November = 11; + public const int December = 12; + + public static readonly short[] DaysInMonth = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; + + public Asn1Time(short typeCode, bool useDerRules) + : base(typeCode) + { + DerRules = useDerRules; + Init(); + } + + public Asn1Time(string data, short typeCode, bool useDerRules) + : base(data, typeCode) + { + DerRules = useDerRules; + Init(); + } + + [NonSerialized] + protected bool Parsed; + + [NonSerialized] + protected bool DerRules; + + [NonSerialized] + protected int DiffHourValue; + + public virtual int DiffHour + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return DiffHourValue; + } + set + { + if ((value < -12) || (value > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHourValue, value); + } + + SafeParseString(); + DiffHourValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int DiffMinValue; + + public virtual int DiffMinute + { + get + { + if (!Parsed) + { + ParseString(Value); + } + + return DiffMinValue; + } + } + + [NonSerialized] + protected string SecFraction; + + public virtual string Fraction + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return SecFraction; + } + set + { + SafeParseString(); + SecFraction = value; + CompileString(); + } + } + + [NonSerialized] + protected int YearValue; + + public virtual int Year + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return YearValue; + } + set + { + if (value < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValue, value); + } + + if (!CheckDate(DayValue, MonthValue, value)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValueForDayAndMonth, value, DayValue, MonthValue); + } + + SafeParseString(); + YearValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int MonthValue; + + public virtual int Month + { + get + { + if (!Parsed) + { + ParseString(Value); + } + + return MonthValue; + } + set + { + if ((value < 1) || (value > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMonthValue, value); + } + + if (!CheckDate(DayValue, value, YearValue)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMonthValueForDayAndYear, value, DayValue, YearValue); + } + + SafeParseString(); + MonthValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int DayValue; + + public virtual int Day + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return DayValue; + } + set + { + if (((value < 1) || (value > 31)) || !CheckDate(value, MonthValue, YearValue)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDayValueForMonthAndYear, value, MonthValue, YearValue); + } + + SafeParseString(); + DayValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int HourValue; + + public virtual int Hour + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return HourValue; + } + set + { + if ((value < 0) || (value > 23)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidHourValue, value); + } + + SafeParseString(); + HourValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int MinuteValue; + + public virtual int Minute + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return MinuteValue; + } + set + { + if ((value < 0) || (value > 59)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMinuteValue, value); + } + + SafeParseString(); + MinuteValue = value; + CompileString(); + } + } + + [NonSerialized] + protected int SecondValue; + + public virtual int Second + { + get + { + if (!Parsed) + { + ParseString(Value); + } + return SecondValue; + } + set + { + if ((value < 0) || (value > 59)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidSecondValue, value); + } + + SafeParseString(); + SecondValue = value; + CompileString(); + } + } + + [NonSerialized] + protected bool UtcFlag; + + public virtual bool Utc + { + get + { + if (!Parsed) + { + ParseString(Value); + } + + return UtcFlag; + } + set + { + if (!DerRules) + { + SafeParseString(); + UtcFlag = value; + CompileString(); + } + } + } + + public virtual int CompareTo(object other) + { + if (other is DateTime) + { + var time2 = (DateTime)other; + return (int)(GetTime().Ticks - time2.Ticks); + } + return (int)(GetTime().Ticks - ((Asn1Time)other).GetTime().Ticks); + } + + protected static char CharAt(string s, int index) + { + if (index >= s.Length) + { + return '\0'; + } + + return s[index]; + } + + private static bool CheckDate(int day, int month, int year) + { + if ((day <= 0) || (month <= 0)) + { + return true; + } + + if ((year >= 0) && (month > 0)) + { + int num = DaysInMonth[month]; + + if (((month == 2) && ((year % 4) == 0)) && (((year % 100) != 0) || ((year % 400) == 0))) + { + num++; + } + + if ((day >= 1) && (day <= num)) + { + return true; + } + } + else if (month > 0) + { + if (day <= DaysInMonth[month]) + { + return true; + } + + if ((month == 2) && (day <= (DaysInMonth[month] + 1))) + { + return true; + } + } + + return false; + } + + public virtual void Clear() + { + YearValue = MonthValue = DayValue = HourValue = -1; + MinuteValue = SecondValue = DiffHourValue = DiffMinValue = 0; + UtcFlag = DerRules; + Parsed = true; + SecFraction = ""; + Value = ""; + } + + protected abstract bool CompileString(); + + protected override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength, Asn1Tag tag) + { + Parsed = false; + base.Decode(buffer, explicitTagging, implicitLength, tag); + DerRules = buffer is Asn1DerDecodeBuffer; + } + + protected override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging, Asn1Tag tag) + { + SafeParseString(); + + var flag = buffer is Asn1DerEncodeBuffer; + + if (DerRules != flag) + { + DerRules = flag; + + if (!CompileString()) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1TimeStringCouldNotBeGenerated); + } + } + + return base.Encode(buffer, explicitTagging, tag); + } + + public virtual void Encode(Asn1BerOutputStream outs, bool explicitTagging, Asn1Tag tag) + { + SafeParseString(); + outs.EncodeCharString(Value, explicitTagging, tag); + } + + public override bool Equals(object value) + { + if (value is Asn1Time) + { + return GetTime().Equals(((Asn1Time)value).GetTime()); + } + + return ((value is DateTime) && GetTime().Equals((DateTime)value)); + } + + public virtual int GetDiff() + { + if (!Parsed) + { + ParseString(Value); + } + + return ((DiffHourValue * 60) + DiffMinValue); + } + + public override int GetHashCode() + { + return Value.GetHashCode(); + } + + public virtual DateTime GetTime() + { + if (!string.IsNullOrEmpty(SecFraction)) + { + return new DateTime(YearValue, MonthValue, DayValue, HourValue, MinuteValue, SecondValue, int.Parse(SecFraction)); + } + + return new DateTime(YearValue, MonthValue, DayValue, HourValue, MinuteValue, SecondValue); + } + + protected virtual void Init() + { + YearValue = MonthValue = DayValue = HourValue = -1; + MinuteValue = SecondValue = 0; + DiffHourValue = DiffMinValue = 0; + UtcFlag = DerRules; + SecFraction = ""; + } + + protected static int ParseInt(string str, IntHolder off, int len) + { + if ((off.Value + len) > str.Length) + { + throw ExceptionUtility.ArgumentOutOfRange("off"); + } + + var mValue = off.Value; + off.Value += len; + + return int.Parse(str.Substring(mValue, len)); + } + + public abstract void ParseString(string data); + + protected virtual void PutInteger(int width, int value) + { + PutInteger(StringBuffer, width, value); + } + + public static void PutInteger(StringBuilder data, int width, int value) + { + var str = Convert.ToString(value); + var length = str.Length; + + if (length < width) + { + for (var i = length; i < width; i++) + { + data.Append('0'); + } + } + else if (length > width) + { + str = str.Substring(length - width); + } + + data.Append(str); + } + + protected virtual void SafeParseString() + { + try + { + if (!Parsed) + { + ParseString(Value); + } + } + catch (Exception) + { + } + } + + public virtual void SetDiff(int inMinutes) + { + if (Math.Abs(inMinutes) > 720) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidDiffValue, inMinutes); + } + + SafeParseString(); + DiffHourValue = inMinutes / 60; + DiffMinValue = inMinutes % 60; + CompileString(); + } + + public virtual void SetDiff(int dhour, int dminute) + { + if ((dhour < -12) || (dhour > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHourValue, dhour); + } + + if (Math.Abs(dminute) > 59) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffMinuteValue, dminute); + } + + SafeParseString(); + DiffHourValue = dhour; + + if (dhour < 0) + { + DiffMinValue = -Math.Abs(dminute); + } + else + { + DiffMinValue = Math.Abs(dminute); + } + + CompileString(); + } + + public virtual void SetTime(DateTime time) + { + Clear(); + YearValue = time.Year; + MonthValue = time.Month; + DayValue = time.Day; + HourValue = time.Hour; + MinuteValue = time.Minute; + SecondValue = time.Second; + SecFraction = Convert.ToString(time.Millisecond); + DiffHourValue = DiffMinValue = 0; + UtcFlag = DerRules; + CompileString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1TraceHandler.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1TraceHandler.cs new file mode 100644 index 0000000..aefc1d7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1TraceHandler.cs @@ -0,0 +1,46 @@ +using System; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public class Asn1TraceHandler : IAsn1NamedEventHandler + { + internal StreamWriter mPrintStream; + + public Asn1TraceHandler() + { + mPrintStream = new StreamWriter(Console.OpenStandardOutput(), Console.Out.Encoding); + mPrintStream.AutoFlush = true; + } + + public Asn1TraceHandler(StreamWriter ps) + { + mPrintStream = ps; + } + + public virtual void Characters(string svalue, short typeCode) + { + mPrintStream.WriteLine("data: " + svalue); + } + + public virtual void EndElement(string name, int index) + { + mPrintStream.Write(name); + if (index >= 0) + { + mPrintStream.Write("[" + index + "]"); + } + mPrintStream.WriteLine(": end"); + } + + public virtual void StartElement(string name, int index) + { + mPrintStream.Write(name); + if (index >= 0) + { + mPrintStream.Write("[" + index + "]"); + } + mPrintStream.WriteLine(": start"); + } + } +} \ No newline at end of file diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Type.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Type.cs new file mode 100644 index 0000000..88e9f67 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Type.cs @@ -0,0 +1,167 @@ +using GostCryptography.Properties; +using System; +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1Type : IAsn1Type + { + public const short EocTypeCode = 0; + public const short BooleanTypeCode = 1; + public const short BigIntegerTypeCode = 2; + public const short BitStringTypeCode = 3; + public const short OctetStringTypeCode = 4; + public const short NullTypeCode = 5; + public const short ObjectIdentifierTypeCode = 6; + public const short ObjectDescriptorTypeCode = 7; + public const short ExternalTypeCode = 8; + public const short RealTypeCode = 9; + public const short EnumeratedTypeCode = 10; + public const short Utf8StringTypeCode = 12; + public const short RelativeOidTypeCode = 13; + public const short SequenceTypeCode = 0x10; + public const short SetTypeCode = 0x11; + public const short NumericStringTypeCode = 0x12; + public const short PrintableStringTypeCode = 0x13; + public const short T61StringTypeCode = 20; + public const short VideoTexStringTypeCode = 0x15; + public const short Ia5StringTypeCode = 0x16; + public const short UtcTimeTypeCode = 0x17; + public const short GeneralTimeTypeCode = 0x18; + public const short GraphicStringTypeCode = 0x19; + public const short VisibleStringTypeCode = 0x1a; + public const short GeneralStringTypeCode = 0x1b; + public const short UniversalStringTypeCode = 0x1c; + public const short BmpStringTypeCode = 30; + public const short OpenTypeTypeCode = 0x63; + + [NonSerialized] + private readonly IntHolder _parsedLen = new IntHolder(); + + [NonSerialized] + private readonly Asn1Tag _parsedTag = new Asn1Tag(); + + public virtual int Length + { + get { throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); } + } + + public virtual void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + } + + public virtual int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return 0; + } + + public virtual void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + } + + public virtual void Print(TextWriter outs, string varName, int level) + { + Indent(outs, level); + outs.WriteLine(varName + " = " + ToString()); + } + + public virtual void Decode(Asn1BerDecodeBuffer buffer) + { + Decode(buffer, true, 0); + } + + public virtual int Encode(Asn1BerEncodeBuffer buffer) + { + return Encode(buffer, true); + } + + public static string GetTypeName(short typeCode) + { + switch (typeCode) + { + case EocTypeCode: + return "EOC"; + case BooleanTypeCode: + return "BOOLEAN"; + case BigIntegerTypeCode: + return "INTEGER"; + case BitStringTypeCode: + return "BIT STRING"; + case OctetStringTypeCode: + return "OCTET STRING"; + case NullTypeCode: + return "NULL"; + case ObjectIdentifierTypeCode: + return "OBJECT IDENTIFIER"; + case ObjectDescriptorTypeCode: + return "ObjectDescriptor"; + case ExternalTypeCode: + return "EXTERNAL"; + case RealTypeCode: + return "REAL"; + case EnumeratedTypeCode: + return "ENUMERATED"; + case Utf8StringTypeCode: + return "UTF8String"; + case SequenceTypeCode: + return "SEQUENCE"; + case SetTypeCode: + return "SET"; + case NumericStringTypeCode: + return "NumericString"; + case PrintableStringTypeCode: + return "PrintableString"; + case T61StringTypeCode: + return "T61String"; + case VideoTexStringTypeCode: + return "VideotexString"; + case Ia5StringTypeCode: + return "IA5String"; + case UtcTimeTypeCode: + return "UTCTime"; + case GeneralTimeTypeCode: + return "GeneralTime"; + case GraphicStringTypeCode: + return "GraphicString"; + case VisibleStringTypeCode: + return "VisibleString"; + case GeneralStringTypeCode: + return "GeneralString"; + case UniversalStringTypeCode: + return "UniversalString"; + case BmpStringTypeCode: + return "BMPString"; + case OpenTypeTypeCode: + return "ANY"; + } + + return "?"; + } + + public virtual void Indent(TextWriter outs, int level) + { + var num2 = level * 3; + + for (var i = 0; i < num2; i++) + { + outs.Write(" "); + } + } + + protected virtual int MatchTag(Asn1BerDecodeBuffer buffer, Asn1Tag tag) + { + return MatchTag(buffer, tag.Class, tag.Form, tag.IdCode); + } + + protected virtual int MatchTag(Asn1BerDecodeBuffer buffer, short tagClass, short tagForm, int tagIdCode) + { + if (!buffer.MatchTag(tagClass, tagForm, tagIdCode, _parsedTag, _parsedLen)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1TagMatchFailedException, new Asn1Tag(tagClass, tagForm, tagIdCode), _parsedTag, buffer.ByteCount); + } + + return _parsedLen.Value; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UniversalString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UniversalString.cs new file mode 100644 index 0000000..30e0d90 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UniversalString.cs @@ -0,0 +1,224 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1UniversalString : Asn1Type + { + public const int BitsPerChar = 0x20; + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, UniversalStringTypeCode); + + [NonSerialized] + private StringBuilder _stringBuffer; + + [NonSerialized] + private int[] _value; + + public Asn1UniversalString() + { + _value = new int[0]; + } + + public Asn1UniversalString(int[] value) + { + _value = value; + } + + public Asn1UniversalString(string value) + { + _value = new int[value.Length]; + + for (var i = 0; i < value.Length; i++) + { + _value[i] = value[i]; + } + } + + public override int Length + { + get { return _value.Length; } + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var llen = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + var idx = new IntHolder(0); + var lastTag = buffer.LastTag; + + if ((lastTag == null) || !lastTag.Constructed) + { + ReadSegment(buffer, llen, idx); + } + else + { + var context = new Asn1BerDecodeContext(buffer, llen); + + while (!context.Expired()) + { + var num2 = MatchTag(buffer, Asn1OctetString.Tag); + + if (num2 <= 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidFormatOfConstructedValue, buffer.ByteCount); + } + + ReadSegment(buffer, num2, idx); + } + + if (llen == Asn1Status.IndefiniteLength) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + buffer.TypeCode = UniversalStringTypeCode; + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var length = _value.Length; + + for (var i = length - 1; i >= 0; i--) + { + var num3 = _value[i]; + + for (var j = 0; j < 4; j++) + { + var num = num3 % 0x100; + num3 /= 0x100; + buffer.Copy((byte)num); + } + } + + length *= 4; + + if (explicitTagging) + { + length += buffer.EncodeTagAndLength(Tag, length); + } + + return length; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeUnivString(_value, explicitTagging, Tag); + } + + public override bool Equals(object value) + { + var str = value as Asn1UniversalString; + + if (str == null) + { + return false; + } + + if (_value.Length != str._value.Length) + { + return false; + } + + for (var i = 0; i < _value.Length; i++) + { + if (_value[i] != str._value[i]) + { + return false; + } + } + + return true; + } + + public override int GetHashCode() + { + if (_value.Length == 0) + { + return base.GetHashCode(); + } + + var num = 0; + var num2 = (_value.Length > 20) ? 20 : _value.Length; + + for (var i = 0; i < num2; i++) + { + num ^= _value[i]; + } + + return num; + } + + private void ReadSegment(Asn1BerDecodeBuffer buffer, int llen, IntHolder idx) + { + if ((llen < 0) || ((llen % 4) != 0)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidLengthException); + } + + var num4 = llen / 4; + + if (_value.Length == 0) + { + _value = new int[num4]; + } + else if ((idx.Value + num4) >= _value.Length) + { + ReallocIntArray(idx.Value + num4); + } + + var value = idx.Value; + + while (value < (idx.Value + num4)) + { + _value[value] = 0; + + for (var i = 0; i < 4; i++) + { + var num = buffer.Read(); + + if (num == -1) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1EndOfBufferException, buffer.ByteCount); + } + + _value[value] = (_value[value] * 0x100) + num; + } + + value++; + } + + idx.Value = value; + } + + private void ReallocIntArray(int nint) + { + var value = _value; + + _value = new int[nint]; + + if (value != null) + { + Array.Copy(value, 0, _value, 0, value.Length); + } + } + + public override string ToString() + { + if (_stringBuffer == null) + { + _stringBuffer = new StringBuilder(); + } + + _stringBuffer.Length = _value.Length; + + for (var i = 0; i < _value.Length; i++) + { + _stringBuffer[i] = (char)_value[i]; + } + + return _stringBuffer.ToString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UtcTime.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UtcTime.cs new file mode 100644 index 0000000..2675573 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1UtcTime.cs @@ -0,0 +1,358 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1UtcTime : Asn1Time + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, UtcTimeTypeCode); + + public Asn1UtcTime() + : base(UtcTimeTypeCode, false) + { + } + + public Asn1UtcTime(bool useDerRules) + : base(UtcTimeTypeCode, useDerRules) + { + } + + public Asn1UtcTime(string data) + : base(data, UtcTimeTypeCode, false) + { + } + + public Asn1UtcTime(string data, bool useDerRules) + : base(data, UtcTimeTypeCode, useDerRules) + { + } + + public override string Fraction + { + get + { + return ""; + } + set + { + SecFraction = ""; + + throw ExceptionUtility.CryptographicException(Resources.Asn1FractionNotSupportedForUtcTime); + } + } + + public override int Year + { + get + { + if (!Parsed) + { + ParseString(Value); + } + + return YearValue; + } + set + { + if (value < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValue, YearValue); + } + + if (value < 100) + { + if (value >= 50) + { + Year = value + 0x76c; + } + else + { + Year = value + 0x7d0; + } + } + + Year = value; + } + } + + public override void Clear() + { + Clear(); + HourValue = MinuteValue = -1; + UtcFlag = true; + } + + public override int CompareTo(object obj) + { + return base.CompareTo(obj); + } + + protected override bool CompileString() + { + Value = ""; + + if (((YearValue < 0) || (DayValue <= 0)) || (((MonthValue <= 0) || (HourValue < 0)) || (MinuteValue < 0))) + { + return false; + } + + if (StringBuffer == null) + { + StringBuffer = new StringBuilder(); + } + else + { + StringBuffer.Length = 0; + } + + if ((DerRules || UtcFlag) && ((DiffHourValue != 0) || (DiffMinValue != 0))) + { + var time = GetTime(); + time.AddMinutes(-DiffMinValue); + time.AddHours(-DiffHourValue); + + PutInteger(2, time.Year); + PutInteger(2, time.Month); + PutInteger(2, time.Day); + PutInteger(2, time.Hour); + PutInteger(2, time.Minute); + } + else + { + PutInteger(2, YearValue); + PutInteger(2, MonthValue); + PutInteger(2, DayValue); + PutInteger(2, HourValue); + PutInteger(2, MinuteValue); + } + + PutInteger(2, SecondValue); + + if (DerRules || UtcFlag) + { + StringBuffer.Append('Z'); + } + else if ((DiffHourValue != 0) || (DiffMinValue != 0)) + { + StringBuffer.Append((DiffHourValue > 0) ? '+' : '-'); + PutInteger(2, Math.Abs(DiffHourValue)); + PutInteger(2, Math.Abs(DiffMinValue)); + } + + Value = StringBuffer.ToString(); + + return true; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + Encode(outs, explicitTagging, Tag); + } + + protected override void Init() + { + Init(); + HourValue = MinuteValue = -1; + UtcFlag = true; + } + + public override void ParseString(string data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull("data"); + } + + Clear(); + + var off = new IntHolder(0); + + try + { + YearValue = ParseInt(data, off, 2); + MonthValue = ParseInt(data, off, 2); + DayValue = ParseInt(data, off, 2); + + if (YearValue < 0) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidYearValue, YearValue); + } + + if (YearValue < 100) + { + if (YearValue > 70) + { + YearValue += 0x76c; + } + else + { + YearValue += 0x7d0; + } + } + + if ((MonthValue < 1) || (MonthValue > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMonthValue, MonthValue); + } + + var num = DaysInMonth[MonthValue]; + + if (((MonthValue == 2) && ((YearValue % 4) == 0)) && (((YearValue % 100) != 0) || ((YearValue % 400) == 0))) + { + num++; + } + + if ((DayValue < 1) || (DayValue > num)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDayValue, DayValue); + } + + var num2 = 0; + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1HoursExpected); + } + + HourValue = ParseInt(data, off, 2); + num2++; + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MinutesExpected); + } + + MinuteValue = ParseInt(data, off, 2); + num2++; + + if (char.IsDigit(CharAt(data, off.Value))) + { + SecondValue = ParseInt(data, off, 2); + num2++; + } + + if ((num2 >= 2) && ((HourValue < 0) || (HourValue > UtcTimeTypeCode))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidHourValue, HourValue); + } + + if ((num2 >= 2) && ((MinuteValue < 0) || (MinuteValue > 0x3b))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidMinuteValue, MinuteValue); + } + + if ((num2 == 3) && ((SecondValue < 0) || (SecondValue > 0x3b))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidSecondValue, SecondValue); + } + + CharAt(data, off.Value); + + if (CharAt(data, off.Value) == 'Z') + { + off.Value++; + UtcFlag = true; + + if (off.Value != data.Length) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedValuesAtEndOfString); + } + } + else + { + if (DerRules) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1UnexpectedZoneOffset); + } + + UtcFlag = false; + var ch = CharAt(data, off.Value); + + switch (ch) + { + case '-': + case '+': + off.Value++; + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHour); + } + + DiffHourValue = ParseInt(data, off, 2); + + if (!char.IsDigit(CharAt(data, off.Value))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffMinute); + } + + DiffMinValue = ParseInt(data, off, 2); + + if ((DiffHourValue < 0) || (DiffHourValue > 12)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffHourValue, DiffHourValue); + } + + if ((DiffMinValue < 0) || (DiffMinValue > 0x3b)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDiffMinuteValue, DiffMinValue); + } + + if (ch == '-') + { + DiffHourValue = -DiffHourValue; + DiffMinValue = -DiffMinValue; + } + break; + } + } + + Parsed = true; + + if (data != Value) + { + CompileString(); + } + } + catch (IndexOutOfRangeException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDateFormat); + } + catch (FormatException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidNumberFormat); + } + catch (ArgumentException) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidDateFormat); + } + } + + public override void SetTime(DateTime time) + { + Clear(); + YearValue = time.Year; + MonthValue = time.Month; + DayValue = time.Day; + HourValue = time.Hour; + MinuteValue = time.Minute; + SecondValue = time.Second; + SecFraction = ""; + DiffHourValue = DiffMinValue = 0; + UtcFlag = true; + CompileString(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Utf8String.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Utf8String.cs new file mode 100644 index 0000000..7d3508b --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Utf8String.cs @@ -0,0 +1,98 @@ +using System; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1Utf8String : Asn1CharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, Utf8StringTypeCode); + + public Asn1Utf8String() + : base(Utf8StringTypeCode) + { + } + + public Asn1Utf8String(string data) + : base(data, Utf8StringTypeCode) + { + } + + private byte[] AllocByteArray(int nbytes) + { + return new byte[nbytes]; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var num = explicitTagging ? MatchTag(buffer, Tag) : implicitLength; + var str = new Asn1OctetString(); + str.Decode(buffer, false, num); + + Value = Encoding.UTF8.GetString(str.Value, 0, str.Value.Length); + + if (explicitTagging && (num == Asn1Status.IndefiniteLength)) + { + MatchTag(buffer, Asn1Tag.Eoc); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + try + { + var bytes = Encoding.UTF8.GetBytes(Value); + len = bytes.Length; + buffer.Copy(bytes); + } + catch (IOException exception) + { + Console.Out.WriteLine("This JVM does not support UTF-8 encoding"); + Asn1Util.WriteStackTrace(exception, Console.Error); + } + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + try + { + var bytes = Encoding.UTF8.GetBytes(Value); + + if (explicitTagging) + { + outs.EncodeTag(Tag); + } + + outs.EncodeLength(bytes.Length); + outs.Write(bytes); + } + catch (IOException exception) + { + Console.Out.WriteLine("This JVM does not support UTF-8 encoding"); + Asn1Util.WriteStackTrace(exception, Console.Error); + } + } + + private byte[] ReAllocByteArray(byte[] ba1, int nbytes) + { + var destinationArray = new byte[nbytes]; + + if (ba1 != null) + { + Array.Copy(ba1, 0, destinationArray, 0, ba1.Length); + } + + return destinationArray; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Util.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Util.cs new file mode 100644 index 0000000..991bf47 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Util.cs @@ -0,0 +1,337 @@ +using GostCryptography.Properties; +using System; +using System.Collections; +using System.IO; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + public static class Asn1Util + { + private static readonly byte[] Base64DecodeTable = + { + 0xff, 0xff, 0xff, 0x3e, 0xff, 0xff, 0xff, 0x3f, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, + 60, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0, 1, 2, 3, 4, 5, 6, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 0x10, 0x11, 0x12, 0x13, 20, 0x15, 0x16, + 0x17, 0x18, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1a, 0x1b, 0x1c, 0x1d, 30, 0x1f, 0x20, + 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 40, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, + 0x31, 50, 0x33, 0xff, 0xff, 0xff, 0xff, 0xff + }; + + private static readonly byte[] Base64EncodeTable = + { + 0x41, 0x42, 0x43, 0x44, 0x45, 70, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 80, + 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 90, 0x61, 0x62, 0x63, 100, 0x65, 0x66, + 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 110, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, + 0x77, 120, 0x79, 0x7a, 0x30, 0x31, 50, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x2b, 0x2f + }; + + public static string BcdToString(byte[] bcd) + { + var index = 0; + var builder = new StringBuilder(bcd.Length * 2); + + for (var i = 0; i < (bcd.Length * 2); i++) + { + byte num3; + + if ((i % 2) == 0) + { + num3 = (byte)(bcd[index] & 15); + } + else + { + num3 = (byte)UrShift(bcd[index++], 4); + } + + if (num3 == 15) + { + break; + } + + builder.Append((num3 < 10) ? ((char)(num3 + 0x30)) : ((char)((num3 + 0x41) - 10))); + } + + return builder.ToString(); + } + + public static byte[] DecodeBase64Array(byte[] srcArray) + { + var num = srcArray.Length / 4; + + if ((4 * num) != srcArray.Length) + { + throw ExceptionUtility.Argument("srcArray", Resources.Asn1InvalidEncodedDataLength); + } + + var num2 = 0; + var num3 = num; + + if (srcArray.Length != 0) + { + if (srcArray[srcArray.Length - 1] == 0x3d) + { + num2++; + num3--; + } + if (srcArray[srcArray.Length - 2] == 0x3d) + { + num2++; + } + } + + var buffer = new byte[(3 * num) - num2]; + var num4 = 0; + var num5 = 0; + + for (var i = 0; i < num3; i++) + { + var num7 = DecodeBase64Char(srcArray[num4++]); + var num8 = DecodeBase64Char(srcArray[num4++]); + var num9 = DecodeBase64Char(srcArray[num4++]); + var num10 = DecodeBase64Char(srcArray[num4++]); + + buffer[num5++] = (byte)((num7 << 2) | (num8 >> 4)); + buffer[num5++] = (byte)((num8 << 4) | (num9 >> 2)); + buffer[num5++] = (byte)((num9 << 6) | num10); + } + + if (num2 != 0) + { + var num11 = DecodeBase64Char(srcArray[num4++]); + var num12 = DecodeBase64Char(srcArray[num4++]); + + buffer[num5++] = (byte)((num11 << 2) | (num12 >> 4)); + + if (num2 == 1) + { + var num13 = DecodeBase64Char(srcArray[num4++]); + buffer[num5++] = (byte)((num12 << 4) | (num13 >> 2)); + } + } + + return buffer; + } + + private static int DecodeBase64Char(byte c) + { + var num = (c < 0x80) ? Base64DecodeTable[c - 40] : -1; + + if (num < 0) + { + throw ExceptionUtility.Argument("c", Resources.Asn1IllegalCharacter, c); + } + + return num; + } + + public static byte[] EncodeBase64Array(byte[] srcArray) + { + var num = srcArray.Length / 3; + var num2 = srcArray.Length - (3 * num); + var num3 = 4 * ((srcArray.Length + 2) / 3); + var buffer = new byte[num3]; + var num4 = 0; + var num5 = 0; + + for (var i = 0; i < num; i++) + { + var num7 = srcArray[num4++] & 0xff; + var num8 = srcArray[num4++] & 0xff; + var num9 = srcArray[num4++] & 0xff; + + buffer[num5++] = Base64EncodeTable[num7 >> 2]; + buffer[num5++] = Base64EncodeTable[((num7 << 4) & 0x3f) | (num8 >> 4)]; + buffer[num5++] = Base64EncodeTable[((num8 << 2) & 0x3f) | (num9 >> 6)]; + buffer[num5++] = Base64EncodeTable[num9 & 0x3f]; + } + + if (num2 != 0) + { + var num10 = srcArray[num4++] & 0xff; + buffer[num5++] = Base64EncodeTable[num10 >> 2]; + + if (num2 == 1) + { + buffer[num5++] = Base64EncodeTable[(num10 << 4) & 0x3f]; + buffer[num5++] = 0x3d; + buffer[num5++] = 0x3d; + + return buffer; + } + + var num11 = srcArray[num4++] & 0xff; + buffer[num5++] = Base64EncodeTable[((num10 << 4) & 0x3f) | (num11 >> 4)]; + buffer[num5++] = Base64EncodeTable[(num11 << 2) & 0x3f]; + buffer[num5++] = 0x3d; + } + + return buffer; + } + + public static byte[] GetAddressBytes(string ipaddress) + { + var index = 0; + var buffer = new byte[4]; + var tokenizer = new Tokenizer(ipaddress, "."); + + try + { + while (tokenizer.HasMoreTokens()) + { + buffer[index] = Convert.ToByte(tokenizer.NextToken()); + index++; + } + } + catch (Exception) + { + } + + return buffer; + } + + public static int GetBytesCount(long val) + { + return Asn1RunTime.GetLongBytesCount(val); + } + + public static int GetUlongBytesCount(long val) + { + return Asn1RunTime.GetUlongBytesCount(val); + } + + // Commented out unsed method that gives compile-time warning (SL 03/06/2022) +#if false + public static byte[] StringToBcd(string str) + { + int num2; + var buffer = new byte[(str.Length + 1) / 2]; + byte num = 0; + var num3 = num2 = 0; + + while (num3 < str.Length) + { + var c = char.ToUpper(str[num3]); + var flag = char.IsDigit(c); + + if (!flag && ((c < 'A') || (c >= 'F'))) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ValueParseException, str, num3); + } + + if ((num3 % 2) != 0) + { + num = (byte)(num | ((byte)(((byte)((flag != null) ? (c - 0x30) : ((c - 0x41) + 10))) << 4))); + buffer[num2++] = num; + } + else + { + num = flag ? ((byte)(c - '0')) : ((byte)((c - 'A') + 10)); + } + + num3++; + } + + if ((num3 % 2) != 0) + { + buffer[num2++] = (byte)(num | 240); + } + + return buffer; + } +#endif + public static void ToArray(ICollection c, object[] objects) + { + var num = 0; + var enumerator = c.GetEnumerator(); + + while (enumerator.MoveNext()) + { + objects[num++] = enumerator.Current; + } + } + + public static byte[] ToByteArray(string sourceString) + { + return Encoding.UTF8.GetBytes(sourceString); + } + + public static char[] ToCharArray(byte[] byteArray) + { + return Encoding.UTF8.GetChars(byteArray); + } + + public static string ToHexString(byte b) + { + var builder = new StringBuilder(4); + var str = Convert.ToString(b, 0x10); + var length = str.Length; + + if (length < 2) + { + builder.Append('0'); + builder.Append(str); + } + else if (length > 2) + { + builder.Append(str[length - 2]); + builder.Append(str[length - 1]); + } + else + { + builder.Append(str); + } + + return builder.ToString(); + } + + public static string ToHexString(byte[] b, int offset, int nbytes) + { + var builder = new StringBuilder(nbytes * 4); + + for (var i = 0; i < nbytes; i++) + { + builder.Append(ToHexString(b[offset + i])); + builder.Append(" "); + } + + return builder.ToString(); + } + + public static int UrShift(int number, int bits) + { + if (number >= 0) + { + return (number >> bits); + } + + return ((number >> bits) + (2 << ~bits)); + } + + public static int UrShift(int number, long bits) + { + return UrShift(number, (int)bits); + } + + public static long UrShift(long number, int bits) + { + if (number >= 0L) + { + return (number >> bits); + } + + return ((number >> bits) + (2L << ~bits)); + } + + public static long UrShift(long number, long bits) + { + return UrShift(number, (int)bits); + } + + public static void WriteStackTrace(Exception throwable, TextWriter stream) + { + stream.Write(throwable.StackTrace); + stream.Flush(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Value.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Value.cs new file mode 100644 index 0000000..65aa6ce --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1Value.cs @@ -0,0 +1,169 @@ +using GostCryptography.Properties; +using System; +using System.Text; + +namespace GostCryptography.Asn1.Ber +{ + public static class Asn1Value + { + private static byte[] AllocBitArray(int numbits) + { + var num = numbits / 8; + + if ((numbits % 8) != 0) + { + num++; + } + + return new byte[num]; + } + + public static byte[] ParseString(string data) + { + return ParseString(data, null); + } + + public static byte[] ParseString(string data, IntHolder numbits) + { + char ch; + int num; + int num2; + int num3; + int num4; + int num5; + + char ch2 = data[0]; + byte[] buffer; + + switch (ch2) + { + case '\'': + case '"': + if (!data.EndsWith("B")) + { + if (data.EndsWith("H")) + { + var builder = new StringBuilder(); + num3 = (data.Length - 3) * 4; + buffer = AllocBitArray(num3); + builder.Length = 2; + num = 1; + num2 = 0; + ch = '\0'; + + while ((num < data.Length) && (ch != ch2)) + { + ch = data[num++]; + + if (ch != ch2) + { + builder[0] = ch; + ch = (num >= data.Length) ? '0' : data[num]; + builder[1] = (ch == ch2) ? '0' : ch; + buffer[num2++] = (byte)Convert.ToInt32(builder.ToString(), 0x10); + } + + num++; + } + } + else + { + if (data[data.Length - 1] != ch2) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ValueParseException, data, data.Length - 1); + } + + num3 = (data.Length - 2) * 8; + buffer = AllocBitArray(num3); + num = 1; + ch = '\0'; + + while ((num < data.Length) && (ch != ch2)) + { + ch = data[num]; + + if (ch != ch2) + { + buffer[num - 1] = (byte)ch; + } + + num++; + } + } + + return SetNumBits(numbits, num3, buffer); + } + + num3 = data.Length - 3; + buffer = AllocBitArray(num3); + num5 = 0x80; + num = 1; + num4 = 0; + num2 = 0; + + while (num < data.Length) + { + ch = data[num]; + + if (ch == '1') + { + num4 |= num5; + } + else + { + if (ch == ch2) + { + break; + } + if (ch != '0') + { + ExceptionUtility.CryptographicException(Resources.Asn1ValueParseException, data, num); + } + } + + num5 = num5 >> 1; + + if (num5 == 0) + { + buffer[num2++] = (byte)num4; + num5 = 0x80; + num4 = 0; + } + + num++; + } + break; + default: + num3 = data.Length * 8; + buffer = AllocBitArray(num3); + num = 0; + + while (num < data.Length) + { + ch = data[num]; + buffer[num] = (byte)ch; + num++; + } + + return SetNumBits(numbits, num3, buffer); + } + + if (num5 != 0x80) + { + buffer[num2] = (byte)num4; + } + + return SetNumBits(numbits, num3, buffer); + } + + private static byte[] SetNumBits(IntHolder numbits, int num3, byte[] buffer) + { + if (numbits != null) + { + numbits.Value = num3; + } + + return buffer; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VarWidthCharString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VarWidthCharString.cs new file mode 100644 index 0000000..c21518c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VarWidthCharString.cs @@ -0,0 +1,21 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public abstract class Asn1VarWidthCharString : Asn1CharString + { + public const int BitsPerCharA = 8; + public const int BitsPerCharU = 8; + + protected internal Asn1VarWidthCharString(short typeCode) + : base(typeCode) + { + } + + protected internal Asn1VarWidthCharString(string data, short typeCode) + : base(data, typeCode) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VideotexString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VideotexString.cs new file mode 100644 index 0000000..ac88d0c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VideotexString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1VideotexString : Asn1VarWidthCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, VideoTexStringTypeCode); + + public Asn1VideotexString() + : base(VideoTexStringTypeCode) + { + } + + public Asn1VideotexString(string data) + : base(data, VideoTexStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VisibleString.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VisibleString.cs new file mode 100644 index 0000000..276b171 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Asn1VisibleString.cs @@ -0,0 +1,35 @@ +using System; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class Asn1VisibleString : Asn18BitCharString + { + public static readonly Asn1Tag Tag = new Asn1Tag(0, 0, VisibleStringTypeCode); + + public Asn1VisibleString() + : base(VisibleStringTypeCode) + { + } + + public Asn1VisibleString(string data) + : base(data, VisibleStringTypeCode) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + Decode(buffer, explicitTagging, implicitLength, Tag); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + return Encode(buffer, explicitTagging, Tag); + } + + public override void Encode(Asn1BerOutputStream outs, bool explicitTagging) + { + outs.EncodeCharString(Value, explicitTagging, Tag); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/BigInteger.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/BigInteger.cs new file mode 100644 index 0000000..ce6e07e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/BigInteger.cs @@ -0,0 +1,809 @@ +using System; + +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Ber +{ + [Serializable] + public class BigInteger + { + private const int AddressBits = 3; + private const int BitIndexMask = 7; + private const int BitsPerUnit = 8; + internal const int MaxBigIntLen = 100000; + private const int UnitMask = -1; + + [NonSerialized] + private static readonly int[] BitsPerDigit = + { + 0, 0, 0x400, 0x658, 0x800, 0x94a, 0xa58, 0xb3b, 0xc00, 0xcaf, 0xd4a, 0xdd7, 0xe58, 0xece, 0xf3b, 0xfa1, + 0x1000, 0x105a, 0x10af, 0x10fe, 0x114a, 0x1192, 0x11d7, 0x1219, 0x1258, 0x1294, 0x12ce, 0x1306, 0x133b, 0x136f, 0x13a1, 0x13d2, + 0x1400, 0x142e, 0x145a, 0x1485, 0x14af + }; + + [NonSerialized] + private static readonly int[] ByteRadix = + { + 0, 0, 0x80, 0, 0, 0, 0, 0, 0x40, 0, 100, 0, 0, 0, 0, 0, 0x10 + }; + + [NonSerialized] + private static readonly int[] DigitsPerByte = + { + 0, 0, 7, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 0, 0, 1 + }; + + private static readonly byte[] Zero = new byte[0]; + + [NonSerialized] + private int _sign; + + [NonSerialized] + private byte[] _value; + + public BigInteger() + { + _value = Zero; + _sign = 0; + } + + public BigInteger(long value) + : this(value.ToString()) + { + } + + public BigInteger(string value) + { + Init(value, 10); + } + + public BigInteger(byte[] value, int sign) + { + _value = value; + _sign = sign; + } + + public BigInteger(string value, int radix) + { + Init(value, radix); + } + + private static int BitsLeftOf(int x) + { + if (x != 0) + { + return (UnitMask << (BitsPerUnit - x)); + } + + return UnitMask; + } + + private static void DestructiveMulAdd(byte[] x, int y, byte z) + { + var num = (byte)(y & 0xff); + var num2 = z; + var length = x.Length; + var num5 = 0; + + for (var i = length - 1; i >= 0; i--) + { + var num4 = (num * x[i]) + num5; + x[i] = (byte)num4; + num5 = num4 >> BitsPerUnit; + } + + var num7 = x[length - 1] + num2; + x[length - 1] = (byte)num7; + num5 = num7 >> BitsPerUnit; + + for (var j = length - 2; j >= 0; j--) + { + num7 = x[j] + num5; + x[j] = (byte)num7; + num5 = num7 >> BitsPerUnit; + } + } + + private static void DivideByInt(ref BigInteger divident, int divisor, ref BigInteger quotient, ref int reminder) + { + var index = 0; + var num3 = 4; + var num4 = 0; + var num5 = 0; + + if (divisor == 0) + { + return; + } + + reminder = 0; + + if (divident._sign == 0) + { + quotient._sign = 0; + quotient._value = Zero; + return; + } + + quotient._value = new byte[divident._value.Length]; + + var num2 = quotient._value.Length - 1; + quotient._sign = ((quotient._sign * divisor) > 0) ? 1 : -1; + + var num6 = divident._value.Length * 2; + + while (num4 < num6) + { + num5 = num5 << 4; + num4++; + num5 |= (divident._value[index] >> num3) & 15; + + if (num3 == 0) + { + num3 = 4; + index++; + } + else + { + num3 = 0; + } + + ShiftLeft(quotient, 4); + + if (num5 >= divisor) + { + quotient._value[num2] = (byte)(quotient._value[num2] | ((byte)((num5 / divisor) & 15))); + num5 = num5 % divisor; + } + + reminder = num5; + } + + quotient._value = RemoveLeadingZeroBytes(quotient._value); + } + + public bool Equals(long value) + { + return Equals(new BigInteger(value)); + } + + public override bool Equals(object value) + { + var integer = value as BigInteger; + + if (integer == null) + { + return false; + } + + if (_value.Length != integer._value.Length) + { + return false; + } + + for (var i = 0; i < _value.Length; i++) + { + if (_value[i] != integer._value[i]) + { + return false; + } + } + + return true; + } + + private static void FastCopy(ref BigInteger src, ref BigInteger dst) + { + dst._value = new byte[src._value.Length]; + Array.Copy(src._value, 0, dst._value, 0, src._value.Length); + dst._sign = src._sign; + } + + private BigInteger GetCopy() + { + var integer = new BigInteger(); + + if (_value.Length > 0) + { + integer._value = new byte[_value.Length]; + Array.Copy(_value, 0, integer._value, 0, _value.Length); + } + else + { + integer._value = Zero; + } + + integer._sign = _sign; + + return integer; + } + + private BigInteger GetCopyAndInverse() + { + var integer = new BigInteger(); + + if (_value.Length > 0) + { + integer._value = new byte[_value.Length]; + + if (_sign < 0) + { + integer._value = GetData(); + integer._sign = 1; + return integer; + } + + Array.Copy(_value, 0, integer._value, 0, _value.Length); + integer._sign = _sign; + + return integer; + } + + integer._value = Zero; + + return integer; + } + + public byte[] GetData() + { + int num2; + var dataLen = GetDataLen(); + var index = _value.Length - 1; + var num4 = dataLen - 1; + + if (_sign == 0) + { + return Zero; + } + + var buffer = new byte[dataLen]; + + if (_sign >= 0) + { + num2 = _value.Length - 1; + + while (((num2 >= 0) && (num4 >= 0)) && (index >= 0)) + { + buffer[num4] = _value[index]; + num2--; + num4--; + index--; + } + + if ((dataLen - _value.Length) > 0) + { + buffer[num4] = 0; + } + + return buffer; + } + + num2 = _value.Length - 1; + + while (((num2 >= 0) && (num4 >= 0)) && (index >= 0)) + { + unchecked + { + buffer[num4] = (byte)-_value[index]; + } + + if (_value[index] != 0) + { + num2--; + num4--; + index--; + break; + } + + num2--; + num4--; + index--; + } + + while (((num2 >= 0) && (num4 >= 0)) && (index >= 0)) + { + unchecked + { + buffer[num4] = (byte)~_value[index]; + } + + num2--; + num4--; + index--; + } + + if ((dataLen - _value.Length) > 0) + { + buffer[num4] = 0xff; + } + + return buffer; + } + + private int GetDataLen() + { + if (_sign == 0) + { + return 1; + } + + if ((_sign > 0) && ((_value[0] & 0x80) != 0)) + { + return (_value.Length + 1); + } + + if (_sign < 0) + { + var num = _value[0]; + + if ((_value.Length == 1) || ((_value.Length > 1) && (_value[1] == 0))) + { + num = (byte)~(num - 1); + } + else + { + unchecked + { + num = (byte)~num; + } + } + + if ((num & 0x80) == 0) + { + return (_value.Length + 1); + } + } + + return _value.Length; + } + + public override int GetHashCode() + { + if (_value == null) + { + return base.GetHashCode(); + } + + if (_value.Length == 0) + { + return base.GetHashCode(); + } + + var num = 0; + var num2 = (_value.Length > 20) ? 20 : _value.Length; + + for (var i = 0; i < num2; i++) + { + num ^= _value[i]; + } + + return num; + } + + public void Init(string val, int radix) + { + var str = ""; + + if (val[0] == '-') + { + val = val.Substring(1); + str = "-"; + } + + if (val.StartsWith("0x")) + { + radix = 0x10; + val = val.Substring(2); + } + else if (val.StartsWith("0b")) + { + radix = 2; + val = val.Substring(2); + } + else if (val.StartsWith("0o")) + { + radix = 8; + val = val.Substring(2); + } + + val = str + val; + var startIndex = 0; + var length = val.Length; + + if (((radix != 2) && (radix != 0x10)) && ((radix != 10) && (radix != 8))) + { + throw new FormatException(Resources.Asn1InvalidFormatForBigIntegerValue); + } + + if (val.Length == 0) + { + throw new FormatException(Resources.Asn1ZeroLengthBigInteger); + } + + _sign = 1; + + var index = val.IndexOf('-'); + + if (index != -1) + { + if (index != 0) + { + throw new FormatException(Resources.Asn1IllegalEmbeddedMinusSign); + } + + if (val.Length == 1) + { + throw new FormatException(Resources.Asn1ZeroLengthBigInteger); + } + + _sign = -1; + + startIndex = 1; + } + + while ((startIndex < length) && (val[startIndex] == '0')) + { + startIndex++; + } + + if (startIndex == length) + { + _sign = 0; + _value = Zero; + } + else + { + var num2 = length - startIndex; + var num5 = Asn1Util.UrShift(num2 * BitsPerDigit[radix], 10) + 1; + var num1 = (num5 + 0x1f) / 0x20; + + _value = new byte[num2]; + + var num6 = num2 % DigitsPerByte[radix]; + + if (num6 == 0) + { + num6 = DigitsPerByte[radix]; + } + + var str2 = val.Substring(startIndex, num6); + startIndex += num6; + + _value[_value.Length - 1] = Convert.ToByte(str2, radix); + + if (_value[_value.Length - 1] < 0) + { + throw new FormatException(Resources.Asn1IllegalDigit); + } + + var y = ByteRadix[radix]; + byte z; + + while (startIndex < val.Length) + { + str2 = val.Substring(startIndex, DigitsPerByte[radix]); + startIndex += DigitsPerByte[radix]; + z = Convert.ToByte(str2, radix); + + if (z < 0) + { + throw new FormatException(Resources.Asn1IllegalDigit); + } + + DestructiveMulAdd(_value, y, z); + } + + _value = TrustedStripLeadingZeroInts(_value); + } + } + + private static string IntToStr(long value, int radix) + { + var chArray = new char[0x22]; + var num = 0; + var str = ""; + + if ((radix >= 2) && (radix <= 0x10)) + { + while (num < 0x22) + { + chArray[num++] = (char)((ushort)(value % radix)); + + if ((value /= radix) == 0L) + { + break; + } + } + + while (num != 0) + { + var ch = chArray[--num]; + + if (ch < '\n') + { + str = str + ((char)(ch + '0')); + } + else + { + str = str + ((char)((ch - '\n') + 0x41)); + } + } + } + + return str; + } + + public bool IsNegative() + { + return (_sign < 0); + } + + private char NibbleToHexChar(int b) + { + if ((b >= 0) && (b <= 9)) + { + return (char)(b + 0x30); + } + + if ((b >= 10) && (b <= 15)) + { + return (char)((b - 10) + 0x61); + } + + return '?'; + } + + public static implicit operator BigInteger(long value) + { + return new BigInteger(value); + } + + private static byte[] RemoveLeadingZeroBytes(byte[] data) + { + if (data.Length == 0) + { + return data; + } + + var index = 0; + + while ((index < data.Length) && (data[index] == 0)) + { + index++; + } + + var destinationArray = new byte[data.Length - index]; + Array.Copy(data, index, destinationArray, 0, data.Length - index); + + return destinationArray; + } + + public void SetData(byte[] ivalue) + { + if (ivalue.Length > MaxBigIntLen) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1TooBigIntegerValue, ivalue.Length); + } + + if ((ivalue.Length > 0) && ((ivalue[0] & 0x80) != 0)) + { + var index = 0; + var num = 0; + + _sign = -1; + + while ((num < ivalue.Length) && (ivalue[index] == 0xff)) + { + num++; + index++; + } + + var num2 = num; + + while ((num2 < ivalue.Length) && (ivalue[index] == 0)) + { + num2++; + index++; + } + + var num3 = (num2 == ivalue.Length) ? 1 : 0; + _value = new byte[(ivalue.Length - num) + num3]; + index = num; + + var num4 = num; + + while (num < ivalue.Length) + { + unchecked + { + _value[(num - num4) + num3] = (byte)~ivalue[index]; + } + + num++; + index++; + } + + for (num = _value.Length - 1; (_value[num] = (byte)(_value[num] + 1)) == 0; num--) + { + } + + _value = RemoveLeadingZeroBytes(_value); + } + else + { + _value = RemoveLeadingZeroBytes(ivalue); + _sign = (ivalue.Length == 0) ? 0 : 1; + } + } + + private static int ShiftLeft(BigInteger data, uint shift) + { + var value = data._value; + var length = value.Length; + var index = (int)(shift >> AddressBits); + var num3 = ((int)shift) & BitIndexMask; + var num4 = 8 - num3; + var num5 = 0; + var num7 = length; + + if (length != 0) + { + length = length << AddressBits; + var num6 = (int)((((length - shift) + 8L) - 1L) >> AddressBits); + + while (num5 < (num6 - 1)) + { + value[num5++] = (byte)((value[index] << num3) | ((num4 == 8) ? 0 : (value[index + 1] >> num4))); + index++; + } + + length &= BitIndexMask; + value[num5] = (num7 == num6) ? ((byte)((value[index] & BitsLeftOf(length)) << num3)) : ((byte)((value[index] << num3) | ((num4 == 8) ? 0 : ((value[index + 1] & BitsLeftOf(length)) >> num4)))); + + if (num6 < num7) + { + for (var i = num6; i < (num7 - num6); i++) + { + value[i] = 0; + } + } + } + + return 0; + } + + public override string ToString() + { + return ToString(10); + } + + public string ToString(int radix) + { + if ((radix == 2) || (radix == 0x10)) + { + int num; + int num2; + + if (radix == 2) + { + num2 = 8; + num = 1; + } + else + { + num2 = 2; + num = 4; + } + + var num3 = num2 * GetDataLen(); + var chArray = new char[num3]; + var index = num3 - 1; + + for (var i = _value.Length - 1; i >= 0; i--) + { + byte num6; + int num8; + + if (_sign < 0) + { + unchecked + { + num6 = (byte)~_value[i]; + } + + if ((_sign < 0) && ((num6 = (byte)(num6 + 1)) != 0)) + { + _sign = 0; + } + } + else + { + num6 = _value[i]; + } + + var num7 = num8 = 0; + + while (num7 < num2) + { + var b = (num6 >> num8) & ((1 << num) - 1); + chArray[index] = NibbleToHexChar(b); + num7++; + index--; + num8 += num; + } + } + + while (index >= 0) + { + chArray[index--] = '0'; + } + + return new string(chArray); + } + + var reminder = 0; + var str = ""; + var quotient = new BigInteger(); + + var copy = (radix == 10) ? GetCopy() : GetCopyAndInverse(); + + do + { + DivideByInt(ref copy, ByteRadix[radix], ref quotient, ref reminder); + var str2 = IntToStr(reminder, radix); + var length = str2.Length; + + str = str2 + str; + + if ((quotient._value.Length != 0) || (radix != 10)) + { + int num12; + + for (num12 = length; num12 < DigitsPerByte[radix]; num12++) + { + str = '0' + str; + } + + FastCopy(ref quotient, ref copy); + + if (((quotient._value.Length == 0) && (_sign > 0)) && ((radix != 10) && ((reminder & 0x80) != 0))) + { + str = '0' + str; + } + } + else if ((_sign < 0) && (radix == 10)) + { + str = '-' + str; + } + + } + while ((quotient._value != null) && (quotient._value.Length != 0)); + + return str; + } + + private static byte[] TrustedStripLeadingZeroInts(byte[] val) + { + var index = 0; + + while ((index < val.Length) && (val[index] == 0)) + { + index++; + } + + if (index <= 0) + { + return val; + } + + var buffer = new byte[val.Length - index]; + + for (var i = 0; i < (val.Length - index); i++) + { + buffer[i] = val[index + i]; + } + + return buffer; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1InputStream.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1InputStream.cs new file mode 100644 index 0000000..81df7f9 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1InputStream.cs @@ -0,0 +1,12 @@ +namespace GostCryptography.Asn1.Ber +{ + public interface IAsn1InputStream + { + int Available(); + void Close(); + void Mark(); + bool MarkSupported(); + void Reset(); + long Skip(long nbytes); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1NamedEventHandler.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1NamedEventHandler.cs new file mode 100644 index 0000000..dfc2b82 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1NamedEventHandler.cs @@ -0,0 +1,9 @@ +namespace GostCryptography.Asn1.Ber +{ + public interface IAsn1NamedEventHandler + { + void Characters(string svalue, short typeCode); + void EndElement(string name, int index); + void StartElement(string name, int index); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1TaggedEventHandler.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1TaggedEventHandler.cs new file mode 100644 index 0000000..f7c2260 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1TaggedEventHandler.cs @@ -0,0 +1,9 @@ +namespace GostCryptography.Asn1.Ber +{ + public interface IAsn1TaggedEventHandler + { + void Contents(byte[] data); + void EndElement(Asn1Tag tag); + void StartElement(Asn1Tag tag, int len, byte[] tagLenBytes); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1Type.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1Type.cs new file mode 100644 index 0000000..35d188c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IAsn1Type.cs @@ -0,0 +1,12 @@ +using System.IO; + +namespace GostCryptography.Asn1.Ber +{ + public interface IAsn1Type + { + void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength); + int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging); + void Encode(Asn1BerOutputStream outs, bool explicitTagging); + void Print(TextWriter outs, string varName, int level); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/IntHolder.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IntHolder.cs new file mode 100644 index 0000000..185a41f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/IntHolder.cs @@ -0,0 +1,16 @@ +namespace GostCryptography.Asn1.Ber +{ + public class IntHolder + { + public int Value; + + public IntHolder() + { + } + + public IntHolder(int value) + { + Value = value; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Ber/Tokenizer.cs b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Tokenizer.cs new file mode 100644 index 0000000..016bed8 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Ber/Tokenizer.cs @@ -0,0 +1,156 @@ +using System; +using System.Collections; + +namespace GostCryptography.Asn1.Ber +{ + class Tokenizer : IEnumerator + { + private readonly char[] _chars; + private readonly bool _includeDelims; + private long _currentPos; + private string _delimiters; + + public Tokenizer(string source) + { + _delimiters = " \t\n\r\f"; + _chars = source.ToCharArray(); + } + + public Tokenizer(string source, string delimiters) + : this(source) + { + _delimiters = delimiters; + } + + public Tokenizer(string source, string delimiters, bool includeDelims) + : this(source, delimiters) + { + _includeDelims = includeDelims; + } + + public int Count + { + get + { + int num3; + var currentPos = _currentPos; + var num2 = 0; + + try + { + while (true) + { + NextToken(); + num2++; + } + } + catch (ArgumentOutOfRangeException) + { + _currentPos = currentPos; + num3 = num2; + } + + return num3; + } + } + + public bool MoveNext() + { + return HasMoreTokens(); + } + + public void Reset() + { + } + + public object Current + { + get { return NextToken(); } + } + + public bool HasMoreTokens() + { + var currentPos = _currentPos; + + try + { + NextToken(); + } + catch (ArgumentOutOfRangeException) + { + return false; + } + finally + { + _currentPos = currentPos; + } + + return true; + } + + public string NextToken() + { + return NextToken(_delimiters); + } + + public string NextToken(string delimiters) + { + _delimiters = delimiters; + + var array = delimiters.ToCharArray(); + + if (_currentPos == _chars.Length) + { + throw ExceptionUtility.ArgumentOutOfRange("delimiters"); + } + + if ((Array.IndexOf(array, _chars[(int)((IntPtr)_currentPos)], 0, array.Length) != -1) && _includeDelims) + { + long num; + _currentPos = (num = _currentPos) + 1L; + + return ("" + _chars[(int)((IntPtr)num)]); + } + + return NextToken(delimiters.ToCharArray()); + } + + private string NextToken(char[] delimiters) + { + var str = ""; + var currentPos = _currentPos; + + while (Array.IndexOf(delimiters, _chars[(int)((IntPtr)_currentPos)], 0, delimiters.Length) != -1) + { + if ((_currentPos += 1L) == _chars.Length) + { + _currentPos = currentPos; + + throw ExceptionUtility.ArgumentOutOfRange("delimiters"); + } + } + + while (Array.IndexOf(delimiters, _chars[(int)((IntPtr)_currentPos)], 0, delimiters.Length) == -1) + { + str = str + _chars[(int)((IntPtr)_currentPos)]; + + if ((_currentPos += 1L) == _chars.Length) + { + return str; + } + } + + return str; + } + + public string RemainingString() + { + if ((_chars != null) && (_currentPos < _chars.Length)) + { + return new string(_chars, (int)_currentPos, _chars.Length); + } + + return null; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/GostAsn1Choice.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/GostAsn1Choice.cs new file mode 100644 index 0000000..9198ad3 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/GostAsn1Choice.cs @@ -0,0 +1,72 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost +{ + public abstract class GostAsn1Choice : Asn1Choice + { + private const byte Null = 1; + private const byte Params = 2; + + protected abstract short TagForm { get; } + protected abstract int TagIdCode { get; } + protected abstract Asn1Type CreateParams(); + + public override string ElemName + { + get + { + switch (ChoiceId) + { + case Null: + return "null_"; + case Params: + return "params_"; + } + + return "UNDEFINED"; + } + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var tag = new Asn1Tag(); + buffer.Mark(); + + var num = buffer.DecodeTagAndLength(tag); + + if (tag.Equals(0, 0, NullTypeCode)) + { + buffer.Reset(); + + SetElement(Null, new NullParams()); + Element.Decode(buffer, true, num); + } + else + { + if (!tag.Equals(0, TagForm, TagIdCode)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidChoiceOptionTagException, tag, buffer.ByteCount); + } + + buffer.Reset(); + + SetElement(Params, CreateParams()); + Element.Decode(buffer, true, num); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + switch (ChoiceId) + { + case Null: + return GetElement().Encode(buffer, true); + case Params: + return GetElement().Encode(buffer, true); + } + + throw ExceptionUtility.CryptographicException(Resources.Asn1InvalidChoiceOptionException); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_BlobParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_BlobParams.cs new file mode 100644 index 0000000..f37e6d1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_BlobParams.cs @@ -0,0 +1,69 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_BlobParams : Asn1Type + { + public Asn1ObjectIdentifier EncryptionParamSet { get; set; } + + public Asn1OpenExt ExtElement { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptionParamSet = null; + ExtElement = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptionParamSet = new Asn1ObjectIdentifier(); + EncryptionParamSet.Decode(buffer, true, parsedLen.Value); + + if (!context.Expired()) + { + if (buffer.PeekTag().Equals(0, 0, ObjectIdentifierTypeCode)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1SeqOrderException); + } + + ExtElement = new Asn1OpenExt(); + + while (!context.Expired()) + { + ExtElement.DecodeComponent(buffer); + } + } + else + { + ExtElement = null; + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (ExtElement != null) + { + len += ExtElement.Encode(buffer, false); + } + + len += EncryptionParamSet.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Constants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Constants.cs new file mode 100644 index 0000000..371f931 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Constants.cs @@ -0,0 +1,10 @@ +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public static class Gost_28147_89_Constants + { + /// + /// Алгоритм шифрования ГОСТ 28147-89 + /// + public static readonly OidValue EncryptAlgorithm = OidValue.FromString("1.2.643.2.2.21"); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_EncryptedKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_EncryptedKey.cs new file mode 100644 index 0000000..d4d551f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_EncryptedKey.cs @@ -0,0 +1,82 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_EncryptedKey : Asn1Type + { + public Gost_28147_89_Key EncryptedKey { get; set; } + + public Gost_28147_89_Mac MacKey { get; set; } + + public Gost_28147_89_Key MaskKey { get; set; } + + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptedKey = null; + MacKey = null; + MaskKey = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, OctetStringTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptedKey = new Gost_28147_89_Key(); + EncryptedKey.Decode(buffer, true, parsedLen.Value); + + if (context.MatchElemTag(0x80, 0, EocTypeCode, parsedLen, true)) + { + MaskKey = new Gost_28147_89_Key(); + MaskKey.Decode(buffer, false, parsedLen.Value); + } + + if (!context.MatchElemTag(0, 0, OctetStringTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + MacKey = new Gost_28147_89_Mac(); + MacKey.Decode(buffer, true, parsedLen.Value); + + if (MacKey.Length != 4) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(MacKey.Length), MacKey.Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (MacKey.Length != 4) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(MacKey.Length), MacKey.Length); + } + + len += MacKey.Encode(buffer, true); + + if (MaskKey != null) + { + var maskKeyLen = MaskKey.Encode(buffer, false); + len += maskKeyLen; + len += buffer.EncodeTagAndLength(0x80, 0, EocTypeCode, maskKeyLen); + } + + len += EncryptedKey.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Iv.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Iv.cs new file mode 100644 index 0000000..465c06c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Iv.cs @@ -0,0 +1,35 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_Iv : Asn1OctetString + { + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + base.Decode(buffer, explicitTagging, implicitLength); + + if (Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + + var len = base.Encode(buffer, false); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Key.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Key.cs new file mode 100644 index 0000000..8c8cd3e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Key.cs @@ -0,0 +1,44 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_Key : Asn1OctetString + { + public Gost_28147_89_Key() + { + } + + public Gost_28147_89_Key(byte[] data) + : base(data) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + base.Decode(buffer, explicitTagging, implicitLength); + + if (Length != 32) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (Length != 32) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + + var len = base.Encode(buffer, false); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyExchangeInfo.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyExchangeInfo.cs new file mode 100644 index 0000000..be1d1a7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyExchangeInfo.cs @@ -0,0 +1,151 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + /// + /// Информация о зашифрованном ключе ГОСТ 28147-89 + /// + public sealed class Gost_28147_89_KeyExchangeInfo + { + /// + /// Идентификатор OID параметров шифрования + /// + public string EncryptionParamSet { get; set; } + + /// + /// Зашифрованный ключ + /// + public byte[] EncryptedKey { get; set; } + + /// + /// Контрольная сумма зашифрованного ключа (Message Authentication Code, MAC) + /// + public byte[] Mac { get; set; } + + /// + /// Материал ключа пользователя (User Keying Material, UKM) + /// + public byte[] Ukm { get; set; } + + /// + /// Зашифровать информацию о ключе + /// + public void Decode(byte[] data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + try + { + var asnDecoder = new Asn1BerDecodeBuffer(data); + var keyWrap = new Gost_28147_89_KeyWrap(); + keyWrap.Decode(asnDecoder); + + EncryptionParamSet = keyWrap.EncryptedParams.EncryptionParamSet.Oid.Value; + EncryptedKey = keyWrap.EncryptedKey.EncryptedKey.Value; + Mac = keyWrap.EncryptedKey.MacKey.Value; + Ukm = keyWrap.EncryptedParams.Ukm.Value; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, nameof(Gost_28147_89_KeyWrap)); + } + } + + /// + /// Расшифровать информацию о ключе + /// + public byte[] Encode() + { + byte[] data; + + var keyWrap = new Gost_28147_89_KeyWrap(); + + try + { + keyWrap.EncryptedKey = new Gost_28147_89_EncryptedKey + { + EncryptedKey = new Gost_28147_89_Key(EncryptedKey), + MacKey = new Gost_28147_89_Mac(Mac) + }; + + keyWrap.EncryptedParams = new Gost_28147_89_KeyWrapParams + { + EncryptionParamSet = Asn1ObjectIdentifier.FromString(EncryptionParamSet), + Ukm = new Asn1OctetString(Ukm) + }; + + var asnEncoder = new Asn1BerEncodeBuffer(); + keyWrap.Encode(asnEncoder); + data = asnEncoder.MsgCopy; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, nameof(Gost_28147_89_KeyWrap)); + } + + return data; + } + + + /// + /// Расшифровать идентификатор OID параметров шифрования + /// + public static string DecodeEncryptionParamSet(byte[] data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + string encryptionParamSet; + + try + { + var asnDecoder = new Asn1BerDecodeBuffer(data); + var parameters = new Gost_28147_89_BlobParams(); + parameters.Decode(asnDecoder); + + encryptionParamSet = parameters.EncryptionParamSet.Oid.Value; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, typeof(Gost_28147_89_BlobParams).FullName); + } + + return encryptionParamSet; + } + + /// + /// Зашифровать идентификатор OID параметров шифрования + /// + public static byte[] EncodeEncryptionParamSet(string encryptionParamSet) + { + if (encryptionParamSet == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptionParamSet)); + } + + byte[] data; + + try + { + var parameters = new Gost_28147_89_BlobParams { EncryptionParamSet = Asn1ObjectIdentifier.FromString(encryptionParamSet) }; + + var asnEncoder = new Asn1BerEncodeBuffer(); + parameters.Encode(asnEncoder); + data = asnEncoder.MsgCopy; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1EncodeError, nameof(Gost_28147_89_BlobParams)); + } + + return data; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrap.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrap.cs new file mode 100644 index 0000000..f2181a7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrap.cs @@ -0,0 +1,53 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_KeyWrap : Asn1Type + { + public Gost_28147_89_EncryptedKey EncryptedKey { get; set; } + + public Gost_28147_89_KeyWrapParams EncryptedParams { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptedKey = null; + EncryptedParams = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0x20, SequenceTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptedKey = new Gost_28147_89_EncryptedKey(); + EncryptedKey.Decode(buffer, true, parsedLen.Value); + + if (!context.MatchElemTag(0, 0x20, SequenceTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptedParams = new Gost_28147_89_KeyWrapParams(); + EncryptedParams.Decode(buffer, true, parsedLen.Value); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + len += EncryptedParams.Encode(buffer, true); + len += EncryptedKey.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrapParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrapParams.cs new file mode 100644 index 0000000..f596a15 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_KeyWrapParams.cs @@ -0,0 +1,66 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_KeyWrapParams : Asn1Type + { + public Asn1ObjectIdentifier EncryptionParamSet { get; set; } + + public Asn1OctetString Ukm { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptionParamSet = null; + Ukm = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptionParamSet = new Asn1ObjectIdentifier(); + EncryptionParamSet.Decode(buffer, true, parsedLen.Value); + + if (context.MatchElemTag(0, 0, OctetStringTypeCode, parsedLen, false)) + { + Ukm = new Asn1OctetString(); + Ukm.Decode(buffer, true, parsedLen.Value); + + if (Ukm.Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Ukm.Length), Ukm.Length); + } + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (Ukm != null) + { + if (Ukm.Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Ukm.Length), Ukm.Length); + } + + len += Ukm.Encode(buffer, true); + } + + len += EncryptionParamSet.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Mac.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Mac.cs new file mode 100644 index 0000000..9ec6f55 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Mac.cs @@ -0,0 +1,44 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_Mac : Asn1OctetString + { + public Gost_28147_89_Mac() + { + } + + public Gost_28147_89_Mac(byte[] data) + : base(data) + { + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + base.Decode(buffer, explicitTagging, implicitLength); + + if ((Length < 1) || (Length > 4)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if ((Length < 1) || (Length > 4)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + + var len = base.Encode(buffer, false); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Params.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Params.cs new file mode 100644 index 0000000..3f24b53 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_28147_89/Gost_28147_89_Params.cs @@ -0,0 +1,54 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_28147_89 +{ + public sealed class Gost_28147_89_Params : Asn1Type + { + public Asn1ObjectIdentifier EncryptionParamSet { get; private set; } + + public Gost_28147_89_Iv Iv { get; private set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptionParamSet = null; + Iv = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, OctetStringTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + Iv = new Gost_28147_89_Iv(); + Iv.Decode(buffer, true, parsedLen.Value); + + if (!context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptionParamSet = new Asn1ObjectIdentifier(); + EncryptionParamSet.Decode(buffer, true, parsedLen.Value); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + len += EncryptionParamSet.Encode(buffer, true); + len += Iv.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchange.cs new file mode 100644 index 0000000..27e07c8 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchange.cs @@ -0,0 +1,161 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.PublicKey; +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + /// + /// Информация о ключе цифровой подписи ГОСТ Р 34.10 + /// + public abstract class Gost_R3410_KeyExchange + { + /// + /// Информация о зашифрованном ключе ГОСТ 28147-89 + /// + public Gost_28147_89_KeyExchangeInfo SessionEncryptedKey { get; set; } + + /// + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + /// + public Gost_R3410_KeyExchangeParams TransportParameters { get; set; } + + protected abstract OidValue KeyAlgorithm { get; } + + protected abstract Gost_R3410_PublicKeyParams CreatePublicKeyParams(); + + protected abstract Gost_R3410_KeyExchangeParams CreateKeyExchangeParams(); + + /// + /// Расшифровать информацию о ключе + /// + public void Decode(byte[] data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + try + { + var asnDecoder = new Asn1BerDecodeBuffer(data); + var keyTransport = new Gost_R3410_KeyTransport(); + keyTransport.Decode(asnDecoder); + DecodeSessionKey(keyTransport); + DecodePublicKey(keyTransport); + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, nameof(Gost_R3410_KeyTransport)); + } + } + + private void DecodeSessionKey(Gost_R3410_KeyTransport keyTransport) + { + SessionEncryptedKey = new Gost_28147_89_KeyExchangeInfo + { + EncryptionParamSet = keyTransport.TransportParams.EncryptionParamSet.Oid.Value, + EncryptedKey = keyTransport.SessionEncryptedKey.EncryptedKey.Value, + Mac = keyTransport.SessionEncryptedKey.MacKey.Value, + Ukm = keyTransport.TransportParams.Ukm.Value + }; + } + + private void DecodePublicKey(Gost_R3410_KeyTransport keyTransport) + { + var publicKeyInfo = keyTransport.TransportParams.EphemeralPublicKey; + var publicKeyAlgOid = publicKeyInfo.Algorithm.Algorithm.Oid.Value; + + if (!publicKeyAlgOid.Equals(KeyAlgorithm.Value)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1DecodeAlg, publicKeyAlgOid); + } + + var choice = publicKeyInfo.Algorithm.Parameters as Asn1Choice; + + if (choice == null) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1DecodeAlgorithmParameters); + } + + var publicKeyParams = choice.GetElement() as Gost_R3410_PublicKeyParams; + + if (publicKeyParams == null) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1DecodeAlgorithmParameters); + } + + var asnDecoder = new Asn1BerDecodeBuffer(publicKeyInfo.SubjectPublicKey.Value); + var publicKey = new Asn1OctetString(); + publicKey.Decode(asnDecoder); + + TransportParameters = CreateKeyExchangeParams(); + TransportParameters.PublicKeyParamSet = publicKeyParams.PublicKeyParamSet.Oid.Value; + TransportParameters.DigestParamSet = publicKeyParams.DigestParamSet?.Oid.Value; + TransportParameters.EncryptionParamSet = publicKeyParams.EncryptionParamSet?.Oid.Value; + TransportParameters.PublicKey = publicKey.Value; + TransportParameters.PrivateKey = null; + } + + /// + /// Зашифровать информацию о ключе + /// + public byte[] Encode() + { + var asnEncoder = new Asn1BerEncodeBuffer(); + var keyTransport = new Gost_R3410_KeyTransport(); + + try + { + keyTransport.SessionEncryptedKey = new Gost_28147_89_EncryptedKey + { + EncryptedKey = new Gost_28147_89_Key(SessionEncryptedKey.EncryptedKey), + MacKey = new Gost_28147_89_Mac(SessionEncryptedKey.Mac) + }; + + keyTransport.TransportParams = new Gost_R3410_TransportParams + { + EncryptionParamSet = Asn1ObjectIdentifier.FromString(SessionEncryptedKey.EncryptionParamSet), + EphemeralPublicKey = EncodePublicKey(TransportParameters), + Ukm = new Asn1OctetString(SessionEncryptedKey.Ukm) + }; + + keyTransport.Encode(asnEncoder); + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1EncodeError, nameof(Gost_R3410_KeyTransport)); + } + + return asnEncoder.MsgCopy; + } + + private SubjectPublicKeyInfo EncodePublicKey(Gost_R3410_KeyExchangeParams transportParameters) + { + var asnEncoder = new Asn1BerEncodeBuffer(); + var publicKey = new Asn1OctetString(transportParameters.PublicKey); + publicKey.Encode(asnEncoder); + + var publicKeyValue = asnEncoder.MsgCopy; + + var publicKeyInfo = new SubjectPublicKeyInfo + { + SubjectPublicKey = new Asn1BitString(publicKeyValue.Length * 8, publicKeyValue) + }; + + var publicKeyParams = CreatePublicKeyParams(); + publicKeyParams.PublicKeyParamSet = Asn1ObjectIdentifier.FromString(transportParameters.PublicKeyParamSet); + publicKeyParams.DigestParamSet = Asn1ObjectIdentifier.FromString(transportParameters.DigestParamSet); + publicKeyParams.EncryptionParamSet = Asn1ObjectIdentifier.FromString(transportParameters.EncryptionParamSet); + + asnEncoder.Reset(); + publicKeyParams.Encode(asnEncoder); + + var publicKeyAlgOid = new Asn1ObjectIdentifier(KeyAlgorithm); + publicKeyInfo.Algorithm = new AlgorithmIdentifier(publicKeyAlgOid, new Asn1OpenType(asnEncoder.MsgCopy)); + + return publicKeyInfo; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchangeParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchangeParams.cs new file mode 100644 index 0000000..4ad1d20 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyExchangeParams.cs @@ -0,0 +1,157 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + /// + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + /// + public abstract class Gost_R3410_KeyExchangeParams + { + protected Gost_R3410_KeyExchangeParams() + { + } + + protected Gost_R3410_KeyExchangeParams(Gost_R3410_KeyExchangeParams other) + { + DigestParamSet = other.DigestParamSet; + PublicKeyParamSet = other.PublicKeyParamSet; + EncryptionParamSet = other.EncryptionParamSet; + PublicKey = other.PublicKey; + PrivateKey = other.PrivateKey; + } + + /// + /// Идентификатор OID параметров хэширования + /// + public string DigestParamSet { get; set; } + + /// + /// Идентификатор OID параметров открытого ключа + /// + public string PublicKeyParamSet { get; set; } + + /// + /// Идентификатор OID параметров шифрования + /// + public string EncryptionParamSet { get; set; } + + /// + /// Открытый ключ + /// + public byte[] PublicKey { get; set; } + + /// + /// Закрытый ключ + /// + public byte[] PrivateKey { get; set; } + + public abstract Gost_R3410_KeyExchangeParams Clone(); + + protected abstract Gost_R3410_PublicKey CreatePublicKey(); + + protected abstract Gost_R3410_PublicKeyParams CreatePublicKeyParams(); + + /// + /// Расшифровать параметры + /// + public void DecodeParameters(byte[] data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + try + { + var asnDecoder = new Asn1BerDecodeBuffer(data); + var publicKeyParams = CreatePublicKeyParams(); + publicKeyParams.Decode(asnDecoder); + + PublicKeyParamSet = publicKeyParams.PublicKeyParamSet.Oid.Value; + DigestParamSet = publicKeyParams.DigestParamSet?.Oid.Value; + EncryptionParamSet = publicKeyParams.EncryptionParamSet?.Oid.Value; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, nameof(Gost_R3410_PublicKeyParams)); + } + } + + /// + /// Зашифровать параметры + /// + public byte[] EncodeParameters() + { + byte[] data; + + try + { + var publicKeyParams = CreatePublicKeyParams(); + publicKeyParams.PublicKeyParamSet = Asn1ObjectIdentifier.FromString(PublicKeyParamSet); + publicKeyParams.DigestParamSet = Asn1ObjectIdentifier.FromString(DigestParamSet); + publicKeyParams.EncryptionParamSet = Asn1ObjectIdentifier.FromString(EncryptionParamSet); + + var asnEncoder = new Asn1BerEncodeBuffer(); + publicKeyParams.Encode(asnEncoder); + data = asnEncoder.MsgCopy; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1EncodeError, nameof(Gost_R3410_PublicKeyParams)); + } + + return data; + } + + + /// + /// Расшифровать публичный ключ + /// + public void DecodePublicKey(byte[] data) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + try + { + var asnDecoder = new Asn1BerDecodeBuffer(data); + var publicKey = CreatePublicKey(); + publicKey.Decode(asnDecoder); + + PublicKey = publicKey.Value; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1DecodeError, nameof(Gost_R3410_PublicKey)); + } + } + + /// + /// Зашифровать публичный ключ + /// + public byte[] EncodePublicKey() + { + byte[] data; + + try + { + var publicKey = CreatePublicKey(); + publicKey.Value = PublicKey; + + var asnEncoder = new Asn1BerEncodeBuffer(); + publicKey.Encode(asnEncoder); + data = asnEncoder.MsgCopy; + } + catch (Exception exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.Asn1EncodeError, nameof(Gost_R3410_PublicKeyParams)); + } + + return data; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyTransport.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyTransport.cs new file mode 100644 index 0000000..386235e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_KeyTransport.cs @@ -0,0 +1,60 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + public sealed class Gost_R3410_KeyTransport : Asn1Type + { + public Gost_28147_89_EncryptedKey SessionEncryptedKey { get; set; } + + public Gost_R3410_TransportParams TransportParams { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + SessionEncryptedKey = null; + TransportParams = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0x20, SequenceTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + SessionEncryptedKey = new Gost_28147_89_EncryptedKey(); + SessionEncryptedKey.Decode(buffer, true, parsedLen.Value); + + if (context.MatchElemTag(0x80, 0x20, EocTypeCode, parsedLen, true)) + { + TransportParams = new Gost_R3410_TransportParams(); + TransportParams.Decode(buffer, false, parsedLen.Value); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (TransportParams != null) + { + var tpLength = TransportParams.Encode(buffer, false); + + len += tpLength; + len += buffer.EncodeTagAndLength(0x80, 0x20, EocTypeCode, tpLength); + } + + len += SessionEncryptedKey.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKey.cs new file mode 100644 index 0000000..bb9ef4f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKey.cs @@ -0,0 +1,42 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + public abstract class Gost_R3410_PublicKey : Asn1OctetString + { + private readonly int _keySize; + + protected Gost_R3410_PublicKey(int keySize) + { + _keySize = keySize; + } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + base.Decode(buffer, explicitTagging, implicitLength); + + if (Length != _keySize) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + if (Length != _keySize) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Length), Length); + } + + var len = base.Encode(buffer, false); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Tag, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyParams.cs new file mode 100644 index 0000000..d4a4e8e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyParams.cs @@ -0,0 +1,82 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + public abstract class Gost_R3410_PublicKeyParams : Asn1Type + { + public Asn1ObjectIdentifier PublicKeyParamSet { get; set; } + + public Asn1ObjectIdentifier DigestParamSet { get; set; } + + public Asn1ObjectIdentifier EncryptionParamSet { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + PublicKeyParamSet = null; + DigestParamSet = null; + EncryptionParamSet = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + PublicKeyParamSet = new Asn1ObjectIdentifier(); + PublicKeyParamSet.Decode(buffer, true, parsedLen.Value); + } + else + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + if (context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + DigestParamSet = new Asn1ObjectIdentifier(); + DigestParamSet.Decode(buffer, true, parsedLen.Value); + } + + if (context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + EncryptionParamSet = new Asn1ObjectIdentifier(); + EncryptionParamSet.Decode(buffer, true, parsedLen.Value); + } + + if (!context.Expired()) + { + var lastTag = buffer.PeekTag(); + + if (lastTag.Equals(0, 0, ObjectIdentifierTypeCode)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1SeqOrderException); + } + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (EncryptionParamSet != null) + { + len += EncryptionParamSet.Encode(buffer, true); + } + + if (DigestParamSet != null) + { + len += DigestParamSet.Encode(buffer, true); + } + + len += PublicKeyParamSet.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyType.cs new file mode 100644 index 0000000..b482419 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_PublicKeyType.cs @@ -0,0 +1,9 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + public abstract class Gost_R3410_PublicKeyType : GostAsn1Choice + { + protected override short TagForm => 0x20; + + protected override int TagIdCode => SequenceTypeCode; + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_TransportParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_TransportParams.cs new file mode 100644 index 0000000..8ed4ec6 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410/Gost_R3410_TransportParams.cs @@ -0,0 +1,83 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.PublicKey; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.Gost_R3410 +{ + public sealed class Gost_R3410_TransportParams : Asn1Type + { + public Asn1ObjectIdentifier EncryptionParamSet { get; set; } + + public SubjectPublicKeyInfo EphemeralPublicKey { get; set; } + + public Asn1OctetString Ukm { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + EncryptionParamSet = null; + EphemeralPublicKey = null; + Ukm = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + EncryptionParamSet = new Asn1ObjectIdentifier(); + EncryptionParamSet.Decode(buffer, true, parsedLen.Value); + + if (context.MatchElemTag(0x80, 0x20, EocTypeCode, parsedLen, true)) + { + EphemeralPublicKey = new SubjectPublicKeyInfo(); + EphemeralPublicKey.Decode(buffer, false, parsedLen.Value); + } + + if (!context.MatchElemTag(0, 0, OctetStringTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + Ukm = new Asn1OctetString(); + Ukm.Decode(buffer, true, parsedLen.Value); + + if (Ukm.Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Ukm.Length), Ukm.Length); + } + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + + if (Ukm.Length != 8) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1ConsVioException, nameof(Ukm.Length), Ukm.Length); + } + + len += Ukm.Encode(buffer, true); + + if (EphemeralPublicKey != null) + { + var epkLength = EphemeralPublicKey.Encode(buffer, false); + + len += epkLength; + len += buffer.EncodeTagAndLength(0x80, 0x20, EocTypeCode, epkLength); + } + + len += EncryptionParamSet.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_Constants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_Constants.cs new file mode 100644 index 0000000..200d666 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_Constants.cs @@ -0,0 +1,25 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public static class Gost_R3410_2001_Constants + { + /// + /// Алгоритм ГОСТ Р 34.10-2001, используемый при экспорте/импорте ключей + /// + public static readonly OidValue KeyAlgorithm = OidValue.FromString("1.2.643.2.2.19"); + + /// + /// Алгоритм Диффи-Хеллмана на базе эллиптической кривой + /// + public static readonly OidValue DhAlgorithm = OidValue.FromString("1.2.643.2.2.98"); + + /// + /// Алгоритм цифровой подписи ГОСТ Р 34.10-2001 + /// + public static readonly OidValue SignatureAlgorithm = OidValue.FromString("1.2.643.2.2.3"); + + /// + /// Функция хэширования ГОСТ Р 34.11-94 + /// + public static readonly OidValue HashAlgorithm = OidValue.FromString("1.2.643.2.2.9"); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_DhPublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_DhPublicKeyType.cs new file mode 100644 index 0000000..ee5d27e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_DhPublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public sealed class Gost_R3410_2001_DhPublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2001_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchange.cs new file mode 100644 index 0000000..dbcc42a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchange.cs @@ -0,0 +1,17 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + /// + public sealed class Gost_R3410_2001_KeyExchange : Gost_R3410_KeyExchange + { + /// + protected override OidValue KeyAlgorithm => Gost_R3410_2001_Constants.KeyAlgorithm; + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2001_PublicKeyParams(); + + /// + protected override Gost_R3410_KeyExchangeParams CreateKeyExchangeParams() => new Gost_R3410_2001_KeyExchangeParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchangeParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchangeParams.cs new file mode 100644 index 0000000..8f9d6de --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_KeyExchangeParams.cs @@ -0,0 +1,27 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + /// + public sealed class Gost_R3410_2001_KeyExchangeParams : Gost_R3410_KeyExchangeParams + { + /// + public Gost_R3410_2001_KeyExchangeParams() + { + } + + /// + public Gost_R3410_2001_KeyExchangeParams(Gost_R3410_2001_KeyExchangeParams other) : base(other) + { + } + + /// + public override Gost_R3410_KeyExchangeParams Clone() => new Gost_R3410_2001_KeyExchangeParams(this); + + /// + protected override Gost_R3410_PublicKey CreatePublicKey() => new Gost_R3410_2001_PublicKey(); + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2001_PublicKeyParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKey.cs new file mode 100644 index 0000000..1152104 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKey.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + /// + public sealed class Gost_R3410_2001_PublicKey : Gost_R3410_PublicKey + { + /// + public Gost_R3410_2001_PublicKey() : base(64) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyParams.cs new file mode 100644 index 0000000..1a08c16 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public sealed class Gost_R3410_2001_PublicKeyParams : Gost_R3410_PublicKeyParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyType.cs new file mode 100644 index 0000000..5d9e681 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3410_2001_PublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public sealed class Gost_R3410_2001_PublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2001_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParams.cs new file mode 100644 index 0000000..a8e06ab --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public sealed class Gost_R3411_2001_DigestParams : Gost_R3411_DigestParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParamsType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParamsType.cs new file mode 100644 index 0000000..6159adf --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2001/Gost_R3411_2001_DigestParamsType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2001 +{ + public sealed class Gost_R3411_2001_DigestParamsType : Gost_R3411_DigestParamsType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3411_2001_DigestParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_Constants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_Constants.cs new file mode 100644 index 0000000..12b4f81 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_Constants.cs @@ -0,0 +1,25 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public static class Gost_R3410_2012_256_Constants + { + /// + /// Алгоритм ГОСТ Р 34.10-2012 для ключей длины 256 бит, используемый при экспорте/импорте ключей + /// + public static readonly OidValue KeyAlgorithm = OidValue.FromString("1.2.643.7.1.1.1.1"); + + /// + /// Алгоритм Диффи-Хеллмана на базе эллиптической кривой для ключей длины 256 бит + /// + public static readonly OidValue DhAlgorithm = OidValue.FromString("1.2.643.7.1.1.6.1"); + + /// + /// Алгоритм цифровой подписи ГОСТ Р 34.10-2012 для ключей длины 256 бит + /// + public static readonly OidValue SignatureAlgorithm = OidValue.FromString("1.2.643.7.1.1.3.2"); + + /// + /// Функция хэширования ГОСТ Р 34.11-2012, длина выхода 256 бит + /// + public static readonly OidValue HashAlgorithm = OidValue.FromString("1.2.643.7.1.1.2.2"); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_DhPublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_DhPublicKeyType.cs new file mode 100644 index 0000000..22faffe --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_DhPublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public sealed class Gost_R3410_2012_256_DhPublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2012_256_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchange.cs new file mode 100644 index 0000000..1bbc207 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchange.cs @@ -0,0 +1,17 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + /// + public sealed class Gost_R3410_2012_256_KeyExchange : Gost_R3410_KeyExchange + { + /// + protected override OidValue KeyAlgorithm => Gost_R3410_2012_256_Constants.KeyAlgorithm; + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2012_256_PublicKeyParams(); + + /// + protected override Gost_R3410_KeyExchangeParams CreateKeyExchangeParams() => new Gost_R3410_2012_256_KeyExchangeParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchangeParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchangeParams.cs new file mode 100644 index 0000000..110fadf --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_KeyExchangeParams.cs @@ -0,0 +1,27 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + /// + public sealed class Gost_R3410_2012_256_KeyExchangeParams : Gost_R3410_KeyExchangeParams + { + /// + public Gost_R3410_2012_256_KeyExchangeParams() + { + } + + /// + public Gost_R3410_2012_256_KeyExchangeParams(Gost_R3410_2012_256_KeyExchangeParams other) : base(other) + { + } + + /// + public override Gost_R3410_KeyExchangeParams Clone() => new Gost_R3410_2012_256_KeyExchangeParams(this); + + /// + protected override Gost_R3410_PublicKey CreatePublicKey() => new Gost_R3410_2012_256_PublicKey(); + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2012_256_PublicKeyParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKey.cs new file mode 100644 index 0000000..13943f5 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKey.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + /// + public sealed class Gost_R3410_2012_256_PublicKey : Gost_R3410_PublicKey + { + /// + public Gost_R3410_2012_256_PublicKey() : base(64) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyParams.cs new file mode 100644 index 0000000..4ccd1b8 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public sealed class Gost_R3410_2012_256_PublicKeyParams : Gost_R3410_PublicKeyParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyType.cs new file mode 100644 index 0000000..c3fdd71 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3410_2012_256_PublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public sealed class Gost_R3410_2012_256_PublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2012_256_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParams.cs new file mode 100644 index 0000000..fdec015 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public sealed class Gost_R3411_2012_256_DigestParams : Gost_R3411_DigestParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParamsType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParamsType.cs new file mode 100644 index 0000000..59f9699 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_256/Gost_R3411_2012_256_DigestParamsType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_256 +{ + public sealed class Gost_R3411_2012_256_DigestParamsType : Gost_R3411_DigestParamsType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3411_2012_256_DigestParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_Constants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_Constants.cs new file mode 100644 index 0000000..870f4f1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_Constants.cs @@ -0,0 +1,25 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public static class Gost_R3410_2012_512_Constants + { + /// + /// Алгоритм ГОСТ Р 34.10-2012 для ключей длины 512 бит, используемый при экспорте/импорте ключей + /// + public static readonly OidValue KeyAlgorithm = OidValue.FromString("1.2.643.7.1.1.1.2"); + + /// + /// Алгоритм Диффи-Хеллмана на базе эллиптической кривой для ключей длины 512 бит + /// + public static readonly OidValue DhAlgorithm = OidValue.FromString("1.2.643.7.1.1.6.2"); + + /// + /// Алгоритм цифровой подписи ГОСТ Р 34.10-2012 для ключей длины 512 бит + /// + public static readonly OidValue SignatureAlgorithm = OidValue.FromString("1.2.643.7.1.1.3.3"); + + /// + /// Функция хэширования ГОСТ Р 34.11-2012, длина выхода 512 бит + /// + public static readonly OidValue HashAlgorithm = OidValue.FromString("1.2.643.7.1.1.2.3"); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_DhPublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_DhPublicKeyType.cs new file mode 100644 index 0000000..7d6ee3e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_DhPublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public sealed class Gost_R3410_2012_512_DhPublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2012_512_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchange.cs new file mode 100644 index 0000000..ea478c7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchange.cs @@ -0,0 +1,17 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + /// + public sealed class Gost_R3410_2012_512_KeyExchange : Gost_R3410_KeyExchange + { + /// + protected override OidValue KeyAlgorithm => Gost_R3410_2012_512_Constants.KeyAlgorithm; + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2012_512_PublicKeyParams(); + + /// + protected override Gost_R3410_KeyExchangeParams CreateKeyExchangeParams() => new Gost_R3410_2012_512_KeyExchangeParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchangeParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchangeParams.cs new file mode 100644 index 0000000..4ccdf72 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_KeyExchangeParams.cs @@ -0,0 +1,27 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + /// + public sealed class Gost_R3410_2012_512_KeyExchangeParams : Gost_R3410_KeyExchangeParams + { + /// + public Gost_R3410_2012_512_KeyExchangeParams() + { + } + + /// + public Gost_R3410_2012_512_KeyExchangeParams(Gost_R3410_2012_512_KeyExchangeParams other) : base(other) + { + } + + /// + public override Gost_R3410_KeyExchangeParams Clone() => new Gost_R3410_2012_512_KeyExchangeParams(this); + + /// + protected override Gost_R3410_PublicKey CreatePublicKey() => new Gost_R3410_2012_512_PublicKey(); + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_2012_512_PublicKeyParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKey.cs new file mode 100644 index 0000000..9c73502 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKey.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + /// + public sealed class Gost_R3410_2012_512_PublicKey : Gost_R3410_PublicKey + { + /// + public Gost_R3410_2012_512_PublicKey() : base(128) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyParams.cs new file mode 100644 index 0000000..e1b3b57 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public sealed class Gost_R3410_2012_512_PublicKeyParams : Gost_R3410_PublicKeyParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyType.cs new file mode 100644 index 0000000..fc34262 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3410_2012_512_PublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public sealed class Gost_R3410_2012_512_PublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_2012_512_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParams.cs new file mode 100644 index 0000000..7484d96 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public sealed class Gost_R3411_2012_512_DigestParams : Gost_R3411_DigestParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParamsType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParamsType.cs new file mode 100644 index 0000000..756da5a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_2012_512/Gost_R3411_2012_512_DigestParamsType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_2012_512 +{ + public sealed class Gost_R3411_2012_512_DigestParamsType : Gost_R3411_DigestParamsType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3411_2012_512_DigestParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_Constants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_Constants.cs new file mode 100644 index 0000000..f5fd018 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_Constants.cs @@ -0,0 +1,25 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public static class Gost_R3410_94_Constants + { + /// + /// Алгоритм ГОСТ Р 34.10-94, используемый при экспорте/импорте ключей + /// + public static readonly OidValue KeyAlgorithm = OidValue.FromString("1.2.643.2.2.20"); + + /// + /// Алгоритм Диффи-Хеллмана на базе потенциальной функции + /// + public static readonly OidValue DhAlgorithm = OidValue.FromString("1.2.643.2.2.99"); + + /// + /// Алгоритм цифровой подписи ГОСТ Р 34.10-94 + /// + public static readonly OidValue SignatureAlgorithm = OidValue.FromString("1.2.643.2.2.4"); + + /// + /// Функция хэширования ГОСТ Р 34.11-94 + /// + public static readonly OidValue HashAlgorithm = OidValue.FromString("1.2.643.2.2.9"); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_DhPublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_DhPublicKeyType.cs new file mode 100644 index 0000000..dc4a55b --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_DhPublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public sealed class Gost_R3410_94_DhPublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_94_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchange.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchange.cs new file mode 100644 index 0000000..9e78b76 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchange.cs @@ -0,0 +1,17 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + /// + public sealed class Gost_R3410_94_KeyExchange : Gost_R3410_KeyExchange + { + /// + protected override OidValue KeyAlgorithm => Gost_R3410_94_Constants.KeyAlgorithm; + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_94_PublicKeyParams(); + + /// + protected override Gost_R3410_KeyExchangeParams CreateKeyExchangeParams() => new Gost_R3410_94_KeyExchangeParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchangeParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchangeParams.cs new file mode 100644 index 0000000..2be0c12 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_KeyExchangeParams.cs @@ -0,0 +1,27 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + /// + public sealed class Gost_R3410_94_KeyExchangeParams : Gost_R3410_KeyExchangeParams + { + /// + public Gost_R3410_94_KeyExchangeParams() + { + } + + /// + public Gost_R3410_94_KeyExchangeParams(Gost_R3410_94_KeyExchangeParams other) : base(other) + { + } + + /// + public override Gost_R3410_KeyExchangeParams Clone() => new Gost_R3410_94_KeyExchangeParams(this); + + /// + protected override Gost_R3410_PublicKey CreatePublicKey() => new Gost_R3410_94_PublicKey(); + + /// + protected override Gost_R3410_PublicKeyParams CreatePublicKeyParams() => new Gost_R3410_94_PublicKeyParams(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKey.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKey.cs new file mode 100644 index 0000000..cdf4907 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKey.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + /// + public sealed class Gost_R3410_94_PublicKey : Gost_R3410_PublicKey + { + /// + public Gost_R3410_94_PublicKey() : base(64) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyParams.cs new file mode 100644 index 0000000..3ae3733 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public sealed class Gost_R3410_94_PublicKeyParams : Gost_R3410_PublicKeyParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyType.cs new file mode 100644 index 0000000..0bd60b1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3410_94_PublicKeyType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3410; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public sealed class Gost_R3410_94_PublicKeyType : Gost_R3410_PublicKeyType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3410_94_PublicKeyParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParams.cs new file mode 100644 index 0000000..d38ad97 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public sealed class Gost_R3411_94_DigestParams : Gost_R3411_DigestParams + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParamsType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParamsType.cs new file mode 100644 index 0000000..0c016f1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3410_94/Gost_R3411_94_DigestParamsType.cs @@ -0,0 +1,13 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_R3411; + +namespace GostCryptography.Asn1.Gost.Gost_R3410_94 +{ + public sealed class Gost_R3411_94_DigestParamsType : Gost_R3411_DigestParamsType + { + protected override Asn1Type CreateParams() + { + return new Gost_R3411_94_DigestParams(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParams.cs new file mode 100644 index 0000000..3b44500 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Ber; + +namespace GostCryptography.Asn1.Gost.Gost_R3411 +{ + public abstract class Gost_R3411_DigestParams : Asn1ObjectIdentifier + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParamsType.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParamsType.cs new file mode 100644 index 0000000..aa2eadf --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/Gost_R3411/Gost_R3411_DigestParamsType.cs @@ -0,0 +1,9 @@ +namespace GostCryptography.Asn1.Gost.Gost_R3411 +{ + public abstract class Gost_R3411_DigestParamsType : GostAsn1Choice + { + protected override short TagForm => 0x00; + + protected override int TagIdCode => ObjectIdentifierTypeCode; + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmId.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmId.cs new file mode 100644 index 0000000..08ea7a1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmId.cs @@ -0,0 +1,17 @@ +using GostCryptography.Asn1.Ber; + +namespace GostCryptography.Asn1.Gost.PublicKey +{ + public sealed class AlgorithmId + { + public AlgorithmId(Asn1ObjectIdentifier id, Asn1Type type) + { + Id = id; + Type = type; + } + + public Asn1ObjectIdentifier Id { get; } + + public Asn1Type Type { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmIdentifier.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmIdentifier.cs new file mode 100644 index 0000000..16c8152 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/AlgorithmIdentifier.cs @@ -0,0 +1,100 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; +using System; + +namespace GostCryptography.Asn1.Gost.PublicKey +{ + public sealed class AlgorithmIdentifier : Asn1Type + { + public AlgorithmIdentifier() + { + } + + public AlgorithmIdentifier(Asn1ObjectIdentifier algorithm, Asn1OpenType parameters) + { + Algorithm = algorithm; + Parameters = parameters; + } + + public Asn1ObjectIdentifier Algorithm { get; private set; } + + public Asn1Type Parameters { get; private set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + Algorithm = null; + Parameters = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0, ObjectIdentifierTypeCode, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + Algorithm = new Asn1ObjectIdentifier(); + Algorithm.Decode(buffer, true, parsedLen.Value); + + if (!context.Expired()) + { + Parameters = new Asn1OpenType(); + Parameters.Decode(buffer, true, 0); + } + + CheckAlg(true); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + CheckAlg(false); + + if (Parameters != null) + { + len += Parameters.Encode(buffer, true); + } + + len += Algorithm.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + + private void CheckAlg(bool decode) + { + AlgorithmId algorithmId = null; + + foreach (var alg in PkiConstants.SupportedAlgorithms) + { + if (alg.Id.Equals(Algorithm)) + { + algorithmId = alg; + break; + } + } + + if ((algorithmId != null) && ((decode && (Parameters != null)) && (algorithmId.Type != null))) + { + try + { + var buffer = new Asn1BerDecodeBuffer(((Asn1OpenType)Parameters).Value); + Parameters = (Asn1Type)Activator.CreateInstance(algorithmId.Type.GetType()); + Parameters.Decode(buffer, true, 0); + buffer.InvokeEndElement("parameters", -1); + } + catch (Exception exception) + { + Asn1Util.WriteStackTrace(exception, Console.Error); + throw ExceptionUtility.CryptographicException(Resources.Asn1TableConstraint); + } + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/PkiConstants.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/PkiConstants.cs new file mode 100644 index 0000000..69ce4f1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/PkiConstants.cs @@ -0,0 +1,116 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Asn1.Gost.Gost_R3410_94; + +namespace GostCryptography.Asn1.Gost.PublicKey +{ + static class PkiConstants + { + // ГОСТ 28147-89 + + private static readonly AlgorithmId Gost_28147_89_EncryptAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_28147_89_Constants.EncryptAlgorithm), + new Gost_28147_89_Params()); + + // ГОСТ Р 34.10-94 + + private static readonly AlgorithmId Gost_R3410_94_KeyAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_94_Constants.KeyAlgorithm), + new Gost_R3410_94_PublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_94_DhAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_94_Constants.DhAlgorithm), + new Gost_R3410_94_DhPublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_94_SignatureAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_94_Constants.SignatureAlgorithm), + new NullParams()); + + private static readonly AlgorithmId Gost_R3411_94_HashAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_94_Constants.HashAlgorithm), + new Gost_R3411_94_DigestParamsType()); + + // ГОСТ Р 34.10-2001 + + private static readonly AlgorithmId Gost_R3410_2001_KeyAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.KeyAlgorithm), + new Gost_R3410_2001_PublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2001_DhAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.DhAlgorithm), + new Gost_R3410_2001_DhPublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2001_SignatureAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.SignatureAlgorithm), + new NullParams()); + + private static readonly AlgorithmId Gost_R3411_2001_HashAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2001_Constants.HashAlgorithm), + new Gost_R3411_2001_DigestParamsType()); + + // ГОСТ Р 34.10-2012/256 + + private static readonly AlgorithmId Gost_R3410_2012_256_KeyAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.KeyAlgorithm), + new Gost_R3410_2012_256_PublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2012_256_DhAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.DhAlgorithm), + new Gost_R3410_2012_256_DhPublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2012_256_SignatureAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.SignatureAlgorithm), + new NullParams()); + + private static readonly AlgorithmId Gost_R3411_2012_256_HashAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_256_Constants.HashAlgorithm), + new Gost_R3411_2012_256_DigestParamsType()); + + // ГОСТ Р 34.10-2012/512 + + private static readonly AlgorithmId Gost_R3410_2012_512_KeyAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.KeyAlgorithm), + new Gost_R3410_2012_512_PublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2012_512_DhAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.DhAlgorithm), + new Gost_R3410_2012_512_DhPublicKeyType()); + + private static readonly AlgorithmId Gost_R3410_2012_512_SignatureAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.SignatureAlgorithm), + new NullParams()); + + private static readonly AlgorithmId Gost_R3411_2012_512_HashAlgorithm = new AlgorithmId( + new Asn1ObjectIdentifier(Gost_R3410_2012_512_Constants.HashAlgorithm), + new Gost_R3411_2012_512_DigestParamsType()); + + + public static readonly AlgorithmId[] SupportedAlgorithms = + { + Gost_28147_89_EncryptAlgorithm, + + Gost_R3410_94_KeyAlgorithm, + Gost_R3410_94_DhAlgorithm, + Gost_R3410_94_SignatureAlgorithm, + Gost_R3411_94_HashAlgorithm, + + Gost_R3410_2001_KeyAlgorithm, + Gost_R3410_2001_DhAlgorithm, + Gost_R3410_2001_SignatureAlgorithm, + Gost_R3411_2001_HashAlgorithm, + + Gost_R3410_2012_256_KeyAlgorithm, + Gost_R3410_2012_256_DhAlgorithm, + Gost_R3410_2012_256_SignatureAlgorithm, + Gost_R3411_2012_256_HashAlgorithm, + + Gost_R3410_2012_512_KeyAlgorithm, + Gost_R3410_2012_512_DhAlgorithm, + Gost_R3410_2012_512_SignatureAlgorithm, + Gost_R3411_2012_512_HashAlgorithm + }; + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/SubjectPublicKeyInfo.cs b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/SubjectPublicKeyInfo.cs new file mode 100644 index 0000000..dc09dd6 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/Gost/PublicKey/SubjectPublicKeyInfo.cs @@ -0,0 +1,53 @@ +using GostCryptography.Asn1.Ber; +using GostCryptography.Properties; + +namespace GostCryptography.Asn1.Gost.PublicKey +{ + public sealed class SubjectPublicKeyInfo : Asn1Type + { + public AlgorithmIdentifier Algorithm { get; set; } + + public Asn1BitString SubjectPublicKey { get; set; } + + public override void Decode(Asn1BerDecodeBuffer buffer, bool explicitTagging, int implicitLength) + { + var elemLength = explicitTagging ? MatchTag(buffer, Asn1Tag.Sequence) : implicitLength; + + Algorithm = null; + SubjectPublicKey = null; + + var context = new Asn1BerDecodeContext(buffer, elemLength); + var parsedLen = new IntHolder(); + + if (!context.MatchElemTag(0, 0x20, 0x10, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + Algorithm = new AlgorithmIdentifier(); + Algorithm.Decode(buffer, true, parsedLen.Value); + + if (!context.MatchElemTag(0, 0, 3, parsedLen, false)) + { + throw ExceptionUtility.CryptographicException(Resources.Asn1MissingRequiredException, buffer.ByteCount); + } + + SubjectPublicKey = new Asn1BitString(); + SubjectPublicKey.Decode(buffer, true, parsedLen.Value); + } + + public override int Encode(Asn1BerEncodeBuffer buffer, bool explicitTagging) + { + var len = 0; + len += SubjectPublicKey.Encode(buffer, true); + len += Algorithm.Encode(buffer, true); + + if (explicitTagging) + { + len += buffer.EncodeTagAndLength(Asn1Tag.Sequence, len); + } + + return len; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/NullParams.cs b/Hcs.ClientNet/GostCryptography/Asn1/NullParams.cs new file mode 100644 index 0000000..87d061b --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/NullParams.cs @@ -0,0 +1,8 @@ +using GostCryptography.Asn1.Ber; + +namespace GostCryptography.Asn1 +{ + public sealed class NullParams : Asn1Null + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Asn1/OidValue.cs b/Hcs.ClientNet/GostCryptography/Asn1/OidValue.cs new file mode 100644 index 0000000..a65a1db --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Asn1/OidValue.cs @@ -0,0 +1,99 @@ +using System.Linq; +using System.Security.Cryptography; + +namespace GostCryptography.Asn1 +{ + public sealed class OidValue + { + public static readonly OidValue Null = new OidValue("", new int[] { }); + + private OidValue(string value, int[] items) + { + Value = value; + Items = items; + } + + public static OidValue FromString(string value) + { + var items = value.Split('.').Select(int.Parse).ToArray(); + return new OidValue(value, items); + } + + public static OidValue FromArray(int[] items) + { + string value = string.Join(".", items); + return new OidValue(value, items); + } + + public string Value { get; } + + public int[] Items { get; } + + public override int GetHashCode() + { + if (Items == null) + { + return 0; + } + + var result = 1; + + foreach (var item in Items) + { + result = 31 * result + item.GetHashCode(); + } + + return result; + } + + public override bool Equals(object obj) + { + if (this == obj) + { + return true; + } + + if (!(obj is OidValue)) + { + return false; + } + + var other = (OidValue)obj; + + if (Items == other.Items) + { + return true; + } + + if (Items == null || other.Items == null) + { + return false; + } + + if (Items.Length != other.Items.Length) + { + return false; + } + + for (var i = 0; i < Items.Length; ++i) + { + if (Items[i] != other.Items[i]) + { + return false; + } + } + + return true; + } + + public override string ToString() + { + return Value; + } + + public Oid ToOid() + { + return new Oid(Value); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostAsymmetricAlgorithm.cs new file mode 100644 index 0000000..a439bc2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostAsymmetricAlgorithm.cs @@ -0,0 +1,54 @@ +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех асимметричных алгоритмов ГОСТ + /// + public abstract class GostAsymmetricAlgorithm : AsymmetricAlgorithm, IGostAlgorithm + { + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Размер ключа в битах + protected GostAsymmetricAlgorithm(ProviderType providerType, int keySize) + { + ProviderType = providerType; + KeySizeValue = keySize; + LegalKeySizesValue = new[] { new KeySizes(keySize, keySize, 0) }; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + + /// + /// Вычисляет цифровую подпись + /// + public abstract byte[] CreateSignature(byte[] hash); + + /// + /// Проверяет цифровую подпись + /// + public abstract bool VerifySignature(byte[] hash, byte[] signature); + + /// + /// Создает экземпляр + /// + public abstract GostHashAlgorithm CreateHashAlgorithm(); + + /// + /// Создает экземпляр + /// + /// + public abstract GostKeyExchangeFormatter CreateKeyExchangeFormatter(); + + /// + /// Создает экземпляр + /// + public abstract GostKeyExchangeDeformatter CreateKeyExchangeDeformatter(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostExternalAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostExternalAsymmetricAlgorithm.cs new file mode 100644 index 0000000..6f42d6f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostExternalAsymmetricAlgorithm.cs @@ -0,0 +1,53 @@ +using GostCryptography.Properties; +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// На базе заданного экземпляра пытается реализовать . + /// Данный класс предназначен для интеграции со сторонними библиотеками и предназначен для внутреннего использования. + /// + sealed class GostExternalAsymmetricAlgorithm : GostAsymmetricAlgorithm + { + private readonly AsymmetricAlgorithm _algorithm; + private readonly Func _createSignature; + private readonly Func _verifySignature; + + public GostExternalAsymmetricAlgorithm(AsymmetricAlgorithm algorithm) : base(default(ProviderType), algorithm.KeySize) + { + var createSignatureMethod = algorithm.GetType().GetMethod(nameof(CreateSignature), new[] { typeof(byte[]) }); + var verifySignatureMethod = algorithm.GetType().GetMethod(nameof(VerifySignature), new[] { typeof(byte[]), typeof(byte[]) }); + + if ((createSignatureMethod == null || createSignatureMethod.ReturnType != typeof(byte[])) + || (verifySignatureMethod == null || verifySignatureMethod.ReturnType != typeof(bool))) + { + throw ExceptionUtility.Argument(nameof(algorithm), Resources.ShouldSupportGost3410); + } + + _algorithm = algorithm; + _createSignature = hash => (byte[])createSignatureMethod.Invoke(algorithm, new object[] { hash }); + _verifySignature = (hash, signature) => (bool)verifySignatureMethod.Invoke(algorithm, new object[] { hash, signature }); + } + + public override string AlgorithmName => _algorithm.SignatureAlgorithm; + + public override string SignatureAlgorithm => _algorithm.SignatureAlgorithm; + + public override string KeyExchangeAlgorithm => _algorithm.KeyExchangeAlgorithm; + + public override string ToXmlString(bool includePrivateKey) => _algorithm.ToXmlString(includePrivateKey); + + public override void FromXmlString(string keyParametersXml) => _algorithm.FromXmlString(keyParametersXml); + + public override byte[] CreateSignature(byte[] hash) => _createSignature(hash); + + public override bool VerifySignature(byte[] hash, byte[] signature) => _verifySignature(hash, signature); + + public override GostHashAlgorithm CreateHashAlgorithm() => throw ExceptionUtility.NotSupported(); + + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() => throw ExceptionUtility.NotSupported(); + + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() => throw ExceptionUtility.NotSupported(); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostHMAC.cs b/Hcs.ClientNet/GostCryptography/Base/GostHMAC.cs new file mode 100644 index 0000000..1ece86a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostHMAC.cs @@ -0,0 +1,42 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех реализаций Hash-based Message Authentication Code (HMAC) на базе алгоритмов ГОСТ + /// + public abstract class GostHMAC : HMAC, IGostAlgorithm + { + /// + /// Конструктор + /// + /// Размер хэш-кода в битах + /// + /// По умолчанию использует криптографический провайдер, установленный в + /// + [SecuritySafeCritical] + protected GostHMAC(int hashSize) : this(GostCryptoConfig.ProviderType, hashSize) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Размер хэш-кода в битах + [SecuritySafeCritical] + protected GostHMAC(ProviderType providerType, int hashSize) + { + ProviderType = providerType; + HashSizeValue = hashSize; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostHashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostHashAlgorithm.cs new file mode 100644 index 0000000..7c6fa4f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostHashAlgorithm.cs @@ -0,0 +1,42 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех алгоритмов хэширования ГОСТ + /// + public abstract class GostHashAlgorithm : HashAlgorithm, IGostAlgorithm + { + /// + /// Конструктор + /// + /// Размер хэш-кода в битах + /// + /// По умолчанию использует криптографический провайдер, установленный в + /// + [SecuritySafeCritical] + protected GostHashAlgorithm(int hashSize) : this(GostCryptoConfig.ProviderType, hashSize) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Размер хэш-кода в битах + [SecuritySafeCritical] + protected GostHashAlgorithm(ProviderType providerType, int hashSize) + { + ProviderType = providerType; + HashSizeValue = hashSize; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeAlgorithm.cs new file mode 100644 index 0000000..bdadc4b --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeAlgorithm.cs @@ -0,0 +1,74 @@ +using GostCryptography.Config; +using System; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс всех реализаций общего секретного ключа ГОСТ + /// + public abstract class GostKeyExchangeAlgorithm : IDisposable, IGostAlgorithm + { + /// + /// Конструктор + /// + /// + /// По умолчанию использует криптографический провайдер, установленный в + /// + [SecuritySafeCritical] + protected GostKeyExchangeAlgorithm() : this(GostCryptoConfig.ProviderType) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + [SecuritySafeCritical] + protected GostKeyExchangeAlgorithm(ProviderType providerType) + { + ProviderType = providerType; + } + + /// + public ProviderType ProviderType { get; } + + /// + public virtual string AlgorithmName => GetType().Name; + + /// + /// Экспортирует (шифрует) общий секретный ключ + /// + /// Общий секретный ключ + /// Алгоритм экспорта общего секретного ключа + public abstract byte[] EncodeKeyExchange(SymmetricAlgorithm keyExchangeAlgorithm, GostKeyExchangeExportMethod keyExchangeExportMethod); + + /// + /// Импортирует (дешифрует) общий секретный ключ + /// + /// Общий секретный ключ + /// Алгоритм экспорта общего секретного ключа + public abstract SymmetricAlgorithm DecodeKeyExchange(byte[] encodedKeyExchangeData, GostKeyExchangeExportMethod keyExchangeExportMethod); + + /// + /// Освобождает неуправляемые ресурсы + /// + protected virtual void Dispose(bool disposing) + { + } + + /// + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + /// + ~GostKeyExchangeAlgorithm() + { + Dispose(false); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeDeformatter.cs b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeDeformatter.cs new file mode 100644 index 0000000..e201cc5 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeDeformatter.cs @@ -0,0 +1,18 @@ +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для дешифрования общего секретного ключа по ГОСТ + /// + public abstract class GostKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter + { + /// + /// Дешифрует общий секретный ключ + /// + /// Зашифрованный общий секретный ключ + /// + public abstract SymmetricAlgorithm DecryptKeyExchangeAlgorithm(byte[] encryptedKeyExchangeData); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeExportMethod.cs b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeExportMethod.cs new file mode 100644 index 0000000..2dea7d4 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeExportMethod.cs @@ -0,0 +1,18 @@ +namespace GostCryptography.Base +{ + /// + /// Алгоритм экспорта общего секретного ключа ГОСТ + /// + public enum GostKeyExchangeExportMethod + { + /// + /// Простой экспорт ключа по ГОСТ 28147-89 + /// + GostKeyExport, + + /// + /// Защищённый экспорт ключа по алгоритму КриптоПро + /// + CryptoProKeyExport + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeFormatter.cs b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeFormatter.cs new file mode 100644 index 0000000..5a3b95c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostKeyExchangeFormatter.cs @@ -0,0 +1,18 @@ +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для шифрования общего секретного ключа по ГОСТ + /// + public abstract class GostKeyExchangeFormatter : AsymmetricKeyExchangeFormatter + { + /// + /// Шифрует общий секретный ключ + /// + /// Алгоритм шифрования общего секретного ключа + /// + public abstract byte[] CreateKeyExchangeData(SymmetricAlgorithm keyExchangeAlgorithm); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostKeyedHashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostKeyedHashAlgorithm.cs new file mode 100644 index 0000000..8fab954 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostKeyedHashAlgorithm.cs @@ -0,0 +1,42 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех алгоритмов хэширования ГОСТ на основе ключей + /// + public abstract class GostKeyedHashAlgorithm : KeyedHashAlgorithm, IGostAlgorithm + { + /// + /// Конструктор + /// + /// Размер хэш-кода в битах + /// + /// По умолчанию использует криптографический провайдер, установленный в + /// + [SecuritySafeCritical] + protected GostKeyedHashAlgorithm(int hashSize) : this(GostCryptoConfig.ProviderType, hashSize) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Размер хэш-кода в битах + [SecuritySafeCritical] + protected GostKeyedHashAlgorithm(ProviderType providerType, int hashSize) + { + ProviderType = providerType; + HashSizeValue = hashSize; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostPrf.cs b/Hcs.ClientNet/GostCryptography/Base/GostPrf.cs new file mode 100644 index 0000000..5f5b246 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostPrf.cs @@ -0,0 +1,47 @@ +using System; +using System.Security; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех алгоритмов генерации псевдослучайной последовательности (Pseudorandom Function, PRF) ГОСТ + /// + public abstract class GostPRF : IDisposable, IGostAlgorithm + { + /// + /// Конструктор + /// + /// Тип криптографического провайдера + [SecuritySafeCritical] + protected GostPRF(ProviderType providerType) + { + ProviderType = providerType; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + + /// + /// Освобождает неуправляемые ресурсы + /// + protected virtual void Dispose(bool disposing) + { + } + + /// + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + /// + ~GostPRF() + { + Dispose(false); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostSignatureDeformatter.cs b/Hcs.ClientNet/GostCryptography/Base/GostSignatureDeformatter.cs new file mode 100644 index 0000000..573605d --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostSignatureDeformatter.cs @@ -0,0 +1,77 @@ +using GostCryptography.Properties; +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Класс проверки цифровой подписи ГОСТ + /// + public class GostSignatureDeformatter : AsymmetricSignatureDeformatter + { + /// + /// Конструктор + /// + public GostSignatureDeformatter() + { + } + + /// + /// Конструктор + /// + /// Открытый ключ для проверки цифровой подписи + /// + /// + public GostSignatureDeformatter(AsymmetricAlgorithm publicKey) : this() + { + SetKey(publicKey); + } + + private GostAsymmetricAlgorithm _publicKey; + + /// + public override void SetKey(AsymmetricAlgorithm publicKey) + { + if (publicKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(publicKey)); + } + + if (!(publicKey is GostAsymmetricAlgorithm gostPublicKey)) + { + if (publicKey.SignatureAlgorithm.IndexOf("gost", StringComparison.OrdinalIgnoreCase) < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(publicKey), Resources.ShouldSupportGost3410); + } + + gostPublicKey = new GostExternalAsymmetricAlgorithm(publicKey); + } + + _publicKey = gostPublicKey; + } + + /// + public override void SetHashAlgorithm(string hashAlgorithmName) + { + } + + /// + public override bool VerifySignature(byte[] hash, byte[] signature) + { + if (hash == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hash)); + } + + if (signature == null) + { + throw ExceptionUtility.ArgumentNull(nameof(signature)); + } + + var reverseSignature = (byte[])signature.Clone(); + Array.Reverse(reverseSignature); + + return _publicKey.VerifySignature(hash, reverseSignature); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostSignatureDescription.cs b/Hcs.ClientNet/GostCryptography/Base/GostSignatureDescription.cs new file mode 100644 index 0000000..4230925 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostSignatureDescription.cs @@ -0,0 +1,11 @@ +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Информация о свойствах цифровой подписи ГОСТ + /// + public abstract class GostSignatureDescription : SignatureDescription + { + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostSignatureFormatter.cs b/Hcs.ClientNet/GostCryptography/Base/GostSignatureFormatter.cs new file mode 100644 index 0000000..9120e36 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostSignatureFormatter.cs @@ -0,0 +1,72 @@ +using GostCryptography.Properties; +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Класс вычисления цифровой подписи ГОСТ + /// + public class GostSignatureFormatter : AsymmetricSignatureFormatter + { + /// + /// Конструктор + /// + public GostSignatureFormatter() + { + } + + /// + /// Конструктор + /// + /// Закрытый ключ для вычисления цифровой подписи + /// + /// + public GostSignatureFormatter(AsymmetricAlgorithm privateKey) : this() + { + SetKey(privateKey); + } + + private GostAsymmetricAlgorithm _privateKey; + + /// + public override void SetKey(AsymmetricAlgorithm privateKey) + { + if (privateKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(privateKey)); + } + + if (!(privateKey is GostAsymmetricAlgorithm gostPrivateKey)) + { + if (privateKey.SignatureAlgorithm.IndexOf("gost", StringComparison.OrdinalIgnoreCase) < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(privateKey), Resources.ShouldSupportGost3410); + } + + gostPrivateKey = new GostExternalAsymmetricAlgorithm(privateKey); + } + + _privateKey = gostPrivateKey; + } + + /// + public override void SetHashAlgorithm(string hashAlgorithmName) + { + } + + /// + public override byte[] CreateSignature(byte[] hash) + { + if (hash == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hash)); + } + + var reverseSignature = _privateKey.CreateSignature(hash); + Array.Reverse(reverseSignature); + + return reverseSignature; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/GostSymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/GostSymmetricAlgorithm.cs new file mode 100644 index 0000000..b476628 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/GostSymmetricAlgorithm.cs @@ -0,0 +1,39 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Base +{ + /// + /// Базовый класс для всех алгоритмов симметричного шифрования ГОСТ + /// + public abstract class GostSymmetricAlgorithm : SymmetricAlgorithm, IGostAlgorithm + { + /// + /// Конструктор + /// + /// + /// По умолчанию использует криптографический провайдер, установленный в + /// + [SecuritySafeCritical] + protected GostSymmetricAlgorithm() : this(GostCryptoConfig.ProviderType) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + [SecuritySafeCritical] + protected GostSymmetricAlgorithm(ProviderType providerType) + { + ProviderType = providerType; + } + + /// + public ProviderType ProviderType { get; } + + /// + public abstract string AlgorithmName { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/IGostAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Base/IGostAlgorithm.cs new file mode 100644 index 0000000..9990070 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/IGostAlgorithm.cs @@ -0,0 +1,18 @@ +namespace GostCryptography.Base +{ + /// + /// Алгоритм ГОСТ + /// + public interface IGostAlgorithm + { + /// + /// Тип криптографического провайдера + /// + ProviderType ProviderType { get; } + + /// + /// Наименование криптографического алгоритма + /// + string AlgorithmName { get; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Base/ProviderType.cs b/Hcs.ClientNet/GostCryptography/Base/ProviderType.cs new file mode 100644 index 0000000..09af5a7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Base/ProviderType.cs @@ -0,0 +1,81 @@ +using System.Collections.Generic; + +namespace GostCryptography.Base +{ + /// + /// Типы криптографических провайдеров + /// + public enum ProviderType + { + /// + /// Infotecs Cryptographic Service Provider + /// + VipNet = 2, + + /// + /// Infotecs GOST 2012/512 Cryptographic Service Provider + /// + VipNet_2012_512 = 77, + + /// + /// Infotecs GOST 2012/1024 Cryptographic Service Provider + /// + VipNet_2012_1024 = 78, + + /// + /// Crypto-Pro GOST R 34.10-2001 Cryptographic Service Provider + /// + CryptoPro = 75, + + /// + /// Crypto-Pro GOST R 34.10-2012 Cryptographic Service Provider + /// + CryptoPro_2012_512 = 80, + + /// + /// Crypto-Pro GOST R 34.10-2012 Strong Cryptographic Service Provider + /// + CryptoPro_2012_1024 = 81 + } + + /// + /// Методы расширения + /// + public static class ProviderTypesExtensions + { + /// + /// Набор провайдеров VipNet + /// + public static readonly HashSet VipNetProviders = new HashSet + { + ProviderType.VipNet, + ProviderType.VipNet_2012_512, + ProviderType.VipNet_2012_1024 + }; + + /// + /// Набор провайдеров CryptoPro + /// + public static readonly HashSet CryptoProProviders = new HashSet + { + ProviderType.CryptoPro, + ProviderType.CryptoPro_2012_512, + ProviderType.CryptoPro_2012_1024 + }; + + /// + /// Возвращает для VipNet + /// + public static bool IsVipNet(this ProviderType providerType) => VipNetProviders.Contains(providerType); + + /// + /// Возвращает для CryptoPro + /// + public static bool IsCryptoPro(this ProviderType providerType) => CryptoProProviders.Contains(providerType); + + /// + /// Преобразует значение в + /// + public static int ToInt(this ProviderType providerType) => (int)providerType; + } +} diff --git a/Hcs.ClientNet/GostCryptography/Config/GostCryptoConfig.cs b/Hcs.ClientNet/GostCryptography/Config/GostCryptoConfig.cs new file mode 100644 index 0000000..d8e907e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Config/GostCryptoConfig.cs @@ -0,0 +1,227 @@ +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Asn1.Gost.Gost_R3410_94; +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Gost_R3410; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using GostCryptography.Xml; +using System; +using System.Collections.Generic; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Config +{ + /// + /// Предоставляет методы для доступа к конфигурационной информации, используемой при работе с криптографическим провайдером ГОСТ + /// + public static class GostCryptoConfig + { + private static Lazy _providerType_2001; + private static Lazy _providerType_2012_512; + private static Lazy _providerType_2012_1024; + private static readonly Dictionary NameToType = new Dictionary(StringComparer.OrdinalIgnoreCase); + private static readonly Dictionary NameToOid = new Dictionary(StringComparer.OrdinalIgnoreCase); + + static GostCryptoConfig() + { + InitDefaultProviders(); + AddKnownAlgorithms(); + AddKnownOIDs(); + } + + [SecuritySafeCritical] + private static void InitDefaultProviders() + { + _providerType_2001 = new Lazy(CryptoApiHelper.GetAvailableProviderType_2001); + _providerType_2012_512 = new Lazy(CryptoApiHelper.GetAvailableProviderType_2012_512); + _providerType_2012_1024 = new Lazy(CryptoApiHelper.GetAvailableProviderType_2012_1024); + } + + private static void AddKnownAlgorithms() + { + AddAlgorithm(Gost_R3410_2001_AsymmetricAlgorithm.KnownSignatureAlgorithmNames); + AddAlgorithm(Gost_R3410_2012_256_AsymmetricAlgorithm.KnownSignatureAlgorithmNames); + AddAlgorithm(Gost_R3410_2012_512_AsymmetricAlgorithm.KnownSignatureAlgorithmNames); + + AddAlgorithm(Gost_R3411_94_HashAlgorithm.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_256_HashAlgorithm.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_512_HashAlgorithm.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_94_HMAC.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_256_HMAC.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_512_HMAC.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_94_PRF.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_256_PRF.KnownAlgorithmNames); + AddAlgorithm(Gost_R3411_2012_512_PRF.KnownAlgorithmNames); + + AddAlgorithm(Gost_28147_89_SymmetricAlgorithm.KnownAlgorithmNames); + AddAlgorithm(Gost_28147_89_ImitHashAlgorithm.KnownAlgorithmNames); + + AddAlgorithm(); + AddAlgorithm(); + AddAlgorithm(); + + AddAlgorithm(); + AddAlgorithm(); + + AddAlgorithm(Gost_R3410_2001_KeyValue.KnownValueUrls); + AddAlgorithm(Gost_R3410_2012_256_KeyValue.KnownValueUrls); + AddAlgorithm(Gost_R3410_2012_512_KeyValue.KnownValueUrls); + } + + private static void AddKnownOIDs() + { + AddOID(Gost_R3410_2001_Constants.KeyAlgorithm.Value); + AddOID(Gost_R3410_2012_256_Constants.KeyAlgorithm.Value); + AddOID(Gost_R3410_2012_512_Constants.KeyAlgorithm.Value); + + AddOID(Gost_R3410_94_Constants.HashAlgorithm.Value, Gost_R3411_94_HashAlgorithm.KnownAlgorithmNames); + AddOID(Gost_R3410_2012_256_Constants.HashAlgorithm.Value, Gost_R3411_2012_256_HashAlgorithm.KnownAlgorithmNames); + AddOID(Gost_R3410_2012_512_Constants.HashAlgorithm.Value, Gost_R3411_2012_512_HashAlgorithm.KnownAlgorithmNames); + + AddOID(Gost_28147_89_Constants.EncryptAlgorithm.Value, Gost_28147_89_SymmetricAlgorithm.KnownAlgorithmNames); + } + + + /// + /// Инициализирует конфигурацию + /// + public static void Initialize() + { + // На самом деле инициализация происходит в статическом конструкторе + } + + /// + /// Возвращает или устанавливает провайдер по умолчанию для ключей ГОСТ Р 34.10-2001 + /// + public static ProviderType ProviderType + { + get => _providerType_2001.Value; + set => _providerType_2001 = new Lazy(() => value); + } + + /// + /// Возвращает или устанавливает провайдер по умолчанию для ключей ГОСТ Р 34.10-2012/512 + /// + public static ProviderType ProviderType_2012_512 + { + get => _providerType_2012_512.Value; + set => _providerType_2012_512 = new Lazy(() => value); + } + + /// + /// Возвращает или устанавливает провайдер по умолчанию для ключей ГОСТ Р 34.10-2012/1024 + /// + public static ProviderType ProviderType_2012_1024 + { + get => _providerType_2012_1024.Value; + set => _providerType_2012_1024 = new Lazy(() => value); + } + + /// + /// Добавляет связь между алгоритмом и именем + /// + [SecuritySafeCritical] + public static void AddAlgorithm(params string[] names) + { + var type = typeof(T); + + if (names != null) + { + foreach (var name in names) + { + NameToType.Add(name, type); + CryptoConfig.AddAlgorithm(type, name); + } + } + + NameToType.Add(type.Name, type); + CryptoConfig.AddAlgorithm(type, type.Name); + + if (type.FullName != null) + { + NameToType.Add(type.FullName, type); + CryptoConfig.AddAlgorithm(type, type.FullName); + } + + if (type.AssemblyQualifiedName != null) + { + NameToType.Add(type.AssemblyQualifiedName, type); + CryptoConfig.AddAlgorithm(type, type.AssemblyQualifiedName); + } + } + + /// + /// Добавляет связь между алгоритмом и OID + /// + [SecuritySafeCritical] + public static void AddOID(string oid, params string[] names) + { + var type = typeof(T); + + if (names != null) + { + foreach (var name in names) + { + NameToOid.Add(name, oid); + CryptoConfig.AddOID(oid, name); + } + } + + NameToOid.Add(type.Name, oid); + CryptoConfig.AddOID(oid, type.Name); + + if (type.FullName != null) + { + NameToOid.Add(type.FullName, oid); + CryptoConfig.AddOID(oid, type.FullName); + } + + if (type.AssemblyQualifiedName != null) + { + NameToOid.Add(type.AssemblyQualifiedName, oid); + CryptoConfig.AddOID(oid, type.AssemblyQualifiedName); + } + } + + /// + public static string MapNameToOID(string name) + { + string oid = null; + + if (!string.IsNullOrEmpty(name)) + { + oid = CryptoConfig.MapNameToOID(name); + + if (string.IsNullOrEmpty(oid)) + { + NameToOid.TryGetValue(name, out oid); + } + } + + return oid; + } + + /// + public static object CreateFromName(string name, params object[] arguments) + { + object obj = null; + + if (!string.IsNullOrEmpty(name)) + { + obj = CryptoConfig.CreateFromName(name, arguments); + + if (obj == null && NameToType.TryGetValue(name, out var objType)) + { + obj = Activator.CreateInstance(objType, arguments); + } + } + + return obj; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/ExceptionUtility.cs b/Hcs.ClientNet/GostCryptography/ExceptionUtility.cs new file mode 100644 index 0000000..bbb9e49 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/ExceptionUtility.cs @@ -0,0 +1,48 @@ +using System; +using System.Security.Cryptography; + +namespace GostCryptography +{ + static class ExceptionUtility + { + public static ArgumentException Argument(string argument, string message = null, params object[] messageParameters) + { + return new ArgumentException(FormatErrorMessage(message, messageParameters), argument); + } + + public static ArgumentNullException ArgumentNull(string argument, string message = null, params object[] messageParameters) + { + return new ArgumentNullException(argument, FormatErrorMessage(message, messageParameters)); + } + + public static ArgumentOutOfRangeException ArgumentOutOfRange(string argument, string message = null, params object[] messageParameters) + { + return new ArgumentOutOfRangeException(argument, FormatErrorMessage(message, messageParameters)); + } + + public static NotSupportedException NotSupported(string message = null, params object[] messageParameters) + { + return new NotSupportedException(FormatErrorMessage(message, messageParameters)); + } + + public static CryptographicException CryptographicException(int nativeError) + { + return new CryptographicException(nativeError); + } + + public static CryptographicException CryptographicException(string message = null, params object[] messageParameters) + { + return new CryptographicException(FormatErrorMessage(message, messageParameters)); + } + + public static CryptographicException CryptographicException(Exception innerException, string message = null, params object[] messageParameters) + { + return new CryptographicException(FormatErrorMessage(message, messageParameters), innerException); + } + + private static string FormatErrorMessage(string message, params object[] messageParameters) + { + return (message != null && messageParameters != null) ? string.Format(message, messageParameters) : message; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransform.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransform.cs new file mode 100644 index 0000000..f822abc --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransform.cs @@ -0,0 +1,281 @@ +using GostCryptography.Base; +using GostCryptography.Native; +using GostCryptography.Properties; +using System; +using System.Collections.Generic; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_28147_89 +{ + /// + /// Реализует криптографическое преобразование с использованием алгоритма симметричного шифрования ГОСТ 28147-89 + /// + sealed class Gost_28147_89_CryptoTransform : ICryptoTransform + { + [SecurityCritical] + public Gost_28147_89_CryptoTransform( + ProviderType providerType, + SafeKeyHandleImpl keyHandle, + Dictionary keyParameters, + PaddingMode paddingValue, + CipherMode modeValue, + int blockSizeValue, + Gost_28147_89_CryptoTransformMode transformMode) + { + _providerType = providerType; + _keyHandle = keyHandle; + _paddingValue = paddingValue; + _isStreamModeValue = (modeValue == CipherMode.OFB) || (modeValue == CipherMode.CFB); + _blockSizeValue = blockSizeValue; + _transformMode = transformMode; + + // Установка параметров ключа + foreach (var keyParameter in keyParameters) + { + var keyParameterId = keyParameter.Key; + var keyParameterValue = keyParameter.Value; + + // Копирование значения параметра + if (keyParameterValue is byte[]) + { + var keyParamValueBytes = (byte[])keyParameterValue; + var copyKeyParamValueBytes = new byte[keyParamValueBytes.Length]; + Array.Copy(keyParamValueBytes, copyKeyParamValueBytes, keyParamValueBytes.Length); + + keyParameterValue = copyKeyParamValueBytes; + } + else if (keyParameterValue is int) + { + keyParameterValue = (int)keyParameterValue; + } + else if (keyParameterValue is CipherMode) + { + keyParameterValue = Convert.ToInt32(keyParameterValue); + } + else if (keyParameterValue is PaddingMode) + { + keyParameterValue = Convert.ToInt32(keyParameterValue); + } + + // Установка значения параметра + switch (keyParameterId) + { + case Constants.KP_IV: + { + _ivValue = (byte[])keyParameterValue; + + var iv = _ivValue; + CryptoApiHelper.SetKeyParameter(_keyHandle, keyParameterId, iv); + } + break; + case Constants.KP_MODE: + { + CryptoApiHelper.SetKeyParameterInt32(_keyHandle, keyParameterId, (int)keyParameterValue); + } + break; + case Constants.KP_PADDING: + { + if (!providerType.IsVipNet()) + { + CryptoApiHelper.SetKeyParameterInt32(_keyHandle, keyParameterId, (int)keyParameterValue); + } + } + break; + } + } + } + + private readonly ProviderType _providerType; + + [SecurityCritical] + private readonly SafeKeyHandleImpl _keyHandle; + + private readonly PaddingMode _paddingValue; + private readonly bool _isStreamModeValue; + private readonly int _blockSizeValue; + private readonly Gost_28147_89_CryptoTransformMode _transformMode; + + private byte[] _dataBuffer; + private byte[] _ivValue; + + public bool CanReuseTransform => true; + + public bool CanTransformMultipleBlocks => true; + + public int InputBlockSize => (_blockSizeValue / 8); + + public int OutputBlockSize => (_blockSizeValue / 8); + + [SecuritySafeCritical] + public int TransformBlock(byte[] inputBuffer, int inputOffset, int inputCount, byte[] outputBuffer, int outputOffset) + { + if (inputBuffer == null) + { + throw ExceptionUtility.ArgumentNull(nameof(inputBuffer)); + } + + if (outputBuffer == null) + { + throw ExceptionUtility.ArgumentNull(nameof(outputBuffer)); + } + + if (inputOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(inputOffset)); + } + + if ((inputCount <= 0) || ((inputCount % InputBlockSize) != 0) || (inputCount > inputBuffer.Length)) + { + throw ExceptionUtility.Argument(nameof(inputOffset), Resources.InvalidDataOffset); + } + + if ((inputBuffer.Length - inputCount) < inputOffset) + { + throw ExceptionUtility.Argument(nameof(inputOffset), Resources.InvalidDataOffset); + } + + if (_transformMode == Gost_28147_89_CryptoTransformMode.Encrypt) + { + return CryptoApiHelper.EncryptData(_providerType, _keyHandle, inputBuffer, inputOffset, inputCount, ref outputBuffer, outputOffset, _paddingValue, false, _isStreamModeValue); + } + + if ((_paddingValue == PaddingMode.Zeros) || (_paddingValue == PaddingMode.None)) + { + return CryptoApiHelper.DecryptData(_keyHandle, inputBuffer, inputOffset, inputCount, ref outputBuffer, outputOffset, _paddingValue, false); + } + + int dectyptDataLength; + + if (_dataBuffer == null) + { + _dataBuffer = new byte[InputBlockSize]; + + var length = inputCount - InputBlockSize; + Array.Copy(inputBuffer, inputOffset + length, _dataBuffer, 0, InputBlockSize); + + dectyptDataLength = CryptoApiHelper.DecryptData(_keyHandle, inputBuffer, inputOffset, length, ref outputBuffer, outputOffset, _paddingValue, false); + } + else + { + CryptoApiHelper.DecryptData(_keyHandle, _dataBuffer, 0, _dataBuffer.Length, ref outputBuffer, outputOffset, _paddingValue, false); + + outputOffset += OutputBlockSize; + + var length = inputCount - InputBlockSize; + Array.Copy(inputBuffer, inputOffset + length, _dataBuffer, 0, InputBlockSize); + + dectyptDataLength = OutputBlockSize + CryptoApiHelper.DecryptData(_keyHandle, inputBuffer, inputOffset, length, ref outputBuffer, outputOffset, _paddingValue, false); + } + + return dectyptDataLength; + } + + [SecuritySafeCritical] + public byte[] TransformFinalBlock(byte[] inputBuffer, int inputOffset, int inputCount) + { + if (inputBuffer == null) + { + throw ExceptionUtility.ArgumentNull(nameof(inputBuffer)); + } + + if (inputOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(inputOffset)); + } + + if ((inputCount < 0) || (inputCount > inputBuffer.Length)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(inputOffset), Resources.InvalidDataOffset); + } + + if ((inputBuffer.Length - inputCount) < inputOffset) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(inputOffset), Resources.InvalidDataOffset); + } + + byte[] buffer = null; + + if (_transformMode == Gost_28147_89_CryptoTransformMode.Encrypt) + { + CryptoApiHelper.EncryptData(_providerType, _keyHandle, inputBuffer, inputOffset, inputCount, ref buffer, 0, _paddingValue, true, _isStreamModeValue); + Reset(); + return buffer; + } + + if (_isStreamModeValue) + { + CryptoApiHelper.DecryptData(_keyHandle, inputBuffer, inputOffset, inputCount, ref buffer, 0, _paddingValue, true); + Reset(); + return buffer; + } + + if ((inputCount % InputBlockSize) != 0) + { + throw ExceptionUtility.CryptographicException(Resources.DecryptInvalidDataSize); + } + + if (_dataBuffer == null) + { + CryptoApiHelper.DecryptData(_keyHandle, inputBuffer, inputOffset, inputCount, ref buffer, 0, _paddingValue, true); + Reset(); + return buffer; + } + + var destinationArray = new byte[_dataBuffer.Length + inputCount]; + Array.Copy(_dataBuffer, 0, destinationArray, 0, _dataBuffer.Length); + Array.Copy(inputBuffer, inputOffset, destinationArray, _dataBuffer.Length, inputCount); + + CryptoApiHelper.DecryptData(_keyHandle, destinationArray, 0, destinationArray.Length, ref buffer, 0, _paddingValue, true); + Reset(); + return buffer; + } + + [SecuritySafeCritical] + private void Reset() + { + _dataBuffer = null; + + if (_transformMode == Gost_28147_89_CryptoTransformMode.Encrypt) + { + CryptoApiHelper.EndEncrypt(_providerType, _keyHandle); + } + else + { + CryptoApiHelper.EndDecrypt(_providerType, _keyHandle); + } + } + + [SecuritySafeCritical] + private void Dispose(bool disposing) + { + if (disposing) + { + if (_ivValue != null) + { + Array.Clear(_ivValue, 0, _ivValue.Length); + _ivValue = null; + } + + if (_dataBuffer != null) + { + Array.Clear(_dataBuffer, 0, _dataBuffer.Length); + _dataBuffer = null; + } + } + + _keyHandle.TryDispose(); + } + + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + ~Gost_28147_89_CryptoTransform() + { + Dispose(false); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransformMode.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransformMode.cs new file mode 100644 index 0000000..f3106ca --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_CryptoTransformMode.cs @@ -0,0 +1,8 @@ +namespace GostCryptography.Gost_28147_89 +{ + enum Gost_28147_89_CryptoTransformMode + { + Encrypt, + Decrypt + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithm.cs new file mode 100644 index 0000000..17474ca --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithm.cs @@ -0,0 +1,148 @@ +using GostCryptography.Base; +using GostCryptography.Native; +using System; +using System.Security; + +namespace GostCryptography.Gost_28147_89 +{ + /// + /// Реализация функции вычисления имитовставки по ГОСТ 28147-89 + /// + public sealed class Gost_28147_89_ImitHashAlgorithm : Gost_28147_89_ImitHashAlgorithmBase, ISafeHandleProvider + { + /// + /// Размер имитовставки ГОСТ 28147-89 + /// + public const int DefaultHashSize = 32; + + /// + /// Наименование алгоритма вычисления имитовставки ГОСТ 28147-89 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gost28147imit"; + + /// + /// Известные наименования алгоритма вычисления имитовставки ГОСТ 28147-89 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_28147_89_ImitHashAlgorithm() : base(DefaultHashSize) + { + _keyAlgorithm = new Gost_28147_89_SymmetricAlgorithm(ProviderType); + } + + /// + [SecuritySafeCritical] + public Gost_28147_89_ImitHashAlgorithm(ProviderType providerType) : base(providerType, DefaultHashSize) + { + _keyAlgorithm = new Gost_28147_89_SymmetricAlgorithm(ProviderType); + } + + /// + /// Конструктор + /// + /// Ключ симметричного шифрования для подсчета имитовставки + /// + [SecuritySafeCritical] + public Gost_28147_89_ImitHashAlgorithm(Gost_28147_89_SymmetricAlgorithmBase key) : base(key.ProviderType, DefaultHashSize) + { + if (key == null) + { + throw ExceptionUtility.ArgumentNull(nameof(key)); + } + + KeyValue = null; + + _keyAlgorithm = Gost_28147_89_SymmetricAlgorithm.CreateFromKey(key); + } + + [SecurityCritical] + private Gost_28147_89_SymmetricAlgorithm _keyAlgorithm; + + [SecurityCritical] + private SafeHashHandleImpl _hashHandle; + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + SafeHashHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get { return _hashHandle; } + } + + /// + public override byte[] Key + { + [SecuritySafeCritical] + get => _keyAlgorithm.Key; + [SecuritySafeCritical] + set => _keyAlgorithm.Key = value; + } + + /// + public override Gost_28147_89_SymmetricAlgorithmBase KeyAlgorithm + { + [SecuritySafeCritical] + get => Gost_28147_89_SymmetricAlgorithm.CreateFromKey(_keyAlgorithm); + [SecuritySafeCritical] + set => _keyAlgorithm = Gost_28147_89_SymmetricAlgorithm.CreateFromKey(value); + } + + /// + [SecuritySafeCritical] + protected override void HashCore(byte[] data, int dataOffset, int dataLength) + { + if (_hashHandle == null) + { + InitHash(); + } + + CryptoApiHelper.HashData(_hashHandle, data, dataOffset, dataLength); + } + + /// + [SecuritySafeCritical] + protected override byte[] HashFinal() + { + if (_hashHandle == null) + { + InitHash(); + } + + return CryptoApiHelper.EndHashData(_hashHandle); + } + + [SecurityCritical] + private void InitHash() + { + var providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType); + var hashHandle = CryptoApiHelper.CreateHashImit(providerHandle, _keyAlgorithm.GetSafeHandle()); + + _hashHandle = hashHandle; + } + + /// + [SecuritySafeCritical] + public override void Initialize() + { + _hashHandle.TryDispose(); + _hashHandle = null; + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + if (disposing) + { + _keyAlgorithm?.Clear(); + _hashHandle.TryDispose(); + } + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithmBase.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithmBase.cs new file mode 100644 index 0000000..07351f2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithmBase.cs @@ -0,0 +1,25 @@ +using GostCryptography.Base; + +namespace GostCryptography.Gost_28147_89 +{ + /// + /// Базовый класс для всех реализаций функции вычисления имитовставки по ГОСТ 28147-89 + /// + public abstract class Gost_28147_89_ImitHashAlgorithmBase : GostKeyedHashAlgorithm + { + /// + protected Gost_28147_89_ImitHashAlgorithmBase(int hashSize) : base(hashSize) + { + } + + /// + protected Gost_28147_89_ImitHashAlgorithmBase(ProviderType providerType, int hashSize) : base(providerType, hashSize) + { + } + + /// + /// Алгоритм симметричного шифрования ключа + /// + public virtual Gost_28147_89_SymmetricAlgorithmBase KeyAlgorithm { get; set; } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithm.cs new file mode 100644 index 0000000..0136d5f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithm.cs @@ -0,0 +1,433 @@ +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Base; +using GostCryptography.Native; +using GostCryptography.Properties; +using System.Collections.Generic; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_28147_89 +{ + /// + /// Реализация алгоритма симметричного шифрования по ГОСТ 28147-89 + /// + public sealed class Gost_28147_89_SymmetricAlgorithm : Gost_28147_89_SymmetricAlgorithmBase, ISafeHandleProvider + { + /// + /// Наименование алгоритма шифрования ГОСТ 28147-89 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gost28147"; + + /// + /// Известные наименования алгоритма шифрования ГОСТ 28147-89 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_28147_89_SymmetricAlgorithm() + { + InitDefaults(); + _providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType).DangerousAddRef(); + _keyHandle = SafeKeyHandleImpl.InvalidHandle; + } + + /// + [SecuritySafeCritical] + public Gost_28147_89_SymmetricAlgorithm(ProviderType providerType) : base(providerType) + { + InitDefaults(); + _providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType).DangerousAddRef(); + _keyHandle = SafeKeyHandleImpl.InvalidHandle; + } + + [SecurityCritical] + internal Gost_28147_89_SymmetricAlgorithm(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl keyHandle) : base(providerType) + { + InitDefaults(); + _providerHandle = providerHandle.DangerousAddRef(); + _keyHandle = CryptoApiHelper.DuplicateKey(keyHandle); + + if (CryptoApiHelper.GetKeyParameterInt32(_keyHandle, Constants.KP_ALGID) != Constants.CALG_G28147) + { + throw ExceptionUtility.Argument(nameof(keyHandle), Resources.RequiredGost28147); + } + } + + [SecurityCritical] + private void InitDefaults() + { + Mode = CipherMode.CFB; + Padding = PaddingMode.None; + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + + /// + /// Создает экземпляр на основе указанного алгоритма шифрования + /// + /// Алгоритм симметричного шифрования ключа + [SecurityCritical] + public static Gost_28147_89_SymmetricAlgorithm CreateFromKey(Gost_28147_89_SymmetricAlgorithmBase keyAlgorithm) + { + if (keyAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyAlgorithm)); + } + + return (keyAlgorithm is Gost_28147_89_SymmetricAlgorithm sessionKey) + ? new Gost_28147_89_SymmetricAlgorithm(keyAlgorithm.ProviderType, sessionKey._providerHandle, sessionKey.GetSafeHandle()) + : new Gost_28147_89_SymmetricAlgorithm(keyAlgorithm.ProviderType) { Key = keyAlgorithm.Key }; + } + + /// + /// Создает экземпляр на основе указанного пароля + /// + [SecuritySafeCritical] + public static Gost_28147_89_SymmetricAlgorithm CreateFromPassword(HashAlgorithm hashAlgorithm, byte[] password) + { + if (hashAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hashAlgorithm)); + } + + if (!(hashAlgorithm is IGostAlgorithm gostHashAlgorithm)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(hashAlgorithm)); + } + + if (!(hashAlgorithm is ISafeHandleProvider hashHandleProvider)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(hashAlgorithm)); + } + + if (password == null) + { + throw ExceptionUtility.ArgumentNull(nameof(password)); + } + + hashAlgorithm.TransformBlock(password, 0, password.Length, password, 0); + + var providerType = gostHashAlgorithm.ProviderType; + var providerHandle = CryptoApiHelper.GetProviderHandle(providerType); + var symKeyHandle = CryptoApiHelper.DeriveSymKey(providerHandle, hashHandleProvider.SafeHandle); + + return new Gost_28147_89_SymmetricAlgorithm(providerType, providerHandle, symKeyHandle); + } + + /// + /// Создает экземпляр на основе сессионного ключа + /// + [SecuritySafeCritical] + public static Gost_28147_89_SymmetricAlgorithm CreateFromSessionKey(ProviderType providerType, byte[] sessionKey) + { + if (sessionKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(sessionKey)); + } + + if (sessionKey.Length != 32) + { + throw ExceptionUtility.Argument(nameof(sessionKey), Resources.InvalidHashSize, 32); + } + + var providerHandle = CryptoApiHelper.GetProviderHandle(providerType); + var randomNumberGenerator = CryptoApiHelper.GetRandomNumberGenerator(providerType); + + using (var keyHandle = CryptoApiHelper.ImportBulkSessionKey(providerType, providerHandle, sessionKey, randomNumberGenerator)) + { + return new Gost_28147_89_SymmetricAlgorithm(providerType, providerHandle, keyHandle); + } + } + + [SecurityCritical] + private SafeProvHandleImpl _providerHandle; + + [SecurityCritical] + private SafeKeyHandleImpl _keyHandle; + + /// + SafeKeyHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get + { + if (_keyHandle.IsInvalid) + { + GenerateKey(); + } + + return _keyHandle; + } + } + + /// + public override byte[] Key + { + [SecuritySafeCritical] + get { throw ExceptionUtility.NotSupported(Resources.SymmetryExportBulkKeyNotSupported); } + [SecuritySafeCritical] + set { throw ExceptionUtility.NotSupported(Resources.SymmetryImportBulkKeyNotSupported); } + } + + /// + public override int KeySize + { + [SecuritySafeCritical] + get { return base.KeySize; } + [SecuritySafeCritical] + set + { + base.KeySize = value; + + _keyHandle.TryDispose(); + _providerHandle.TryDispose(); + + _keyHandle = SafeKeyHandleImpl.InvalidHandle; + _providerHandle = SafeProvHandleImpl.InvalidHandle; + } + } + + /// + /// Создает симметричный ключ на основе пароля + /// + [SecuritySafeCritical] + public void DeriveFromPassword(GostHashAlgorithm hashAlgorithm, byte[] password) + { + var provider = CreateFromPassword(hashAlgorithm, password); + + _keyHandle.TryDispose(); + _providerHandle.TryDispose(); + + _keyHandle = provider._keyHandle; + _providerHandle = provider._providerHandle; + + provider._keyHandle = SafeKeyHandleImpl.InvalidHandle; + provider._providerHandle = SafeProvHandleImpl.InvalidHandle; + } + + /// + [SecuritySafeCritical] + public override byte[] ComputeHash(HashAlgorithm hash) + { + if (!(hash is ISafeHandleProvider hashHadnleProvider)) + { + throw ExceptionUtility.Argument(nameof(hash), Resources.RequiredGostHash); + } + + var hashHandle = hashHadnleProvider.SafeHandle; + + CryptoApiHelper.HashKeyExchange(hashHandle, this.GetSafeHandle()); + + return CryptoApiHelper.EndHashData(hashHandle); + } + + /// + [SecuritySafeCritical] + public override void GenerateIV() + { + IVValue = new byte[DefaultIvSize]; + CryptoApiHelper.GetRandomNumberGenerator(ProviderType).GetBytes(IVValue); + } + + /// + [SecuritySafeCritical] + public override void GenerateKey() + { + _keyHandle = CryptoApiHelper.GenerateKey(_providerHandle, Constants.CALG_G28147, CspProviderFlags.NoFlags); + + KeyValue = null; + KeySizeValue = DefaultKeySize; + } + + /// + [SecuritySafeCritical] + public override ICryptoTransform CreateEncryptor() + { + var hKey = CryptoApiHelper.DuplicateKey(this.GetSafeHandle()); + + return CreateCryptoTransform(hKey, IV, Gost_28147_89_CryptoTransformMode.Encrypt); + } + + /// + [SecuritySafeCritical] + public override ICryptoTransform CreateEncryptor(byte[] key, byte[] iv) + { + throw ExceptionUtility.NotSupported(Resources.Gost28147UnsafeCreateDecryptorNotSupported); + } + + /// + [SecuritySafeCritical] + public override ICryptoTransform CreateDecryptor() + { + var hKey = CryptoApiHelper.DuplicateKey(this.GetSafeHandle()); + + return CreateCryptoTransform(hKey, IV, Gost_28147_89_CryptoTransformMode.Decrypt); + } + + /// + [SecuritySafeCritical] + public override ICryptoTransform CreateDecryptor(byte[] key, byte[] iv) + { + throw ExceptionUtility.NotSupported(Resources.Gost28147UnsafeCreateDecryptorNotSupported); + } + + [SecurityCritical] + private ICryptoTransform CreateCryptoTransform(SafeKeyHandleImpl hKey, byte[] iv, Gost_28147_89_CryptoTransformMode transformMode) + { + // TODO: Нужен рефактор! Порядок параметров важен! + if (hKey == null) + { + hKey = CryptoApiHelper.GenerateKey(CryptoApiHelper.GetProviderHandle(ProviderType), Constants.CALG_G28147, CspProviderFlags.NoFlags); + } + + var keyParameters = new Dictionary(); + + if (ModeValue == CipherMode.CTS) + { + throw ExceptionUtility.CryptographicException(Resources.CipherTextSteamingNotSupported); + } + + if ((Padding != PaddingMode.None) && ((ModeValue == CipherMode.OFB) || (ModeValue == CipherMode.CFB))) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidPaddingMode); + } + + // Установка KP_MODE + keyParameters.Add(Constants.KP_MODE, ModeValue); + + // Установка KP_PADDING + keyParameters.Add(Constants.KP_PADDING, Constants.ZERO_PADDING); + + if ((ModeValue == CipherMode.CFB) && (FeedbackSizeValue != DefaultFeedbackSize)) + { + throw ExceptionUtility.CryptographicException(Resources.IncorrectFeedbackSize); + } + + // Установка KP_IV + if (ModeValue != CipherMode.ECB) + { + if (iv == null) + { + iv = new byte[DefaultIvSize]; + CryptoApiHelper.GetRandomNumberGenerator(ProviderType).GetBytes(iv); + } + + if (iv.Length < DefaultIvSize) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidIvSize); + } + + keyParameters.Add(Constants.KP_IV, iv); + } + + return new Gost_28147_89_CryptoTransform(ProviderType, hKey, keyParameters, PaddingValue, ModeValue, BlockSizeValue, transformMode); + } + + /// + [SecuritySafeCritical] + public override SymmetricAlgorithm DecodePrivateKey(byte[] encodedKeyExchangeData, GostKeyExchangeExportMethod keyExchangeExportMethod) + { + if (encodedKeyExchangeData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encodedKeyExchangeData)); + } + + int keyExchangeExportAlgId; + + if (keyExchangeExportMethod == GostKeyExchangeExportMethod.GostKeyExport) + { + keyExchangeExportAlgId = Constants.CALG_SIMPLE_EXPORT; + } + else if (keyExchangeExportMethod == GostKeyExchangeExportMethod.CryptoProKeyExport) + { + keyExchangeExportAlgId = Constants.CALG_PRO_EXPORT; + } + else + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(keyExchangeExportMethod)); + } + + var providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType); + + var keyExchangeInfo = new Gost_28147_89_KeyExchangeInfo(); + keyExchangeInfo.Decode(encodedKeyExchangeData); + + using (var keyHandle = CryptoApiHelper.DuplicateKey(this.GetSafeHandle())) + { + CryptoApiHelper.SetKeyExchangeExportAlgId(ProviderType, keyHandle, keyExchangeExportAlgId); + + var keyExchangeHandle = CryptoApiHelper.ImportKeyExchange(providerHandle, keyExchangeInfo, keyHandle); + + return new Gost_28147_89_SymmetricAlgorithm(ProviderType, providerHandle, keyExchangeHandle); + } + } + + /// + [SecuritySafeCritical] + public override byte[] EncodePrivateKey(Gost_28147_89_SymmetricAlgorithmBase keyExchangeAlgorithm, GostKeyExchangeExportMethod keyExchangeExportMethod) + { + if (keyExchangeAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeAlgorithm)); + } + + int keyExchangeExportAlgId; + + if (keyExchangeExportMethod == GostKeyExchangeExportMethod.GostKeyExport) + { + keyExchangeExportAlgId = Constants.CALG_SIMPLE_EXPORT; + } + else if (keyExchangeExportMethod == GostKeyExchangeExportMethod.CryptoProKeyExport) + { + keyExchangeExportAlgId = Constants.CALG_PRO_EXPORT; + } + else + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(keyExchangeExportMethod)); + } + + var currentSessionKey = keyExchangeAlgorithm as Gost_28147_89_SymmetricAlgorithm; + + if (currentSessionKey == null) + { + using (var derivedSessionKey = new Gost_28147_89_SymmetricAlgorithm(ProviderType)) + { + derivedSessionKey.Key = keyExchangeAlgorithm.Key; + + return EncodePrivateKeyInternal(derivedSessionKey, keyExchangeExportAlgId); + } + } + + return EncodePrivateKeyInternal(currentSessionKey, keyExchangeExportAlgId); + } + + [SecurityCritical] + private byte[] EncodePrivateKeyInternal(Gost_28147_89_SymmetricAlgorithm sessionKey, int keyExchangeExportAlgId) + { + var hSessionKey = sessionKey.GetSafeHandle(); + + using (var keyHandle = CryptoApiHelper.DuplicateKey(this.GetSafeHandle())) + { + CryptoApiHelper.SetKeyExchangeExportAlgId(ProviderType, keyHandle, keyExchangeExportAlgId); + CryptoApiHelper.SetKeyParameter(keyHandle, Constants.KP_IV, IV); + + var keyExchangeInfo = CryptoApiHelper.ExportKeyExchange(hSessionKey, keyHandle); + + return keyExchangeInfo.Encode(); + } + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + _keyHandle.TryDispose(); + _providerHandle.TryDispose(); + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithmBase.cs b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithmBase.cs new file mode 100644 index 0000000..330f027 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithmBase.cs @@ -0,0 +1,58 @@ +using GostCryptography.Base; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_28147_89 +{ + /// + /// Базовый класс для всех реализаций симметричного шифрования по ГОСТ 28147-89 + /// + public abstract class Gost_28147_89_SymmetricAlgorithmBase : GostSymmetricAlgorithm + { + public const int DefaultIvSize = 8; + public const int DefaultKeySize = 256; + public const int DefaultBlockSize = 64; + public const int DefaultFeedbackSize = 64; + public static readonly KeySizes[] DefaultLegalKeySizes = { new KeySizes(DefaultKeySize, DefaultKeySize, 0) }; + public static readonly KeySizes[] DefaultLegalBlockSizes = { new KeySizes(DefaultBlockSize, DefaultBlockSize, 0) }; + + /// + protected Gost_28147_89_SymmetricAlgorithmBase() + { + InitDefaults(); + } + + /// + protected Gost_28147_89_SymmetricAlgorithmBase(ProviderType providerType) : base(providerType) + { + InitDefaults(); + } + + private void InitDefaults() + { + KeySizeValue = DefaultKeySize; + BlockSizeValue = DefaultBlockSize; + FeedbackSizeValue = DefaultFeedbackSize; + LegalBlockSizesValue = DefaultLegalBlockSizes; + LegalKeySizesValue = DefaultLegalKeySizes; + } + + /// + /// Хэширует секретный ключ + /// + public abstract byte[] ComputeHash(HashAlgorithm hash); + + /// + /// Экспортирует (шифрует) секретный ключ + /// + /// Общий секретный ключ + /// Алгоритм экспорта общего секретного ключа + public abstract byte[] EncodePrivateKey(Gost_28147_89_SymmetricAlgorithmBase keyExchangeAlgorithm, GostKeyExchangeExportMethod keyExchangeExportMethod); + + /// + /// Импортирует (дешифрует) секретный ключ + /// + /// Зашифрованный общий секретный ключ + /// Алгоритм экспорта общего секретного ключа + public abstract SymmetricAlgorithm DecodePrivateKey(byte[] encodedKeyExchangeData, GostKeyExchangeExportMethod keyExchangeExportMethod); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_AsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_AsymmetricAlgorithm.cs new file mode 100644 index 0000000..ffbe4cd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_AsymmetricAlgorithm.cs @@ -0,0 +1,127 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using GostCryptography.Properties; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2001 + /// + public sealed class Gost_R3410_2001_AsymmetricAlgorithm : Gost_R3410_AsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2001 + /// + public const int DefaultKeySizeValue = 512; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2001 + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102001-gostr3411"; + + /// + /// Устаревшее наименование алгоритма цифровой подписи ГОСТ Р 34.10-2001 + /// + public const string ObsoleteSignatureAlgorithmValue = "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2001 + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2001"; + + /// + /// Известные наименования алгоритма цифровой подписи ГОСТ Р 34.10-2001 + /// + public static readonly string[] KnownSignatureAlgorithmNames = { SignatureAlgorithmValue, ObsoleteSignatureAlgorithmValue }; + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_AsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_AsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_AsymmetricAlgorithm(CspParameters providerParameters) : base(providerParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_EL_SF; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410EL; + + /// + protected override Gost_R3410_2001_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2001_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2001_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2001_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2001_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_94_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + protected override void ValidateHashParameter(byte[] hash) + { + if (hash == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hash)); + } + + if (hash.Length != Gost_R3411_94_HashAlgorithm.DefaultHashSizeValue / 8) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(hash), Resources.InvalidHashSize, Gost_R3411_94_HashAlgorithm.DefaultHashSizeValue / 8); + } + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2001_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2001_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2001_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_EphemeralAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_EphemeralAsymmetricAlgorithm.cs new file mode 100644 index 0000000..8a2c538 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_EphemeralAsymmetricAlgorithm.cs @@ -0,0 +1,107 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2001 на основе эфимерного ключа + /// + public sealed class Gost_R3410_2001_EphemeralAsymmetricAlgorithm : Gost_R3410_EphemeralAsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2001 + /// + public const int DefaultKeySizeValue = 512; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2001 + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102001-gostr3411"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2001 + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2001"; + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_EphemeralAsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_EphemeralAsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_EphemeralAsymmetricAlgorithm(Gost_R3410_2001_KeyExchangeParams keyParameters) : this(GostCryptoConfig.ProviderType, keyParameters) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2001_EphemeralAsymmetricAlgorithm(ProviderType providerType, Gost_R3410_2001_KeyExchangeParams keyParameters) : base(providerType, keyParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_EL_EPHEM; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410EL; + + /// + protected override Gost_R3410_2001_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2001_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2001_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2001_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2001_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_94_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2001_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2001_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2001_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeAlgorithm.cs new file mode 100644 index 0000000..d52e8c1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeAlgorithm.cs @@ -0,0 +1,18 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + public sealed class Gost_R3410_2001_KeyExchangeAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + [SecurityCritical] + public Gost_R3410_2001_KeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2001_KeyExchangeParams keyExchangeParameters, int keySize, int signatureAlgId) + : base(providerType, provHandle, keyHandle, keyExchangeParameters, keySize, signatureAlgId) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeDeformatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeDeformatter.cs new file mode 100644 index 0000000..62880bd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeDeformatter.cs @@ -0,0 +1,24 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация дешифрования общего секретного ключа по ГОСТ Р 34.10-2001 + /// + public sealed class Gost_R3410_2001_KeyExchangeDeformatter : Gost_R3410_KeyExchangeDeformatter< + Gost_R3410_2001_KeyExchange, + Gost_R3410_2001_KeyExchangeParams, + Gost_R3410_2001_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2001_KeyExchangeDeformatter() + { + } + + /// + public Gost_R3410_2001_KeyExchangeDeformatter(AsymmetricAlgorithm privateKey) : base(privateKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeFormatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeFormatter.cs new file mode 100644 index 0000000..a0ce792 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeFormatter.cs @@ -0,0 +1,31 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Base; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация шифрования общего секретного ключа по ГОСТ Р 34.10-2001 + /// + public sealed class Gost_R3410_2001_KeyExchangeFormatter : Gost_R3410_KeyExchangeFormatter< + Gost_R3410_2001_KeyExchange, + Gost_R3410_2001_KeyExchangeParams, + Gost_R3410_2001_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2001_KeyExchangeFormatter() + { + } + + /// + public Gost_R3410_2001_KeyExchangeFormatter(AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + + /// + protected override Gost_R3410_EphemeralAsymmetricAlgorithm CreateEphemeralAlgorithm(ProviderType providerType, Gost_R3410_2001_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2001_EphemeralAsymmetricAlgorithm(providerType, keyExchangeParameters); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeXmlSerializer.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeXmlSerializer.cs new file mode 100644 index 0000000..08f025e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeXmlSerializer.cs @@ -0,0 +1,20 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2001; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// XML-сериализатора параметров ключа цифровой подписи ГОСТ Р 34.10-2001 + /// + public sealed class Gost_R3410_2001_KeyExchangeXmlSerializer : Gost_R3410_KeyExchangeXmlSerializer + { + /// + /// Имя тега с информацией о параметрах ключа ГОСТ Р 34.10-2001 + /// + public const string KeyValueTag = "GostKeyValue"; + + /// + public Gost_R3410_2001_KeyExchangeXmlSerializer() : base(KeyValueTag) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_SignatureDescription.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_SignatureDescription.cs new file mode 100644 index 0000000..79ef659 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2001_SignatureDescription.cs @@ -0,0 +1,20 @@ +using GostCryptography.Base; +using GostCryptography.Gost_R3411; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Информация о свойствах цифровой подписи ГОСТ Р 34.10-2001 + /// + public sealed class Gost_R3410_2001_SignatureDescription : GostSignatureDescription + { + /// + public Gost_R3410_2001_SignatureDescription() + { + KeyAlgorithm = typeof(Gost_R3410_2001_AsymmetricAlgorithm).AssemblyQualifiedName; + DigestAlgorithm = typeof(Gost_R3411_94_HashAlgorithm).AssemblyQualifiedName; + FormatterAlgorithm = typeof(GostSignatureFormatter).AssemblyQualifiedName; + DeformatterAlgorithm = typeof(GostSignatureDeformatter).AssemblyQualifiedName; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_AsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_AsymmetricAlgorithm.cs new file mode 100644 index 0000000..580364a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_AsymmetricAlgorithm.cs @@ -0,0 +1,122 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using GostCryptography.Properties; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2012/256 + /// + public sealed class Gost_R3410_2012_256_AsymmetricAlgorithm : Gost_R3410_AsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2012/256 + /// + public const int DefaultKeySizeValue = 512; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2012/256 + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2012/256 + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2012-256"; + + /// + /// Известные наименования алгоритма цифровой подписи ГОСТ Р 34.10-2012/256 + /// + public static readonly string[] KnownSignatureAlgorithmNames = { SignatureAlgorithmValue }; + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_AsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType_2012_512) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_AsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_AsymmetricAlgorithm(CspParameters providerParameters) : base(providerParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_GR3410_2012_256_SF; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410_2012_256; + + /// + protected override Gost_R3410_2012_256_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2012_256_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2012_256_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_256_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_256_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_2012_256_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + protected override void ValidateHashParameter(byte[] hash) + { + if (hash == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hash)); + } + + if (hash.Length != Gost_R3411_2012_256_HashAlgorithm.DefaultHashSizeValue / 8) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(hash), Resources.InvalidHashSize, Gost_R3411_2012_256_HashAlgorithm.DefaultHashSizeValue / 8); + } + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2012_256_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2012_256_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2012_256_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm.cs new file mode 100644 index 0000000..aa07b76 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm.cs @@ -0,0 +1,107 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2012/256 на основе эфимерного ключа + /// + public sealed class Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm : Gost_R3410_EphemeralAsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2012/256 + /// + public const int DefaultKeySizeValue = 512; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2012 для ключей длины 256 бит + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2012 для ключей длины 256 бит + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2012-256"; + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType_2012_512) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm(Gost_R3410_2012_256_KeyExchangeParams keyParameters) : this(GostCryptoConfig.ProviderType_2012_512, keyParameters) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm(ProviderType providerType, Gost_R3410_2012_256_KeyExchangeParams keyParameters) : base(providerType, keyParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_GR3410_12_256_EPHEM; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410_2012_256; + + /// + protected override Gost_R3410_2012_256_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2012_256_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2012_256_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_256_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_256_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_2012_256_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2012_256_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2012_256_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2012_256_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeAlgorithm.cs new file mode 100644 index 0000000..64de54c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeAlgorithm.cs @@ -0,0 +1,18 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + public sealed class Gost_R3410_2012_256_KeyExchangeAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + [SecurityCritical] + public Gost_R3410_2012_256_KeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_256_KeyExchangeParams keyExchangeParameters, int keySize, int signatureAlgId) + : base(providerType, provHandle, keyHandle, keyExchangeParameters, keySize, signatureAlgId) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeDeformatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeDeformatter.cs new file mode 100644 index 0000000..f93edbc --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeDeformatter.cs @@ -0,0 +1,24 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация дешифрования общего секретного ключа по ГОСТ Р 34.10-2012/256 + /// + public sealed class Gost_R3410_2012_256_KeyExchangeDeformatter : Gost_R3410_KeyExchangeDeformatter< + Gost_R3410_2012_256_KeyExchange, + Gost_R3410_2012_256_KeyExchangeParams, + Gost_R3410_2012_256_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2012_256_KeyExchangeDeformatter() + { + } + + /// + public Gost_R3410_2012_256_KeyExchangeDeformatter(AsymmetricAlgorithm privateKey) : base(privateKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeFormatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeFormatter.cs new file mode 100644 index 0000000..d7e9f76 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeFormatter.cs @@ -0,0 +1,31 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Base; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация шифрования общего секретного ключа по ГОСТ Р 34.10-2012/256 + /// + public sealed class Gost_R3410_2012_256_KeyExchangeFormatter : Gost_R3410_KeyExchangeFormatter< + Gost_R3410_2012_256_KeyExchange, + Gost_R3410_2012_256_KeyExchangeParams, + Gost_R3410_2012_256_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2012_256_KeyExchangeFormatter() + { + } + + /// + public Gost_R3410_2012_256_KeyExchangeFormatter(AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + + /// + protected override Gost_R3410_EphemeralAsymmetricAlgorithm CreateEphemeralAlgorithm(ProviderType providerType, Gost_R3410_2012_256_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm(providerType, keyExchangeParameters); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeXmlSerializer.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeXmlSerializer.cs new file mode 100644 index 0000000..3e4473e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeXmlSerializer.cs @@ -0,0 +1,20 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// XML-сериализатора параметров ключа цифровой подписи ГОСТ Р 34.10-2012/256 + /// + public sealed class Gost_R3410_2012_256_KeyExchangeXmlSerializer : Gost_R3410_KeyExchangeXmlSerializer + { + /// + /// Имя тега с информацией о параметрах ключа ГОСТ Р 34.10-2012/256 + /// + public const string KeyValueTag = "Gost_R3410_2012_256_KeyValue"; + + /// + public Gost_R3410_2012_256_KeyExchangeXmlSerializer() : base(KeyValueTag) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_SignatureDescription.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_SignatureDescription.cs new file mode 100644 index 0000000..c5f21a7 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_256_SignatureDescription.cs @@ -0,0 +1,20 @@ +using GostCryptography.Base; +using GostCryptography.Gost_R3411; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Информация о свойствах цифровой подписи ГОСТ Р 34.10-2012/256 + /// + public sealed class Gost_R3410_2012_256_SignatureDescription : GostSignatureDescription + { + /// + public Gost_R3410_2012_256_SignatureDescription() + { + KeyAlgorithm = typeof(Gost_R3410_2012_256_AsymmetricAlgorithm).AssemblyQualifiedName; + DigestAlgorithm = typeof(Gost_R3411_2012_256_HashAlgorithm).AssemblyQualifiedName; + FormatterAlgorithm = typeof(GostSignatureFormatter).AssemblyQualifiedName; + DeformatterAlgorithm = typeof(GostSignatureDeformatter).AssemblyQualifiedName; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_AsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_AsymmetricAlgorithm.cs new file mode 100644 index 0000000..5ec94fd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_AsymmetricAlgorithm.cs @@ -0,0 +1,122 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using GostCryptography.Properties; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2012/512 + /// + public sealed class Gost_R3410_2012_512_AsymmetricAlgorithm : Gost_R3410_AsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2012/512 + /// + public const int DefaultKeySizeValue = 1024; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2012/512 + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-512"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2012/512 + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2012-512"; + + /// + /// Известные наименования алгоритма цифровой подписи ГОСТ Р 34.10-2012/512 + /// + public static readonly string[] KnownSignatureAlgorithmNames = { SignatureAlgorithmValue }; + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_AsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType_2012_1024) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_AsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_AsymmetricAlgorithm(CspParameters providerParameters) : base(providerParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_GR3410_2012_512_SF; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410_2012_512; + + /// + protected override Gost_R3410_2012_512_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2012_512_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2012_512_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_512_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_512_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_2012_512_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + protected override void ValidateHashParameter(byte[] hash) + { + if (hash == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hash)); + } + + if (hash.Length != Gost_R3411_2012_512_HashAlgorithm.DefaultHashSizeValue / 8) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(hash), Resources.InvalidHashSize, Gost_R3411_2012_512_HashAlgorithm.DefaultHashSizeValue / 8); + } + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2012_512_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2012_512_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2012_512_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm.cs new file mode 100644 index 0000000..4ab60f5 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm.cs @@ -0,0 +1,107 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_R3411; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма ГОСТ Р 34.10-2012/512 на основе эфимерного ключа + /// + public sealed class Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm : Gost_R3410_EphemeralAsymmetricAlgorithm + { + /// + /// Размер ключа ГОСТ Р 34.10-2012/512 + /// + public const int DefaultKeySizeValue = 1024; + + /// + /// Наименование алгоритма цифровой подписи ГОСТ Р 34.10-2012 для ключей длины 512 бит + /// + public const string SignatureAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-512"; + + /// + /// Наименование алгоритма обмена ключами ГОСТ Р 34.10-2012 для ключей длины 512 бит + /// + public const string KeyExchangeAlgorithmValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2012-512"; + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm() : this(GostCryptoConfig.ProviderType_2012_1024) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm(ProviderType providerType) : base(providerType, DefaultKeySizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm(Gost_R3410_2012_512_KeyExchangeParams keyParameters) : this(GostCryptoConfig.ProviderType_2012_1024, keyParameters) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm(ProviderType providerType, Gost_R3410_2012_512_KeyExchangeParams keyParameters) : base(providerType, keyParameters, DefaultKeySizeValue) + { + } + + /// + public override string AlgorithmName => SignatureAlgorithmValue; + + /// + public override string SignatureAlgorithm => SignatureAlgorithmValue; + + /// + public override string KeyExchangeAlgorithm => KeyExchangeAlgorithmValue; + + /// + protected override int ExchangeAlgId => Constants.CALG_DH_GR3410_12_512_EPHEM; + + /// + protected override int SignatureAlgId => Constants.CALG_GR3410_2012_512; + + /// + protected override Gost_R3410_2012_512_KeyExchangeParams CreateKeyExchangeParams() + { + return new Gost_R3410_2012_512_KeyExchangeParams(); + } + + /// + [SecuritySafeCritical] + protected override Gost_R3410_2012_512_KeyExchangeAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_512_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_512_KeyExchangeAlgorithm(providerType, provHandle, keyHandle, keyExchangeParameters, KeySizeValue, SignatureAlgId); + } + + /// + [SecuritySafeCritical] + public override GostHashAlgorithm CreateHashAlgorithm() + { + return new Gost_R3411_2012_512_HashAlgorithm(ProviderType, this.GetSafeHandle()); + } + + /// + public override GostKeyExchangeFormatter CreateKeyExchangeFormatter() + { + return new Gost_R3410_2012_512_KeyExchangeFormatter(this); + } + + /// + public override GostKeyExchangeDeformatter CreateKeyExchangeDeformatter() + { + return new Gost_R3410_2012_512_KeyExchangeDeformatter(this); + } + + /// + protected override Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer() + { + return new Gost_R3410_2012_512_KeyExchangeXmlSerializer(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeAlgorithm.cs new file mode 100644 index 0000000..3a21a71 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeAlgorithm.cs @@ -0,0 +1,18 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + public sealed class Gost_R3410_2012_512_KeyExchangeAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + [SecurityCritical] + public Gost_R3410_2012_512_KeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_2012_512_KeyExchangeParams keyExchangeParameters, int keySize, int signatureAlgId) + : base(providerType, provHandle, keyHandle, keyExchangeParameters, keySize, signatureAlgId) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeDeformatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeDeformatter.cs new file mode 100644 index 0000000..4537fd8 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeDeformatter.cs @@ -0,0 +1,24 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация дешифрования общего секретного ключа по ГОСТ Р 34.10-2012/512 + /// + public sealed class Gost_R3410_2012_512_KeyExchangeDeformatter : Gost_R3410_KeyExchangeDeformatter< + Gost_R3410_2012_512_KeyExchange, + Gost_R3410_2012_512_KeyExchangeParams, + Gost_R3410_2012_512_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2012_512_KeyExchangeDeformatter() + { + } + + /// + public Gost_R3410_2012_512_KeyExchangeDeformatter(AsymmetricAlgorithm privateKey) : base(privateKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeFormatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeFormatter.cs new file mode 100644 index 0000000..3f2d361 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeFormatter.cs @@ -0,0 +1,31 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Base; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация шифрования общего секретного ключа по ГОСТ Р 34.10-2012/512 + /// + public sealed class Gost_R3410_2012_512_KeyExchangeFormatter : Gost_R3410_KeyExchangeFormatter< + Gost_R3410_2012_512_KeyExchange, + Gost_R3410_2012_512_KeyExchangeParams, + Gost_R3410_2012_512_KeyExchangeAlgorithm> + { + /// + public Gost_R3410_2012_512_KeyExchangeFormatter() + { + } + + /// + public Gost_R3410_2012_512_KeyExchangeFormatter(AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + + /// + protected override Gost_R3410_EphemeralAsymmetricAlgorithm CreateEphemeralAlgorithm(ProviderType providerType, Gost_R3410_2012_512_KeyExchangeParams keyExchangeParameters) + { + return new Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm(providerType, keyExchangeParameters); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeXmlSerializer.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeXmlSerializer.cs new file mode 100644 index 0000000..5b242aa --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeXmlSerializer.cs @@ -0,0 +1,20 @@ +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// XML-сериализатора параметров ключа цифровой подписи ГОСТ Р 34.10-2012/512 + /// + public sealed class Gost_R3410_2012_512_KeyExchangeXmlSerializer : Gost_R3410_KeyExchangeXmlSerializer + { + /// + /// Имя тега с информацией о параметрах ключа ГОСТ Р 34.10-2012/512 + /// + public const string KeyValueTag = "Gost_R3410_2012_512_KeyValue"; + + /// + public Gost_R3410_2012_512_KeyExchangeXmlSerializer() : base(KeyValueTag) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_SignatureDescription.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_SignatureDescription.cs new file mode 100644 index 0000000..98a38f1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_2012_512_SignatureDescription.cs @@ -0,0 +1,20 @@ +using GostCryptography.Base; +using GostCryptography.Gost_R3411; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Информация о свойствах цифровой подписи ГОСТ Р 34.10-2012/512 + /// + public sealed class Gost_R3410_2012_512_SignatureDescription : GostSignatureDescription + { + /// + public Gost_R3410_2012_512_SignatureDescription() + { + KeyAlgorithm = typeof(Gost_R3410_2012_512_AsymmetricAlgorithm).AssemblyQualifiedName; + DigestAlgorithm = typeof(Gost_R3411_2012_512_HashAlgorithm).AssemblyQualifiedName; + FormatterAlgorithm = typeof(GostSignatureFormatter).AssemblyQualifiedName; + DeformatterAlgorithm = typeof(GostSignatureDeformatter).AssemblyQualifiedName; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithm.cs new file mode 100644 index 0000000..ae1757f --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithm.cs @@ -0,0 +1,636 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Native; +using GostCryptography.Properties; +using GostCryptography.Reflection; +using System; +using System.IO; +using System.Runtime.InteropServices; +using System.Security; +using System.Security.Cryptography; +using System.Security.Permissions; + +namespace GostCryptography.Gost_R3410 +{ + /// + public abstract class Gost_R3410_AsymmetricAlgorithm : Gost_R3410_AsymmetricAlgorithmBase, ICspAsymmetricAlgorithm, ISafeHandleProvider, ISafeHandleProvider + where TKeyParams : Gost_R3410_KeyExchangeParams + where TKeyAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + [SecuritySafeCritical] + protected Gost_R3410_AsymmetricAlgorithm(ProviderType providerType, int keySize) : base(providerType, keySize) + { + _providerParameters = CreateDefaultProviderParameters(); + InitKeyContainer(_providerParameters, out _isRandomKeyContainer); + } + + /// + /// Конструктор + /// + /// Параметры криптографического провайдера + /// Размер ключа в битах + [SecuritySafeCritical] + protected Gost_R3410_AsymmetricAlgorithm(CspParameters providerParameters, int keySize) : base((ProviderType)providerParameters.ProviderType, keySize) + { + _providerParameters = CopyExistingProviderParameters(providerParameters); + InitKeyContainer(_providerParameters, out _isRandomKeyContainer); + } + + private readonly CspParameters _providerParameters; + private readonly bool _isRandomKeyContainer; + private bool _isPersistentKey; + private bool _isPublicKeyOnly; + + [SecurityCritical] + private SafeProvHandleImpl _providerHandle; + [SecurityCritical] + private volatile SafeKeyHandleImpl _keyHandle; + + /// + SafeProvHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get + { + GetKeyPair(); + + return _providerHandle; + } + } + + /// + SafeKeyHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get + { + GetKeyPair(); + + return _keyHandle; + } + } + + /// + public override int KeySize + { + [SecuritySafeCritical] + get + { + GetKeyPair(); + + return base.KeySize; + } + } + + /// + /// Хранить ключ в криптографическом провайдере + /// + public bool IsPersistentKey + { + [SecuritySafeCritical] + get + { + if (_providerHandle == null) + { + lock (this) + { + if (_providerHandle == null) + { + _providerHandle = CreateProviderHandle(_providerParameters, _isRandomKeyContainer); + } + } + } + + return _isPersistentKey; + } + [SecuritySafeCritical] + set + { + var currentValue = IsPersistentKey; + + if (currentValue != value) + { + var keyContainerPermission = new KeyContainerPermission(KeyContainerPermissionFlags.NoFlags); + var containerAccessEntry = new KeyContainerPermissionAccessEntry(_providerParameters, value ? KeyContainerPermissionFlags.Create : KeyContainerPermissionFlags.Delete); + keyContainerPermission.AccessEntries.Add(containerAccessEntry); + keyContainerPermission.Demand(); + + _isPersistentKey = value; + _providerHandle.DeleteOnClose = !_isPersistentKey; + } + } + } + + /// + /// Имеется доступ только к открытому ключу + /// + public bool IsPublicKeyOnly + { + [SecuritySafeCritical] + get + { + GetKeyPair(); + + return _isPublicKeyOnly; + } + } + + /// + public CspKeyContainerInfo CspKeyContainerInfo + { + [SecuritySafeCritical] + get + { + GetKeyPair(); + + return CspKeyContainerInfoHelper.CreateCspKeyContainerInfo(_providerParameters, _isRandomKeyContainer); + } + } + + /// + [SecuritySafeCritical] + public byte[] ExportCspBlob(bool includePrivateParameters) + { + GetKeyPair(); + + if (includePrivateParameters) + { + throw ExceptionUtility.CryptographicException(Resources.UserExportBulkBlob); + } + + return CryptoApiHelper.ExportCspBlob(_keyHandle, SafeKeyHandleImpl.InvalidHandle, Constants.PUBLICKEYBLOB); + } + + /// + [SecuritySafeCritical] + public void ImportCspBlob(byte[] importedKeyBytes) + { + if (importedKeyBytes == null) + { + throw ExceptionUtility.ArgumentNull(nameof(importedKeyBytes)); + } + + if (!IsPublicKeyBlob(importedKeyBytes)) + { + throw ExceptionUtility.Argument(nameof(importedKeyBytes), Resources.UserImportBulkBlob); + } + + var hProv = CryptoApiHelper.GetProviderHandle(ProviderType); + + _providerParameters.KeyNumber = CryptoApiHelper.ImportCspBlob(importedKeyBytes, hProv, SafeKeyHandleImpl.InvalidHandle, out var hKey); + _providerHandle = hProv; + _keyHandle = hKey; + + _isPublicKeyOnly = true; + } + + [SecuritySafeCritical] + public void ImportCspBlob(byte[] encodedParameters, byte[] encodedKeyValue) + { + var keyParams = CreateKeyExchangeParams(); + keyParams.DecodeParameters(encodedParameters); + keyParams.DecodePublicKey(encodedKeyValue); + + var keyBytes = CryptoApiHelper.EncodePublicBlob(keyParams, KeySizeValue, SignatureAlgId); + + ImportCspBlob(keyBytes); + } + + private static bool IsPublicKeyBlob(byte[] importedKeyBytes) + { + if ((importedKeyBytes[0] != Constants.PUBLICKEYBLOB) || (importedKeyBytes.Length < 12)) + { + return false; + } + + var gostKeyMask = BitConverter.GetBytes(Constants.GR3410_1_MAGIC); + + return (importedKeyBytes[8] == gostKeyMask[0]) + && (importedKeyBytes[9] == gostKeyMask[1]) + && (importedKeyBytes[10] == gostKeyMask[2]) + && (importedKeyBytes[11] == gostKeyMask[3]); + } + + /// + public override byte[] CreateSignature(byte[] hash) + { + return SignHash(hash); + } + + /// + /// Вычисляет цифровую подпись + /// + [SecuritySafeCritical] + public byte[] CreateSignature(byte[] data, object hashAlgorithm) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(data); + return SignHash(hash); + } + + /// + /// Вычисляет цифровую подпись + /// + [SecuritySafeCritical] + public byte[] CreateSignature(Stream data, object hashAlgorithm) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(data); + return SignHash(hash); + } + + /// + /// Вычисляет цифровую подпись + /// + [SecuritySafeCritical] + public byte[] CreateSignature(byte[] data, int dataOffset, int dataLength, object hashAlgorithm) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(data, dataOffset, dataLength); + return SignHash(hash); + } + + [SecuritySafeCritical] + private byte[] SignHash(byte[] hash) + { + ValidateHashParameter(hash); + + if (IsPublicKeyOnly) + { + throw ExceptionUtility.CryptographicException(Resources.NoPrivateKey); + } + + GetKeyPair(); + + if (!CspKeyContainerInfo.RandomlyGenerated) + { + var keyContainerPermission = new KeyContainerPermission(KeyContainerPermissionFlags.NoFlags); + var keyContainerAccessEntry = new KeyContainerPermissionAccessEntry(_providerParameters, KeyContainerPermissionFlags.Sign); + keyContainerPermission.AccessEntries.Add(keyContainerAccessEntry); + keyContainerPermission.Demand(); + } + + using (var hashAlgorithm = CreateHashAlgorithm()) + { + var hashHandleProvider = (ISafeHandleProvider)hashAlgorithm; + return CryptoApiHelper.SignValue(_providerHandle, hashHandleProvider.SafeHandle, _providerParameters.KeyNumber, hash); + } + } + + /// + public override bool VerifySignature(byte[] hash, byte[] signature) + { + return VerifyHash(hash, signature); + } + + /// + /// Проверяет цифровую подпись + /// + [SecuritySafeCritical] + public bool VerifySignature(byte[] buffer, object hashAlgorithm, byte[] signature) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(buffer); + return VerifyHash(hash, signature); + } + + /// + /// Проверяет цифровую подпись + /// + [SecuritySafeCritical] + public bool VerifySignature(Stream inputStream, object hashAlgorithm, byte[] signature) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(inputStream); + return VerifyHash(hash, signature); + } + + /// + /// Проверяет цифровую подпись + /// + public bool VerifySignature(byte[] data, int dataOffset, int dataLength, object hashAlgorithm, byte[] signature) + { + var hash = CryptographyUtils.ObjToHashAlgorithm(hashAlgorithm).ComputeHash(data, dataOffset, dataLength); + return VerifyHash(hash, signature); + } + + [SecuritySafeCritical] + private bool VerifyHash(byte[] hash, byte[] signature) + { + ValidateHashParameter(hash); + + if (signature == null) + { + throw ExceptionUtility.ArgumentNull(nameof(signature)); + } + + GetKeyPair(); + + using (var hashAlgorithm = CreateHashAlgorithm()) + { + var hashHandleProvider = (ISafeHandleProvider)hashAlgorithm; + return CryptoApiHelper.VerifySign(_providerHandle, hashHandleProvider.SafeHandle, _keyHandle, hash, signature); + } + } + + /// + /// Проверяет корректность хэша + /// + protected abstract void ValidateHashParameter(byte[] hash); + + /// + [SecuritySafeCritical] + public override TKeyAlgorithm CreateKeyExchange(TKeyParams keyParameters) + { + GetKeyPair(); + + return CreateKeyExchangeAlgorithm(ProviderType, _providerHandle, _keyHandle, (TKeyParams)keyParameters.Clone()); + } + + /// + [SecuritySafeCritical] + public override TKeyParams ExportParameters(bool includePrivateKey) + { + if (includePrivateKey) + { + throw ExceptionUtility.NotSupported(Resources.UserExportBulkKeyNotSupported); + } + + GetKeyPair(); + + return CryptoApiHelper.ExportPublicKey(_keyHandle, CreateKeyExchangeParams(), KeySizeValue); + } + + /// + [SecuritySafeCritical] + public override void ImportParameters(TKeyParams keyParameters) + { + if (keyParameters.PrivateKey != null) + { + throw ExceptionUtility.NotSupported(Resources.UserImportBulkKeyNotSupported); + } + + _keyHandle.TryDispose(); + + var hProv = CryptoApiHelper.GetProviderHandle(ProviderType); + + var importedKeyBytes = CryptoApiHelper.EncodePublicBlob(keyParameters.Clone(), KeySizeValue, SignatureAlgId); + + _providerParameters.KeyNumber = CryptoApiHelper.ImportCspBlob(importedKeyBytes, hProv, SafeKeyHandleImpl.InvalidHandle, out var keyHandle); + _providerHandle = hProv; + _keyHandle = keyHandle; + + _isPublicKeyOnly = true; + } + + /// + /// Установка пароля доступа к контейнеру + /// + [SecuritySafeCritical] + [SecurityPermission(SecurityAction.Assert, UnmanagedCode = true)] + public void SetContainerPassword(SecureString password) + { + if (IsPublicKeyOnly) + { + throw ExceptionUtility.CryptographicException(Resources.NoPrivateKey); + } + + GetKeyPair(); + SetSignatureKeyPassword(_providerHandle, password, _providerParameters.KeyNumber); + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + _keyHandle.TryDispose(); + + if (!_isPublicKeyOnly) + { + _providerHandle.TryDispose(); + } + + base.Dispose(disposing); + } + + [SecurityCritical] + private void GetKeyPair() + { + if (_keyHandle == null) + { + lock (this) + { + if (_keyHandle == null) + { + GetKeyPairValue(_providerParameters, _isRandomKeyContainer, out var providerHandle, out var keyHandle); + + _providerHandle = providerHandle; + _keyHandle = keyHandle; + + _isPersistentKey = true; + } + } + } + } + + [SecurityCritical] + private void GetKeyPairValue(CspParameters providerParams, bool randomKeyContainer, out SafeProvHandleImpl providerHandle, out SafeKeyHandleImpl keyHandle) + { + SafeProvHandleImpl resultProviderHandle = null; + SafeKeyHandleImpl resultKeyHandle = null; + + try + { + resultProviderHandle = CreateProviderHandle(providerParams, randomKeyContainer); + + if (providerParams.ParentWindowHandle != IntPtr.Zero) + { + CryptoApiHelper.SetProviderParameter(resultProviderHandle, providerParams.KeyNumber, Constants.PP_CLIENT_HWND, providerParams.ParentWindowHandle); + } + else if (providerParams.KeyPassword != null) + { + SetSignatureKeyPassword(resultProviderHandle, providerParams.KeyPassword, providerParams.KeyNumber); + } + + try + { + resultKeyHandle = CryptoApiHelper.GetUserKey(resultProviderHandle, providerParams.KeyNumber); + } + catch (Exception exception) + { + var errorCode = Marshal.GetHRForException(exception); + + if (errorCode != 0) + { + if (((providerParams.Flags & CspProviderFlags.UseExistingKey) != CspProviderFlags.NoFlags) || (errorCode != Constants.NTE_NO_KEY)) + { + throw; + } + + resultKeyHandle = CryptoApiHelper.GenerateKey(resultProviderHandle, providerParams.KeyNumber, providerParams.Flags); + } + } + + var keyAlgIdInverted = CryptoApiHelper.GetKeyParameter(resultKeyHandle, Constants.KP_ALGID); + var keyAlgId = keyAlgIdInverted[0] | (keyAlgIdInverted[1] << 8) | (keyAlgIdInverted[2] << 16) | (keyAlgIdInverted[3] << 24); + + if ((keyAlgId != ExchangeAlgId) && (keyAlgId != SignatureAlgId)) + { + throw ExceptionUtility.NotSupported(Resources.KeyAlgorithmNotSupported); + } + } + catch (Exception) + { + resultProviderHandle?.Close(); + resultKeyHandle?.Close(); + throw; + } + + providerHandle = resultProviderHandle; + keyHandle = resultKeyHandle; + } + + [SecurityCritical] + private static SafeProvHandleImpl CreateProviderHandle(CspParameters providerParams, bool randomKeyContainer) + { + SafeProvHandleImpl providerHandle = null; + + var keyContainerPermission = new KeyContainerPermission(KeyContainerPermissionFlags.NoFlags); + + try + { + providerHandle = CryptoApiHelper.OpenProvider(providerParams); + } + catch (Exception exception) + { + var errorCode = Marshal.GetHRForException(exception); + + if (errorCode != 0) + { + if (((providerParams.Flags & CspProviderFlags.UseExistingKey) != CspProviderFlags.NoFlags) + || ((errorCode != Constants.NTE_KEYSET_NOT_DEF) + && (errorCode != Constants.NTE_BAD_KEYSET) + && (errorCode != Constants.SCARD_W_CANCELLED_BY_USER))) + { + throw ExceptionUtility.CryptographicException(errorCode); + } + + if (!randomKeyContainer) + { + var containerAccessEntry = new KeyContainerPermissionAccessEntry(providerParams, KeyContainerPermissionFlags.Create); + keyContainerPermission.AccessEntries.Add(containerAccessEntry); + keyContainerPermission.Demand(); + } + + providerHandle = CryptoApiHelper.CreateProvider(providerParams); + + return providerHandle; + } + } + + if (!randomKeyContainer) + { + var containerAccessEntry = new KeyContainerPermissionAccessEntry(providerParams, KeyContainerPermissionFlags.Open); + keyContainerPermission.AccessEntries.Add(containerAccessEntry); + keyContainerPermission.Demand(); + } + + return providerHandle; + } + + [SecuritySafeCritical] + private static void SetSignatureKeyPassword(SafeProvHandleImpl hProv, SecureString keyPassword, int keyNumber) + { + if (keyPassword == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyPassword)); + } + + var keyPasswordData = Marshal.SecureStringToCoTaskMemAnsi(keyPassword); + + try + { + CryptoApiHelper.SetProviderParameter(hProv, keyNumber, Constants.PP_SIGNATURE_PIN, keyPasswordData); + } + finally + { + if (keyPasswordData != IntPtr.Zero) + { + Marshal.ZeroFreeCoTaskMemAnsi(keyPasswordData); + } + } + } + + private CspParameters CreateDefaultProviderParameters(CspProviderFlags defaultFlags = CspProviderFlags.UseMachineKeyStore) + { + return new CspParameters(ProviderType.ToInt()) + { + Flags = defaultFlags + }; + } + + private CspParameters CopyExistingProviderParameters(CspParameters providerParameters) + { + ValidateProviderParameters(providerParameters.Flags); + + return new CspParameters(providerParameters.ProviderType, providerParameters.ProviderName, providerParameters.KeyContainerName) + { + Flags = providerParameters.Flags, + KeyNumber = providerParameters.KeyNumber + }; + } + + private static void ValidateProviderParameters(CspProviderFlags flags) + { + // Если информацию о провайдере нужно взять из текущего ключа + if ((flags & CspProviderFlags.UseExistingKey) != CspProviderFlags.NoFlags) + { + const CspProviderFlags notExpectedFlags = CspProviderFlags.UseUserProtectedKey + | CspProviderFlags.UseArchivableKey + | CspProviderFlags.UseNonExportableKey; + + if ((flags & notExpectedFlags) != CspProviderFlags.NoFlags) + { + throw ExceptionUtility.Argument(nameof(flags), Resources.InvalidCspProviderFlags); + } + } + + // Если пользователь должен сам выбрать ключ (например, в диалоге) + if ((flags & CspProviderFlags.UseUserProtectedKey) != CspProviderFlags.NoFlags) + { + if (!Environment.UserInteractive) + { + throw ExceptionUtility.CryptographicException(Resources.UserInteractiveNotSupported); + } + + new UIPermission(UIPermissionWindow.SafeTopLevelWindows).Demand(); + } + } + + [SecurityCritical] + private void InitKeyContainer(CspParameters providerParameters, out bool randomKeyContainer) + { + // Установка типа ключа + if (providerParameters.KeyNumber == -1) + { + providerParameters.KeyNumber = (int)KeyNumber.Exchange; + } + else if (providerParameters.KeyNumber == SignatureAlgId) + { + providerParameters.KeyNumber = (int)KeyNumber.Signature; + } + else if (providerParameters.KeyNumber == ExchangeAlgId) + { + providerParameters.KeyNumber = (int)KeyNumber.Exchange; + } + + // Использовать автогенерированный контейнер + randomKeyContainer = ((providerParameters.KeyContainerName == null) && ((providerParameters.Flags & CspProviderFlags.UseDefaultKeyContainer) == CspProviderFlags.NoFlags)); + + if (randomKeyContainer) + { + providerParameters.KeyContainerName = Guid.NewGuid().ToString(); + } + else + { + GetKeyPair(); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithmBase.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithmBase.cs new file mode 100644 index 0000000..c316a85 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_AsymmetricAlgorithmBase.cs @@ -0,0 +1,81 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Базовый класс для всех реализаций алгоритма ГОСТ Р 34.10 + /// + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + /// Алгоритм общего секретного ключа ГОСТ Р 34.10 + public abstract class Gost_R3410_AsymmetricAlgorithmBase : GostAsymmetricAlgorithm + where TKeyParams : Gost_R3410_KeyExchangeParams + where TKeyAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + protected Gost_R3410_AsymmetricAlgorithmBase(ProviderType providerType, int keySize) : base(providerType, keySize) + { + } + + /// + /// Идентификатор алгоритма обмена ключей + /// + protected abstract int ExchangeAlgId { get; } + /// + /// Идентификатор алгоритма цифровой подписи + /// + protected abstract int SignatureAlgId { get; } + + /// + /// Создает экземпляр + /// + protected abstract TKeyParams CreateKeyExchangeParams(); + + /// + /// Создает экземпляр + /// + [SecuritySafeCritical] + protected abstract TKeyAlgorithm CreateKeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, TKeyParams keyExchangeParameters); + + /// + /// Создает общий секретный ключ + /// + /// Параметры открытого ключа, используемого для создания общего секретного ключа + public abstract TKeyAlgorithm CreateKeyExchange(TKeyParams keyParameters); + + /// + /// Экспортирует (шифрует) параметры ключа, используемого для создания общего секретного ключа + /// + /// Включить секретный ключ + public abstract TKeyParams ExportParameters(bool includePrivateKey); + + /// + /// Импортирует (дешифрует) параметры ключа, используемого для создания общего секретного ключа + /// + /// Параметры ключа, используемого для создания общего секретного ключа + public abstract void ImportParameters(TKeyParams keyParameters); + + /// + /// Создает XML-сериализатор параметров ключа цифровой подписи + /// + protected abstract Gost_R3410_KeyExchangeXmlSerializer CreateKeyExchangeXmlSerializer(); + + /// + public override string ToXmlString(bool includePrivateKey) + { + var keyParameters = ExportParameters(includePrivateKey); + var xmlSerializer = CreateKeyExchangeXmlSerializer(); + return xmlSerializer.Serialize(keyParameters); + } + + /// + public override void FromXmlString(string keyParametersXml) + { + var xmlSerializer = CreateKeyExchangeXmlSerializer(); + var keyParameters = xmlSerializer.Deserialize(keyParametersXml, CreateKeyExchangeParams()); + ImportParameters(keyParameters); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_EphemeralAsymmetricAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_EphemeralAsymmetricAlgorithm.cs new file mode 100644 index 0000000..140f2bb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_EphemeralAsymmetricAlgorithm.cs @@ -0,0 +1,116 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Native; +using GostCryptography.Properties; +using System; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Реализация алгоритма формирования общих ключей на основе алгоритма ГОСТ Р 34.10 и эфимерного ключа + /// + public abstract class Gost_R3410_EphemeralAsymmetricAlgorithm : Gost_R3410_AsymmetricAlgorithmBase, ISafeHandleProvider, ISafeHandleProvider + where TKeyParams : Gost_R3410_KeyExchangeParams + where TKeyAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + [SecuritySafeCritical] + protected Gost_R3410_EphemeralAsymmetricAlgorithm(ProviderType providerType, int keySize) : base(providerType, keySize) + { + _providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType).DangerousAddRef(); + _keyHandle = CryptoApiHelper.GenerateKey(_providerHandle, ExchangeAlgId, CspProviderFlags.NoFlags); + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Параметры ключа, используемого для создания общего секретного ключа + /// Размер ключа в битах + /// + /// + /// В параметре достаточно передать идентификатор OID параметров хэширования + /// и идентификатор OID параметров открытого ключа + /// . Остальные параметры не используются. + /// + [SecuritySafeCritical] + protected Gost_R3410_EphemeralAsymmetricAlgorithm(ProviderType providerType, TKeyParams keyParameters, int keySize) : base(providerType, keySize) + { + if (keyParameters == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyParameters)); + } + + _providerHandle = CryptoApiHelper.GetProviderHandle(ProviderType).DangerousAddRef(); + _keyHandle = CryptoApiHelper.GenerateDhEphemeralKey(providerType, _providerHandle, ExchangeAlgId, keyParameters.DigestParamSet, keyParameters.PublicKeyParamSet); + } + + [SecurityCritical] + private readonly SafeProvHandleImpl _providerHandle; + [SecurityCritical] + private readonly SafeKeyHandleImpl _keyHandle; + + /// + SafeProvHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get => _providerHandle; + } + + /// + SafeKeyHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get => _keyHandle; + } + + /// + public override byte[] CreateSignature(byte[] hash) + { + throw ExceptionUtility.NotSupported(Resources.EphemKeyOperationNotSupported); + } + + /// + public override bool VerifySignature(byte[] hash, byte[] signature) + { + throw ExceptionUtility.NotSupported(Resources.EphemKeyOperationNotSupported); + } + + /// + [SecuritySafeCritical] + public override TKeyAlgorithm CreateKeyExchange(TKeyParams keyParameters) + { + return CreateKeyExchangeAlgorithm(ProviderType, _providerHandle, _keyHandle, (TKeyParams)keyParameters.Clone()); + } + + /// + [SecuritySafeCritical] + public override TKeyParams ExportParameters(bool includePrivateKey) + { + if (includePrivateKey) + { + throw ExceptionUtility.NotSupported(Resources.EphemKeyOperationNotSupported); + } + + return CryptoApiHelper.ExportPublicKey(_keyHandle, CreateKeyExchangeParams(), KeySizeValue); + } + + /// + public override void ImportParameters(TKeyParams keyParameters) + { + throw ExceptionUtility.NotSupported(Resources.EphemKeyOperationNotSupported); + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + _keyHandle.TryDispose(); + _providerHandle.TryDispose(); + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeAlgorithm.cs new file mode 100644 index 0000000..dec9966 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeAlgorithm.cs @@ -0,0 +1,163 @@ +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Native; +using GostCryptography.Properties; +using System.Security; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Базовый класс всех реализаций общего секретного ключа ГОСТ Р 34.10 + /// + public abstract class Gost_R3410_KeyExchangeAlgorithm : GostKeyExchangeAlgorithm + { + /// + [SecurityCritical] + protected Gost_R3410_KeyExchangeAlgorithm(ProviderType providerType, SafeProvHandleImpl provHandle, SafeKeyHandleImpl keyHandle, Gost_R3410_KeyExchangeParams keyExchangeParameters, int keySize, int signatureAlgId) : base(providerType) + { + if (provHandle == null) + { + throw ExceptionUtility.ArgumentNull(nameof(provHandle)); + } + + if (keyHandle == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyHandle)); + } + + if (keyExchangeParameters == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeParameters)); + } + + _provHandle = provHandle.DangerousAddRef(); + _keyHandle = keyHandle.DangerousAddRef(); + _keyExchangeParameters = keyExchangeParameters; + _keySize = keySize; + _signatureAlgId = signatureAlgId; + } + + [SecurityCritical] + private readonly SafeProvHandleImpl _provHandle; + [SecurityCritical] + private readonly SafeKeyHandleImpl _keyHandle; + [SecurityCritical] + private readonly Gost_R3410_KeyExchangeParams _keyExchangeParameters; + + private readonly int _keySize; + private readonly int _signatureAlgId; + + /// + [SecuritySafeCritical] + public override byte[] EncodeKeyExchange(SymmetricAlgorithm keyExchangeAlgorithm, GostKeyExchangeExportMethod keyExchangeExportMethod) + { + if (keyExchangeAlgorithm is Gost_28147_89_SymmetricAlgorithm symAlg) + { + return EncodeKeyExchangeInternal(symAlg, keyExchangeExportMethod); + } + + if (keyExchangeAlgorithm is Gost_28147_89_SymmetricAlgorithmBase symAlgBase) + { + using (var gostKeyExchangeAlgorithm = new Gost_28147_89_SymmetricAlgorithm(symAlgBase.ProviderType)) + { + return gostKeyExchangeAlgorithm.EncodePrivateKey(symAlgBase, keyExchangeExportMethod); + } + } + + throw ExceptionUtility.Argument(nameof(keyExchangeAlgorithm), Resources.RequiredGost28147); + } + + [SecurityCritical] + private byte[] EncodeKeyExchangeInternal(Gost_28147_89_SymmetricAlgorithm keyExchangeAlgorithm, GostKeyExchangeExportMethod keyExchangeExportMethod) + { + switch (keyExchangeExportMethod) + { + case GostKeyExchangeExportMethod.GostKeyExport: + return EncodeKeyExchangeInternal(keyExchangeAlgorithm, Constants.CALG_SIMPLE_EXPORT); + + case GostKeyExchangeExportMethod.CryptoProKeyExport: + return EncodeKeyExchangeInternal(keyExchangeAlgorithm, Constants.CALG_PRO_EXPORT); + } + + throw ExceptionUtility.ArgumentOutOfRange(nameof(keyExchangeExportMethod)); + } + + [SecurityCritical] + private byte[] EncodeKeyExchangeInternal(Gost_28147_89_SymmetricAlgorithm keyExchangeAlgorithm, int keyExchangeExportAlgId) + { + Gost_28147_89_KeyExchangeInfo keyExchangeInfo; + + SafeKeyHandleImpl keyExchangeHandle = null; + + try + { + var importedKeyBytes = CryptoApiHelper.EncodePublicBlob(_keyExchangeParameters, _keySize, _signatureAlgId); + CryptoApiHelper.ImportCspBlob(importedKeyBytes, _provHandle, _keyHandle, out keyExchangeHandle); + CryptoApiHelper.SetKeyExchangeExportAlgId(ProviderType, keyExchangeHandle, keyExchangeExportAlgId); + + var symKeyHandle = keyExchangeAlgorithm.GetSafeHandle(); + keyExchangeInfo = CryptoApiHelper.ExportKeyExchange(symKeyHandle, keyExchangeHandle); + } + finally + { + keyExchangeHandle.TryDispose(); + } + + return keyExchangeInfo.Encode(); + } + + /// + [SecuritySafeCritical] + public override SymmetricAlgorithm DecodeKeyExchange(byte[] encodedKeyExchangeData, GostKeyExchangeExportMethod keyExchangeExportMethod) + { + switch (keyExchangeExportMethod) + { + case GostKeyExchangeExportMethod.GostKeyExport: + return DecodeKeyExchangeInternal(encodedKeyExchangeData, Constants.CALG_SIMPLE_EXPORT); + + case GostKeyExchangeExportMethod.CryptoProKeyExport: + return DecodeKeyExchangeInternal(encodedKeyExchangeData, Constants.CALG_PRO_EXPORT); + } + + throw ExceptionUtility.ArgumentOutOfRange(nameof(keyExchangeExportMethod)); + } + + [SecurityCritical] + private SymmetricAlgorithm DecodeKeyExchangeInternal(byte[] encodedKeyExchangeData, int keyExchangeExportAlgId) + { + var keyExchangeInfo = new Gost_28147_89_KeyExchangeInfo(); + keyExchangeInfo.Decode(encodedKeyExchangeData); + + SafeKeyHandleImpl symKeyHandle; + SafeKeyHandleImpl keyExchangeHandle = null; + + try + { + var importedKeyBytes = CryptoApiHelper.EncodePublicBlob(_keyExchangeParameters, _keySize, _signatureAlgId); + CryptoApiHelper.ImportCspBlob(importedKeyBytes, _provHandle, _keyHandle, out keyExchangeHandle); + CryptoApiHelper.SetKeyExchangeExportAlgId(ProviderType, keyExchangeHandle, keyExchangeExportAlgId); + + symKeyHandle = CryptoApiHelper.ImportKeyExchange(_provHandle, keyExchangeInfo, keyExchangeHandle); + } + finally + { + keyExchangeHandle.TryDispose(); + } + + return new Gost_28147_89_SymmetricAlgorithm(ProviderType, _provHandle, symKeyHandle); + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + _keyHandle.TryDispose(); + _provHandle.TryDispose(); + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeDeformatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeDeformatter.cs new file mode 100644 index 0000000..56da943 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeDeformatter.cs @@ -0,0 +1,104 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Properties; +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Базовый класс для реализации дешифрования общего секретного ключа по ГОСТ Р 34.10 + /// + /// Информация о ключе цифровой подписи ГОСТ Р 34.10 + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + /// Алгоритм общего секретного ключа ГОСТ Р 34.10 + public abstract class Gost_R3410_KeyExchangeDeformatter : GostKeyExchangeDeformatter + where TKey : Gost_R3410_KeyExchange, new() + where TKeyParams : Gost_R3410_KeyExchangeParams + where TKeyAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + /// Конструктор + /// + protected Gost_R3410_KeyExchangeDeformatter() + { + } + + /// + /// Конструктор + /// + /// Секретный ключ для расшифровки общего секретного ключа + /// + /// + protected Gost_R3410_KeyExchangeDeformatter(AsymmetricAlgorithm privateKey) + { + SetKey(privateKey); + } + + private Gost_R3410_AsymmetricAlgorithmBase _privateKey; + + /// + public override string Parameters + { + get + { + return null; + } + set + { + } + } + + /// + public override void SetKey(AsymmetricAlgorithm privateKey) + { + if (privateKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(privateKey)); + } + + if (!(privateKey is Gost_R3410_AsymmetricAlgorithmBase gostPublicKey)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(privateKey), Resources.ShouldSupportGost3410); + } + + _privateKey = gostPublicKey; + } + + /// + public override byte[] DecryptKeyExchange(byte[] encryptedKeyExchangeData) + { + var symmetricAlgorithm = DecryptKeyExchangeAlgorithm(encryptedKeyExchangeData); + + return symmetricAlgorithm.Key; + } + + /// + public override SymmetricAlgorithm DecryptKeyExchangeAlgorithm(byte[] encryptedKeyExchangeData) + { + if (encryptedKeyExchangeData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptedKeyExchangeData)); + } + + var keyExchange = new TKey(); + keyExchange.Decode(encryptedKeyExchangeData); + + return DecryptKeyExchangeAlgorithm(keyExchange); + } + + private SymmetricAlgorithm DecryptKeyExchangeAlgorithm(TKey encryptedKeyExchangeInfo) + { + if (encryptedKeyExchangeInfo == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptedKeyExchangeInfo)); + } + + var keyExchangeParameters = (TKeyParams)encryptedKeyExchangeInfo.TransportParameters; + var keyExchangeAlg = _privateKey.CreateKeyExchange(keyExchangeParameters); + var encodedKeyExchangeInfo = encryptedKeyExchangeInfo.SessionEncryptedKey.Encode(); + + return keyExchangeAlg.DecodeKeyExchange(encodedKeyExchangeInfo, GostKeyExchangeExportMethod.CryptoProKeyExport); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeFormatter.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeFormatter.cs new file mode 100644 index 0000000..5a24e14 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeFormatter.cs @@ -0,0 +1,162 @@ +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Properties; +using System; +using System.Security.Cryptography; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Базовый класс для реализации шифрования общего секретного ключа по ГОСТ Р 34.10 + /// + /// Информация о ключе цифровой подписи ГОСТ Р 34.10 + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + /// Алгоритм общего секретного ключа ГОСТ Р 34.10 + public abstract class Gost_R3410_KeyExchangeFormatter : GostKeyExchangeFormatter + where TKey : Gost_R3410_KeyExchange, new() + where TKeyParams : Gost_R3410_KeyExchangeParams + where TKeyAlgorithm : Gost_R3410_KeyExchangeAlgorithm + { + /// + /// Конструктор + /// + protected Gost_R3410_KeyExchangeFormatter() + { + } + + /// + /// Конструктор + /// + /// Открытый ключ для шифрации общего секретного ключа + /// + /// + protected Gost_R3410_KeyExchangeFormatter(AsymmetricAlgorithm publicKey) + { + SetKey(publicKey); + } + + private Gost_R3410_AsymmetricAlgorithmBase _publicKey; + + /// + public override string Parameters => null; + + /// + public override void SetKey(AsymmetricAlgorithm publicKey) + { + if (publicKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(publicKey)); + } + + if (!(publicKey is Gost_R3410_AsymmetricAlgorithmBase gostPublicKey)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(publicKey), Resources.ShouldSupportGost3410); + } + + _publicKey = gostPublicKey; + } + + /// + public override byte[] CreateKeyExchange(byte[] keyExchangeData) + { + if (keyExchangeData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeData)); + } + + using (var keyExchangeAlgorithm = new Gost_28147_89_SymmetricAlgorithm(_publicKey.ProviderType)) + { + keyExchangeAlgorithm.Key = keyExchangeData; + + return CreateKeyExchangeData(keyExchangeAlgorithm); + } + } + + /// + public override byte[] CreateKeyExchange(byte[] keyExchangeData, Type keyExchangeAlgorithmType) + { + if (keyExchangeData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeData)); + } + + if (keyExchangeAlgorithmType == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeAlgorithmType)); + } + + if (!typeof(GostSymmetricAlgorithm).IsAssignableFrom(keyExchangeAlgorithmType)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(keyExchangeAlgorithmType)); + } + + GostSymmetricAlgorithm keyExchangeAlgorithm; + + if (_publicKey != null) + { + var constructorInfo = keyExchangeAlgorithmType.GetConstructor(new[] { typeof(ProviderType) }); + keyExchangeAlgorithm = (GostSymmetricAlgorithm)constructorInfo.Invoke(new object[] { _publicKey.ProviderType }); + } + else + { + keyExchangeAlgorithm = (GostSymmetricAlgorithm)Activator.CreateInstance(keyExchangeAlgorithmType); + } + + using (keyExchangeAlgorithm) + { + keyExchangeAlgorithm.Key = keyExchangeData; + + return CreateKeyExchangeData(keyExchangeAlgorithm); + } + } + + /// + public override byte[] CreateKeyExchangeData(SymmetricAlgorithm keyExchangeAlgorithm) + { + if (keyExchangeAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeAlgorithm)); + } + + var keyExchangeInfo = CreateKeyExchangeInfo(keyExchangeAlgorithm); + + return keyExchangeInfo.Encode(); + } + + private TKey CreateKeyExchangeInfo(SymmetricAlgorithm keyExchangeAlgorithm) + { + if (keyExchangeAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeAlgorithm)); + } + + var keyExchange = new TKey(); + var keyExchangeParameters = _publicKey.ExportParameters(false); + + using (var keyExchangeAsym = CreateEphemeralAlgorithm(_publicKey.ProviderType, keyExchangeParameters)) + { + byte[] encodedKeyExchangeInfo; + + using (var keyExchangeAlg = keyExchangeAsym.CreateKeyExchange(keyExchangeParameters)) + { + encodedKeyExchangeInfo = keyExchangeAlg.EncodeKeyExchange(keyExchangeAlgorithm, GostKeyExchangeExportMethod.CryptoProKeyExport); + } + + var keyExchangeInfo = new Gost_28147_89_KeyExchangeInfo(); + keyExchangeInfo.Decode(encodedKeyExchangeInfo); + + keyExchange.SessionEncryptedKey = keyExchangeInfo; + keyExchange.TransportParameters = keyExchangeAsym.ExportParameters(false); + } + + return keyExchange; + } + + /// + /// Создает экземпляр алгоритма шифрования общего секретного ключа + /// + protected abstract Gost_R3410_EphemeralAsymmetricAlgorithm CreateEphemeralAlgorithm(ProviderType providerType, TKeyParams keyExchangeParameters); + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeXmlSerializer.cs b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeXmlSerializer.cs new file mode 100644 index 0000000..2da809c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3410/Gost_R3410_KeyExchangeXmlSerializer.cs @@ -0,0 +1,201 @@ +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Properties; +using System; +using System.Security; +using System.Text; + +namespace GostCryptography.Gost_R3410 +{ + /// + /// Базовый класс XML-сериализатора параметров ключа цифровой подписи ГОСТ Р 34.10 + /// + /// Параметры ключа цифровой подписи ГОСТ Р 34.10 + public abstract class Gost_R3410_KeyExchangeXmlSerializer where TKeyParams : Gost_R3410_KeyExchangeParams + { + private const string OidPrefix = "urn:oid:"; + private const string PublicKeyParametersTag = "PublicKeyParameters"; + private const string PublicKeyParamSetTag = "publicKeyParamSet"; + private const string DigestParamSetTag = "digestParamSet"; + private const string EncryptionParamSetTag = "encryptionParamSet"; + private const string PublicKeyTag = "PublicKey"; + private const string PrivateKeyTag = "PrivateKey"; + + private readonly string _keyValueTag; + + /// + /// Создает новый экземпляр данного класса + /// + /// Имя тега с информацией о параметрах ключа + protected Gost_R3410_KeyExchangeXmlSerializer(string keyValueTag) + { + _keyValueTag = keyValueTag; + } + + /// + /// Возвращает XML с параметрами ключа + /// + public string Serialize(TKeyParams parameters) + { + var builder = new StringBuilder().AppendFormat("<{0}>", _keyValueTag); + + if ((parameters.DigestParamSet != null) || (parameters.EncryptionParamSet != null) || (parameters.PublicKeyParamSet != null)) + { + builder.AppendFormat("<{0}>", PublicKeyParametersTag); + builder.AppendFormat("<{0}>{1}{2}", PublicKeyParamSetTag, OidPrefix, parameters.PublicKeyParamSet); + builder.AppendFormat("<{0}>{1}{2}", DigestParamSetTag, OidPrefix, parameters.DigestParamSet); + + if (parameters.EncryptionParamSet != null) + { + builder.AppendFormat("<{0}>{1}{2}", EncryptionParamSetTag, OidPrefix, parameters.EncryptionParamSet); + } + + builder.AppendFormat("", PublicKeyParametersTag); + } + + builder.AppendFormat("<{0}>{1}", PublicKeyTag, Convert.ToBase64String(parameters.PublicKey)); + + if (parameters.PrivateKey != null) + { + builder.AppendFormat("<{0}>{1}", PrivateKeyTag, Convert.ToBase64String(parameters.PublicKey)); + } + + builder.AppendFormat("", _keyValueTag); + + return builder.ToString(); + } + + /// + /// Возвращает параметры ключа на основе XML + /// + public TKeyParams Deserialize(string keyParametersXml, TKeyParams parameters) + { + if (string.IsNullOrEmpty(keyParametersXml)) + { + throw ExceptionUtility.ArgumentNull(nameof(keyParametersXml)); + } + + var keyValue = SecurityElement.FromString(keyParametersXml); + + if (keyValue == null) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidFromXmlString, _keyValueTag); + } + + keyValue = SelectChildElement(keyValue, _keyValueTag) ?? keyValue; + + var publicKeyParameters = SelectChildElement(keyValue, PublicKeyParametersTag); + + if (publicKeyParameters != null) + { + var publicKeyParamSet = RemoveWhiteSpaces(SelectChildElementText(publicKeyParameters, PublicKeyParamSetTag, false)); + + if (!publicKeyParamSet.StartsWith(OidPrefix, StringComparison.OrdinalIgnoreCase)) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidFromXmlString, PublicKeyParamSetTag); + } + + parameters.PublicKeyParamSet = publicKeyParamSet.Substring(OidPrefix.Length); + + var digestParamSet = RemoveWhiteSpaces(SelectChildElementText(publicKeyParameters, DigestParamSetTag, false)); + + if (!digestParamSet.StartsWith(OidPrefix, StringComparison.OrdinalIgnoreCase)) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidFromXmlString, DigestParamSetTag); + } + + parameters.DigestParamSet = digestParamSet.Substring(OidPrefix.Length); + + var encryptionParamSet = SelectChildElementText(publicKeyParameters, EncryptionParamSetTag, true); + + if (!string.IsNullOrEmpty(encryptionParamSet)) + { + encryptionParamSet = RemoveWhiteSpaces(encryptionParamSet); + + if (!encryptionParamSet.StartsWith(OidPrefix, StringComparison.OrdinalIgnoreCase)) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidFromXmlString, EncryptionParamSetTag); + } + + parameters.EncryptionParamSet = encryptionParamSet.Substring(OidPrefix.Length); + } + } + + var publicKey = SelectChildElementText(keyValue, PublicKeyTag, false); + parameters.PublicKey = Convert.FromBase64String(RemoveWhiteSpaces(publicKey)); + + var privateKey = SelectChildElementText(keyValue, PrivateKeyTag, true); + + if (privateKey != null) + { + parameters.PrivateKey = Convert.FromBase64String(RemoveWhiteSpaces(privateKey)); + } + + return parameters; + } + + private static string SelectChildElementText(SecurityElement element, string childName, bool canNull) + { + string text = null; + + var child = SelectChildElement(element, childName); + + if (child != null && (child.Children == null || child.Children.Count == 0)) + { + text = child.Text; + } + + if (string.IsNullOrEmpty(text) && !canNull) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidFromXmlString, childName); + } + + return text; + } + + private static SecurityElement SelectChildElement(SecurityElement element, string childName) + { + var children = element.Children; + + if (children != null) + { + foreach (SecurityElement child in children) + { + if (string.Equals(child.Tag, childName, StringComparison.OrdinalIgnoreCase) + || child.Tag.EndsWith(":" + childName, StringComparison.OrdinalIgnoreCase)) + { + return child; + } + } + } + + return null; + } + + private static string RemoveWhiteSpaces(string value) + { + var length = value.Length; + + var countWhiteSpace = 0; + + for (var i = 0; i < length; ++i) + { + if (char.IsWhiteSpace(value[i])) + { + ++countWhiteSpace; + } + } + + var valueWithoutWhiteSpace = new char[length - countWhiteSpace]; + + for (int i = 0, j = 0; i < length; ++i) + { + if (!char.IsWhiteSpace(value[i])) + { + valueWithoutWhiteSpace[j++] = value[i]; + } + } + + return new string(valueWithoutWhiteSpace); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HMAC.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HMAC.cs new file mode 100644 index 0000000..ea994f9 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HMAC.cs @@ -0,0 +1,51 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация HMAC на базе алгоритма хэширования ГОСТ Р 34.11-2012/256 + /// + public sealed class Gost_R3411_2012_256_HMAC : Gost_R3411_HMAC + { + /// + /// Наименование алгоритма HMAC на базе ГОСТ Р 34.11-2012/256 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr34112012-256"; + + /// + /// Известные наименования алгоритма HMAC на базе ГОСТ Р 34.11-2012/256 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_HMAC() : base(Gost_R3411_2012_256_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_HMAC(ProviderType providerType) : base(providerType, Gost_R3411_2012_256_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_HMAC(Gost_28147_89_SymmetricAlgorithmBase keyAlgorithm) : base(keyAlgorithm, Gost_R3411_2012_256_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override SafeHashHandleImpl CreateHashHMAC(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + return CryptoApiHelper.CreateHashHMAC_2012_256(providerType, providerHandle, symKeyHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HashAlgorithm.cs new file mode 100644 index 0000000..9f09473 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HashAlgorithm.cs @@ -0,0 +1,54 @@ +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация алгоритма хэширования ГОСТ Р 34.11-2012/256 + /// + public sealed class Gost_R3411_2012_256_HashAlgorithm : Gost_R3411_HashAlgorithm + { + /// + /// Размер хэша ГОСТ Р 34.11-2012/256 + /// + public const int DefaultHashSizeValue = 256; + + /// + /// Наименование алгоритма хэширования ГОСТ Р 34.11-2012/256 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"; + + /// + /// Известные наименования алгоритма хэширования ГОСТ Р 34.11-2012/256 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_HashAlgorithm() : base(DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_HashAlgorithm(ProviderType providerType) : base(providerType, DefaultHashSizeValue) + { + } + + [SecurityCritical] + internal Gost_R3411_2012_256_HashAlgorithm(ProviderType providerType, SafeProvHandleImpl providerHandle) : base(providerType, providerHandle, DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecurityCritical] + protected override SafeHashHandleImpl CreateHashHandle(SafeProvHandleImpl providerHandle) + { + return CryptoApiHelper.CreateHash_3411_2012_256(providerHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_PRF.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_PRF.cs new file mode 100644 index 0000000..869f002 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_256_PRF.cs @@ -0,0 +1,50 @@ +using System.Security; + +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация PRF на базе алгоритма хэширования ГОСТ Р 34.11-2012/256 + /// + public sealed class Gost_R3411_2012_256_PRF : Gost_R3411_PRF + { + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-2012/256 для использования в протоколе WS-Trust + /// + public const string WsTrustAlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:ck-p-gostr3411-2012-256"; + + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-2012/256 для использования в протоколах на базе WS-SecureConversation + /// + public const string WsSecureConversationAlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:dk-p-gostr3411-2012-256"; + + /// + /// Известные наименования алгоритма PRF на базе ГОСТ Р 34.11-2012/256 + /// + public static readonly string[] KnownAlgorithmNames = { WsTrustAlgorithmNameValue, WsSecureConversationAlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_PRF(Gost_28147_89_SymmetricAlgorithmBase key, byte[] label, byte[] seed) : base(key, label, seed) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_256_PRF(ProviderType providerType, byte[] key, byte[] label, byte[] seed) : base(providerType, key, label, seed) + { + } + + /// + public override string AlgorithmName => WsTrustAlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override Gost_R3411_2012_256_HMAC CreateHMAC(Gost_28147_89_SymmetricAlgorithm key) + { + return new Gost_R3411_2012_256_HMAC(key); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HMAC.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HMAC.cs new file mode 100644 index 0000000..b2fc768 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HMAC.cs @@ -0,0 +1,51 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация HMAC на базе алгоритма хэширования ГОСТ Р 34.11-2012/512 + /// + public sealed class Gost_R3411_2012_512_HMAC : Gost_R3411_HMAC + { + /// + /// Наименование алгоритма HMAC на базе ГОСТ Р 34.11-2012/512 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr34112012-512"; + + /// + /// Известные наименования алгоритма HMAC на базе ГОСТ Р 34.11-2012/512 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_HMAC() : base(Gost_R3411_2012_512_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_HMAC(ProviderType providerType) : base(providerType, Gost_R3411_2012_512_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_HMAC(Gost_28147_89_SymmetricAlgorithmBase keyAlgorithm) : base(keyAlgorithm, Gost_R3411_2012_512_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override SafeHashHandleImpl CreateHashHMAC(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + return CryptoApiHelper.CreateHashHMAC_2012_512(providerType, providerHandle, symKeyHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HashAlgorithm.cs new file mode 100644 index 0000000..af12deb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HashAlgorithm.cs @@ -0,0 +1,54 @@ +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация алгоритма хэширования ГОСТ Р 34.11-2012/512 + /// + public sealed class Gost_R3411_2012_512_HashAlgorithm : Gost_R3411_HashAlgorithm + { + /// + /// Размер хэша ГОСТ Р 34.11-2012/512 + /// + public const int DefaultHashSizeValue = 512; + + /// + /// Наименование алгоритма хэширования ГОСТ Р 34.11-2012/512 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-512"; + + /// + /// Известные наименования алгоритма хэширования ГОСТ Р 34.11-2012/512 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_HashAlgorithm() : base(DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_HashAlgorithm(ProviderType providerType) : base(providerType, DefaultHashSizeValue) + { + } + + [SecurityCritical] + internal Gost_R3411_2012_512_HashAlgorithm(ProviderType providerType, SafeProvHandleImpl providerHandle) : base(providerType, providerHandle, DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecurityCritical] + protected override SafeHashHandleImpl CreateHashHandle(SafeProvHandleImpl providerHandle) + { + return CryptoApiHelper.CreateHash_3411_2012_512(providerHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_PRF.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_PRF.cs new file mode 100644 index 0000000..c438f23 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_2012_512_PRF.cs @@ -0,0 +1,49 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация PRF на базе алгоритма хэширования ГОСТ Р 34.11-2012/512 + /// + public sealed class Gost_R3411_2012_512_PRF : Gost_R3411_PRF + { + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-2012/512 для использования в протоколе WS-Trust + /// + public const string WsTrustAlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:ck-p-gostr3411-2012-512"; + + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-2012/512 для использования в протоколах на базе WS-SecureConversation + /// + public const string WsSecureConversationAlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:dk-p-gostr3411-2012-512"; + + /// + /// Известные наименования алгоритма PRF на базе ГОСТ Р 34.11-2012/512 + /// + public static readonly string[] KnownAlgorithmNames = { WsTrustAlgorithmNameValue, WsSecureConversationAlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_PRF(Gost_28147_89_SymmetricAlgorithmBase key, byte[] label, byte[] seed) : base(key, label, seed) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_2012_512_PRF(ProviderType providerType, byte[] key, byte[] label, byte[] seed) : base(providerType, key, label, seed) + { + } + + /// + public override string AlgorithmName => WsTrustAlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override Gost_R3411_2012_512_HMAC CreateHMAC(Gost_28147_89_SymmetricAlgorithm key) + { + return new Gost_R3411_2012_512_HMAC(key); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HMAC.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HMAC.cs new file mode 100644 index 0000000..ae68fb2 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HMAC.cs @@ -0,0 +1,56 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация HMAC на базе алгоритма хэширования ГОСТ Р 34.11-94 + /// + public sealed class Gost_R3411_94_HMAC : Gost_R3411_HMAC + { + /// + /// Наименование алгоритма HMAC на базе ГОСТ Р 34.11-94 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:hmac-gostr3411"; + + /// + /// Устаревшее наименование алгоритма HMAC на базе ГОСТ Р 34.11-94 + /// + public const string ObsoleteAlgorithmNameValue = "http://www.w3.org/2001/04/xmldsig-more#hmac-gostr3411"; + + /// + /// Известные наименования алгоритма HMAC на базе ГОСТ Р 34.11-94 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue, ObsoleteAlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_94_HMAC() : base(Gost_R3411_94_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_94_HMAC(ProviderType providerType) : base(providerType, Gost_R3411_94_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_94_HMAC(Gost_28147_89_SymmetricAlgorithmBase keyAlgorithm) : base(keyAlgorithm, Gost_R3411_94_HashAlgorithm.DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override SafeHashHandleImpl CreateHashHMAC(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + return CryptoApiHelper.CreateHashHMAC_94(providerType, providerHandle, symKeyHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HashAlgorithm.cs new file mode 100644 index 0000000..e35d05d --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_HashAlgorithm.cs @@ -0,0 +1,59 @@ +using GostCryptography.Base; +using GostCryptography.Native; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация алгоритма хэширования ГОСТ Р 34.11-94 + /// + public sealed class Gost_R3411_94_HashAlgorithm : Gost_R3411_HashAlgorithm + { + /// + /// Размер хэша ГОСТ Р 34.11-94 + /// + public const int DefaultHashSizeValue = 256; + + /// + /// Наименование алгоритма хэширования ГОСТ Р 34.11-94 + /// + public const string AlgorithmNameValue = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr3411"; + + /// + /// Устаревшее наименование алгоритма хэширования ГОСТ Р 34.11-94 + /// + public const string ObsoleteAlgorithmNameValue = "http://www.w3.org/2001/04/xmldsig-more#gostr3411"; + + /// + /// Известные наименования алгоритма хэширования ГОСТ Р 34.11-94 + /// + public static readonly string[] KnownAlgorithmNames = { AlgorithmNameValue, ObsoleteAlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_94_HashAlgorithm() : base(DefaultHashSizeValue) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_94_HashAlgorithm(ProviderType providerType) : base(providerType, DefaultHashSizeValue) + { + } + + [SecurityCritical] + internal Gost_R3411_94_HashAlgorithm(ProviderType providerType, SafeProvHandleImpl providerHandle) : base(providerType, providerHandle, DefaultHashSizeValue) + { + } + + /// + public override string AlgorithmName => AlgorithmNameValue; + + /// + [SecurityCritical] + protected override SafeHashHandleImpl CreateHashHandle(SafeProvHandleImpl providerHandle) + { + return CryptoApiHelper.CreateHash_3411_94(providerHandle); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_PRF.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_PRF.cs new file mode 100644 index 0000000..1fee97a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_94_PRF.cs @@ -0,0 +1,49 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Реализация PRF на базе алгоритма хэширования ГОСТ Р 34.11-94 + /// + public sealed class Gost_R3411_94_PRF : Gost_R3411_PRF + { + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-94 для использования в протоколе WS-Trust + /// + public const string WsTrustAlgorithmNameValue = "http://docs.oasis-open.org/ws-sx/ws-trust/200512/CK/PGOSTR3411"; + + /// + /// Наименование алгоритма PRF на базе ГОСТ Р 34.11-94 для использования в протоколах на базе WS-SecureConversation + /// + public const string WsSecureConversationAlgorithmNameValue = "http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512/dk/p_gostr3411"; + + /// + /// Известные наименования алгоритма PRF на базе ГОСТ Р 34.11-94 + /// + public static readonly string[] KnownAlgorithmNames = { WsTrustAlgorithmNameValue, WsSecureConversationAlgorithmNameValue }; + + /// + [SecuritySafeCritical] + public Gost_R3411_94_PRF(Gost_28147_89_SymmetricAlgorithmBase key, byte[] label, byte[] seed) : base(key, label, seed) + { + } + + /// + [SecuritySafeCritical] + public Gost_R3411_94_PRF(ProviderType providerType, byte[] key, byte[] label, byte[] seed) : base(providerType, key, label, seed) + { + } + + /// + public override string AlgorithmName => WsTrustAlgorithmNameValue; + + /// + [SecuritySafeCritical] + protected override Gost_R3411_94_HMAC CreateHMAC(Gost_28147_89_SymmetricAlgorithm key) + { + return new Gost_R3411_94_HMAC(key); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HMAC.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HMAC.cs new file mode 100644 index 0000000..232bcfb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HMAC.cs @@ -0,0 +1,138 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using GostCryptography.Native; +using System; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Базовый класс для всех реализаций Hash-based Message Authentication Code (HMAC) на базе алгоритма хэширования ГОСТ Р 34.11 + /// + public abstract class Gost_R3411_HMAC : GostHMAC, ISafeHandleProvider where THash : GostHashAlgorithm + { + /// + [SecuritySafeCritical] + protected Gost_R3411_HMAC(int hashSize) : base(hashSize) + { + InitDefaults(new Gost_28147_89_SymmetricAlgorithm(ProviderType)); + } + + /// + [SecuritySafeCritical] + protected Gost_R3411_HMAC(ProviderType providerType, int hashSize) : base(providerType, hashSize) + { + InitDefaults(new Gost_28147_89_SymmetricAlgorithm(ProviderType)); + } + + /// + /// Конструктор + /// + /// Алгоритм для вычисления HMAC + /// Размер хэш-кода в битах + /// + [SecuritySafeCritical] + protected Gost_R3411_HMAC(Gost_28147_89_SymmetricAlgorithmBase keyAlgorithm, int hashSize) : base(keyAlgorithm.ProviderType, hashSize) + { + if (keyAlgorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyAlgorithm)); + } + + InitDefaults(Gost_28147_89_SymmetricAlgorithm.CreateFromKey(keyAlgorithm)); + } + + [SecuritySafeCritical] + private void InitDefaults(Gost_28147_89_SymmetricAlgorithm keyAlgorithm) + { + HashName = typeof(THash).Name; + + _keyAlgorithm = keyAlgorithm; + _hmacHandle = CreateHashHMAC(keyAlgorithm.ProviderType, CryptoApiHelper.GetProviderHandle(keyAlgorithm.ProviderType), keyAlgorithm.GetSafeHandle()); + } + + /// + /// Создает дескриптор функции хэширования HMAC криптографического провайдера + /// + [SecuritySafeCritical] + protected abstract SafeHashHandleImpl CreateHashHMAC(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle); + + [SecurityCritical] + private SafeHashHandleImpl _hmacHandle; + private Gost_28147_89_SymmetricAlgorithm _keyAlgorithm; + + /// + SafeHashHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get { return _hmacHandle; } + } + + /// + /// Алгоритм для вычисления HMAC + /// + public Gost_28147_89_SymmetricAlgorithmBase KeyAlgorithm + { + get + { + return _keyAlgorithm; + } + [SecuritySafeCritical] + set + { + _keyAlgorithm = Gost_28147_89_SymmetricAlgorithm.CreateFromKey(value); + } + } + + /// + public override byte[] Key + { + get + { + return _keyAlgorithm.Key; + } + set + { + _keyAlgorithm = new Gost_28147_89_SymmetricAlgorithm(ProviderType) { Key = value }; + + Initialize(); + } + } + + /// + [SecuritySafeCritical] + public override void Initialize() + { + var hmacHandle = CreateHashHMAC(ProviderType, CryptoApiHelper.GetProviderHandle(ProviderType), _keyAlgorithm.GetSafeHandle()); + _hmacHandle.TryDispose(); + _hmacHandle = hmacHandle; + } + + /// + [SecuritySafeCritical] + protected override void HashCore(byte[] data, int dataOffset, int dataLength) + { + CryptoApiHelper.HashData(_hmacHandle, data, dataOffset, dataLength); + } + + /// + [SecuritySafeCritical] + protected override byte[] HashFinal() + { + return CryptoApiHelper.EndHashData(_hmacHandle); + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + if (disposing) + { + _keyAlgorithm?.Clear(); + _hmacHandle.TryDispose(); + } + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HashAlgorithm.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HashAlgorithm.cs new file mode 100644 index 0000000..c0b0e96 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_HashAlgorithm.cs @@ -0,0 +1,89 @@ +using System.Security; + +using GostCryptography.Base; +using GostCryptography.Native; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Базовый класс для всех реализаций алгоритма хэширования ГОСТ Р 34.11 + /// + public abstract class Gost_R3411_HashAlgorithm : GostHashAlgorithm, ISafeHandleProvider + { + /// + [SecuritySafeCritical] + protected Gost_R3411_HashAlgorithm(int hashSize) : base(hashSize) + { + _hashHandle = CreateHashHandle(); + } + + /// + [SecuritySafeCritical] + protected Gost_R3411_HashAlgorithm(ProviderType providerType, int hashSize) : base(providerType, hashSize) + { + _hashHandle = CreateHashHandle(); + } + + [SecurityCritical] + internal Gost_R3411_HashAlgorithm(ProviderType providerType, SafeProvHandleImpl providerHandle, int hashSize) : base(providerType, hashSize) + { + _hashHandle = CreateHashHandle(providerHandle); + } + + /// + /// Создает дескриптор функции хэширования криптографического провайдера + /// + [SecurityCritical] + protected SafeHashHandleImpl CreateHashHandle() + { + return CreateHashHandle(CryptoApiHelper.GetProviderHandle(ProviderType)); + } + + /// + /// Создает дескриптор функции хэширования криптографического провайдера + /// + [SecurityCritical] + protected abstract SafeHashHandleImpl CreateHashHandle(SafeProvHandleImpl providerHandle); + + [SecurityCritical] + private SafeHashHandleImpl _hashHandle; + + /// + SafeHashHandleImpl ISafeHandleProvider.SafeHandle + { + [SecurityCritical] + get => _hashHandle; + } + + /// + [SecuritySafeCritical] + public override void Initialize() + { + _hashHandle.TryDispose(); + _hashHandle = CreateHashHandle(); + } + + /// + [SecuritySafeCritical] + protected override void HashCore(byte[] data, int dataOffset, int dataLength) + { + CryptoApiHelper.HashData(_hashHandle, data, dataOffset, dataLength); + } + + /// + [SecuritySafeCritical] + protected override byte[] HashFinal() + { + return CryptoApiHelper.EndHashData(_hashHandle); + } + + /// + [SecuritySafeCritical] + protected override void Dispose(bool disposing) + { + _hashHandle.TryDispose(); + + base.Dispose(disposing); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_PRF.cs b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_PRF.cs new file mode 100644 index 0000000..42440dc --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Gost_R3411/Gost_R3411_PRF.cs @@ -0,0 +1,167 @@ +using GostCryptography.Base; +using GostCryptography.Gost_28147_89; +using System; +using System.Security; + +namespace GostCryptography.Gost_R3411 +{ + /// + /// Базовый класс для всех реализаций генератора псевдослучайной последовательности (Pseudorandom Function, PRF) на базе алгоритма хэширования ГОСТ Р 34.11 + /// + /// Тип HMAC + public abstract class Gost_R3411_PRF : GostPRF where THMAC : GostHMAC + { + /// + /// Конструктор + /// + /// Симметричный ключ ГОСТ 28147 для вычисления HMAC на основе алгоритма ГОСТ Р 34.11 + /// Метка для порождения ключей (аргумент label функции PRF) + /// Начальное число для порождения ключей (аргумент seed функции PRF) + /// + /// + [SecuritySafeCritical] + protected Gost_R3411_PRF(Gost_28147_89_SymmetricAlgorithmBase key, byte[] label, byte[] seed) + : this(key.ProviderType, Gost_28147_89_SymmetricAlgorithm.CreateFromKey(key), label, seed) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Симметричный ключ ГОСТ 28147 для вычисления HMAC на основе алгоритма ГОСТ Р 34.11 + /// Метка для порождения ключей (аргумент label функции PRF) + /// Начальное число для порождения ключей (аргумент seed функции PRF) + /// + /// + [SecuritySafeCritical] + protected Gost_R3411_PRF(ProviderType providerType, byte[] key, byte[] label, byte[] seed) + : this(providerType, Gost_28147_89_SymmetricAlgorithm.CreateFromSessionKey(providerType, key), label, seed) + { + } + + /// + /// Конструктор + /// + /// Тип криптографического провайдера + /// Симметричный ключ ГОСТ 28147 для вычисления HMAC на основе алгоритма ГОСТ Р 34.11 + /// Метка для порождения ключей (аргумент label функции PRF) + /// Начальное число для порождения ключей (аргумент seed функции PRF) + /// + /// + [SecuritySafeCritical] + private Gost_R3411_PRF(ProviderType providerType, Gost_28147_89_SymmetricAlgorithm key, byte[] label, byte[] seed) : base(providerType) + { + if (label == null) + { + throw ExceptionUtility.ArgumentNull(nameof(label)); + } + + if (seed == null) + { + throw ExceptionUtility.ArgumentNull(nameof(seed)); + } + + _key = key; + _hmac = CreateHMAC(key); + + var labelAndSeed = new byte[label.Length + seed.Length]; + label.CopyTo(labelAndSeed, 0); + seed.CopyTo(labelAndSeed, label.Length); + + _labelAndSeed = labelAndSeed; + _buffer = new byte[labelAndSeed.Length + (_hmac.HashSize / 8)]; + + _value = labelAndSeed; + _keyIndex = 0; + } + + private readonly Gost_28147_89_SymmetricAlgorithm _key; + private readonly GostHMAC _hmac; + private readonly byte[] _labelAndSeed; + private readonly byte[] _buffer; + private byte[] _value; + private int _keyIndex; + + /// + /// Создает экземпляр на основе заданного ключа + /// + [SecuritySafeCritical] + protected abstract THMAC CreateHMAC(Gost_28147_89_SymmetricAlgorithm key); + + /// + /// Возвращает очередной набор псевдослучайной последовательности + /// + /// + /// Размер последовательности зависит от алгоритма хэширования + /// + [SecurityCritical] + public byte[] DeriveBytes() + { + var randomBuffer = GenerateNextBytes(); + + return _hmac.ComputeHash(randomBuffer); + } + + /// + /// Возвращает псевдослучайный симметричный ключ ГОСТ 28147 + /// + [SecuritySafeCritical] + public Gost_28147_89_SymmetricAlgorithmBase DeriveKey() + { + var randomPassword = GenerateNextBytes(); + + using (var hmac = CreateHMAC(_key)) + { + return Gost_28147_89_SymmetricAlgorithm.CreateFromPassword(hmac, randomPassword); + } + } + + /// + /// Возвращает псевдослучайный симметричный ключ ГОСТ 28147 + /// + /// Позиция ключа в псевдослучайной последовательности + /// Если позиция ключа не кратна размеру ключа в байтах или ключ с данной позицией уже был создан + [SecurityCritical] + public Gost_28147_89_SymmetricAlgorithmBase DeriveKey(int position) + { + if ((position % _hmac.HashSize) != 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(position)); + } + + var keyIndex = position / _hmac.HashSize; + + if (keyIndex < _keyIndex) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(position)); + } + + while (keyIndex > _keyIndex) + { + DeriveKey().Clear(); + } + + return DeriveKey(); + } + + [SecurityCritical] + private byte[] GenerateNextBytes() + { + _value = _hmac.ComputeHash(_value); + _value.CopyTo(_buffer, 0); + _labelAndSeed.CopyTo(_buffer, _value.Length); + + _keyIndex++; + + return _buffer; + } + + /// + protected override void Dispose(bool disposing) + { + _key.Clear(); + _hmac.Dispose(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/LICENSE b/Hcs.ClientNet/GostCryptography/LICENSE new file mode 100644 index 0000000..1321e78 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015 Alexander Mezhov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Hcs.ClientNet/GostCryptography/Native/Constants.cs b/Hcs.ClientNet/GostCryptography/Native/Constants.cs new file mode 100644 index 0000000..456f77d --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/Constants.cs @@ -0,0 +1,409 @@ +namespace GostCryptography.Native +{ + /// + /// Константы для работы с криптографическим провайдером + /// + public static class Constants + { + // ReSharper disable InconsistentNaming + + #region Идентификаторы криптографических алгоритмов ГОСТ + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа пользователя. Открытый ключ получается по ГОСТ Р 34.10 2001 + /// + public const int CALG_DH_EL_SF = 0xaa24; + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа пользователя. Открытый ключ получается по ГОСТ Р 34.10 2012 (256 бит) + /// + public const int CALG_DH_GR3410_2012_256_SF = 0xaa46; + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа пользователя. Открытый ключ получается по ГОСТ Р 34.10 2012 (512 бит) + /// + public const int CALG_DH_GR3410_2012_512_SF = 0xaa42; + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа эфемерной пары. Открытый ключ получается по ГОСТ Р 34.10 2001 + /// + public const int CALG_DH_EL_EPHEM = 0xaa25; + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа эфемерной пары. Открытый ключ получается по ГОСТ Р 34.10 2012 (256 бит) + /// + public const int CALG_DH_GR3410_12_256_EPHEM = 0xaa47; + + /// + /// Идентификатор алгоритма обмена ключей по Диффи-Хеллману на базе закрытого ключа эфемерной пары. Открытый ключ получается по ГОСТ Р 34.10 2012 (512 бит) + /// + public const int CALG_DH_GR3410_12_512_EPHEM = 0xaa43; + + /// + /// Идентификатор алгоритма ЭЦП по ГОСТ Р 34.10-2001 + /// + public const int CALG_GR3410EL = 0x2e23; + + /// + /// Идентификатор алгоритма ЭЦП по ГОСТ Р 34.10-2012 (256 бит) + /// + public const int CALG_GR3410_2012_256 = 0x2e49; + + /// + /// Идентификатор алгоритма ЭЦП по ГОСТ Р 34.10-2012 (512 бит) + /// + public const int CALG_GR3410_2012_512 = 0x2e3d; + + /// + /// Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-94 + /// + public const int CALG_GR3411 = 0x801e; + + /// + /// Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-2012, длина выхода 256 бит + /// + public const int CALG_GR3411_2012_256 = 0x8021; + + /// + /// Идентификатор алгоритма хэширования в соответствии с ГОСТ Р 34.11-2012, длина выхода 512 бит + /// + public const int CALG_GR3411_2012_512 = 0x8022; + + /// + /// Идентификатор алгоритма ключевого хэширования (HMAC, Hash-based Message Authentication Code) на базе алгоритма ГОСТ Р 34.11-94 и сессионного ключа + /// + public const int CALG_GR3411_HMAC = 0x8027; + + /// + /// Идентификатор алгоритма ключевого хэширования (HMAC, Hash-based Message Authentication Code) на базе алгоритма ГОСТ Р 34.11-94 и сессионного ключа , длина выхода 256 бит + /// + public const int CALG_GR3411_2012_256_HMAC = 0x8034; + + /// + /// Идентификатор алгоритма ключевого хэширования (HMAC, Hash-based Message Authentication Code) на базе алгоритма ГОСТ Р 34.11-94 и сессионного ключа , длина выхода 512 бит + /// + public const int CALG_GR3411_2012_512_HMAC = 0x8035; + + /// + /// Идентификатор алгоритма ключевого хэширования (HMAC, Hash-based Message Authentication Code) на базе алгоритма хэширования по ГОСТ Р 34.11 + /// + public const int CALG_GR3411_HMAC34 = 0x8028; + + /// + /// Идентификатор алгоритма симметричного шифрования по ГОСТ 28147-89 + /// + public const int CALG_G28147 = 0x661e; + + /// + /// Идентификатор алгоритма вычисления имитовставки по ГОСТ 28147-89 + /// + public const int CALG_G28147_IMIT = 0x801f; + + /// + /// Идентификатор алгоритма экспорта ключа КриптоПро + /// + public const int CALG_PRO_EXPORT = 0x661f; + + /// + /// Идентификатор алгоритма экспорта ключа по ГОСТ 28147-89 + /// + public const int CALG_SIMPLE_EXPORT = 0x6620; + + #endregion + + #region Настройки контекста криптографического провайдера + + /// + /// Создать новый ключевой контейнер + /// + public const uint CRYPT_NEWKEYSET = 8; + + /// + /// Использовать ключи локальной машины + /// + public const uint CRYPT_MACHINE_KEYSET = 0x20; + + /// + /// Получить доступ к провайдеру без необходимости доступа к приватным ключам. + /// + public const uint CRYPT_VERIFYCONTEXT = 0xf0000000; + + #endregion + + #region Параметры криптографического провайдера + + public const int PP_CLIENT_HWND = 1; + + /// + /// Удаляет текущий контейнер с носителя + /// + public const int PP_DELETE_KEYSET = 0x7d; + + /// + /// Задаёт пароль (PIN) для доступа к ключу AT_KEYEXCHANGE + /// + public const int PP_KEYEXCHANGE_PIN = 0x20; + + /// + /// Задаёт пароль (PIN) для доступа к ключу AT_SIGNATURE + /// + public const int PP_SIGNATURE_PIN = 0x21; + + /// + /// Тип криптопровайдера + /// + public const int PP_PROVTYPE = 0x10; + + /// + /// Перечисление контейнеров криптопровайдера + /// + public const int PP_ENUMCONTAINERS = 0x2; + + /// + /// Получение первого элемента в перечислении + /// + public const uint CRYPT_FIRST = 0x1; + + /// + /// Получение следующего элемента в перечислении + /// + public const uint CRYPT_NEXT = 0x2; + + /// + /// Возвращает FQCN (Fully Qualified Container Name) контейнера VipNet + /// + public const uint CRYPT_UNIQUE = 0x8; + + /// + /// Возвращает FQCN (Fully Qualified Container Name) контейнера CryptoPro + /// + public const uint CRYPT_FQCN = 0x10; + + /// + /// В перечислении нет больше элементов + /// + public const uint ERROR_NO_MORE_ITEMS = 0x103; + + /// + /// Искомый сертификат не найден + /// + public const int ERROR_NO_SUCH_CERTIFICATE = -2146435028; // 8010002C + + #endregion + + #region Параметры функции хэширования криптографического провайдера + + /// + /// Стартовый вектор функции хэширования, устанавливаемый приложением + /// + public const int HP_HASHSTARTVECT = 8; + + /// + /// Значение функции хэширования в little-endian порядке байт в соотвествии с типом GostR3411-94-Digest CPCMS [RFC 4490] + /// + public const int HP_HASHVAL = 2; + + #endregion + + #region Параметры функций шифрования криптографического провайдера + + /// + /// Признак ключей ГОСТ 28147-89 и мастер ключей TLS + /// + public const int G28147_MAGIC = 0x374A51FD; + + /// + /// Признак ключей ГОСТ Р 34.10-94 и ГОСТ Р 34.10-2001 + /// + public const int GR3410_1_MAGIC = 0x3147414D; + + #endregion + + #region Параметры транспортировки ключей + + /// + /// Используется для транспортировки симметричных ключей CALG_G28147, CALG_UECSYMMETRIC + /// + public const int SIMPLEBLOB = 1; + + /// + /// Используется для транспортировки открытых ключей + /// + public const int PUBLICKEYBLOB = 6; + + #endregion + + #region Параметры ключей криптографического провайдера + + /// + /// Вектор инициализации (IV, синхропосылки) алгоритма шифрования + /// + public const int KP_IV = 1; + + /// + /// Метод дополнения шифра ключа + /// + public const int KP_PADDING = 3; + + /// + /// Режим шифра ключа + /// + public const int KP_MODE = 4; + + /// + /// Идентификатор алгоритма ключа + /// + public const int KP_ALGID = 7; + + /// + /// Идентификатор алгоритма экспорта для симметричного ключа + /// + public const int KP_EXPORTID = 108; + + /// + /// Строковый идентификатор узла замены + /// + public const int KP_CIPHEROID = 0x68; + + /// + /// Строковый идентификатор параметров ключа ГОСТ Р 34.10-2001, применяемых в алгоритме Диффи-Хеллмана + /// + public const int KP_DHOID = 0x6a; + + /// + /// Строковый идентификатор функции хэширования + /// + public const int KP_HASHOID = 0x67; + + /// + /// Закрытый ключ в ключевой паре + /// + public const int KP_X = 14; + + /// + /// Сертификат X.509 в формате Distinguished Encoding Rules (DER) + /// + public const int KP_CERTIFICATE = 0x1a; + + /// + /// Произведенный ключ может быть передан из криптопровайдера в ключевой блоб при экспорте ключа независимо от сессии криптопровайдера (исключает CRYPT_ARCHIVABLE) + /// + public const int CRYPT_EXPORTABLE = 1; + + /// + /// Произведенный ключ может быть передан из криптопровайдера в ключевой блоб при экспорте ключа в раках одной сессии криптопровайдера (исключает CRYPT_EXPORTABLE) + /// + public const int CRYPT_ARCHIVABLE = 0x4000; + + /// + /// При любом запросе на доступ к носителю закрытого ключа пользователя выводится окно диалога, запрашивающего право доступа к ключу + /// + public const int CRYPT_USER_PROTECTED = 2; + + /// + /// Генерация пустой ключевой пары обмена + /// + public const int CRYPT_PREGEN = 0x40; + + /// + /// Пара ключей для обмена ключами + /// + public const int AT_KEYEXCHANGE = 1; + + /// + /// Пара ключей для формирования цифровой подписи + /// + public const int AT_SIGNATURE = 2; + + #endregion + + #region Методы дополнения шифра ключа (KP_PADDING) + + /// + /// PKCS#5 + /// + public const int PKCS5_PADDING = 1; + + /// + /// Дополнение случайными байтами + /// + public const int RANDOM_PADDING = 2; + + /// + /// Дополнение нулевыми байтами + /// + public const int ZERO_PADDING = 3; + + #endregion + + #region Режимы шифра ключа (KP_MODE) + + /// + /// Cipher Block Chaining (CBC) + /// + public const int CRYPT_MODE_CBC = 1; + + /// + /// Electronic codebook (ECB) + /// + public const int CRYPT_MODE_ECB = 2; + + /// + /// Output Feedback (OFB) + /// + public const int CRYPT_MODE_OFB = 3; + + /// + /// Cipher Feedback (CFB) + /// + public const int CRYPT_MODE_CFB = 4; + + /// + /// Ciphertext stealing (CTS) + /// + public const int CRYPT_MODE_CTS = 5; + + #endregion + + #region Коды ошибок + + /// + /// Aлгоритм, который данный криптопровайдер не поддерживает + /// + public const int NTE_BAD_ALGID = -2146893816; + + /// + /// Данные некорректного размера + /// + public const int NTE_BAD_DATA = -2146893819; + + /// + /// Дескриптор хэша ошибочен + /// + public const int NTE_BAD_HASH = -2146893822; + + /// + /// Ключевой контейнер не был открыт или не существует + /// + public const int NTE_BAD_KEYSET = -2146893802; + + /// + /// Ключевой контейнер с заданным именем не существует + /// + public const int NTE_KEYSET_NOT_DEF = -2146893799; + + /// + /// Ключ с заданным параметром (AT_KEYEXCHANGE, AT_SIGNATURE или AT_UECSYMMETRICKEY) не существует + /// + public const int NTE_NO_KEY = -2146893811; + + /// + /// Пользователь прервал операцию + /// + public const int SCARD_W_CANCELLED_BY_USER = -2146434962; + + #endregion + + // ReSharper restore InconsistentNaming + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/CryptoApi.cs b/Hcs.ClientNet/GostCryptography/Native/CryptoApi.cs new file mode 100644 index 0000000..af434dc --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/CryptoApi.cs @@ -0,0 +1,154 @@ +using System; +using System.Runtime.ConstrainedExecution; +using System.Runtime.InteropServices; +using System.Security; +using System.Text; + +namespace GostCryptography.Native +{ + /// + /// Функции для работы с Microsoft CryptoAPI + /// + [SecurityCritical] + public static class CryptoApi + { + // ReSharper disable InconsistentNaming + + #region Для работы с криптографическим провайдером + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", CharSet = CharSet.Auto, SetLastError = true)] + public static extern bool CryptAcquireContext([In][Out] ref SafeProvHandleImpl hProv, [In] string pszContainer, [In] string pszProvider, [In] uint dwProvType, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptReleaseContext(IntPtr hCryptProv, uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] + [DllImport("advapi32.dll", CharSet = CharSet.Ansi, SetLastError = true)] + public static extern bool CryptContextAddRef([In] IntPtr hProv, [In] byte[] pdwReserved, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", CharSet = CharSet.Unicode, SetLastError = true)] + public static extern bool CryptGetProvParam([In] SafeProvHandleImpl hProv, [In] uint dwParam, [In][Out] byte[] pbData, ref uint dwDataLen, [In] uint dwFlags); + + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGetProvParam([In] SafeProvHandleImpl hProv, [In] uint dwParam, [MarshalAs(UnmanagedType.LPStr)] StringBuilder pbData, ref uint dwDataLen, uint dwFlags); + + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGetProvParam([In] SafeProvHandleImpl hProv, [In] uint dwParam, [MarshalAs(UnmanagedType.U8)] long pbData, ref uint dwDataLen, uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptSetProvParam([In] SafeProvHandleImpl hProv, [In] uint dwParam, [In] IntPtr pbData, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] + [DllImport("advapi32.dll", EntryPoint = "CryptSetProvParam", SetLastError = true)] + public static extern bool CryptSetProvParam2(IntPtr hCryptProv, [In] uint dwParam, [In] byte[] pbData, [In] uint dwFlags); + + #endregion + + #region Для работы с функцией хэширования криптографического провайдера + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptCreateHash([In] SafeProvHandleImpl hProv, [In] uint Algid, [In] SafeKeyHandleImpl hKey, [In] uint dwFlags, [In][Out] ref SafeHashHandleImpl phHash); + + [return: MarshalAs(UnmanagedType.Bool)] + [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptDestroyHash(IntPtr pHashCtx); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGetHashParam([In] SafeHashHandleImpl hHash, [In] uint dwParam, [In][Out] byte[] pbData, ref uint pdwDataLen, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptSetHashParam([In] SafeHashHandleImpl hHash, [In] uint dwParam, [In][Out] byte[] pbData, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptHashData([In] SafeHashHandleImpl hHash, [In][Out] byte[] pbData, [In] uint dwDataLen, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern unsafe bool CryptHashData([In] SafeHashHandleImpl hHash, byte* pbData, [In] uint dwDataLen, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptHashSessionKey([In] SafeHashHandleImpl hHash, [In] SafeKeyHandleImpl hKey, [In] uint dwFlags); + + #endregion + + #region Для работы с функцией шифрования криптографического провайдера + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptDecrypt([In] SafeKeyHandleImpl hKey, [In] SafeHashHandleImpl hHash, [In][MarshalAs(UnmanagedType.Bool)] bool Final, [In] uint dwFlags, [In][Out] byte[] pbData, ref uint pdwDataLen); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptEncrypt([In] SafeKeyHandleImpl hKey, [In] SafeHashHandleImpl hHash, [In][MarshalAs(UnmanagedType.Bool)] bool Final, [In] uint dwFlags, [In][Out] byte[] pbData, ref uint pdwDataLen, [In] uint dwBufLen); + + #endregion + + #region Для работы с ключами криптографического провайдера + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGenKey([In] SafeProvHandleImpl hProv, [In] uint Algid, [In] uint dwFlags, [In][Out] ref SafeKeyHandleImpl phKey); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGetUserKey([In] SafeProvHandleImpl hProv, [In] uint dwKeySpec, [In][Out] ref SafeKeyHandleImpl phUserKey); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptDeriveKey([In] SafeProvHandleImpl hProv, [In] uint Algid, [In] SafeHashHandleImpl hBaseData, [In] uint dwFlags, [In][Out] ref SafeKeyHandleImpl phKey); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptDuplicateKey([In] IntPtr hKey, [In] byte[] pdwReserved, [In] uint dwFlags, [In][Out] ref SafeKeyHandleImpl phKey); + + [return: MarshalAs(UnmanagedType.Bool)] + [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptDestroyKey(IntPtr pKeyCtx); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptGetKeyParam([In] SafeKeyHandleImpl hKey, [In] uint dwParam, [In][Out] byte[] pbData, ref uint pdwDataLen, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptSetKeyParam([In] SafeKeyHandleImpl hKey, [In] uint dwParam, [In] byte[] pbData, [In] uint dwFlags); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptExportKey([In] SafeKeyHandleImpl hKey, [In] SafeKeyHandleImpl hExpKey, [In] uint dwBlobType, [In] uint dwFlags, [Out] byte[] pbData, ref uint pdwDataLen); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", SetLastError = true)] + public static extern bool CryptImportKey([In] SafeProvHandleImpl hCryptProv, [In] byte[] pbData, [In] uint dwDataLen, [In] SafeKeyHandleImpl hPubKey, [In] uint dwFlags, [In][Out] ref SafeKeyHandleImpl phKey); + + #endregion + + #region Для работы с цифровой подписью + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", CharSet = CharSet.Ansi, SetLastError = true)] + public static extern bool CryptSignHash([In] SafeHashHandleImpl hHash, [In] uint dwKeySpec, [MarshalAs(UnmanagedType.LPStr)] StringBuilder sDescription, [In] uint dwFlags, [In][Out] byte[] pbSignature, ref uint pdwSigLen); + + [return: MarshalAs(UnmanagedType.Bool)] + [DllImport("advapi32.dll", CharSet = CharSet.Ansi, SetLastError = true)] + public static extern bool CryptVerifySignature([In] SafeHashHandleImpl hHash, [In][Out] byte[] pbSignature, uint pdwSigLen, [In] SafeKeyHandleImpl hPubKey, [MarshalAs(UnmanagedType.LPStr)] StringBuilder sDescription, [In] uint dwFlags); + + #endregion + + // ReSharper restore InconsistentNaming + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/CryptoApiHelper.cs b/Hcs.ClientNet/GostCryptography/Native/CryptoApiHelper.cs new file mode 100644 index 0000000..36b7f84 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/CryptoApiHelper.cs @@ -0,0 +1,1312 @@ +using GostCryptography.Asn1.Gost.Gost_28147_89; +using GostCryptography.Asn1.Gost.Gost_R3410; +using GostCryptography.Base; +using GostCryptography.Properties; +using System; +using System.Collections.Generic; +using System.Runtime.InteropServices; +using System.Security; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Text; +using System.Threading; + +namespace GostCryptography.Native +{ + /// + /// Вспомогательные методы для работы с Microsoft CryptoAPI + /// + [SecurityCritical] + public static class CryptoApiHelper + { + /// + /// Возвращает , если заданный провайдер установлен + /// + [SecurityCritical] + public static bool IsInstalled(ProviderType providerType) + { + try + { + var providerHandle = GetProviderHandle(providerType); + return !providerHandle.IsInvalid; + } + catch + { + return false; + } + } + + /// + /// Возвращает доступный провайдер для ключей ГОСТ Р 34.10-2001 + /// + /// Провайдер не установлен + [SecuritySafeCritical] + public static ProviderType GetAvailableProviderType_2001() + { + if (IsInstalled(ProviderType.VipNet)) + { + return ProviderType.VipNet; + } + + if (IsInstalled(ProviderType.CryptoPro)) + { + return ProviderType.CryptoPro; + } + + throw ExceptionUtility.CryptographicException(Resources.Provider_2001_IsNotInstalled); + } + + /// + /// Возвращает доступный провайдер для ключей ГОСТ Р 34.10-2012/512 + /// + /// Провайдер не установлен + [SecuritySafeCritical] + public static ProviderType GetAvailableProviderType_2012_512() + { + if (IsInstalled(ProviderType.VipNet_2012_512)) + { + return ProviderType.VipNet_2012_512; + } + + if (IsInstalled(ProviderType.CryptoPro_2012_512)) + { + return ProviderType.CryptoPro_2012_512; + } + + throw ExceptionUtility.CryptographicException(Resources.Provider_2012_512_IsNotInstalled); + } + + /// + /// Возвращает доступный провайдер для ключей ГОСТ Р 34.10-2012/1024 + /// + /// Провайдер не установлен + [SecuritySafeCritical] + public static ProviderType GetAvailableProviderType_2012_1024() + { + if (IsInstalled(ProviderType.VipNet_2012_1024)) + { + return ProviderType.VipNet_2012_1024; + } + + if (IsInstalled(ProviderType.CryptoPro_2012_1024)) + { + return ProviderType.CryptoPro_2012_1024; + } + + throw ExceptionUtility.CryptographicException(Resources.Provider_2012_1024_IsNotInstalled); + } + + #region Общие объекты + + private static readonly object ProviderHandleSync = new object(); + private static volatile Dictionary _providerHandles = new Dictionary(); + + public static SafeProvHandleImpl GetProviderHandle(ProviderType providerType) + { + if (!_providerHandles.ContainsKey(providerType)) + { + lock (ProviderHandleSync) + { + if (!_providerHandles.ContainsKey(providerType)) + { + var providerParams = new CspParameters(providerType.ToInt()); + var providerHandle = AcquireProvider(providerParams); + + Thread.MemoryBarrier(); + + _providerHandles.Add(providerType, providerHandle); + } + } + } + + return _providerHandles[providerType]; + } + + private static readonly object RandomNumberGeneratorSync = new object(); + private static volatile Dictionary _randomNumberGenerators = new Dictionary(); + + public static RNGCryptoServiceProvider GetRandomNumberGenerator(ProviderType providerType) + { + if (!_randomNumberGenerators.ContainsKey(providerType)) + { + lock (RandomNumberGeneratorSync) + { + if (!_randomNumberGenerators.ContainsKey(providerType)) + { + var providerParams = new CspParameters(providerType.ToInt()); + var randomNumberGenerator = new RNGCryptoServiceProvider(providerParams); + + Thread.MemoryBarrier(); + + _randomNumberGenerators.Add(providerType, randomNumberGenerator); + } + } + } + + return _randomNumberGenerators[providerType]; + } + + #endregion + + #region Для работы с криптографическим провайдером + + public static SafeProvHandleImpl AcquireProvider(CspParameters providerParameters) + { + var providerHandle = SafeProvHandleImpl.InvalidHandle; + + var dwFlags = Constants.CRYPT_VERIFYCONTEXT; + + if ((providerParameters.Flags & CspProviderFlags.UseMachineKeyStore) != CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_MACHINE_KEYSET; + } + + if (!CryptoApi.CryptAcquireContext(ref providerHandle, providerParameters.KeyContainerName, providerParameters.ProviderName, (uint)providerParameters.ProviderType, dwFlags)) + { + throw CreateWin32Error(); + } + + return providerHandle; + } + + public static SafeProvHandleImpl OpenProvider(CspParameters providerParameters) + { + var providerHandle = SafeProvHandleImpl.InvalidHandle; + var dwFlags = MapCspProviderFlags(providerParameters.Flags); + + if (!CryptoApi.CryptAcquireContext(ref providerHandle, providerParameters.KeyContainerName, providerParameters.ProviderName, (uint)providerParameters.ProviderType, dwFlags)) + { + throw CreateWin32Error(); + } + + return providerHandle; + } + + public static SafeProvHandleImpl CreateProvider(CspParameters providerParameters) + { + var providerHandle = SafeProvHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptAcquireContext(ref providerHandle, providerParameters.KeyContainerName, providerParameters.ProviderName, (uint)providerParameters.ProviderType, Constants.CRYPT_NEWKEYSET)) + { + throw CreateWin32Error(); + } + + return providerHandle; + } + + private static uint MapCspProviderFlags(CspProviderFlags flags) + { + uint dwFlags = 0; + + if ((flags & CspProviderFlags.UseMachineKeyStore) != CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_MACHINE_KEYSET; + } + + if ((flags & CspProviderFlags.NoPrompt) != CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_PREGEN; + } + + return dwFlags; + } + + public static void SetProviderParameter(SafeProvHandleImpl providerHandle, int keyNumber, uint keyParamId, IntPtr keyParamValue) + { + if ((keyParamId == Constants.PP_KEYEXCHANGE_PIN) || (keyParamId == Constants.PP_SIGNATURE_PIN)) + { + if (keyNumber == Constants.AT_KEYEXCHANGE) + { + keyParamId = Constants.PP_KEYEXCHANGE_PIN; + } + else if (keyNumber == Constants.AT_SIGNATURE) + { + keyParamId = Constants.PP_SIGNATURE_PIN; + } + else + { + throw ExceptionUtility.NotSupported(Resources.KeyAlgorithmNotSupported); + } + } + + if (!CryptoApi.CryptSetProvParam(providerHandle, keyParamId, keyParamValue, 0)) + { + throw CreateWin32Error(); + } + } + + public static ProviderType GetProviderType(SafeProvHandleImpl providerHandle) + { + uint providerTypeLen = sizeof(uint); + byte[] dwData = new byte[sizeof(uint)]; + + if (!CryptoApi.CryptGetProvParam(providerHandle, Constants.PP_PROVTYPE, dwData, ref providerTypeLen, 0)) + { + throw CreateWin32Error(); + } + + var providerType = BitConverter.ToUInt32(dwData, 0); + + return (ProviderType)providerType; + } + + /// + /// Возвращает список имен контейнеров указанного криптопровайдера + /// + /// Тип криптопровайдера + /// Вернуть полное имя контейнера + /// Область поиска контейнеров + public static IEnumerable GetContainers(ProviderType providerType, bool fullContainerName = true, StoreLocation storeLocation = StoreLocation.LocalMachine) + { + var containers = new List(); + + var providerParameters = new CspParameters((int)providerType); + + if (storeLocation == StoreLocation.LocalMachine) + { + providerParameters.Flags |= CspProviderFlags.UseMachineKeyStore; + } + + using (var providerHandle = AcquireProvider(providerParameters)) + { + var containerNameMaxLength = 0U; + var flag = Constants.CRYPT_FIRST; + + if (fullContainerName) + { + flag |= (providerType.IsVipNet() ? Constants.CRYPT_UNIQUE : Constants.CRYPT_FQCN); + } + + if (!CryptoApi.CryptGetProvParam(providerHandle, Constants.PP_ENUMCONTAINERS, (StringBuilder)null, ref containerNameMaxLength, flag)) + { + if (Marshal.GetLastWin32Error() != Constants.ERROR_NO_MORE_ITEMS) + { + throw CreateWin32Error(); + } + + return containers; + } + + while (true) + { + var containerName = new StringBuilder((int)containerNameMaxLength); + + if (!CryptoApi.CryptGetProvParam(providerHandle, Constants.PP_ENUMCONTAINERS, containerName, ref containerNameMaxLength, flag)) + { + if (Marshal.GetLastWin32Error() != Constants.ERROR_NO_MORE_ITEMS) + { + throw CreateWin32Error(); + } + + break; + } + + containers.Add(containerName.ToString()); + + flag = Constants.CRYPT_NEXT; + + if (fullContainerName) + { + flag |= (providerType.IsVipNet() ? Constants.CRYPT_UNIQUE : Constants.CRYPT_FQCN); + } + } + } + + return containers; + } + + /// + /// Возвращает сертификат X.509 для указанного ключа + /// + /// Дескриптор ключа сертификата + public static X509Certificate2 GetKeyCertificate(SafeKeyHandleImpl keyHandle) + { + uint certDataLength = 0; + + if (!CryptoApi.CryptGetKeyParam(keyHandle, Constants.KP_CERTIFICATE, null, ref certDataLength, 0)) + { + if (Marshal.GetLastWin32Error() != Constants.ERROR_NO_SUCH_CERTIFICATE) + { + throw CreateWin32Error(); + } + + return null; + } + + var certData = new byte[certDataLength]; + + if (!CryptoApi.CryptGetKeyParam(keyHandle, Constants.KP_CERTIFICATE, certData, ref certDataLength, 0)) + { + throw CreateWin32Error(); + } + + return new X509Certificate2(certData); + } + + #endregion + + #region Для работы с функцией хэширования криптографического провайдера + + public static SafeHashHandleImpl CreateHash_3411_94(SafeProvHandleImpl providerHandle) + { + return CreateHash_3411(providerHandle, Constants.CALG_GR3411); + } + + public static SafeHashHandleImpl CreateHash_3411_2012_256(SafeProvHandleImpl providerHandle) + { + return CreateHash_3411(providerHandle, Constants.CALG_GR3411_2012_256); + } + + public static SafeHashHandleImpl CreateHash_3411_2012_512(SafeProvHandleImpl providerHandle) + { + return CreateHash_3411(providerHandle, Constants.CALG_GR3411_2012_512); + } + + private static SafeHashHandleImpl CreateHash_3411(SafeProvHandleImpl providerHandle, int hashAlgId) + { + var hashHandle = SafeHashHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptCreateHash(providerHandle, (uint)hashAlgId, SafeKeyHandleImpl.InvalidHandle, 0, ref hashHandle)) + { + throw CreateWin32Error(); + } + + return hashHandle; + } + + public static SafeHashHandleImpl CreateHashImit(SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + var hashImitHandle = SafeHashHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptCreateHash(providerHandle, Constants.CALG_G28147_IMIT, symKeyHandle, 0, ref hashImitHandle)) + { + throw CreateWin32Error(); + } + + return hashImitHandle; + } + + public static SafeHashHandleImpl CreateHashHMAC_94(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + var hmacAlgId = providerType.IsVipNet() ? Constants.CALG_GR3411 : Constants.CALG_GR3411_HMAC; + return CreateHashHMAC(providerHandle, symKeyHandle, hmacAlgId); + } + + public static SafeHashHandleImpl CreateHashHMAC_2012_256(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + var hmacAlgId = providerType.IsVipNet() ? Constants.CALG_GR3411_2012_256 : Constants.CALG_GR3411_2012_256_HMAC; + return CreateHashHMAC(providerHandle, symKeyHandle, hmacAlgId); + } + + public static SafeHashHandleImpl CreateHashHMAC_2012_512(ProviderType providerType, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle) + { + var hmacAlgId = providerType.IsVipNet() ? Constants.CALG_GR3411_2012_512 : Constants.CALG_GR3411_2012_512_HMAC; + return CreateHashHMAC(providerHandle, symKeyHandle, hmacAlgId); + } + + private static SafeHashHandleImpl CreateHashHMAC(SafeProvHandleImpl providerHandle, SafeKeyHandleImpl symKeyHandle, int hmacAlgId) + { + var hashHmacHandle = SafeHashHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptCreateHash(providerHandle, (uint)hmacAlgId, symKeyHandle, 0, ref hashHmacHandle)) + { + var errorCode = Marshal.GetLastWin32Error(); + + if (errorCode == Constants.NTE_BAD_ALGID) + { + throw ExceptionUtility.CryptographicException(Resources.AlgorithmNotAvailable); + } + + throw ExceptionUtility.CryptographicException(errorCode); + } + + return hashHmacHandle; + } + + public static unsafe void HashData(SafeHashHandleImpl hashHandle, byte[] data, int dataOffset, int dataLength) + { + if (data == null) + { + throw ExceptionUtility.ArgumentNull(nameof(data)); + } + + if (dataOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataOffset)); + } + + if (dataLength < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataLength)); + } + + if (data.Length < dataOffset + dataLength) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataLength)); + } + + if (dataLength > 0) + { + fixed (byte* dataRef = data) + { + var dataOffsetRef = dataRef + dataOffset; + + if (!CryptoApi.CryptHashData(hashHandle, dataOffsetRef, (uint)dataLength, 0)) + { + throw CreateWin32Error(); + } + } + } + } + + public static byte[] EndHashData(SafeHashHandleImpl hashHandle) + { + uint dataLength = 0; + + if (!CryptoApi.CryptGetHashParam(hashHandle, Constants.HP_HASHVAL, null, ref dataLength, 0)) + { + throw CreateWin32Error(); + } + + var data = new byte[dataLength]; + + if (!CryptoApi.CryptGetHashParam(hashHandle, Constants.HP_HASHVAL, data, ref dataLength, 0)) + { + throw CreateWin32Error(); + } + + return data; + } + + public static void HashKeyExchange(SafeHashHandleImpl hashHandle, SafeKeyHandleImpl keyExchangeHandle) + { + if (!CryptoApi.CryptHashSessionKey(hashHandle, keyExchangeHandle, 0)) + { + throw CreateWin32Error(); + } + } + + #endregion + + #region Для работы с функцией шифрования криптографического провайдера + + public static int EncryptData(ProviderType providerType, SafeKeyHandleImpl symKeyHandle, byte[] data, int dataOffset, int dataLength, ref byte[] encryptedData, int encryptedDataOffset, PaddingMode paddingMode, bool isDone, bool isStream) + { + if (dataOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataOffset)); + } + + if (dataLength < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataLength)); + } + + if (dataOffset > data.Length) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataOffset), Resources.InvalidDataOffset); + } + + var length = dataLength; + + if (isDone) + { + length += 8; + } + + // Выровненные данные + var dataAlignLength = (uint)dataLength; + var dataAlignArray = new byte[length]; + Array.Clear(dataAlignArray, 0, length); + Array.Copy(data, dataOffset, dataAlignArray, 0, dataLength); + + if (isDone) + { + var dataPadding = dataLength & 7; + var dataPaddingSize = (byte)(8 - dataPadding); + + // Добавление дополнения данных в зависимости от настроек + switch (paddingMode) + { + case PaddingMode.None: + if ((dataPadding != 0) && !isStream) + { + throw ExceptionUtility.CryptographicException(Resources.EncryptInvalidDataSize); + } + + break; + case PaddingMode.Zeros: + if (dataPadding != 0) + { + dataAlignLength += dataPaddingSize; + + // Дополнение заполняется нулевыми байтами + } + + break; + case PaddingMode.PKCS7: + { + dataAlignLength += dataPaddingSize; + + var paddingIndex = dataLength; + + // Дополнение заполняется байтами, в каждый из которых записывается размер дополнения + while (paddingIndex < dataAlignLength) + { + dataAlignArray[paddingIndex++] = dataPaddingSize; + } + } + break; + case PaddingMode.ANSIX923: + { + dataAlignLength += dataPaddingSize; + + // Дополнение заполняется нулевыми, кроме последнего - в него записывается размер дополнения + dataAlignArray[(int)((IntPtr)(dataAlignLength - 1))] = dataPaddingSize; + } + break; + case PaddingMode.ISO10126: + { + dataAlignLength += dataPaddingSize; + + // Дополнение заполняется случайными байтами, кроме последнего - в него записывается размер дополнения + var randomPadding = new byte[dataPaddingSize - 1]; + GetRandomNumberGenerator(providerType).GetBytes(randomPadding); + randomPadding.CopyTo(dataAlignArray, dataLength); + dataAlignArray[(int)((IntPtr)(dataAlignLength - 1))] = dataPaddingSize; + } + break; + default: + throw ExceptionUtility.Argument(nameof(paddingMode), Resources.InvalidPaddingMode); + } + } + + // Шифрование данных + if (!CryptoApi.CryptEncrypt(symKeyHandle, SafeHashHandleImpl.InvalidHandle, false, 0, dataAlignArray, ref dataAlignLength, (uint)length)) + { + throw CreateWin32Error(); + } + + // Копирование результата шифрования данных + if (encryptedData == null) + { + encryptedData = new byte[dataAlignLength]; + + Array.Copy(dataAlignArray, 0L, encryptedData, 0L, dataAlignLength); + } + else + { + if (encryptedDataOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(encryptedDataOffset)); + } + + if ((encryptedData.Length < dataAlignLength) || ((encryptedData.Length - dataAlignLength) < encryptedDataOffset)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(encryptedDataOffset), Resources.InvalidDataOffset); + } + + Array.Copy(dataAlignArray, 0L, encryptedData, encryptedDataOffset, dataAlignLength); + } + + return (int)dataAlignLength; + } + + public static int DecryptData(SafeKeyHandleImpl symKeyHandle, byte[] data, int dataOffset, int dataLength, ref byte[] decryptedData, int decryptedDataOffset, PaddingMode paddingMode, bool isDone) + { + if (dataOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataOffset)); + } + + if (dataLength < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataLength)); + } + + if ((dataOffset > data.Length) || ((dataOffset + dataLength) > data.Length)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(dataOffset), Resources.InvalidDataOffset); + } + + // Выровненные данные + var dataAlignLength = (uint)dataLength; + var dataAlign = new byte[dataAlignLength]; + Array.Copy(data, dataOffset, dataAlign, 0L, dataAlignLength); + + // Расшифровка данных + if (!CryptoApi.CryptDecrypt(symKeyHandle, SafeHashHandleImpl.InvalidHandle, false, 0, dataAlign, ref dataAlignLength)) + { + throw CreateWin32Error(); + } + + var length = (int)dataAlignLength; + + if (isDone) + { + byte dataPaddingSize = 0; + + // Удаление дополнения данных в зависимости от настроек + if (((paddingMode == PaddingMode.PKCS7) || (paddingMode == PaddingMode.ANSIX923)) || (paddingMode == PaddingMode.ISO10126)) + { + if (dataAlignLength < 8) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + // Размер дополнения находится в последнем байте + dataPaddingSize = dataAlign[(int)((IntPtr)(dataAlignLength - 1))]; + + if (dataPaddingSize > 8) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + // Проверка корректности дополнения данных + if (paddingMode == PaddingMode.PKCS7) + { + for (var paddingIndex = dataAlignLength - dataPaddingSize; paddingIndex < (dataAlignLength - 1); paddingIndex++) + { + if (dataAlign[paddingIndex] != dataPaddingSize) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + } + } + else if (paddingMode == PaddingMode.ANSIX923) + { + for (var paddingIndex = dataAlignLength - dataPaddingSize; paddingIndex < (dataAlignLength - 1); paddingIndex++) + { + if (dataAlign[paddingIndex] != 0) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + } + } + } + else if ((paddingMode != PaddingMode.None) && (paddingMode != PaddingMode.Zeros)) + { + throw ExceptionUtility.Argument(nameof(paddingMode), Resources.InvalidPaddingMode); + } + + length -= dataPaddingSize; + } + + if (decryptedData == null) + { + decryptedData = new byte[length]; + + Array.Copy(dataAlign, 0, decryptedData, 0, length); + } + else + { + if (decryptedDataOffset < 0) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(decryptedDataOffset)); + } + + if ((decryptedData.Length < length) || ((decryptedData.Length - length) < decryptedDataOffset)) + { + throw ExceptionUtility.ArgumentOutOfRange(nameof(decryptedData), Resources.InvalidDataOffset); + } + + Array.Copy(dataAlign, 0, decryptedData, decryptedDataOffset, length); + } + + return length; + } + + public static void EndEncrypt(ProviderType providerType, SafeKeyHandleImpl symKeyHandle) + { + uint dataLength = 0; + var data = new byte[32]; + var success = CryptoApi.CryptEncrypt(symKeyHandle, SafeHashHandleImpl.InvalidHandle, true, 0, data, ref dataLength, (uint)data.Length); + + if (!success) + { + throw CreateWin32Error(); + } + } + + public static void EndDecrypt(ProviderType providerType, SafeKeyHandleImpl symKeyHandle) + { + uint dataLength = 0; + var data = new byte[0]; + var success = CryptoApi.CryptDecrypt(symKeyHandle, SafeHashHandleImpl.InvalidHandle, true, 0, data, ref dataLength) || providerType.IsVipNet(); + + if (!success) + { + throw CreateWin32Error(); + } + } + + #endregion + + #region Для работы с ключами криптографического провайдера + + public static SafeKeyHandleImpl GenerateKey(SafeProvHandleImpl providerHandle, int algId, CspProviderFlags flags) + { + var keyHandle = SafeKeyHandleImpl.InvalidHandle; + var dwFlags = MapCspKeyFlags(flags); + + if (!CryptoApi.CryptGenKey(providerHandle, (uint)algId, dwFlags, ref keyHandle)) + { + throw CreateWin32Error(); + } + + return keyHandle; + } + + public static SafeKeyHandleImpl GenerateDhEphemeralKey(ProviderType providerType, SafeProvHandleImpl providerHandle, int algId, string digestParamSet, string publicKeyParamSet) + { + var keyHandle = SafeKeyHandleImpl.InvalidHandle; + var dwFlags = MapCspKeyFlags(CspProviderFlags.NoFlags) | Constants.CRYPT_PREGEN; + + if (!CryptoApi.CryptGenKey(providerHandle, (uint)algId, dwFlags, ref keyHandle)) + { + throw CreateWin32Error(); + } + + if (!providerType.IsVipNet()) + { + SetKeyParameterString(keyHandle, Constants.KP_HASHOID, digestParamSet); + } + + SetKeyParameterString(keyHandle, Constants.KP_DHOID, publicKeyParamSet); + SetKeyParameter(keyHandle, Constants.KP_X, null); + + return keyHandle; + } + + private static uint MapCspKeyFlags(CspProviderFlags flags) + { + uint dwFlags = 0; + + if ((flags & CspProviderFlags.UseNonExportableKey) == CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_EXPORTABLE; + } + + if ((flags & CspProviderFlags.UseArchivableKey) != CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_ARCHIVABLE; + } + + if ((flags & CspProviderFlags.UseUserProtectedKey) != CspProviderFlags.NoFlags) + { + dwFlags |= Constants.CRYPT_USER_PROTECTED; + } + + return dwFlags; + } + + public static SafeKeyHandleImpl GetUserKey(SafeProvHandleImpl providerHandle, int keyNumber) + { + var keyHandle = SafeKeyHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptGetUserKey(providerHandle, (uint)keyNumber, ref keyHandle)) + { + throw CreateWin32Error(); + } + + return keyHandle; + } + + public static SafeKeyHandleImpl DeriveSymKey(SafeProvHandleImpl providerHandle, SafeHashHandleImpl hashHandle) + { + var symKeyHandle = SafeKeyHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptDeriveKey(providerHandle, Constants.CALG_G28147, hashHandle, Constants.CRYPT_EXPORTABLE, ref symKeyHandle)) + { + throw CreateWin32Error(); + } + + return symKeyHandle; + } + + public static SafeKeyHandleImpl DuplicateKey(IntPtr sourceKeyHandle) + { + var keyHandle = SafeKeyHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptDuplicateKey(sourceKeyHandle, null, 0, ref keyHandle)) + { + throw CreateWin32Error(); + } + + return keyHandle; + } + + public static SafeKeyHandleImpl DuplicateKey(SafeKeyHandleImpl sourceKeyHandle) + { + return DuplicateKey(sourceKeyHandle.DangerousGetHandle()); + } + + public static int GetKeyParameterInt32(SafeKeyHandleImpl keyHandle, uint keyParamId) + { + const int doubleWordSize = 4; + + uint dwDataLength = doubleWordSize; + var dwDataBytes = new byte[doubleWordSize]; + + if (!CryptoApi.CryptGetKeyParam(keyHandle, keyParamId, dwDataBytes, ref dwDataLength, 0)) + { + throw CreateWin32Error(); + } + + if (dwDataLength != doubleWordSize) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + return BitConverter.ToInt32(dwDataBytes, 0); + } + + private static string GetKeyParameterString(SafeKeyHandleImpl keyHandle, uint keyParamId) + { + var paramValue = GetKeyParameter(keyHandle, keyParamId); + + return BytesToString(paramValue); + } + + private static string BytesToString(byte[] value) + { + string valueString; + + try + { + valueString = Encoding.GetEncoding(0).GetString(value); + + var length = 0; + + while (length < valueString.Length) + { + // Строка заканчивается нулевым символом + if (valueString[length] == '\0') + { + break; + } + + length++; + } + + if (length == valueString.Length) + { + throw ExceptionUtility.CryptographicException(Resources.InvalidString); + } + + valueString = valueString.Substring(0, length); + } + catch (DecoderFallbackException exception) + { + throw ExceptionUtility.CryptographicException(exception, Resources.InvalidString); + } + + return valueString; + } + + public static byte[] GetKeyParameter(SafeKeyHandleImpl keyHandle, uint keyParamId) + { + uint dataLength = 0; + + if (!CryptoApi.CryptGetKeyParam(keyHandle, keyParamId, null, ref dataLength, 0)) + { + throw CreateWin32Error(); + } + + var dataBytes = new byte[dataLength]; + + if (!CryptoApi.CryptGetKeyParam(keyHandle, keyParamId, dataBytes, ref dataLength, 0)) + { + throw CreateWin32Error(); + } + + return dataBytes; + } + + public static void SetKeyExchangeExportAlgId(ProviderType providerType, SafeKeyHandleImpl keyHandle, int keyExchangeExportAlgId) + { + var keyExchangeExportAlgParamId = providerType.IsVipNet() ? Constants.KP_EXPORTID : Constants.KP_ALGID; + SetKeyParameterInt32(keyHandle, keyExchangeExportAlgParamId, keyExchangeExportAlgId); + } + + public static void SetKeyParameterInt32(SafeKeyHandleImpl keyHandle, int keyParamId, int keyParamValue) + { + var dwDataBytes = BitConverter.GetBytes(keyParamValue); + + if (!CryptoApi.CryptSetKeyParam(keyHandle, (uint)keyParamId, dwDataBytes, 0)) + { + throw CreateWin32Error(); + } + } + + private static void SetKeyParameterString(SafeKeyHandleImpl keyHandle, int keyParamId, string keyParamValue) + { + var stringDataBytes = Encoding.GetEncoding(0).GetBytes(keyParamValue); + + if (!CryptoApi.CryptSetKeyParam(keyHandle, (uint)keyParamId, stringDataBytes, 0)) + { + throw CreateWin32Error(); + } + } + + public static void SetKeyParameter(SafeKeyHandleImpl keyHandle, int keyParamId, byte[] keyParamValue) + { + if (!CryptoApi.CryptSetKeyParam(keyHandle, (uint)keyParamId, keyParamValue, 0)) + { + throw CreateWin32Error(); + } + } + + #endregion + + #region Для экспорта ключей криптографического провайдера + + public static byte[] ExportCspBlob(SafeKeyHandleImpl symKeyHandle, SafeKeyHandleImpl keyExchangeHandle, int blobType) + { + uint exportedKeyLength = 0; + + if (!CryptoApi.CryptExportKey(symKeyHandle, keyExchangeHandle, (uint)blobType, 0, null, ref exportedKeyLength)) + { + throw CreateWin32Error(); + } + + var exportedKeyBytes = new byte[exportedKeyLength]; + + if (!CryptoApi.CryptExportKey(symKeyHandle, keyExchangeHandle, (uint)blobType, 0, exportedKeyBytes, ref exportedKeyLength)) + { + throw CreateWin32Error(); + } + + return exportedKeyBytes; + } + + public static T ExportPublicKey(SafeKeyHandleImpl symKeyHandle, T keyExchangeParams, int keySize) where T : Gost_R3410_KeyExchangeParams + { + var exportedKeyBytes = ExportCspBlob(symKeyHandle, SafeKeyHandleImpl.InvalidHandle, Constants.PUBLICKEYBLOB); + return DecodePublicBlob(exportedKeyBytes, keyExchangeParams, keySize); + } + + private static T DecodePublicBlob(byte[] encodedPublicBlob, T keyExchangeParams, int keySize) where T : Gost_R3410_KeyExchangeParams + { + if (encodedPublicBlob == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encodedPublicBlob)); + } + + if (encodedPublicBlob.Length < 16 + keySize / 8) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + var gostKeyMask = BitConverter.ToUInt32(encodedPublicBlob, 8); + + if (gostKeyMask != Constants.GR3410_1_MAGIC) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + var gostKeySize = BitConverter.ToUInt32(encodedPublicBlob, 12); + + if (gostKeySize != keySize) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + var encodeKeyParameters = new byte[encodedPublicBlob.Length - 16 - keySize / 8]; + Array.Copy(encodedPublicBlob, 16, encodeKeyParameters, 0, encodedPublicBlob.Length - 16 - keySize / 8); + keyExchangeParams.DecodeParameters(encodeKeyParameters); + + var publicKey = new byte[keySize / 8]; + Array.Copy(encodedPublicBlob, encodedPublicBlob.Length - keySize / 8, publicKey, 0, keySize / 8); + keyExchangeParams.PublicKey = publicKey; + + return keyExchangeParams; + } + + public static Gost_28147_89_KeyExchangeInfo ExportKeyExchange(SafeKeyHandleImpl symKeyHandle, SafeKeyHandleImpl keyExchangeHandle) + { + var exportedKeyBytes = ExportCspBlob(symKeyHandle, keyExchangeHandle, Constants.SIMPLEBLOB); + + return DecodeSimpleBlob(exportedKeyBytes); + } + + private static Gost_28147_89_KeyExchangeInfo DecodeSimpleBlob(byte[] exportedKeyBytes) + { + if (exportedKeyBytes == null) + { + throw ExceptionUtility.ArgumentNull(nameof(exportedKeyBytes)); + } + + if (exportedKeyBytes.Length < 16) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + if (BitConverter.ToUInt32(exportedKeyBytes, 4) != Constants.CALG_G28147) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + if (BitConverter.ToUInt32(exportedKeyBytes, 8) != Constants.G28147_MAGIC) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + if (BitConverter.ToUInt32(exportedKeyBytes, 12) != Constants.CALG_G28147) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_DATA); + } + + var keyExchangeInfo = new Gost_28147_89_KeyExchangeInfo(); + + var sourceIndex = 16; + keyExchangeInfo.Ukm = new byte[8]; + Array.Copy(exportedKeyBytes, sourceIndex, keyExchangeInfo.Ukm, 0, 8); + sourceIndex += 8; + + keyExchangeInfo.EncryptedKey = new byte[32]; + Array.Copy(exportedKeyBytes, sourceIndex, keyExchangeInfo.EncryptedKey, 0, 32); + sourceIndex += 32; + + keyExchangeInfo.Mac = new byte[4]; + Array.Copy(exportedKeyBytes, sourceIndex, keyExchangeInfo.Mac, 0, 4); + sourceIndex += 4; + + var encryptionParamSet = new byte[exportedKeyBytes.Length - sourceIndex]; + Array.Copy(exportedKeyBytes, sourceIndex, encryptionParamSet, 0, exportedKeyBytes.Length - sourceIndex); + keyExchangeInfo.EncryptionParamSet = Gost_28147_89_KeyExchangeInfo.DecodeEncryptionParamSet(encryptionParamSet); + + return keyExchangeInfo; + } + + #endregion + + #region Для импорта ключей криптографического провайдера + + public static int ImportCspBlob(byte[] importedKeyBytes, SafeProvHandleImpl providerHandle, SafeKeyHandleImpl publicKeyHandle, out SafeKeyHandleImpl keyExchangeHandle) + { + var dwFlags = MapCspKeyFlags(CspProviderFlags.NoFlags); + var keyExchangeRef = SafeKeyHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptImportKey(providerHandle, importedKeyBytes, (uint)importedKeyBytes.Length, publicKeyHandle, dwFlags, ref keyExchangeRef)) + { + throw CreateWin32Error(); + } + + var keyNumberMask = BitConverter.ToInt32(importedKeyBytes, 4) & 0xE000; + var keyNumber = (keyNumberMask == 0xA000) ? Constants.AT_KEYEXCHANGE : Constants.AT_SIGNATURE; + + keyExchangeHandle = keyExchangeRef; + + return keyNumber; + } + + [SecurityCritical] + public static byte[] EncodePublicBlob(Gost_R3410_KeyExchangeParams publicKeyParameters, int keySize, int signatureAlgId) + { + var encodedKeyParams = publicKeyParameters.EncodeParameters(); + var encodedKeyBlob = new byte[16 + encodedKeyParams.Length + publicKeyParameters.PublicKey.Length]; + encodedKeyBlob[0] = 6; + encodedKeyBlob[1] = 32; + Array.Copy(BitConverter.GetBytes(signatureAlgId), 0, encodedKeyBlob, 4, 4); + Array.Copy(BitConverter.GetBytes(Constants.GR3410_1_MAGIC), 0, encodedKeyBlob, 8, 4); + Array.Copy(BitConverter.GetBytes(keySize), 0, encodedKeyBlob, 12, 4); + Array.Copy(encodedKeyParams, 0, encodedKeyBlob, 16, encodedKeyParams.Length); + Array.Copy(publicKeyParameters.PublicKey, 0, encodedKeyBlob, 16 + encodedKeyParams.Length, publicKeyParameters.PublicKey.Length); + + return encodedKeyBlob; + } + + public static SafeKeyHandleImpl ImportKeyExchange(SafeProvHandleImpl providerHandle, Gost_28147_89_KeyExchangeInfo keyExchangeInfo, SafeKeyHandleImpl keyExchangeHandle) + { + if (keyExchangeInfo == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeInfo)); + } + + var importedKeyBytes = EncodeSimpleBlob(keyExchangeInfo); + + SafeKeyHandleImpl hKeyExchange; + ImportCspBlob(importedKeyBytes, providerHandle, keyExchangeHandle, out hKeyExchange); + + return hKeyExchange; + } + + public static SafeKeyHandleImpl ImportBulkSessionKey(ProviderType providerType, SafeProvHandleImpl providerHandle, byte[] bulkSessionKey, RNGCryptoServiceProvider randomNumberGenerator) + { + if (bulkSessionKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(bulkSessionKey)); + } + + if (randomNumberGenerator == null) + { + throw ExceptionUtility.ArgumentNull(nameof(randomNumberGenerator)); + } + + var hSessionKey = SafeKeyHandleImpl.InvalidHandle; + + if (!CryptoApi.CryptGenKey(providerHandle, Constants.CALG_G28147, 0, ref hSessionKey)) + { + throw CreateWin32Error(); + } + + var keyWrap = new Gost_28147_89_KeyExchangeInfo { EncryptedKey = new byte[32] }; + Array.Copy(bulkSessionKey, keyWrap.EncryptedKey, 32); + SetKeyParameterInt32(hSessionKey, Constants.KP_MODE, Constants.CRYPT_MODE_ECB); + SetKeyParameterInt32(hSessionKey, Constants.KP_ALGID, Constants.CALG_G28147); + SetKeyParameterInt32(hSessionKey, Constants.KP_PADDING, Constants.ZERO_PADDING); + + uint sessionKeySize = 32; + + if (!CryptoApi.CryptEncrypt(hSessionKey, SafeHashHandleImpl.InvalidHandle, true, 0, keyWrap.EncryptedKey, ref sessionKeySize, sessionKeySize)) + { + throw CreateWin32Error(); + } + + SetKeyParameterInt32(hSessionKey, Constants.KP_MODE, Constants.CRYPT_MODE_CFB); + + var hashHandle = CreateHashImit(providerHandle, hSessionKey); + + keyWrap.Ukm = new byte[8]; + randomNumberGenerator.GetBytes(keyWrap.Ukm); + + if (!CryptoApi.CryptSetHashParam(hashHandle, Constants.HP_HASHSTARTVECT, keyWrap.Ukm, 0)) + { + throw CreateWin32Error(); + } + + if (!CryptoApi.CryptHashData(hashHandle, bulkSessionKey, 32, 0)) + { + throw CreateWin32Error(); + } + + keyWrap.Mac = EndHashData(hashHandle); + keyWrap.EncryptionParamSet = GetKeyParameterString(hSessionKey, Constants.KP_CIPHEROID); + + SetKeyExchangeExportAlgId(providerType, hSessionKey, Constants.CALG_SIMPLE_EXPORT); + SetKeyParameterInt32(hSessionKey, Constants.KP_MODE, Constants.CRYPT_MODE_ECB); + SetKeyParameterInt32(hSessionKey, Constants.KP_PADDING, Constants.ZERO_PADDING); + + return ImportKeyExchange(providerHandle, keyWrap, hSessionKey); + } + + private static byte[] EncodeSimpleBlob(Gost_28147_89_KeyExchangeInfo keyExchangeInfo) + { + if (keyExchangeInfo == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyExchangeInfo)); + } + + var encryptionParamSet = Gost_28147_89_KeyExchangeInfo.EncodeEncryptionParamSet(keyExchangeInfo.EncryptionParamSet); + var importedKeyBytes = new byte[encryptionParamSet.Length + 60]; + + var sourceIndex = 0; + importedKeyBytes[sourceIndex] = 1; + sourceIndex++; + + importedKeyBytes[sourceIndex] = 32; + sourceIndex++; + sourceIndex += 2; + + Array.Copy(BitConverter.GetBytes(Constants.CALG_G28147), 0, importedKeyBytes, sourceIndex, 4); + sourceIndex += 4; + + Array.Copy(BitConverter.GetBytes(Constants.G28147_MAGIC), 0, importedKeyBytes, sourceIndex, 4); + sourceIndex += 4; + + Array.Copy(BitConverter.GetBytes(Constants.CALG_G28147), 0, importedKeyBytes, sourceIndex, 4); + sourceIndex += 4; + + Array.Copy(keyExchangeInfo.Ukm, 0, importedKeyBytes, sourceIndex, 8); + sourceIndex += 8; + + Array.Copy(keyExchangeInfo.EncryptedKey, 0, importedKeyBytes, sourceIndex, 32); + sourceIndex += 32; + + Array.Copy(keyExchangeInfo.Mac, 0, importedKeyBytes, sourceIndex, 4); + sourceIndex += 4; + + Array.Copy(encryptionParamSet, 0, importedKeyBytes, sourceIndex, encryptionParamSet.Length); + + return importedKeyBytes; + } + + #endregion + + #region Для работы с цифровой подписью + + public static byte[] SignValue(SafeProvHandleImpl providerHandle, SafeHashHandleImpl hashHandle, int keyNumber, byte[] hashValue) + { + SetHashValue(hashHandle, hashValue); + + uint signatureLength = 0; + + // Вычисление размера подписи + if (!CryptoApi.CryptSignHash(hashHandle, (uint)keyNumber, null, 0, null, ref signatureLength)) + { + throw CreateWin32Error(); + } + + var signatureValue = new byte[signatureLength]; + + // Вычисление значения подписи + if (!CryptoApi.CryptSignHash(hashHandle, (uint)keyNumber, null, 0, signatureValue, ref signatureLength)) + { + throw CreateWin32Error(); + } + + return signatureValue; + } + + public static bool VerifySign(SafeProvHandleImpl providerHandle, SafeHashHandleImpl hashHandle, SafeKeyHandleImpl keyHandle, byte[] hashValue, byte[] signatureValue) + { + SetHashValue(hashHandle, hashValue); + + return CryptoApi.CryptVerifySignature(hashHandle, signatureValue, (uint)signatureValue.Length, keyHandle, null, 0); + } + + private static void SetHashValue(SafeHashHandleImpl hashHandle, byte[] hashValue) + { + uint hashLength = 0; + + if (!CryptoApi.CryptGetHashParam(hashHandle, Constants.HP_HASHVAL, null, ref hashLength, 0)) + { + throw CreateWin32Error(); + } + + if (hashValue.Length != hashLength) + { + throw ExceptionUtility.CryptographicException(Constants.NTE_BAD_HASH); + } + + if (!CryptoApi.CryptSetHashParam(hashHandle, Constants.HP_HASHVAL, hashValue, 0)) + { + throw CreateWin32Error(); + } + } + + #endregion + + public static T DangerousAddRef(this T handle) where T : SafeHandle + { + var success = false; + handle.DangerousAddRef(ref success); + + return handle; + } + + public static void TryDispose(this SafeHandle handle) + { + if ((handle != null) && !handle.IsClosed) + { + handle.Dispose(); + } + } + + private static CryptographicException CreateWin32Error() + { + return ExceptionUtility.CryptographicException(Marshal.GetLastWin32Error()); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/ISafeHandleProvider.cs b/Hcs.ClientNet/GostCryptography/Native/ISafeHandleProvider.cs new file mode 100644 index 0000000..17d1a5c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/ISafeHandleProvider.cs @@ -0,0 +1,32 @@ +using System.Runtime.InteropServices; +using System.Security; + +namespace GostCryptography.Native +{ + /// + /// Провайдер дескрипторов криптографического объекта + /// + /// Тип безопасного дескриптора + public interface ISafeHandleProvider where T : SafeHandle + { + /// + /// Возвращает дескриптор объекта + /// + T SafeHandle { [SecurityCritical] get; } + } + + /// + /// Методы расширения для + /// + public static class SafeHandleProviderExtensions + { + /// + /// Возвращает дескриптор объекта + /// + [SecurityCritical] + public static T GetSafeHandle(this ISafeHandleProvider provider) where T : SafeHandle + { + return provider.SafeHandle; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/SafeHashHandleImpl.cs b/Hcs.ClientNet/GostCryptography/Native/SafeHashHandleImpl.cs new file mode 100644 index 0000000..1b50ccd --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/SafeHashHandleImpl.cs @@ -0,0 +1,31 @@ +using Microsoft.Win32.SafeHandles; +using System; +using System.Security; + +namespace GostCryptography.Native +{ + /// + /// Дескриптор функции хэширования криптографического провайдера + /// + [SecurityCritical] + public class SafeHashHandleImpl : SafeHandleZeroOrMinusOneIsInvalid + { + public static SafeHashHandleImpl InvalidHandle => new SafeHashHandleImpl(IntPtr.Zero); + + public SafeHashHandleImpl() : base(true) + { + } + + public SafeHashHandleImpl(IntPtr handle) : base(true) + { + SetHandle(handle); + } + + [SecurityCritical] + protected override bool ReleaseHandle() + { + CryptoApi.CryptDestroyHash(handle); + return true; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/SafeKeyHandleImpl.cs b/Hcs.ClientNet/GostCryptography/Native/SafeKeyHandleImpl.cs new file mode 100644 index 0000000..94c0dcb --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/SafeKeyHandleImpl.cs @@ -0,0 +1,36 @@ +using Microsoft.Win32.SafeHandles; +using System; +using System.Security; + +namespace GostCryptography.Native +{ + /// + /// Дескриптор ключа криптографического провайдера + /// + [SecurityCritical] + public sealed class SafeKeyHandleImpl : SafeHandleZeroOrMinusOneIsInvalid + { + public SafeKeyHandleImpl() + : base(true) + { + } + + public SafeKeyHandleImpl(IntPtr handle) + : base(true) + { + SetHandle(handle); + } + + public static SafeKeyHandleImpl InvalidHandle + { + get { return new SafeKeyHandleImpl(IntPtr.Zero); } + } + + [SecurityCritical] + protected override bool ReleaseHandle() + { + CryptoApi.CryptDestroyKey(handle); + return true; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Native/SafeProvHandleImpl.cs b/Hcs.ClientNet/GostCryptography/Native/SafeProvHandleImpl.cs new file mode 100644 index 0000000..f042d53 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Native/SafeProvHandleImpl.cs @@ -0,0 +1,76 @@ +using Microsoft.Win32.SafeHandles; +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Security; + +namespace GostCryptography.Native +{ + /// + /// Дескриптор криптографического провайдера + /// + [SecurityCritical] + public sealed class SafeProvHandleImpl : SafeHandleZeroOrMinusOneIsInvalid + { + public static SafeProvHandleImpl InvalidHandle => new SafeProvHandleImpl(IntPtr.Zero); + + public SafeProvHandleImpl() : base(true) + { + } + + public SafeProvHandleImpl(IntPtr handle) : base(true) + { + SetHandle(handle); + } + + public SafeProvHandleImpl(IntPtr handle, bool addref) : base(true) + { + if (!addref) + { + SetHandle(handle); + } + else + { + bool success; + int errorCode; + + // Обеспечивает атомарность блока finally + RuntimeHelpers.PrepareConstrainedRegions(); + + try { } + finally + { + success = CryptoApi.CryptContextAddRef(handle, null, 0); + errorCode = Marshal.GetLastWin32Error(); + + if (success) + { + SetHandle(handle); + } + } + + if (!success) + { + throw ExceptionUtility.CryptographicException(errorCode); + } + } + } + + public bool DeleteOnClose { get; set; } + + [SecurityCritical] + protected override bool ReleaseHandle() + { + if (DeleteOnClose) + { + CryptoApi.CryptSetProvParam2(handle, Constants.PP_DELETE_KEYSET, null, 0); + } + else + { + CryptoApi.CryptReleaseContext(handle, 0); + } + + return true; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Pkcs/GostSignedCms.cs b/Hcs.ClientNet/GostCryptography/Pkcs/GostSignedCms.cs new file mode 100644 index 0000000..628c564 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Pkcs/GostSignedCms.cs @@ -0,0 +1,176 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography.Pkcs; +using System.Security.Cryptography.X509Certificates; + +namespace GostCryptography.Pkcs +{ + /// + /// Реализует методы для работы с сообщениями CMS (Cryptographic Message Syntax) / PKCS #7 (Public-Key Cryptography Standard #7) + /// + /// + /// CMS (Cryptographic Message Syntax) или PKCS #7 (Public-Key Cryptography Standard #7) - это стандарт, поддерживаемый RSA Laboratories, + /// который описываемый синтаксис криптографических сообщений. Синтаксис CMS описывает способы формирования криптографических сообщений, + /// в результате чего сообщение становится полностью самодостаточным для его открытия и выполнения всех необходимых операций. С этой целью + /// в CMS-сообщении размещается информация об исходном сообщении, алгоритмах хэширования и подписи, параметрах криптоалгоритмов, времени + /// подписи, сертификат ключа электронной подписи, цепочка сертификации и т.д. Большинство из перечисленных атрибутов CMS-сообщения являются + /// опциональными, но их обязательность может определяться прикладной системой. Отдельно следует отметить, что CMS/PKCS#7 позволяет ставить + /// несколько подписей под одним документом, сохраняя всю необходимую информацию в сообщении. + /// + public sealed class GostSignedCms + { + static GostSignedCms() + { + GostCryptoConfig.Initialize(); + } + + /// + public GostSignedCms() + { + _signedCms = new SignedCms(); + _signerIdentifierType = InitSubjectIdentifierType(SubjectIdentifierType.IssuerAndSerialNumber); + } + + /// + public GostSignedCms(SubjectIdentifierType signerIdentifierType) + { + _signedCms = new SignedCms(signerIdentifierType); + _signerIdentifierType = InitSubjectIdentifierType(signerIdentifierType); + } + + /// + public GostSignedCms(ContentInfo contentInfo) + { + _signedCms = new SignedCms(contentInfo); + _signerIdentifierType = InitSubjectIdentifierType(SubjectIdentifierType.IssuerAndSerialNumber); + } + + /// + public GostSignedCms(SubjectIdentifierType signerIdentifierType, ContentInfo contentInfo) + { + _signedCms = new SignedCms(signerIdentifierType, contentInfo); + _signerIdentifierType = InitSubjectIdentifierType(signerIdentifierType); + } + + /// + public GostSignedCms(ContentInfo contentInfo, bool detached) + { + _signedCms = new SignedCms(contentInfo, detached); + _signerIdentifierType = InitSubjectIdentifierType(SubjectIdentifierType.IssuerAndSerialNumber); + } + + /// + public GostSignedCms(SubjectIdentifierType signerIdentifierType, ContentInfo contentInfo, bool detached) + { + _signedCms = new SignedCms(signerIdentifierType, contentInfo, detached); + _signerIdentifierType = InitSubjectIdentifierType(signerIdentifierType); + } + + private readonly SignedCms _signedCms; + private readonly SubjectIdentifierType _signerIdentifierType; + + /// + public int Version => _signedCms.Version; + + /// + public ContentInfo ContentInfo => _signedCms.ContentInfo; + + /// + public bool Detached => _signedCms.Detached; + + /// + public X509Certificate2Collection Certificates => _signedCms.Certificates; + + /// + public SignerInfoCollection SignerInfos => _signedCms.SignerInfos; + + /// + public byte[] Encode() + { + return _signedCms.Encode(); + } + + /// + public void Decode(byte[] encodedMessage) + { + _signedCms.Decode(encodedMessage); + } + + /// + public void ComputeSignature() + { + ComputeSignature(new CmsSigner(_signerIdentifierType), true); + } + + /// + public void ComputeSignature(CmsSigner signer) + { + ComputeSignature(signer, true); + } + + /// + public void ComputeSignature(CmsSigner signer, bool silent) + { + signer = InitCmsSigner(signer); + + _signedCms.ComputeSignature(signer, silent); + } + + /// + public void RemoveSignature(int index) + { + _signedCms.RemoveSignature(index); + } + + /// + public void RemoveSignature(SignerInfo signerInfo) + { + _signedCms.RemoveSignature(signerInfo); + } + + /// + public void CheckSignature(bool verifySignatureOnly) + { + _signedCms.CheckSignature(verifySignatureOnly); + } + + /// + public void CheckSignature(X509Certificate2Collection extraStore, bool verifySignatureOnly) + { + _signedCms.CheckSignature(extraStore, verifySignatureOnly); + } + + /// + public void CheckHash() + { + _signedCms.CheckHash(); + } + + private static SubjectIdentifierType InitSubjectIdentifierType(SubjectIdentifierType signerIdentifierType) + { + if (signerIdentifierType != SubjectIdentifierType.SubjectKeyIdentifier + && signerIdentifierType != SubjectIdentifierType.IssuerAndSerialNumber + && signerIdentifierType != SubjectIdentifierType.NoSignature) + { + return SubjectIdentifierType.IssuerAndSerialNumber; + } + + return signerIdentifierType; + } + + [SecuritySafeCritical] + private static CmsSigner InitCmsSigner(CmsSigner cmsSigner) + { + var certificate = cmsSigner.Certificate; + + var hashAlgorithm = certificate?.GetHashAlgorithm(); + + if (hashAlgorithm != null) + { + cmsSigner.DigestAlgorithm = hashAlgorithm; + } + + return cmsSigner; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Properties/Resources.Designer.cs b/Hcs.ClientNet/GostCryptography/Properties/Resources.Designer.cs new file mode 100644 index 0000000..bce1ae1 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Properties/Resources.Designer.cs @@ -0,0 +1,864 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace GostCryptography.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("GostCryptography.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to Cryptographic service provider (CSP) could not be found for this algorithm.. + /// + internal static string AlgorithmNotAvailable { + get { + return ResourceManager.GetString("AlgorithmNotAvailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 element '{0}' with value '{1}' violates defined constraint.. + /// + internal static string Asn1ConsVioException { + get { + return ResourceManager.GetString("Asn1ConsVioException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encoded byte array contains algorithm identifier with unknown OID '{0}'.. + /// + internal static string Asn1DecodeAlg { + get { + return ResourceManager.GetString("Asn1DecodeAlg", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encoded byte array does not contains algorithm parameters.. + /// + internal static string Asn1DecodeAlgorithmParameters { + get { + return ResourceManager.GetString("Asn1DecodeAlgorithmParameters", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encoded byte array contains invalid structure '{0}'.. + /// + internal static string Asn1DecodeError { + get { + return ResourceManager.GetString("Asn1DecodeError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encode '{0}' error.. + /// + internal static string Asn1EncodeError { + get { + return ResourceManager.GetString("Asn1EncodeError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encode '{0}' error. Source value: '{1}'.. + /// + internal static string Asn1EncodeErrorWithValue { + get { + return ResourceManager.GetString("Asn1EncodeErrorWithValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error. Unexpected end-of-buffer encountered. Offset {0}.. + /// + internal static string Asn1EndOfBufferException { + get { + return ResourceManager.GetString("Asn1EndOfBufferException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 fraction doesn't supported for UTCTime.. + /// + internal static string Asn1FractionNotSupportedForUtcTime { + get { + return ResourceManager.GetString("Asn1FractionNotSupportedForUtcTime", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 hours expected.. + /// + internal static string Asn1HoursExpected { + get { + return ResourceManager.GetString("Asn1HoursExpected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 illegal character '{0}'.. + /// + internal static string Asn1IllegalCharacter { + get { + return ResourceManager.GetString("Asn1IllegalCharacter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 illegal digit in BigInteger.. + /// + internal static string Asn1IllegalDigit { + get { + return ResourceManager.GetString("Asn1IllegalDigit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 illegal embedded minus sign in BigInteger.. + /// + internal static string Asn1IllegalEmbeddedMinusSign { + get { + return ResourceManager.GetString("Asn1IllegalEmbeddedMinusSign", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 integer value is too large.. + /// + internal static string Asn1IntegerValueIsTooLarge { + get { + return ResourceManager.GetString("Asn1IntegerValueIsTooLarge", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid century value: {0}.. + /// + internal static string Asn1InvalidCenturyValue { + get { + return ResourceManager.GetString("Asn1InvalidCenturyValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 Object assigned to value not in CHOICE.. + /// + internal static string Asn1InvalidChoiceOptionException { + get { + return ResourceManager.GetString("Asn1InvalidChoiceOptionException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error. Element with tag '{0}' not in CHOICE. Offset: {1}.. + /// + internal static string Asn1InvalidChoiceOptionTagException { + get { + return ResourceManager.GetString("Asn1InvalidChoiceOptionTagException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid date format.. + /// + internal static string Asn1InvalidDateFormat { + get { + return ResourceManager.GetString("Asn1InvalidDateFormat", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid day value: {0}.. + /// + internal static string Asn1InvalidDayValue { + get { + return ResourceManager.GetString("Asn1InvalidDayValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid day value: {0} for month {1} and year {2}.. + /// + internal static string Asn1InvalidDayValueForMonthAndYear { + get { + return ResourceManager.GetString("Asn1InvalidDayValueForMonthAndYear", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid decimal mark.. + /// + internal static string Asn1InvalidDecimalMark { + get { + return ResourceManager.GetString("Asn1InvalidDecimalMark", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid DiffHour.. + /// + internal static string Asn1InvalidDiffHour { + get { + return ResourceManager.GetString("Asn1InvalidDiffHour", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid DiffHour value: {0}.. + /// + internal static string Asn1InvalidDiffHourValue { + get { + return ResourceManager.GetString("Asn1InvalidDiffHourValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid DiffMinute.. + /// + internal static string Asn1InvalidDiffMinute { + get { + return ResourceManager.GetString("Asn1InvalidDiffMinute", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid DiffMinute value: {0}.. + /// + internal static string Asn1InvalidDiffMinuteValue { + get { + return ResourceManager.GetString("Asn1InvalidDiffMinuteValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 encoded data length must be a multiple of four.. + /// + internal static string Asn1InvalidEncodedDataLength { + get { + return ResourceManager.GetString("Asn1InvalidEncodedDataLength", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid format for BigInteger value.. + /// + internal static string Asn1InvalidFormatForBigIntegerValue { + get { + return ResourceManager.GetString("Asn1InvalidFormatForBigIntegerValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid format of bit string: initial octet is invalid ({0}).. + /// + internal static string Asn1InvalidFormatOfBitString { + get { + return ResourceManager.GetString("Asn1InvalidFormatOfBitString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error. ASN.1 invalid format of constructed value. Offset: {0}.. + /// + internal static string Asn1InvalidFormatOfConstructedValue { + get { + return ResourceManager.GetString("Asn1InvalidFormatOfConstructedValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid hour value: {0}.. + /// + internal static string Asn1InvalidHourValue { + get { + return ResourceManager.GetString("Asn1InvalidHourValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error: Invalid length value.. + /// + internal static string Asn1InvalidLengthException { + get { + return ResourceManager.GetString("Asn1InvalidLengthException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid minute value: {0}.. + /// + internal static string Asn1InvalidMinuteValue { + get { + return ResourceManager.GetString("Asn1InvalidMinuteValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid month value: {0}.. + /// + internal static string Asn1InvalidMonthValue { + get { + return ResourceManager.GetString("Asn1InvalidMonthValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid month value: {0} for day {1} and year {2}.. + /// + internal static string Asn1InvalidMonthValueForDayAndYear { + get { + return ResourceManager.GetString("Asn1InvalidMonthValueForDayAndYear", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid number format.. + /// + internal static string Asn1InvalidNumberFormat { + get { + return ResourceManager.GetString("Asn1InvalidNumberFormat", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid object identifier value.. + /// + internal static string Asn1InvalidObjectIdException { + get { + return ResourceManager.GetString("Asn1InvalidObjectIdException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid second value: {0}.. + /// + internal static string Asn1InvalidSecondValue { + get { + return ResourceManager.GetString("Asn1InvalidSecondValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid tag value: too big.. + /// + internal static string Asn1InvalidTagValue { + get { + return ResourceManager.GetString("Asn1InvalidTagValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid year value: {0}.. + /// + internal static string Asn1InvalidYearValue { + get { + return ResourceManager.GetString("Asn1InvalidYearValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid year value: {0} for day {1} and month {2}.. + /// + internal static string Asn1InvalidYearValueForDayAndMonth { + get { + return ResourceManager.GetString("Asn1InvalidYearValueForDayAndMonth", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 minutes expected.. + /// + internal static string Asn1MinutesExpected { + get { + return ResourceManager.GetString("Asn1MinutesExpected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error. SEQUENCE or SET is missing a required element. Offset: {0}.. + /// + internal static string Asn1MissingRequiredException { + get { + return ResourceManager.GetString("Asn1MissingRequiredException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 read output stream not supported.. + /// + internal static string Asn1ReadOutputStreamNotSupported { + get { + return ResourceManager.GetString("Asn1ReadOutputStreamNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 elements in SEQUENCE not in correct order.. + /// + internal static string Asn1SeqOrderException { + get { + return ResourceManager.GetString("Asn1SeqOrderException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 table constraint: parameters decode failed.. + /// + internal static string Asn1TableConstraint { + get { + return ResourceManager.GetString("Asn1TableConstraint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 decode error. Tag match failed: expected '{0}', parsed '{1}'. Offset {2}.. + /// + internal static string Asn1TagMatchFailedException { + get { + return ResourceManager.GetString("Asn1TagMatchFailedException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 time string could not be generated.. + /// + internal static string Asn1TimeStringCouldNotBeGenerated { + get { + return ResourceManager.GetString("Asn1TimeStringCouldNotBeGenerated", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 too big integer value (length is {0}).. + /// + internal static string Asn1TooBigIntegerValue { + get { + return ResourceManager.GetString("Asn1TooBigIntegerValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 unexpected '.' or ','.. + /// + internal static string Asn1UnexpectedSymbol { + get { + return ResourceManager.GetString("Asn1UnexpectedSymbol", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 unexpected values at end of string.. + /// + internal static string Asn1UnexpectedValuesAtEndOfString { + get { + return ResourceManager.GetString("Asn1UnexpectedValuesAtEndOfString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 unexpected zone offset in DER/CER/PER time string.. + /// + internal static string Asn1UnexpectedZoneOffset { + get { + return ResourceManager.GetString("Asn1UnexpectedZoneOffset", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 value parse failed. String: '{0}'. Offset: {1}.. + /// + internal static string Asn1ValueParseException { + get { + return ResourceManager.GetString("Asn1ValueParseException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 zero length BigInteger.. + /// + internal static string Asn1ZeroLengthBigInteger { + get { + return ResourceManager.GetString("Asn1ZeroLengthBigInteger", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cipher Text Steaming mode (CTS) is not supported by this implementation.. + /// + internal static string CipherTextSteamingNotSupported { + get { + return ResourceManager.GetString("CipherTextSteamingNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Length of the data to decrypt is invalid.. + /// + internal static string DecryptInvalidDataSize { + get { + return ResourceManager.GetString("DecryptInvalidDataSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Length of the data to encrypt is invalid.. + /// + internal static string EncryptInvalidDataSize { + get { + return ResourceManager.GetString("EncryptInvalidDataSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cryptography operation is not supported on ephemeral key.. + /// + internal static string EphemKeyOperationNotSupported { + get { + return ResourceManager.GetString("EphemKeyOperationNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk session key import from CSP is not supported. Use safe method CreateDecryptor() with DecodePrivateKey().. + /// + internal static string Gost28147UnsafeCreateDecryptorNotSupported { + get { + return ResourceManager.GetString("Gost28147UnsafeCreateDecryptorNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk session key import from CSP is not supported. Use safe method CreateEncryptor() with EncodePrivateKey().. + /// + internal static string Gost28147UnsafeCreateEncryptor { + get { + return ResourceManager.GetString("Gost28147UnsafeCreateEncryptor", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Feedback size for the cipher feedback mode (CFB) must be 8 bits.. + /// + internal static string IncorrectFeedbackSize { + get { + return ResourceManager.GetString("IncorrectFeedbackSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Value of CspProviderFlags is invalid.. + /// + internal static string InvalidCspProviderFlags { + get { + return ResourceManager.GetString("InvalidCspProviderFlags", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.. + /// + internal static string InvalidDataOffset { + get { + return ResourceManager.GetString("InvalidDataOffset", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ASN.1 invalid Diff value: {0}.. + /// + internal static string InvalidDiffValue { + get { + return ResourceManager.GetString("InvalidDiffValue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Input string does not contain a valid encoding of the '{0}' parameter.. + /// + internal static string InvalidFromXmlString { + get { + return ResourceManager.GetString("InvalidFromXmlString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid hash algorithm.. + /// + internal static string InvalidHashAlgorithm { + get { + return ResourceManager.GetString("InvalidHashAlgorithm", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hash size must be {0} bytes.. + /// + internal static string InvalidHashSize { + get { + return ResourceManager.GetString("InvalidHashSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specified initialization vector (IV) does not match the block size for this algorithm.. + /// + internal static string InvalidIvSize { + get { + return ResourceManager.GetString("InvalidIvSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specified padding mode is not valid for this algorithm.. + /// + internal static string InvalidPaddingMode { + get { + return ResourceManager.GetString("InvalidPaddingMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to CSP return invalid string.. + /// + internal static string InvalidString { + get { + return ResourceManager.GetString("InvalidString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The specified cryptographic service provider (CSP) does not support this key algorithm.. + /// + internal static string KeyAlgorithmNotSupported { + get { + return ResourceManager.GetString("KeyAlgorithmNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Object contains only the public half of a key pair. A private key must also be provided.. + /// + internal static string NoPrivateKey { + get { + return ResourceManager.GetString("NoPrivateKey", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to GOST R 34.10-2001 Cryptographic Service Provider is not installed.. + /// + internal static string Provider_2001_IsNotInstalled { + get { + return ResourceManager.GetString("Provider_2001_IsNotInstalled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to GOST R 34.10-2012/1024 Cryptographic Service Provider is not installed.. + /// + internal static string Provider_2012_1024_IsNotInstalled { + get { + return ResourceManager.GetString("Provider_2012_1024_IsNotInstalled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to GOST R 34.10-2012/512 Cryptographic Service Provider is not installed.. + /// + internal static string Provider_2012_512_IsNotInstalled { + get { + return ResourceManager.GetString("Provider_2012_512_IsNotInstalled", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Required GOST 28147 key handle.. + /// + internal static string RequiredGost28147 { + get { + return ResourceManager.GetString("RequiredGost28147", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to GOST R 34.10 requires GOST R 34.11 hash.. + /// + internal static string RequiredGost3411 { + get { + return ResourceManager.GetString("RequiredGost3411", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hash algorithm must be GOST R 34.11, GOST R 34.11 HMAC or GOST R 34.11 Imit.. + /// + internal static string RequiredGostHash { + get { + return ResourceManager.GetString("RequiredGostHash", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Parameter must support GOST R 34.10 algorithm.. + /// + internal static string ShouldSupportGost3410 { + get { + return ResourceManager.GetString("ShouldSupportGost3410", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk session key export from CSP is not supported.. + /// + internal static string SymmetryExportBulkKeyNotSupported { + get { + return ResourceManager.GetString("SymmetryExportBulkKeyNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk session key import from CSP is not supported.. + /// + internal static string SymmetryImportBulkKeyNotSupported { + get { + return ResourceManager.GetString("SymmetryImportBulkKeyNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk private key blob export is not supported.. + /// + internal static string UserExportBulkBlob { + get { + return ResourceManager.GetString("UserExportBulkBlob", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk user key export from CSP is not supported.. + /// + internal static string UserExportBulkKeyNotSupported { + get { + return ResourceManager.GetString("UserExportBulkKeyNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk private key blob import is not supported.. + /// + internal static string UserImportBulkBlob { + get { + return ResourceManager.GetString("UserImportBulkBlob", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bulk user key import to CSP is not supported.. + /// + internal static string UserImportBulkKeyNotSupported { + get { + return ResourceManager.GetString("UserImportBulkKeyNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The current session is not interactive.. + /// + internal static string UserInteractiveNotSupported { + get { + return ResourceManager.GetString("UserInteractiveNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot find private member '{0}'.. + /// + internal static string XmlCannotFindPrivateMember { + get { + return ResourceManager.GetString("XmlCannotFindPrivateMember", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A KeyInfo element is required to check the signature.. + /// + internal static string XmlKeyInfoRequired { + get { + return ResourceManager.GetString("XmlKeyInfoRequired", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Symmetric algorithm is not specified.. + /// + internal static string XmlMissingAlgorithm { + get { + return ResourceManager.GetString("XmlMissingAlgorithm", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Unable to retrieve the decryption key.. + /// + internal static string XmlMissingDecryptionKey { + get { + return ResourceManager.GetString("XmlMissingDecryptionKey", resourceCulture); + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Properties/Resources.resx b/Hcs.ClientNet/GostCryptography/Properties/Resources.resx new file mode 100644 index 0000000..1193b13 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Properties/Resources.resx @@ -0,0 +1,387 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Value of CspProviderFlags is invalid. + + + Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection. + + + ASN.1 encoded byte array contains invalid structure '{0}'. + + + ASN.1 encoded byte array contains algorithm identifier with unknown OID '{0}'. + + + ASN.1 encoded byte array does not contains algorithm parameters. + + + ASN.1 encode '{0}' error. + + + ASN.1 encode '{0}' error. Source value: '{1}'. + + + Parameter must support GOST R 34.10 algorithm. + + + Cryptographic service provider (CSP) could not be found for this algorithm. + + + Feedback size for the cipher feedback mode (CFB) must be 8 bits. + + + Cipher Text Steaming mode (CTS) is not supported by this implementation. + + + Required GOST 28147 key handle. + + + CSP return invalid string. + + + Object contains only the public half of a key pair. A private key must also be provided. + + + The specified cryptographic service provider (CSP) does not support this key algorithm. + + + Cryptography operation is not supported on ephemeral key. + + + GOST R 34.10 requires GOST R 34.11 hash. + + + Hash algorithm must be GOST R 34.11, GOST R 34.11 HMAC or GOST R 34.11 Imit. + + + Input string does not contain a valid encoding of the '{0}' parameter. + + + Hash size must be {0} bytes. + + + Specified initialization vector (IV) does not match the block size for this algorithm. + + + Specified padding mode is not valid for this algorithm. + + + The current session is not interactive. + + + Length of the data to decrypt is invalid. + + + Length of the data to encrypt is invalid. + + + Bulk session key export from CSP is not supported. + + + Bulk session key import from CSP is not supported. + + + Bulk private key blob export is not supported. + + + Bulk user key export from CSP is not supported. + + + Bulk private key blob import is not supported. + + + Bulk user key import to CSP is not supported. + + + Unable to retrieve the decryption key. + + + Bulk session key import from CSP is not supported. Use safe method CreateDecryptor() with DecodePrivateKey(). + + + Bulk session key import from CSP is not supported. Use safe method CreateEncryptor() with EncodePrivateKey(). + + + Invalid hash algorithm. + + + ASN.1 illegal character '{0}'. + + + ASN.1 invalid date format. + + + ASN.1 encoded data length must be a multiple of four. + + + ASN.1 invalid number format. + + + ASN.1 decode error. Unexpected end-of-buffer encountered. Offset {0}. + + + ASN.1 decode error: Invalid length value. + + + ASN.1 element '{0}' with value '{1}' violates defined constraint. + + + ASN.1 fraction doesn't supported for UTCTime. + + + ASN.1 hours expected. + + + ASN.1 integer value is too large. + + + ASN.1 invalid century value: {0}. + + + ASN.1 Object assigned to value not in CHOICE. + + + ASN.1 decode error. Element with tag '{0}' not in CHOICE. Offset: {1}. + + + ASN.1 invalid day value: {0}. + + + ASN.1 invalid day value: {0} for month {1} and year {2}. + + + ASN.1 invalid decimal mark. + + + ASN.1 invalid DiffHour. + + + ASN.1 invalid DiffHour value: {0}. + + + ASN.1 invalid DiffMinute. + + + ASN.1 invalid DiffMinute value: {0}. + + + ASN.1 invalid format of bit string: initial octet is invalid ({0}). + + + ASN.1 decode error. ASN.1 invalid format of constructed value. Offset: {0}. + + + ASN.1 invalid hour value: {0}. + + + ASN.1 invalid minute value: {0}. + + + ASN.1 invalid month value: {0}. + + + ASN.1 invalid month value: {0} for day {1} and year {2}. + + + ASN.1 invalid object identifier value. + + + ASN.1 invalid second value: {0}. + + + ASN.1 invalid tag value: too big. + + + ASN.1 invalid year value: {0}. + + + ASN.1 invalid year value: {0} for day {1} and month {2}. + + + ASN.1 minutes expected. + + + ASN.1 decode error. SEQUENCE or SET is missing a required element. Offset: {0}. + + + ASN.1 elements in SEQUENCE not in correct order. + + + ASN.1 table constraint: parameters decode failed. + + + ASN.1 decode error. Tag match failed: expected '{0}', parsed '{1}'. Offset {2}. + + + ASN.1 time string could not be generated. + + + ASN.1 too big integer value (length is {0}). + + + ASN.1 unexpected '.' or ','. + + + ASN.1 unexpected values at end of string. + + + ASN.1 unexpected zone offset in DER/CER/PER time string. + + + ASN.1 value parse failed. String: '{0}'. Offset: {1}. + + + ASN.1 invalid Diff value: {0}. + + + ASN.1 illegal digit in BigInteger. + + + ASN.1 illegal embedded minus sign in BigInteger. + + + ASN.1 invalid format for BigInteger value. + + + ASN.1 read output stream not supported. + + + ASN.1 zero length BigInteger. + + + Cannot find private member '{0}'. + + + A KeyInfo element is required to check the signature. + + + Symmetric algorithm is not specified. + + + GOST R 34.10-2001 Cryptographic Service Provider is not installed. + + + GOST R 34.10-2012/1024 Cryptographic Service Provider is not installed. + + + GOST R 34.10-2012/512 Cryptographic Service Provider is not installed. + + \ No newline at end of file diff --git a/Hcs.ClientNet/GostCryptography/README.md b/Hcs.ClientNet/GostCryptography/README.md new file mode 100644 index 0000000..c73c940 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/README.md @@ -0,0 +1,45 @@ +# GostCryptography + +.NET driver for [ViPNet CSP](http://www.infotecs.ru/) and [CryptoPro CSP](http://www.cryptopro.ru/). +Implements crypto algorithms based on Russian national cryptographic standards `GOST 28147-89`, `GOST R 34.10` +and `GOST R 34.11`. Also provides abstractions to sign and verify `CMS/PKCS #7` messages, sign, verify and +encrypt XML documents. + +- [NuGet Package](https://www.nuget.org/packages/GostCryptography) +- [Examples](Source/GostCryptography.Tests) +- [License](LICENSE) + +## Implemented Algorithms + +- [Symmetric algorithm based on GOST 28147-89](Source/GostCryptography/Gost_28147_89/Gost_28147_89_SymmetricAlgorithm.cs) +- [Hash-based Message Authentication Code (HMAC) based on GOST 28147-89](Source/GostCryptography/Gost_28147_89/Gost_28147_89_ImitHashAlgorithm.cs) + +- [Hash algorithm based on GOST R 34.11-94](Source/GostCryptography/Gost_R3411/Gost_R3411_94_HashAlgorithm.cs), [2012/256](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HashAlgorithm.cs), [2012/512](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HashAlgorithm.cs) +- [Hash-based Message Authentication Code (HMAC) based on GOST R 34.11-94](Source/GostCryptography/Gost_R3411/Gost_R3411_94_HMAC.cs), [2012/256](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_256_HMAC.cs), [2012/512](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_512_HMAC.cs) +- [Pseudorandom Function (PRF) based on GOST R 34.11-94](Source/GostCryptography/Gost_R3411/Gost_R3411_94_PRF.cs), [2012/256](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_256_PRF.cs), [2012/512](Source/GostCryptography/Gost_R3411/Gost_R3411_2012_512_PRF.cs) + +- [Asymmetric algorithm based on GOST R 34.10-2001](Source/GostCryptography/Gost_R3410/Gost_R3410_2001_AsymmetricAlgorithm.cs), [2012/256](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_256_AsymmetricAlgorithm.cs), [2012/512](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_512_AsymmetricAlgorithm.cs) +- [Asymmetric algorithm with an ephemeral key based on GOST R 34.10-2001](Source/GostCryptography/Gost_R3410/Gost_R3410_2001_EphemeralAsymmetricAlgorithm.cs), [2012/256](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_256_EphemeralAsymmetricAlgorithm.cs), [2012/512](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_512_EphemeralAsymmetricAlgorithm.cs) + +- [Asymmetric key exchange formatter based on GOST R 34.10-2001](Source/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeFormatter.cs), [2012/256](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeFormatter.cs), [2012/512](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeFormatter.cs) +- [Asymmetric key exchange deformatter based on GOST R 34.10-2001](Source/GostCryptography/Gost_R3410/Gost_R3410_2001_KeyExchangeDeformatter.cs), [2012/256](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_256_KeyExchangeDeformatter.cs), [2012/512](Source/GostCryptography/Gost_R3410/Gost_R3410_2012_512_KeyExchangeDeformatter.cs) + +- [Asymmetric signature formatter based on GOST R 34.10-2001, 2012/256, 2012/512](Source/GostCryptography/Base/GostSignatureFormatter.cs) +- [Asymmetric signature deformatter based on GOST R 34.10-2001, 2012/256, 2012/512](Source/GostCryptography/Base/GostSignatureDeformatter.cs) + +- [XML encryption based on GOST R 34.10-2001, 2012/256, 2012/512](Source/GostCryptography/Xml/GostEncryptedXml.cs) +- [XML signing based on XML-DSig and GOST R 34.10-2001, 2012/256, 2012/512](Source/GostCryptography/Xml/GostSignedXml.cs) +- [Signing and verifying of CMS/PKCS #7 messages based on GOST R 34.10-2001, 2012/256, 2012/512](Source/GostCryptography/Pkcs/GostSignedCms.cs) + +## Tested On + +- Windows 10 x64, CryptoPro CSP 4.0.9963 +- Windows 10 x64, ViPNet CSP 4.2.8.51670 + +## Build instructions + +To build package run in repository root: + +``` +dotnet build --configuration Release +``` diff --git a/Hcs.ClientNet/GostCryptography/Reflection/CryptographyUtils.cs b/Hcs.ClientNet/GostCryptography/Reflection/CryptographyUtils.cs new file mode 100644 index 0000000..4b23c28 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/CryptographyUtils.cs @@ -0,0 +1,57 @@ +using System; +using System.Reflection; +using System.Security.Cryptography; + +namespace GostCryptography.Reflection +{ + static class CryptographyUtils + { + private static readonly object ObjToHashAlgorithmMethodSync = new object(); + private static volatile MethodInfo _objToHashAlgorithmMethod; + + public static HashAlgorithm ObjToHashAlgorithm(object hashAlg) + { + if (hashAlg == null) + { + throw ExceptionUtility.ArgumentNull(nameof(hashAlg)); + } + + HashAlgorithm hashAlgorithm = null; + + if (_objToHashAlgorithmMethod == null) + { + lock (ObjToHashAlgorithmMethodSync) + { + if (_objToHashAlgorithmMethod == null) + { + var utilsType = Type.GetType("System.Security.Cryptography.Utils"); + + if (utilsType != null) + { + _objToHashAlgorithmMethod = utilsType.GetMethod("ObjToHashAlgorithm", BindingFlags.Static | BindingFlags.NonPublic, null, new[] { typeof(object) }, null); + } + } + } + } + + if (_objToHashAlgorithmMethod != null) + { + try + { + hashAlgorithm = _objToHashAlgorithmMethod.Invoke(null, new[] { hashAlg }) as HashAlgorithm; + } + catch (TargetInvocationException exception) + { + if (exception.InnerException != null) + { + throw exception.InnerException; + } + + throw; + } + } + + return hashAlgorithm; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Reflection/CryptographyXmlUtils.cs b/Hcs.ClientNet/GostCryptography/Reflection/CryptographyXmlUtils.cs new file mode 100644 index 0000000..343338c --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/CryptographyXmlUtils.cs @@ -0,0 +1,136 @@ +using GostCryptography.Properties; +using System; +using System.Reflection; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; + +namespace GostCryptography.Reflection +{ + static class CryptographyXmlUtils + { + public static X509Certificate2Collection BuildBagOfCertsVerification(KeyInfoX509Data keyInfoX509Data) + { + return BuildBagOfCerts(keyInfoX509Data, 0); + } + + public static X509Certificate2Collection BuildBagOfCertsDecryption(KeyInfoX509Data keyInfoX509Data) + { + return BuildBagOfCerts(keyInfoX509Data, 1); + } + + private static X509Certificate2Collection BuildBagOfCerts(KeyInfoX509Data keyInfoX509Data, int certUsageType) + { + try + { + return (X509Certificate2Collection)BuildBagOfCertsMethod.Invoke(null, new object[] { keyInfoX509Data, certUsageType }); + } + catch (TargetInvocationException exception) + { + if (exception.InnerException != null) + { + throw exception.InnerException; + } + + throw; + } + } + + private static volatile MethodInfo _buildBagOfCertsMethod; + private static readonly object BuildBagOfCertsMethodSync = new object(); + + private static MethodInfo BuildBagOfCertsMethod + { + get + { + if (_buildBagOfCertsMethod == null) + { + lock (BuildBagOfCertsMethodSync) + { + if (_buildBagOfCertsMethod == null) + { + _buildBagOfCertsMethod = CryptographyXmlUtilsType.GetMethod("BuildBagOfCerts", BindingFlags.Static | BindingFlags.NonPublic); + } + } + } + + if (_buildBagOfCertsMethod == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, $"{CryptographyXmlUtilsType.FullName}.BuildBagOfCerts()"); + } + + return _buildBagOfCertsMethod; + } + } + + public static string ExtractIdFromLocalUri(string uri) + { + try + { + return (string)ExtractIdFromLocalUriMethod.Invoke(null, new object[] { uri }); + } + catch (TargetInvocationException exception) + { + if (exception.InnerException != null) + { + throw exception.InnerException; + } + + throw; + } + } + + private static volatile MethodInfo _extractIdFromLocalUriMethod; + private static readonly object ExtractIdFromLocalUriMethodSync = new object(); + + private static MethodInfo ExtractIdFromLocalUriMethod + { + get + { + if (_extractIdFromLocalUriMethod == null) + { + lock (ExtractIdFromLocalUriMethodSync) + { + if (_extractIdFromLocalUriMethod == null) + { + _extractIdFromLocalUriMethod = CryptographyXmlUtilsType.GetMethod("ExtractIdFromLocalUri", BindingFlags.Static | BindingFlags.NonPublic); + } + } + } + + if (_extractIdFromLocalUriMethod == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, $"{CryptographyXmlUtilsType.FullName}.ExtractIdFromLocalUri()"); + } + + return _extractIdFromLocalUriMethod; + } + } + + private static volatile Type _cryptographyXmlUtilsType; + private static readonly object CryptographyXmlUtilsTypeSync = new object(); + + private static Type CryptographyXmlUtilsType + { + get + { + if (_cryptographyXmlUtilsType == null) + { + lock (CryptographyXmlUtilsTypeSync) + { + if (_cryptographyXmlUtilsType == null) + { + _cryptographyXmlUtilsType = typeof(SignedXml).Assembly.GetType("System.Security.Cryptography.Xml.Utils"); + } + } + } + + if (_cryptographyXmlUtilsType == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "System.Security.Cryptography.Xml.Utils"); + } + + return _cryptographyXmlUtilsType; + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Reflection/CspKeyContainerInfoHelper.cs b/Hcs.ClientNet/GostCryptography/Reflection/CspKeyContainerInfoHelper.cs new file mode 100644 index 0000000..9593347 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/CspKeyContainerInfoHelper.cs @@ -0,0 +1,78 @@ +using System.Reflection; +using System.Security.Cryptography; + +namespace GostCryptography.Reflection +{ + static class CspKeyContainerInfoHelper + { + private static readonly object CspKeyContainerInfoConstructorSync = new object(); + private static volatile ConstructorInfo _cspKeyContainerInfoConstructor; + + public static CspKeyContainerInfo CreateCspKeyContainerInfo(CspParameters parameters, bool randomKeyContainer) + { + CspKeyContainerInfo result = null; + + if (_cspKeyContainerInfoConstructor == null) + { + lock (CspKeyContainerInfoConstructorSync) + { + if (_cspKeyContainerInfoConstructor == null) + { + _cspKeyContainerInfoConstructor = typeof(CspKeyContainerInfo).GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic, null, new[] { typeof(CspParameters), typeof(bool) }, null); + } + } + } + + if (_cspKeyContainerInfoConstructor != null) + { + try + { + result = (CspKeyContainerInfo)_cspKeyContainerInfoConstructor.Invoke(new object[] { parameters, randomKeyContainer }); + } + catch (TargetInvocationException exception) + { + if (exception.InnerException != null) + { + throw exception.InnerException; + } + + throw; + } + + if (result.KeyNumber == ((KeyNumber)(-1))) + { + var containerPatameters = GetCspKeyContainerInfoPatameters(result); + containerPatameters.KeyNumber = (int)KeyNumber.Exchange; + } + } + + return result; + } + + private static readonly object CspKeyContainerInfoPatametersFieldSync = new object(); + private static volatile FieldInfo _cspKeyContainerInfoPatametersField; + + private static CspParameters GetCspKeyContainerInfoPatameters(CspKeyContainerInfo cspKeyContainerInfo) + { + CspParameters result = null; + + if (_cspKeyContainerInfoPatametersField == null) + { + lock (CspKeyContainerInfoPatametersFieldSync) + { + if (_cspKeyContainerInfoPatametersField == null) + { + _cspKeyContainerInfoPatametersField = typeof(CspKeyContainerInfo).GetField("m_parameters", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_cspKeyContainerInfoPatametersField != null) + { + result = _cspKeyContainerInfoPatametersField.GetValue(cspKeyContainerInfo) as CspParameters; + } + + return result; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Reflection/EncryptedXmlHelper.cs b/Hcs.ClientNet/GostCryptography/Reflection/EncryptedXmlHelper.cs new file mode 100644 index 0000000..19787b9 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/EncryptedXmlHelper.cs @@ -0,0 +1,83 @@ +using GostCryptography.Properties; +using System.Collections; +using System.Reflection; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace GostCryptography.Reflection +{ + static class EncryptedXmlHelper + { + private static readonly object DocumentFieldSync = new object(); + private static volatile FieldInfo _documentField; + + public static XmlDocument GetDocument(this EncryptedXml encryptedXml) + { + if (_documentField == null) + { + lock (DocumentFieldSync) + { + if (_documentField == null) + { + _documentField = typeof(EncryptedXml).GetField("m_document", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_documentField == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "m_document"); + } + + return (XmlDocument)_documentField.GetValue(encryptedXml); + } + + private static readonly object KeyNameMappingFieldSync = new object(); + private static volatile FieldInfo _keyNameMappingField; + + public static Hashtable GetKeyNameMapping(this EncryptedXml encryptedXml) + { + if (_keyNameMappingField == null) + { + lock (KeyNameMappingFieldSync) + { + if (_keyNameMappingField == null) + { + _keyNameMappingField = typeof(EncryptedXml).GetField("m_keyNameMapping", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_keyNameMappingField == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "m_keyNameMapping"); + } + + return (Hashtable)_keyNameMappingField.GetValue(encryptedXml); + } + + private static readonly object GetCipherValueMethodSync = new object(); + private static volatile MethodInfo _getCipherValueMethod; + + public static byte[] GetCipherValue(this EncryptedXml encryptedXml, CipherData cipherData) + { + if (_getCipherValueMethod == null) + { + lock (GetCipherValueMethodSync) + { + if (_getCipherValueMethod == null) + { + _getCipherValueMethod = typeof(EncryptedXml).GetMethod("GetCipherValue", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_getCipherValueMethod == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "GetCipherValue()"); + } + + return (byte[])_getCipherValueMethod.Invoke(encryptedXml, new object[] { cipherData }); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Reflection/SignedXmlHelper.cs b/Hcs.ClientNet/GostCryptography/Reflection/SignedXmlHelper.cs new file mode 100644 index 0000000..d57a507 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/SignedXmlHelper.cs @@ -0,0 +1,122 @@ +using GostCryptography.Properties; +using System.Collections; +using System.Reflection; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; + +namespace GostCryptography.Reflection +{ + static class SignedXmlHelper + { + public static IEnumerator GetKeyInfoEnumerable(this SignedXml signedXml) + { + return (IEnumerator)KeyInfoEnumerableField.GetValue(signedXml); + } + + public static void SetKeyInfoEnumerable(this SignedXml signedXml, IEnumerator keyInfoEnumerable) + { + KeyInfoEnumerableField.SetValue(signedXml, keyInfoEnumerable); + } + + private static volatile FieldInfo _keyInfoEnumerableField; + private static readonly object KeyInfoEnumerableFieldSync = new object(); + + private static FieldInfo KeyInfoEnumerableField + { + get + { + if (_keyInfoEnumerableField == null) + { + lock (KeyInfoEnumerableFieldSync) + { + if (_keyInfoEnumerableField == null) + { + _keyInfoEnumerableField = typeof(SignedXml).GetField("m_keyInfoEnum", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_keyInfoEnumerableField == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "m_keyInfoEnum"); + } + + return _keyInfoEnumerableField; + } + } + + public static IEnumerator GetX509Enumerable(this SignedXml signedXml) + { + return (IEnumerator)X509EnumerableField.GetValue(signedXml); + } + + public static void SetX509Enumerable(this SignedXml signedXml, IEnumerator x509Enumerable) + { + X509EnumerableField.SetValue(signedXml, x509Enumerable); + } + + private static volatile FieldInfo _x509EnumerableField; + private static readonly object X509EnumerableSync = new object(); + + private static FieldInfo X509EnumerableField + { + get + { + if (_x509EnumerableField == null) + { + lock (X509EnumerableSync) + { + if (_x509EnumerableField == null) + { + _x509EnumerableField = typeof(SignedXml).GetField("m_x509Enum", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_x509EnumerableField == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "m_x509Enum"); + } + + return _x509EnumerableField; + } + } + + public static X509Certificate2Collection GetX509Collection(this SignedXml signedXml) + { + return (X509Certificate2Collection)X509CollectionField.GetValue(signedXml); + } + + public static void SetX509Collection(this SignedXml signedXml, X509Certificate2Collection x509Collection) + { + X509CollectionField.SetValue(signedXml, x509Collection); + } + + private static volatile FieldInfo _x509CollectionField; + private static readonly object X509CollectionFieldSync = new object(); + + private static FieldInfo X509CollectionField + { + get + { + if (_x509CollectionField == null) + { + lock (X509CollectionFieldSync) + { + if (_x509CollectionField == null) + { + _x509CollectionField = typeof(SignedXml).GetField("m_x509Collection", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_keyInfoEnumerableField == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlCannotFindPrivateMember, "m_x509Collection"); + } + + return _x509CollectionField; + } + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Reflection/X509CertificateHelper.cs b/Hcs.ClientNet/GostCryptography/Reflection/X509CertificateHelper.cs new file mode 100644 index 0000000..939aa85 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Reflection/X509CertificateHelper.cs @@ -0,0 +1,293 @@ +using GostCryptography; +using GostCryptography.Asn1.Gost.Gost_R3410_2001; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_256; +using GostCryptography.Asn1.Gost.Gost_R3410_2012_512; +using GostCryptography.Asn1.Gost.Gost_R3410_94; +using GostCryptography.Gost_R3410; +using GostCryptography.Native; +using System.Reflection; + +// ReSharper disable once CheckNamespace +namespace System.Security.Cryptography.X509Certificates +{ + /// + /// Методы расширения + /// + [SecurityCritical] + public static class X509CertificateHelper + { + /// + /// Возвращает для сертификатов ГОСТ + /// + public static bool IsGost(this X509Certificate2 certificate) + { + return certificate.IsGost_R3410_2012_512() + || certificate.IsGost_R3410_2012_256() + || certificate.IsGost_R3410_2001() + || certificate.IsGost_R3410_94(); + } + + /// + /// Возвращает для сертификатов ГОСТ Р 34.10-94 + /// + public static bool IsGost_R3410_94(this X509Certificate2 certificate) + { + return Gost_R3410_94_Constants.KeyAlgorithm.Value.Equals(certificate.GetKeyAlgorithm()); + } + + /// + /// Возвращает для сертификатов ГОСТ Р 34.10-2001 + /// + public static bool IsGost_R3410_2001(this X509Certificate2 certificate) + { + return Gost_R3410_2001_Constants.KeyAlgorithm.Value.Equals(certificate.GetKeyAlgorithm()); + } + + /// + /// Возвращает для сертификатов ГОСТ Р 34.10-2012/256 + /// + public static bool IsGost_R3410_2012_256(this X509Certificate2 certificate) + { + return Gost_R3410_2012_256_Constants.KeyAlgorithm.Value.Equals(certificate.GetKeyAlgorithm()); + } + + /// + /// Возвращает для сертификатов ГОСТ Р 34.10-2012/512 + /// + public static bool IsGost_R3410_2012_512(this X509Certificate2 certificate) + { + return Gost_R3410_2012_512_Constants.KeyAlgorithm.Value.Equals(certificate.GetKeyAlgorithm()); + } + + /// + /// Возвращает функции хэширования сертификата + /// + /// + /// + public static Oid GetHashAlgorithm(this X509Certificate2 certificate) + { + if (certificate.IsGost_R3410_2012_512()) + { + return Gost_R3410_2012_512_Constants.HashAlgorithm.ToOid(); + } + + if (certificate.IsGost_R3410_2012_256()) + { + return Gost_R3410_2012_256_Constants.HashAlgorithm.ToOid(); + } + + if (certificate.IsGost_R3410_2001()) + { + return Gost_R3410_2001_Constants.HashAlgorithm.ToOid(); + } + + if (certificate.IsGost_R3410_94()) + { + return Gost_R3410_94_Constants.HashAlgorithm.ToOid(); + } + + return null; + } + + private static volatile MethodInfo _getPrivateKeyInfoMethod; + private static readonly object GetPrivateKeyInfoMethodSync = new object(); + + /// + /// Возвращает параметры закрытого ключа сертификата + /// + /// + /// + public static CspParameters GetPrivateKeyInfo(this X509Certificate2 certificate) + { + if (certificate == null) + { + throw ExceptionUtility.ArgumentNull(nameof(certificate)); + } + + if (certificate.HasPrivateKey) + { + if (_getPrivateKeyInfoMethod == null) + { + lock (GetPrivateKeyInfoMethodSync) + { + if (_getPrivateKeyInfoMethod == null) + { + _getPrivateKeyInfoMethod = typeof(X509Certificate2).GetMethod("GetPrivateKeyInfo", BindingFlags.Static | BindingFlags.NonPublic); + } + } + } + + if (_getPrivateKeyInfoMethod != null) + { + var certContext = GetCertContext(certificate); + + if (certContext != null) + { + try + { + var parameters = new CspParameters(); + + var success = _getPrivateKeyInfoMethod.Invoke(null, new[] { certContext, parameters }); + + if (Equals(success, true)) + { + return parameters; + } + } + catch + { + } + } + } + } + + return null; + } + + private static volatile MethodInfo _setPrivateKeyPropertyMethod; + private static readonly object SetPrivateKeyPropertyMethodSync = new object(); + + private static void SetPrivateKeyProperty(X509Certificate2 certificate, ICspAsymmetricAlgorithm privateKey) + { + if (_setPrivateKeyPropertyMethod == null) + { + lock (SetPrivateKeyPropertyMethodSync) + { + if (_setPrivateKeyPropertyMethod == null) + { + _setPrivateKeyPropertyMethod = typeof(X509Certificate2).GetMethod("SetPrivateKeyProperty", BindingFlags.Static | BindingFlags.NonPublic); + } + } + } + + if (_setPrivateKeyPropertyMethod != null) + { + var certContext = GetCertContext(certificate); + + if (certContext != null) + { + try + { + _setPrivateKeyPropertyMethod.Invoke(null, new[] { certContext, privateKey }); + } + catch + { + } + } + } + } + + private static volatile FieldInfo _certContextField; + private static readonly object CertContextFieldSync = new object(); + + private static object GetCertContext(X509Certificate2 certificate) + { + if (_certContextField == null) + { + lock (CertContextFieldSync) + { + if (_certContextField == null) + { + _certContextField = typeof(X509Certificate2).GetField("m_safeCertContext", BindingFlags.Instance | BindingFlags.NonPublic); + } + } + } + + if (_certContextField != null) + { + try + { + return _certContextField.GetValue(certificate); + } + catch + { + } + } + + return null; + } + + /// + /// Возвращает закрытый ключ сертификата + /// + public static AsymmetricAlgorithm GetPrivateKeyAlgorithm(this X509Certificate2 certificate) + { + if (certificate.IsGost_R3410_2012_512()) + { + var cspParameters = GetPrivateKeyInfo(certificate); + return new Gost_R3410_2012_512_AsymmetricAlgorithm(cspParameters); + } + + if (certificate.IsGost_R3410_2012_256()) + { + var cspParameters = GetPrivateKeyInfo(certificate); + return new Gost_R3410_2012_256_AsymmetricAlgorithm(cspParameters); + } + + if (certificate.IsGost_R3410_2001()) + { + var cspParameters = GetPrivateKeyInfo(certificate); + return new Gost_R3410_2001_AsymmetricAlgorithm(cspParameters); + } + + return certificate.PrivateKey; + } + + /// + /// Возвращает открытый ключ сертификата + /// + public static AsymmetricAlgorithm GetPublicKeyAlgorithm(this X509Certificate2 certificate) + { + if (certificate.IsGost_R3410_2012_512()) + { + var publicKey = new Gost_R3410_2012_512_AsymmetricAlgorithm(); + var encodedParameters = certificate.PublicKey.EncodedParameters.RawData; + var encodedKeyValue = certificate.PublicKey.EncodedKeyValue.RawData; + publicKey.ImportCspBlob(encodedParameters, encodedKeyValue); + return publicKey; + } + + if (certificate.IsGost_R3410_2012_256()) + { + var publicKey = new Gost_R3410_2012_256_AsymmetricAlgorithm(); + var encodedParameters = certificate.PublicKey.EncodedParameters.RawData; + var encodedKeyValue = certificate.PublicKey.EncodedKeyValue.RawData; + publicKey.ImportCspBlob(encodedParameters, encodedKeyValue); + return publicKey; + } + + if (certificate.IsGost_R3410_2001()) + { + var publicKey = new Gost_R3410_2001_AsymmetricAlgorithm(); + var encodedParameters = certificate.PublicKey.EncodedParameters.RawData; + var encodedKeyValue = certificate.PublicKey.EncodedKeyValue.RawData; + publicKey.ImportCspBlob(encodedParameters, encodedKeyValue); + return publicKey; + } + + return certificate.PublicKey.Key; + } + + /// + /// Возвращает сертификат для указанного ключа + /// + /// Ключ сертификата + /// Использовать ключ, как приватный + public static X509Certificate2 GetCertificate(this AsymmetricAlgorithm key, bool useAsPrivateKey = false) + { + X509Certificate2 certificate = null; + + if (key is ISafeHandleProvider keyHandleProvider) + { + certificate = CryptoApiHelper.GetKeyCertificate(keyHandleProvider.SafeHandle); + } + + if (useAsPrivateKey && (certificate != null) && (key is ICspAsymmetricAlgorithm privateKey)) + { + SetPrivateKeyProperty(certificate, privateKey); + } + + return certificate; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GetIdElementDelegate.cs b/Hcs.ClientNet/GostCryptography/Xml/GetIdElementDelegate.cs new file mode 100644 index 0000000..9bd2193 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GetIdElementDelegate.cs @@ -0,0 +1,11 @@ +using System.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Возвращает XML-элемент с указанным идентификатором + /// + /// Документ для поиска идентификатора элемента + /// Значение идентификатора элемента + public delegate XmlElement GetIdElementDelegate(XmlDocument document, string idValue); +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXml.cs b/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXml.cs new file mode 100644 index 0000000..e190a00 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXml.cs @@ -0,0 +1,349 @@ +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_28147_89; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Security.Policy; +using System.Text; +using System.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Объект для шифрации и дешифрации XML по ГОСТ 34.10 + /// + public sealed class GostEncryptedXml + { + /// + /// URI пространства имен для синтаксиса и правил обработки при шифровании XML по ГОСТ + /// + public const string XmlEncGostNamespaceUrl = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:"; + + /// + /// URI алгоритма экспорта ключа по ГОСТ 28147-89 + /// + public const string XmlEncGostKeyExportUrl = XmlEncGostNamespaceUrl + "kw-gost"; + + /// + /// URI алгоритма экспорта ключа КриптоПро + /// + public const string XmlEncGostCryptoProKeyExportUrl = XmlEncGostNamespaceUrl + "kw-cp"; + + static GostEncryptedXml() + { + GostCryptoConfig.Initialize(); + } + + /// + public GostEncryptedXml() : this(GostCryptoConfig.ProviderType) + { + } + + /// + public GostEncryptedXml(ProviderType providerType) + { + _encryptedXml = new GostEncryptedXmlImpl(providerType); + } + + /// + public GostEncryptedXml(XmlDocument document) : this(GostCryptoConfig.ProviderType, document) + { + } + + /// + public GostEncryptedXml(ProviderType providerType, XmlDocument document) + { + _encryptedXml = new GostEncryptedXmlImpl(providerType, document); + } + + /// + public GostEncryptedXml(XmlDocument document, Evidence evidence) : this(GostCryptoConfig.ProviderType, document, evidence) + { + } + + /// + public GostEncryptedXml(ProviderType providerType, XmlDocument document, Evidence evidence) + { + _encryptedXml = new GostEncryptedXmlImpl(providerType, document, evidence); + } + + private readonly GostEncryptedXmlImpl _encryptedXml; + + /// + public Evidence DocumentEvidence + { + get => _encryptedXml.DocumentEvidence; + set => _encryptedXml.DocumentEvidence = value; + } + + /// + public XmlResolver Resolver + { + get => _encryptedXml.Resolver; + set => _encryptedXml.Resolver = value; + } + + /// + public PaddingMode Padding + { + get => _encryptedXml.Padding; + set => _encryptedXml.Padding = value; + } + + /// + public CipherMode Mode + { + get => _encryptedXml.Mode; + set => _encryptedXml.Mode = value; + } + + /// + public Encoding Encoding + { + get => _encryptedXml.Encoding; + set => _encryptedXml.Encoding = value; + } + + /// + public string Recipient + { + get => _encryptedXml.Recipient; + set => _encryptedXml.Recipient = value; + } + + // Encryption + + /// + /// Шифрует XML-элемент с помощью ключа с указанным именем + /// + /// Шифруемый XML-элемент + /// Имя ключа для шифрования XML-элемента + /// Зашифрованное представление XML-элемента + public EncryptedData Encrypt(XmlElement element, string keyName) + { + return _encryptedXml.Encrypt(element, keyName); + } + + /// + /// Шифрует XML-элемент с помощью сертификата + /// + /// Шифруемый XML-элемент + /// Сертификат X.509 для шифрования XML-элемента + /// Зашифрованное представление XML-элемента + public EncryptedData Encrypt(XmlElement element, X509Certificate2 certificate) + { + return _encryptedXml.Encrypt(element, certificate); + } + + /// + /// Шифрует данные с помощью указанного симметричного ключа + /// + /// Шифруемые данные + /// Симметричный ключ для шифрования данных + /// Массив байт, содержащий зашифрованные данные + public byte[] EncryptData(byte[] data, SymmetricAlgorithm symmetricKey) + { + return _encryptedXml.EncryptData(data, symmetricKey); + } + + /// + /// Шифрует XML-элемент с помощью указанного симметричного ключа + /// + /// Шифруемый XML-элемент + /// Симметричный ключ для шифрования XML-элемента + /// Значение true для шифрования только содержимого элемента; значение false для шифрования всего элемента + /// Массив байт, содержащий зашифрованные данные + public byte[] EncryptData(XmlElement element, SymmetricAlgorithm symmetricKey, bool content) + { + return _encryptedXml.EncryptData(element, symmetricKey, content); + } + + /// + /// Шифрует сессионный ключ с помощью указанного общего симметричного ключа + /// + /// Шифруемый сессионный ключ + /// Общий симметричный ключ для шифрования сессионного ключа + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] EncryptKey(byte[] keyData, SymmetricAlgorithm sharedKey) + { + return EncryptedXml.EncryptKey(keyData, sharedKey); + } + + /// + /// Шифрует сессионный ключ с помощью указанного асимметричного ключа RSA + /// + /// Шифруемый сессионный ключ + /// Открытый ключ RSA для шифрования сессионного ключа + /// Значение, указывающее, следует ли использовать заполнение OAEP (Optimal Asymmetric Encryption Padding) + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] EncryptKey(byte[] keyData, RSA publicKey, bool useOaep) + { + return EncryptedXml.EncryptKey(keyData, publicKey, useOaep); + } + + /// + /// Шифрует сессионный ключ с помощью указанного асимметричного ключа ГОСТ Р 34.10 + /// + /// Шифруемый сессионный ключ + /// Открытый ключ ГОСТ Р 34.10 для шифрования сессионного ключа + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] EncryptKey(Gost_28147_89_SymmetricAlgorithmBase sessionKey, GostAsymmetricAlgorithm publicKey) + { + return GostEncryptedXmlImpl.EncryptKey(sessionKey, publicKey); + } + + /// + /// Шифрует сессионный ключ с помощью указанного симметричного ключа ГОСТ 28147 + /// + /// Шифруемый сессионный ключ + /// Общий симметричный ключ ГОСТ 28147 для шифрования сессионного ключа + /// Алгоритм экспорта сессионного ключа + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] EncryptKey(Gost_28147_89_SymmetricAlgorithmBase sessionKey, Gost_28147_89_SymmetricAlgorithmBase sharedKey, GostKeyExchangeExportMethod exportMethod = GostKeyExchangeExportMethod.GostKeyExport) + { + return GostEncryptedXmlImpl.EncryptKey(sessionKey, sharedKey, exportMethod); + } + + /// + /// Расшифровывает зашифрованный XML-элемент с помощью указанного симметричного ключа + /// + /// Зашифрованное представление XML-элемента + /// Симметричный ключ для расшифровки данных + /// Массив байт, содержащий расшифрованный XML-элемент + public byte[] DecryptData(EncryptedData encryptedData, SymmetricAlgorithm symmetricKey) + { + return _encryptedXml.DecryptData(encryptedData, symmetricKey); + } + + /// + /// Расшифровывает все зашифрованные XML-элементы документа + /// + public void DecryptDocument() + { + _encryptedXml.DecryptDocument(); + } + + /// + /// Возвращает вектор инициализации для расшифровки XML-элемента + /// + /// Зашифрованное представление XML-элемента + /// URI алгоритма шифрования + /// Массив байт, содержащий вектор инициализации для расшифровки XML-элемента + public byte[] GetDecryptionIV(EncryptedData encryptedData, string symmetricAlgorithmUri) + { + return _encryptedXml.GetDecryptionIV(encryptedData, symmetricAlgorithmUri); + } + + /// + /// Возвращает симметричный ключ для расшифровки XML-элемента + /// + /// Зашифрованное представление XML-элемента + /// URI алгоритма шифрования + /// Симметричный ключ для расшифровки XML-элемента + public SymmetricAlgorithm GetDecryptionKey(EncryptedData encryptedData, string symmetricAlgorithmUri) + { + return _encryptedXml.GetDecryptionKey(encryptedData, symmetricAlgorithmUri); + } + + /// + /// Извлекает ключ из элемента <EncryptedKey> + /// + /// Элемент <EncryptedKey> с информацией о ключе шифрования + /// Массив байт, содержащий ключ для расшифровки + public byte[] DecryptEncryptedKey(EncryptedKey encryptedKey) + { + return _encryptedXml.DecryptEncryptedKey(encryptedKey); + } + + /// + /// Расшифровывает сессионный ключ с помощью указанного общего симметричного ключа + /// + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Общий симметричный ключ для расшифровки сессионного ключа + /// Массив байт, который содержит сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] DecryptKey(byte[] keyData, SymmetricAlgorithm sharedKey) + { + return EncryptedXml.EncryptKey(keyData, sharedKey); + } + + /// + /// Расшифровывает сессионный ключ с помощью указанного асимметричного ключа RSA + /// + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Закрытый ключ RSA для расшифровки сессионного ключа + /// Значение, указывающее, следует ли использовать заполнение OAEP (Optimal Asymmetric Encryption Padding) + /// Массив байт, который содержит сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static byte[] DecryptKey(byte[] keyData, RSA privateKey, bool useOaep) + { + return EncryptedXml.DecryptKey(keyData, privateKey, useOaep); + } + + /// + /// Расшифровывает сессионный ключ с помощью указанного асимметричного ключа ГОСТ Р 34.10 + /// + /// Массив байт, содержащий зашифрованный сессионный ключ + /// Закрытый ключ ГОСТ Р 34.10 для расшифровки сессионного ключа + /// Сессионный ключ + /// Как правило сессионный ключ используется для шифрования данных и в свою очередь так же шифруется + public static SymmetricAlgorithm DecryptKey(byte[] keyData, GostAsymmetricAlgorithm privateKey) + { + return GostEncryptedXmlImpl.DecryptKeyClass(keyData, privateKey); + } + + /// + /// Заменяет указанный зашифрованный XML-элемент его расшифрованным представлением + /// + /// Заменяемый зашифрованный XML-элемент + /// Расшифрованное представление XML-элемента + public void ReplaceData(XmlElement element, byte[] decryptedData) + { + _encryptedXml.ReplaceData(element, decryptedData); + } + + /// + /// Заменяет указанный XML-элемент его зашифрованным представлением + /// + /// Заменяемый XML-элемент + /// Зашифрованное представление XML-элемента + /// Значение true для замены только содержимого элемента; значение false для замены всего элемента + public static void ReplaceElement(XmlElement element, EncryptedData encryptedData, bool content) + { + EncryptedXml.ReplaceElement(element, encryptedData, content); + } + + /// + /// Возвращает XML-элемент с указанным идентификатором + /// + /// Документ для поиска идентификатора XML-элемента + /// Значение идентификатора XML-элемента + public XmlElement GetIdElement(XmlDocument document, string idValue) + { + return _encryptedXml.GetIdElement(document, idValue); + } + + /// + /// Сопоставляет имя ключа шифрования со значением + /// + /// Имя ключа шифрования + /// Значение ключа шифрования + public void AddKeyNameMapping(string keyName, object keyObject) + { + _encryptedXml.AddKeyNameMapping(keyName, keyObject); + } + + /// + /// Сбрасывает все сопоставления между именами и ключами шифрования + /// + public void ClearKeyNameMappings() + { + _encryptedXml.ClearKeyNameMappings(); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXmlImpl.cs b/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXmlImpl.cs new file mode 100644 index 0000000..50cb230 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GostEncryptedXmlImpl.cs @@ -0,0 +1,429 @@ +using GostCryptography.Base; +using GostCryptography.Config; +using GostCryptography.Gost_28147_89; +using GostCryptography.Properties; +using GostCryptography.Reflection; +using System; +using System.Security; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Security.Policy; +using System.Xml; + +namespace GostCryptography.Xml +{ + sealed class GostEncryptedXmlImpl : EncryptedXml + { + public GostEncryptedXmlImpl(ProviderType providerType) + { + ProviderType = providerType; + } + + public GostEncryptedXmlImpl(ProviderType providerType, XmlDocument document) : base(document) + { + ProviderType = providerType; + } + + public GostEncryptedXmlImpl(ProviderType providerType, XmlDocument document, Evidence evidence) : base(document, evidence) + { + ProviderType = providerType; + } + + public ProviderType ProviderType { get; } + + public new void AddKeyNameMapping(string keyName, object keyObject) + { + if (string.IsNullOrEmpty(keyName)) + { + throw ExceptionUtility.ArgumentNull(nameof(keyName)); + } + + if (keyObject == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyObject)); + } + + if (keyObject is GostAsymmetricAlgorithm) + { + this.GetKeyNameMapping().Add(keyName, keyObject); + } + else + { + base.AddKeyNameMapping(keyName, keyObject); + } + } + + [SecuritySafeCritical] + public new EncryptedData Encrypt(XmlElement element, X509Certificate2 certificate) + { + if (element == null || certificate == null || !certificate.IsGost()) + { + return base.Encrypt(element, certificate); + } + + var publicKey = (GostAsymmetricAlgorithm)certificate.GetPublicKeyAlgorithm(); + var encryptionKey = new Gost_28147_89_SymmetricAlgorithm(publicKey.ProviderType); + + var encryptedKey = new EncryptedKey(); + encryptedKey.KeyInfo.AddClause(new KeyInfoX509Data(certificate)); + encryptedKey.EncryptionMethod = new EncryptionMethod(publicKey.KeyExchangeAlgorithm); + encryptedKey.CipherData.CipherValue = EncryptKey(encryptionKey, publicKey); + + var encryptedData = new EncryptedData + { + Type = XmlEncElementUrl, + EncryptionMethod = new EncryptionMethod(encryptionKey.AlgorithmName) + }; + + encryptedData.KeyInfo.AddClause(new KeyInfoEncryptedKey(encryptedKey)); + encryptedData.CipherData.CipherValue = EncryptData(element, encryptionKey, false); + + return encryptedData; + } + + public static byte[] EncryptKey(Gost_28147_89_SymmetricAlgorithmBase sessionKey, GostAsymmetricAlgorithm publicKey) + { + if (sessionKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(sessionKey)); + } + + if (publicKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(publicKey)); + } + + var formatter = publicKey.CreateKeyExchangeFormatter(); + return formatter.CreateKeyExchangeData(sessionKey); + } + + public static byte[] EncryptKey(Gost_28147_89_SymmetricAlgorithmBase sessionKey, Gost_28147_89_SymmetricAlgorithmBase sharedKey, GostKeyExchangeExportMethod exportMethod) + { + if (sessionKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(sessionKey)); + } + + if (sharedKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(sharedKey)); + } + + return sharedKey.EncodePrivateKey(sessionKey, exportMethod); + } + + public override byte[] GetDecryptionIV(EncryptedData encryptedData, string symmetricAlgorithmUri) + { + if (encryptedData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptedData)); + } + + if (symmetricAlgorithmUri == null) + { + if (encryptedData.EncryptionMethod == null) + { + return base.GetDecryptionIV(encryptedData, null); + } + + symmetricAlgorithmUri = encryptedData.EncryptionMethod.KeyAlgorithm; + } + + if (Gost_28147_89_SymmetricAlgorithm.AlgorithmNameValue.Equals(symmetricAlgorithmUri, StringComparison.OrdinalIgnoreCase)) + { + var iv = new byte[8]; + Buffer.BlockCopy(this.GetCipherValue(encryptedData.CipherData), 0, iv, 0, iv.Length); + + return iv; + } + + return base.GetDecryptionIV(encryptedData, symmetricAlgorithmUri); + } + + public override SymmetricAlgorithm GetDecryptionKey(EncryptedData encryptedData, string symmetricAlgorithmUri) + { + if (encryptedData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptedData)); + } + + SymmetricAlgorithm decryptionKey = null; + + if (encryptedData.KeyInfo != null) + { + EncryptedKey encryptedKey = null; + + foreach (var keyInfo in encryptedData.KeyInfo) + { + // Извлечение ключа по имени + if (keyInfo is KeyInfoName) + { + var keyName = ((KeyInfoName)keyInfo).Value; + var keyAlgorithm = this.GetKeyNameMapping()[keyName]; + + if (keyAlgorithm == null) + { + var nsManager = new XmlNamespaceManager(this.GetDocument().NameTable); + nsManager.AddNamespace("enc", XmlEncNamespaceUrl); + + var encryptedKeyNodes = this.GetDocument().SelectNodes("//enc:EncryptedKey", nsManager); + + if (encryptedKeyNodes != null) + { + foreach (XmlElement encryptedKeyNode in encryptedKeyNodes) + { + var currentEncryptedKey = new EncryptedKey(); + currentEncryptedKey.LoadXml(encryptedKeyNode); + + if ((currentEncryptedKey.CarriedKeyName == keyName) && (currentEncryptedKey.Recipient == Recipient)) + { + encryptedKey = currentEncryptedKey; + break; + } + } + } + } + else + { + decryptionKey = (SymmetricAlgorithm)keyAlgorithm; + } + + break; + } + + // Извлечение ключа по ссылке + if (keyInfo is KeyInfoRetrievalMethod) + { + var idValue = CryptographyXmlUtils.ExtractIdFromLocalUri(((KeyInfoRetrievalMethod)keyInfo).Uri); + var idElement = GetIdElement(this.GetDocument(), idValue); + + if (idElement != null) + { + encryptedKey = new EncryptedKey(); + encryptedKey.LoadXml(idElement); + } + + break; + } + + // Ключ в готовом виде + if (keyInfo is KeyInfoEncryptedKey) + { + encryptedKey = ((KeyInfoEncryptedKey)keyInfo).EncryptedKey; + break; + } + } + + if (decryptionKey == null && encryptedKey != null) + { + if (symmetricAlgorithmUri == null) + { + if (encryptedData.EncryptionMethod == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlMissingAlgorithm); + } + + symmetricAlgorithmUri = encryptedData.EncryptionMethod.KeyAlgorithm; + } + + decryptionKey = DecryptEncryptedKeyClass(encryptedKey, symmetricAlgorithmUri); + } + } + + return decryptionKey; + } + + [SecuritySafeCritical] + private SymmetricAlgorithm DecryptEncryptedKeyClass(EncryptedKey encryptedKey, string symmetricAlgorithmUri) + { + if (encryptedKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(encryptedKey)); + } + + SymmetricAlgorithm decryptionKey = null; + + if (encryptedKey.KeyInfo != null) + { + foreach (var keyInfo in encryptedKey.KeyInfo) + { + // Извлечение ключа по имени + if (keyInfo is KeyInfoName) + { + var keyName = ((KeyInfoName)keyInfo).Value; + var keyAlgorithm = this.GetKeyNameMapping()[keyName]; + + if (keyAlgorithm != null) + { + if (keyAlgorithm is SymmetricAlgorithm) + { + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, (SymmetricAlgorithm)keyAlgorithm, symmetricAlgorithmUri, encryptedKey.EncryptionMethod.KeyAlgorithm); + } + else if (keyAlgorithm is RSA) + { + var useOaep = (encryptedKey.EncryptionMethod != null) && (encryptedKey.EncryptionMethod.KeyAlgorithm == XmlEncRSAOAEPUrl); + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, (RSA)keyAlgorithm, useOaep, symmetricAlgorithmUri); + } + else if (keyAlgorithm is GostAsymmetricAlgorithm) + { + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, (GostAsymmetricAlgorithm)keyAlgorithm); + } + } + + break; + } + + // Извлечение ключа из сертификата + if (keyInfo is KeyInfoX509Data) + { + var certificates = CryptographyXmlUtils.BuildBagOfCertsDecryption((KeyInfoX509Data)keyInfo); + + foreach (var certificate in certificates) + { + var privateKey = certificate.GetPrivateKeyAlgorithm(); + + if (privateKey is RSA) + { + var useOaep = (encryptedKey.EncryptionMethod != null) && (encryptedKey.EncryptionMethod.KeyAlgorithm == XmlEncRSAOAEPUrl); + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, (RSA)privateKey, useOaep, symmetricAlgorithmUri); + } + else if (privateKey is GostAsymmetricAlgorithm) + { + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, (GostAsymmetricAlgorithm)privateKey); + } + } + + break; + } + + // Извлечение ключа по ссылке + if (keyInfo is KeyInfoRetrievalMethod) + { + var idValue = CryptographyXmlUtils.ExtractIdFromLocalUri(((KeyInfoRetrievalMethod)keyInfo).Uri); + var idElement = GetIdElement(this.GetDocument(), idValue); + + if (idElement != null) + { + var secondEncryptedKey = new EncryptedKey(); + secondEncryptedKey.LoadXml(idElement); + + decryptionKey = DecryptEncryptedKeyClass(secondEncryptedKey, symmetricAlgorithmUri); + } + + break; + } + + // Ключ в готовом виде + if (keyInfo is KeyInfoEncryptedKey) + { + var secondEncryptedKey = ((KeyInfoEncryptedKey)keyInfo).EncryptedKey; + var symmetricAlgorithm = DecryptEncryptedKeyClass(secondEncryptedKey, symmetricAlgorithmUri); + + if (symmetricAlgorithm != null) + { + decryptionKey = DecryptKeyClass(encryptedKey.CipherData.CipherValue, symmetricAlgorithm, symmetricAlgorithmUri, encryptedKey.EncryptionMethod.KeyAlgorithm); + } + + break; + } + } + } + + return decryptionKey; + } + + private static SymmetricAlgorithm DecryptKeyClass(byte[] keyData, SymmetricAlgorithm algorithm, string symmetricAlgorithmUri, string encryptionKeyAlgorithm) + { + if (keyData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyData)); + } + + if (algorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(algorithm)); + } + + SymmetricAlgorithm decryptionKey = null; + + if (algorithm is Gost_28147_89_SymmetricAlgorithmBase gost28147) + { + if (string.Equals(encryptionKeyAlgorithm, GostEncryptedXml.XmlEncGostKeyExportUrl, StringComparison.OrdinalIgnoreCase)) + { + decryptionKey = gost28147.DecodePrivateKey(keyData, GostKeyExchangeExportMethod.GostKeyExport); + } + + if (string.Equals(encryptionKeyAlgorithm, GostEncryptedXml.XmlEncGostCryptoProKeyExportUrl, StringComparison.OrdinalIgnoreCase)) + { + decryptionKey = gost28147.DecodePrivateKey(keyData, GostKeyExchangeExportMethod.CryptoProKeyExport); + } + } + else + { + var decryptionKeyBytes = DecryptKey(keyData, algorithm); + + if (decryptionKeyBytes != null) + { + decryptionKey = (SymmetricAlgorithm)GostCryptoConfig.CreateFromName(symmetricAlgorithmUri); + decryptionKey.Key = decryptionKeyBytes; + } + } + + if (decryptionKey == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlMissingAlgorithm); + } + + return decryptionKey; + } + + private static SymmetricAlgorithm DecryptKeyClass(byte[] keyData, RSA algorithm, bool useOaep, string symmetricAlgorithmUri) + { + if (keyData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyData)); + } + + if (algorithm == null) + { + throw ExceptionUtility.ArgumentNull(nameof(algorithm)); + } + + SymmetricAlgorithm decryptionKey = null; + + var decryptionKeyBytes = DecryptKey(keyData, algorithm, useOaep); + + if (decryptionKeyBytes != null) + { + decryptionKey = (SymmetricAlgorithm)GostCryptoConfig.CreateFromName(symmetricAlgorithmUri); + decryptionKey.Key = decryptionKeyBytes; + } + + if (decryptionKey == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlMissingAlgorithm); + } + + return decryptionKey; + } + + public static SymmetricAlgorithm DecryptKeyClass(byte[] keyData, GostAsymmetricAlgorithm privateKey) + { + if (keyData == null) + { + throw ExceptionUtility.ArgumentNull(nameof(keyData)); + } + + if (privateKey == null) + { + throw ExceptionUtility.ArgumentNull(nameof(privateKey)); + } + + var deformatter = privateKey.CreateKeyExchangeDeformatter(); + var decryptionKey = deformatter.DecryptKeyExchangeAlgorithm(keyData); + + return decryptionKey; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GostKeyValue.cs b/Hcs.ClientNet/GostCryptography/Xml/GostKeyValue.cs new file mode 100644 index 0000000..7f95534 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GostKeyValue.cs @@ -0,0 +1,50 @@ +using GostCryptography.Base; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Параметры открытого ключа цифровой подписи ГОСТ Р 34.10 элемента + /// + public abstract class GostKeyValue : KeyInfoClause + { + /// + /// URI пространства имен для XML-подписи ГОСТ Р 34.10 + /// + public const string XmlDsigNamespaceUrl = "urn:ietf:params:xml:ns:cpxmlsec"; + + /// + /// Создает экземпляр класса с заданным публичным ключом + /// + protected GostKeyValue(GostAsymmetricAlgorithm publicKey) + { + PublicKey = publicKey; + } + + /// + /// Открытый ключ + /// + public GostAsymmetricAlgorithm PublicKey { get; set; } + + /// + public override void LoadXml(XmlElement element) + { + if (element == null) + { + throw ExceptionUtility.ArgumentNull(nameof(element)); + } + + PublicKey.FromXmlString(element.OuterXml); + } + + /// + public override XmlElement GetXml() + { + var document = new XmlDocument { PreserveWhitespace = true }; + var element = document.CreateElement("KeyValue", SignedXml.XmlDsigNamespaceUrl); + element.InnerXml = PublicKey.ToXmlString(false); + return element; + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GostSignedXml.cs b/Hcs.ClientNet/GostCryptography/Xml/GostSignedXml.cs new file mode 100644 index 0000000..998b728 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GostSignedXml.cs @@ -0,0 +1,143 @@ +using GostCryptography.Config; +using System.Security; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Объект для работы с подписями XML по ГОСТ 34.10 + /// + /// + /// Данный класс реализует стандарт XML-DSig с использованием ГОСТ 34.10. Стандарт XML-DSig разработан консорциумом W3C + /// и определяет рекомендации по формированию подписанных сообщений в формате XML. Фактически XML-DSig решает те же вопросы, + /// что и CMS/PKCS#7. Основное отличие в том, что в CMS/PKCS#7 данные хранятся в структурах, сформированных в соответствии + /// с разметкой ANS.1 (фактически, бинарные данные), а в XML-DSig данные хранятся в текстовом формате в соответствии с правилами + /// документа "XML Signature Syntax and Processing". Основное применение XML-DSig - это XML-ориентированные протоколы, например, + /// Web- и SOAP-сервисы. + /// + public sealed class GostSignedXml + { + static GostSignedXml() + { + GostCryptoConfig.Initialize(); + } + + /// + public GostSignedXml() + { + _signedXml = new GostSignedXmlImpl(); + } + + /// + public GostSignedXml(XmlElement element) + { + if (element == null) + { + throw ExceptionUtility.ArgumentNull(nameof(element)); + } + + _signedXml = new GostSignedXmlImpl(element); + } + + /// + public GostSignedXml(XmlDocument document) + { + if (document == null) + { + throw ExceptionUtility.ArgumentNull(nameof(document)); + } + + _signedXml = new GostSignedXmlImpl(document); + } + + private readonly GostSignedXmlImpl _signedXml; + + /// + public SignedInfo SignedInfo => _signedXml.SignedInfo; + + /// + public KeyInfo KeyInfo + { + get => _signedXml.KeyInfo; + set => _signedXml.KeyInfo = value; + } + + /// + public AsymmetricAlgorithm SigningKey + { + get => _signedXml.SigningKey; + set => _signedXml.SigningKey = value; + } + +#if !NET40 + /// + public System.Collections.ObjectModel.Collection SafeCanonicalizationMethods + { + get => _signedXml.SafeCanonicalizationMethods; + } +#endif + + /// + /// Обработчик для перекрытия метода + /// + public GetIdElementDelegate GetIdElementHandler + { + get => _signedXml.GetIdElementHandler; + set => _signedXml.GetIdElementHandler = value; + } + + /// + /// Устанавливает сертификат для вычисления цифровой подписи + /// + [SecuritySafeCritical] + public void SetSigningCertificate(X509Certificate2 certificate) + { + SigningKey = certificate.GetPrivateKeyAlgorithm(); + } + + /// + public void AddReference(Reference reference) + { + _signedXml.AddReference(reference); + } + + /// + public void ComputeSignature() + { + _signedXml.ComputeSignatureGost(); + } + + /// + public bool CheckSignature() + { + return _signedXml.CheckSignature(); + } + + /// + public bool CheckSignature(AsymmetricAlgorithm publicKey) + { + return _signedXml.CheckSignature(publicKey); + } + + /// + public void LoadXml(XmlElement element) + { + _signedXml.LoadXml(element); + } + + /// + public XmlElement GetXml() + { + return _signedXml.GetXml(); + } + + /// + public XmlElement GetIdElement(XmlDocument document, string idValue) + { + return _signedXml.GetIdElement(document, idValue); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/GostSignedXmlImpl.cs b/Hcs.ClientNet/GostCryptography/Xml/GostSignedXmlImpl.cs new file mode 100644 index 0000000..f4d7090 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/GostSignedXmlImpl.cs @@ -0,0 +1,159 @@ +using GostCryptography.Base; +using GostCryptography.Properties; +using GostCryptography.Reflection; +using System.Collections; +using System.Security; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace GostCryptography.Xml +{ + sealed class GostSignedXmlImpl : SignedXml + { + public GostSignedXmlImpl() + { + } + + public GostSignedXmlImpl(XmlElement element) : base(element) + { + } + + public GostSignedXmlImpl(XmlDocument document) : base(document) + { + } + + public GetIdElementDelegate GetIdElementHandler { get; set; } + + private IEnumerator KeyInfoEnumerable + { + get => this.GetKeyInfoEnumerable(); + set => this.SetKeyInfoEnumerable(value); + } + + private IEnumerator X509Enumerable + { + get => this.GetX509Enumerable(); + set => this.SetX509Enumerable(value); + } + + private X509Certificate2Collection X509Collection + { + get => this.GetX509Collection(); + set => this.SetX509Collection(value); + } + + [SecuritySafeCritical] + public void ComputeSignatureGost() + { + var signingKey = SigningKey; + + if (signingKey == null) + { + ComputeSignatureBase(); + } + else + { + if ((SignedInfo.SignatureMethod == null) && (signingKey is GostAsymmetricAlgorithm)) + { + SignedInfo.SignatureMethod = signingKey.SignatureAlgorithm; + } + + ComputeSignatureBase(); + } + } + + [SecurityCritical] + private void ComputeSignatureBase() + { + ComputeSignature(); + } + + protected override AsymmetricAlgorithm GetPublicKey() + { + if (KeyInfo == null) + { + throw ExceptionUtility.CryptographicException(Resources.XmlKeyInfoRequired); + } + + if (X509Enumerable != null) + { + var nextCertificatePublicKey = GetNextCertificatePublicKey(); + + if (nextCertificatePublicKey != null) + { + return nextCertificatePublicKey; + } + } + + if (KeyInfoEnumerable == null) + { + KeyInfoEnumerable = KeyInfo.GetEnumerator(); + } + + var keyInfoEnum = KeyInfoEnumerable; + + while (keyInfoEnum.MoveNext()) + { + if (keyInfoEnum.Current is RSAKeyValue rsaKeyValue) + { + return rsaKeyValue.Key; + } + + if (keyInfoEnum.Current is DSAKeyValue dsaKeyValue) + { + return dsaKeyValue.Key; + } + + if (keyInfoEnum.Current is GostKeyValue gostKeyValue) + { + return gostKeyValue.PublicKey; + } + + if (keyInfoEnum.Current is KeyInfoX509Data keyInfoX509Data) + { + X509Collection = CryptographyXmlUtils.BuildBagOfCertsVerification(keyInfoX509Data); + + if (X509Collection.Count > 0) + { + X509Enumerable = X509Collection.GetEnumerator(); + + var nextCertificatePublicKey = GetNextCertificatePublicKey(); + + if (nextCertificatePublicKey != null) + { + return nextCertificatePublicKey; + } + } + } + } + + return null; + } + + [SecuritySafeCritical] + private AsymmetricAlgorithm GetNextCertificatePublicKey() + { + while (X509Enumerable.MoveNext()) + { + if (X509Enumerable.Current is X509Certificate2 certificate) + { + return certificate.GetPublicKeyAlgorithm(); + } + } + + return null; + } + + public override XmlElement GetIdElement(XmlDocument document, string idValue) + { + if (GetIdElementHandler != null) + { + return GetIdElementHandler(document, idValue); + } + + return base.GetIdElement(document, idValue); + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2001_KeyValue.cs b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2001_KeyValue.cs new file mode 100644 index 0000000..9ae802a --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2001_KeyValue.cs @@ -0,0 +1,36 @@ +using GostCryptography.Gost_R3410; +using System.Security.Cryptography.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Параметры открытого ключа цифровой подписи ГОСТ Р 34.10-2001 элемента + /// + public sealed class Gost_R3410_2001_KeyValue : GostKeyValue + { + /// + /// URI параметров ключа ГОСТ Р 34.10-2001 + /// + public const string KeyValueUrl = SignedXml.XmlDsigNamespaceUrl + " KeyValue/" + Gost_R3410_2001_KeyExchangeXmlSerializer.KeyValueTag; + + /// + /// Известные URIs параметров ключа ГОСТ Р 34.10-2001 + /// + public static readonly string[] KnownValueUrls = { KeyValueUrl }; + + + /// + /// Создает экземпляр класса с новым ключом ГОСТ Р 34.10-2001 + /// + public Gost_R3410_2001_KeyValue() : base(new Gost_R3410_2001_AsymmetricAlgorithm()) + { + } + + /// + /// Создает экземпляр класса с заданным ключом ГОСТ Р 34.10-2001 + /// + public Gost_R3410_2001_KeyValue(Gost_R3410_2001_AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_256_KeyValue.cs b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_256_KeyValue.cs new file mode 100644 index 0000000..c6fe784 --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_256_KeyValue.cs @@ -0,0 +1,36 @@ +using GostCryptography.Gost_R3410; +using System.Security.Cryptography.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Параметры открытого ключа цифровой подписи ГОСТ Р 34.10-2012/256 элемента + /// + public sealed class Gost_R3410_2012_256_KeyValue : GostKeyValue + { + /// + /// URI параметров ключа ГОСТ Р 34.10-2012/256 + /// + public const string KeyValueUrl = SignedXml.XmlDsigNamespaceUrl + " KeyValue/" + Gost_R3410_2012_256_KeyExchangeXmlSerializer.KeyValueTag; + + /// + /// Известные URIs параметров ключа ГОСТ Р 34.10-2012/256 + /// + public static readonly string[] KnownValueUrls = { KeyValueUrl }; + + + /// + /// Создает экземпляр класса с новым ключом ГОСТ Р 34.10-2012/256 + /// + public Gost_R3410_2012_256_KeyValue() : base(new Gost_R3410_2012_256_AsymmetricAlgorithm()) + { + } + + /// + /// Создает экземпляр класса с заданным ключом ГОСТ Р 34.10-2012/256 + /// + public Gost_R3410_2012_256_KeyValue(Gost_R3410_2012_256_AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_512_KeyValue.cs b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_512_KeyValue.cs new file mode 100644 index 0000000..244543e --- /dev/null +++ b/Hcs.ClientNet/GostCryptography/Xml/Gost_R3410_2012_512_KeyValue.cs @@ -0,0 +1,36 @@ +using GostCryptography.Gost_R3410; +using System.Security.Cryptography.Xml; + +namespace GostCryptography.Xml +{ + /// + /// Параметры открытого ключа цифровой подписи ГОСТ Р 34.10-2012/512 элемента + /// + public sealed class Gost_R3410_2012_512_KeyValue : GostKeyValue + { + /// + /// URI параметров ключа ГОСТ Р 34.10-2012/512 + /// + public const string KeyValueUrl = SignedXml.XmlDsigNamespaceUrl + " KeyValue/" + Gost_R3410_2012_512_KeyExchangeXmlSerializer.KeyValueTag; + + /// + /// Известные URIs параметров ключа ГОСТ Р 34.10-2012/512 + /// + public static readonly string[] KnownValueUrls = { KeyValueUrl }; + + + /// + /// Создает экземпляр класса с новым ключом ГОСТ Р 34.10-2012/512 + /// + public Gost_R3410_2012_512_KeyValue() : base(new Gost_R3410_2012_512_AsymmetricAlgorithm()) + { + } + + /// + /// Создает экземпляр класса с заданным ключом ГОСТ Р 34.10-2012/512 + /// + public Gost_R3410_2012_512_KeyValue(Gost_R3410_2012_512_AsymmetricAlgorithm publicKey) : base(publicKey) + { + } + } +} diff --git a/Hcs.ClientNet/GostXades/Abstractions/ICertificateMatcher.cs b/Hcs.ClientNet/GostXades/Abstractions/ICertificateMatcher.cs new file mode 100644 index 0000000..a71aa3c --- /dev/null +++ b/Hcs.ClientNet/GostXades/Abstractions/ICertificateMatcher.cs @@ -0,0 +1,18 @@ +using Microsoft.Xades; +using System.Security.Cryptography.X509Certificates; + +namespace GostXades.Abstractions +{ + /// + /// , XML + /// + public interface ICertificateMatcher + { + /// + /// , + /// + /// xml + /// + X509Certificate2 GetSignatureCertificate(XadesSignedXml signedXml); + } +} diff --git a/Hcs.ClientNet/GostXades/Abstractions/ICryptoProvider.cs b/Hcs.ClientNet/GostXades/Abstractions/ICryptoProvider.cs new file mode 100644 index 0000000..8e656fc --- /dev/null +++ b/Hcs.ClientNet/GostXades/Abstractions/ICryptoProvider.cs @@ -0,0 +1,58 @@ +using Microsoft.Xades; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; + +namespace GostXades.Abstractions +{ + public interface ICryptoProvider + { + /// + /// URI метода подписи + /// + string SignatureMethod { get; } + + /// + /// URI метода хеширования + /// + string DigestMethod { get; } + + /// + /// Получение реализации асимметричного алгоритма + /// + /// Сертификат, исользуемый для подписания + /// Пароль от контейнера закрытого ключа + /// + AsymmetricAlgorithm GetAsymmetricAlgorithm(X509Certificate2 certificate, string privateKeyPassword); + + /// + /// Получение Reference-элемента для XML-документа + /// + /// Идентификатор подписываемого узла XML-документа + /// Идентификатор подписи + /// + Reference GetReference(string signedElementId, string signatureId); + + /// + /// Получение форматтера, с помощью которого будет производиться подпись + /// + /// Сертификат, с помощью которого будет производиться подпись + /// + AsymmetricSignatureFormatter GetSignatureFormatter(X509Certificate2 certificate); + + /// + /// Получение реализации алгоритма хеширования по URI + /// + /// URI метода хеширования + /// + HashAlgorithm GetHashAlgorithm(string algorithm); + + /// + /// Получение объекта XadesObject + /// + /// Информация о XAdES-подписи + /// Идентификатор подписи + /// + XadesObject GetXadesObject(XadesInfo xadesInfo, string signatureId); + } +} diff --git a/Hcs.ClientNet/GostXades/Abstractions/IIssuerComparer.cs b/Hcs.ClientNet/GostXades/Abstractions/IIssuerComparer.cs new file mode 100644 index 0000000..82b8449 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Abstractions/IIssuerComparer.cs @@ -0,0 +1,16 @@ +namespace GostXades.Abstractions +{ + /// + /// + /// + public interface IIssuerComparer + { + /// + /// , (X509IssuerName) + /// + /// + /// + /// true, , false + bool AreSameIssuer(string first, string second); + } +} diff --git a/Hcs.ClientNet/GostXades/Abstractions/IXadesService.cs b/Hcs.ClientNet/GostXades/Abstractions/IXadesService.cs new file mode 100644 index 0000000..4c67dcd --- /dev/null +++ b/Hcs.ClientNet/GostXades/Abstractions/IXadesService.cs @@ -0,0 +1,23 @@ +namespace GostXades.Abstractions +{ + public interface IXadesService + { + /// + /// Валидация XAdES подписи. + /// Бросает исключение, если подпись не верна. + /// + /// + /// + void ValidateSignature(string xmlData, string elementId); + + /// + /// Подпись XML-документа с помощью XAdES подписи + /// + /// XML-документ, который необходимо подписать + /// Значение атрибута Id узла XML-документа, который необходимо подписать + /// Отпечаток сертификата, который необходимо использовать для подписи + /// Пароль от контейнера закрытого ключа используемого сертификата + /// Подписанный XML-документ + string Sign(string xmlData, string elementId, string certificateThumbprint, string certificatePassword); + } +} diff --git a/Hcs.ClientNet/GostXades/CertificateMatcher.cs b/Hcs.ClientNet/GostXades/CertificateMatcher.cs new file mode 100644 index 0000000..a11dd21 --- /dev/null +++ b/Hcs.ClientNet/GostXades/CertificateMatcher.cs @@ -0,0 +1,129 @@ +using GostXades.Abstractions; +using GostXades.Helpers; +using Microsoft.Xades; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; + +namespace GostXades +{ + public class CertificateMatcher : ICertificateMatcher + { + public IIssuerComparer IssuerComparer { get; set; } = new IssuerComparer(); + + public CertificateMatcher(ICryptoProvider cryptoProvider) + { + if (cryptoProvider == null) + { + throw new ArgumentNullException(nameof(cryptoProvider)); + } + _cryptoProvider = cryptoProvider; + } + + public X509Certificate2 GetSignatureCertificate(XadesSignedXml signedXml) + { + var candidates = GetCandidateCertificates(signedXml).ToArray(); + if (!candidates.Any()) + { + throw new InvalidOperationException("Не найдено ни одного сертификата, обозначенного в xades:SigningCertificate"); + } + return FindMatchedCertificate(signedXml, candidates); + } + + private IEnumerable GetCandidateCertificates(XadesSignedXml signedXml) + { + var certificates = ExtractCertificates(signedXml).ToArray(); + if (certificates.Length == 0) + { + throw new InvalidOperationException("Элемент KeyInfo.X509Data.X509Certificate не заполнен или отсутствует"); + } + var certInfosCollection = signedXml.SignedSignatureProperties.SigningCertificate.CertCollection; + if (certInfosCollection == null) + { + throw new InvalidOperationException("Элемент xades:SigningCertificate не заполнен или отсутствует"); + } + var certInfos = certInfosCollection.OfType().ToArray(); + foreach (var certificate in certificates) + { + // TODO: Проверить комментарий + var isCertificateMatch = true; //certInfos.Any(certInfo => IsCertificateMatchCertInfo(certificate, certInfo)); + if (isCertificateMatch) + { + yield return certificate; + } + } + } + + private IEnumerable ExtractCertificates(XadesSignedXml signedXml) + { + var keyInfo = signedXml.KeyInfo; + if (keyInfo == null || keyInfo.Count == 0) + { + throw new InvalidOperationException("Элемент KeyInfo не заполнен или отсутствует"); + } + if (keyInfo.Count > 1) + { + throw new InvalidOperationException("Найдено более одного элемента KeyInfo"); + } + var x509Data = keyInfo.OfType().FirstOrDefault(); + if (x509Data == null) + { + throw new InvalidOperationException("Элемент X509Data не заполнен или отсутствует"); + } + return x509Data.Certificates.OfType(); + } + + private readonly ICryptoProvider _cryptoProvider; + + #region Certificate match + + private bool IsCertificateMatchCertInfo(X509Certificate2 certificate, Cert certInfo) + { + var isSerialMatch = IsSerialMatch(certificate, certInfo); + var issuerNameMatch = IsNameMatch(certificate, certInfo); + var isCertHashMatch = IsCertHashMatch(certificate, certInfo); + return isSerialMatch && issuerNameMatch && isCertHashMatch; + } + + private bool IsSerialMatch(X509Certificate2 certificate, Cert certInfo) + { + var issuerSerial = certInfo.IssuerSerial.X509SerialNumber; + string certInfoSerialNumberHex; + try + { + certInfoSerialNumberHex = ConvertHelper.BigIntegerToHex(issuerSerial); + } + catch (FormatException) + { + certInfoSerialNumberHex = issuerSerial; + } + return certificate.SerialNumber == certInfoSerialNumberHex; + } + + private bool IsCertHashMatch(X509Certificate2 certificate, Cert certInfo) + { + var certDigest = certInfo.CertDigest; + var pkHash = _cryptoProvider.GetHashAlgorithm(certDigest.DigestMethod.Algorithm); + if (pkHash == null) + { + throw new XadesBesValidationException($"Алгоритм {certDigest.DigestMethod.Algorithm} не поддерживается"); + } + var hashValue = pkHash.ComputeHash(certificate.RawData); + return ArrayHelper.AreEquals(hashValue, certDigest.DigestValue); + } + + private bool IsNameMatch(X509Certificate2 certificate, Cert certInfo) + { + return IssuerComparer.AreSameIssuer(certificate.Issuer, certInfo.IssuerSerial.X509IssuerName); + } + + private X509Certificate2 FindMatchedCertificate(SignedXml signedXml, IEnumerable candidates) + { + return candidates.FirstOrDefault(candidate => signedXml.CheckSignature(candidate, true)); + } + + #endregion + } +} diff --git a/Hcs.ClientNet/GostXades/CryptoProviderTypeEnum.cs b/Hcs.ClientNet/GostXades/CryptoProviderTypeEnum.cs new file mode 100644 index 0000000..b256449 --- /dev/null +++ b/Hcs.ClientNet/GostXades/CryptoProviderTypeEnum.cs @@ -0,0 +1,13 @@ +namespace GostXades +{ + /// + /// Типы криптопровайдеров + /// + public enum CryptoProviderTypeEnum + { + CryptoPRO = GostCryptography.Base.ProviderType.CryptoPro, + CryptoPro_2012_512 = GostCryptography.Base.ProviderType.CryptoPro_2012_512, + CryptoPro_2012_1024 = GostCryptography.Base.ProviderType.CryptoPro_2012_1024, + VipNET = GostCryptography.Base.ProviderType.VipNet + } +} diff --git a/Hcs.ClientNet/GostXades/GostCryptoProvider.cs b/Hcs.ClientNet/GostXades/GostCryptoProvider.cs new file mode 100644 index 0000000..053e5f3 --- /dev/null +++ b/Hcs.ClientNet/GostXades/GostCryptoProvider.cs @@ -0,0 +1,130 @@ +using GostCryptography.Config; +using GostCryptography.Gost_R3410; +using GostCryptography.Gost_R3411; +using GostXades.Abstractions; +using GostXades.Helpers; +using Microsoft.Xades; +using Org.BouncyCastle.X509; +using System; +using System.Collections.Generic; +using System.Security; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; + +namespace GostXades +{ + public class GostCryptoProvider : ICryptoProvider + { + public GostCryptoProvider(CryptoProviderTypeEnum cryptoProviderType) + { + GostCryptoConfig.ProviderType = (GostCryptography.Base.ProviderType)cryptoProviderType; + } + + private Dictionary HashAlgorithmMap { get; set; } = new Dictionary + { + ["http://www.w3.org/2001/04/xmldsig-more#gostr3411"] = "GOST3411" + }; + + public HashAlgorithm GetHashAlgorithm(string algorithm) + { + string algorithmName; + var algorithmUrl = algorithm; + if (!HashAlgorithmMap.TryGetValue(algorithmUrl, out algorithmName)) + { + return null; + } + var pkHash = HashAlgorithm.Create(algorithmName); + return pkHash; + } + + private int _referenceIndex; + + public string SignatureMethod => Gost_R3410_2012_256_AsymmetricAlgorithm.SignatureAlgorithmValue; + public string DigestMethod => Gost_R3411_2012_256_HashAlgorithm.AlgorithmNameValue; + private HashAlgorithm GetHashAlgorithm() => new Gost_R3411_2012_256_HashAlgorithm(); + + public AsymmetricAlgorithm GetAsymmetricAlgorithm(X509Certificate2 certificate, string privateKeyPassword) + { + var provider = certificate.GetPrivateKeyAlgorithm(); + + if (!string.IsNullOrEmpty(privateKeyPassword)) + { + var secureString = new SecureString(); + foreach (var chr in privateKeyPassword) + secureString.AppendChar(chr); + + if (provider is Gost_R3410_2012_256_AsymmetricAlgorithm alg1) + alg1.SetContainerPassword(secureString); + else if (provider is Gost_R3410_2012_512_AsymmetricAlgorithm alg2) + alg2.SetContainerPassword(secureString); + else throw new NotSupportedException( + $"Неизвестный тип алгоритма {provider.SignatureAlgorithm} для применения пароля"); + } + + return provider; + } + + public Reference GetReference(string signedElementId, string signatureId) + { + var reference = new Reference + { + Uri = $"#{signedElementId}", + DigestMethod = DigestMethod, + Id = $"{signatureId}-ref{_referenceIndex}" + }; + reference.AddTransform(new XmlDsigEnvelopedSignatureTransform()); + reference.AddTransform(new XmlDsigExcC14NTransform()); + + _referenceIndex++; + + return reference; + } + + public AsymmetricSignatureFormatter GetSignatureFormatter(X509Certificate2 certificate) + { + var alg = certificate.GetPrivateKeyAlgorithm(); + var signatureDescription = + (SignatureDescription)CryptoConfig.CreateFromName(alg.SignatureAlgorithm); + return signatureDescription.CreateFormatter(alg); + } + + public XadesObject GetXadesObject(XadesInfo xadesInfo, string signatureId) + { + var xadesObject = new XadesObject + { + QualifyingProperties = new QualifyingProperties + { + Target = $"#{signatureId}", + SignedProperties = new SignedProperties { Id = $"{signatureId}-signedprops" } + } + }; + + var hashAlgorithm = GetHashAlgorithm(); + var hashValue = hashAlgorithm.ComputeHash(xadesInfo.RawCertData); + + var x509CertificateParser = new X509CertificateParser(); + var bouncyCert = x509CertificateParser.ReadCertificate(xadesInfo.RawCertData); + + var cert = new Cert + { + IssuerSerial = new IssuerSerial + { + X509IssuerName = bouncyCert.IssuerDN.ToX509IssuerName(), + X509SerialNumber = bouncyCert.SerialNumber.ToString() + }, + CertDigest = + { + DigestValue = hashValue, + DigestMethod = new DigestMethod { Algorithm = DigestMethod } + } + }; + + var signedSignatureProperties = xadesObject.QualifyingProperties.SignedProperties.SignedSignatureProperties; + signedSignatureProperties.SigningCertificate.CertCollection.Add(cert); + signedSignatureProperties.SigningTime = xadesInfo.SigningDateTimeUtc.ToDateTimeOffset(xadesInfo.TimeZoneOffsetMinutes); + + return xadesObject; + } + } +} diff --git a/Hcs.ClientNet/GostXades/GostXadesBesService.cs b/Hcs.ClientNet/GostXades/GostXadesBesService.cs new file mode 100644 index 0000000..00c8fa3 --- /dev/null +++ b/Hcs.ClientNet/GostXades/GostXadesBesService.cs @@ -0,0 +1,72 @@ +using GostXades.Abstractions; +using GostXades.Helpers; +using System; + +namespace GostXades +{ + public class GostXadesBesService : IXadesService + { + CryptoProviderTypeEnum cryptoProviderType; + + public GostXadesBesService(CryptoProviderTypeEnum cryptoProviderType) + { + this.cryptoProviderType = cryptoProviderType; + } + + public void ValidateSignature(string xmlData, string elementId) + { + if (string.IsNullOrEmpty(xmlData)) + { + throw new ArgumentNullException(nameof(xmlData)); + } + if (string.IsNullOrWhiteSpace(elementId)) + { + throw new ArgumentNullException(nameof(elementId)); + } + + var document = XmlDocumentHelper.Create(xmlData); + var signedXml = new XadesBesSignedXml(document, elementId) + { + CertificateMatcher = new CertificateMatcher(new GostCryptoProvider(this.cryptoProviderType)) + }; + signedXml.Validate(); + } + + public string Sign(string xmlData, string elementId, string certificateThumbprint, string certificatePassword) + { + if (string.IsNullOrEmpty(xmlData)) + { + throw new ArgumentNullException(nameof(xmlData)); + } + if (string.IsNullOrEmpty(elementId)) + { + throw new ArgumentNullException(nameof(elementId)); + } + if (string.IsNullOrEmpty(certificateThumbprint)) + { + throw new ArgumentNullException(nameof(certificateThumbprint)); + } + + var originalDoc = XmlDocumentHelper.Create(xmlData); + var certificate = CertificateHelper.GetCertificateByThumbprint(certificateThumbprint); + + var provider = new GostCryptoProvider(this.cryptoProviderType); + var xadesSignedXml = new XadesBesSignedXml(originalDoc) + { + SignedElementId = elementId, + CryptoProvider = provider + }; + + var element = xadesSignedXml.FindElement(elementId, originalDoc); + if (element == null) + { + throw new InvalidOperationException($" c Id {elementId}"); + } + + xadesSignedXml.ComputeSignature(certificate, certificatePassword); + xadesSignedXml.InjectSignatureTo(originalDoc); + + return originalDoc.OuterXml; + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/ArrayHelper.cs b/Hcs.ClientNet/GostXades/Helpers/ArrayHelper.cs new file mode 100644 index 0000000..712abbc --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/ArrayHelper.cs @@ -0,0 +1,38 @@ +using System; + +namespace GostXades.Helpers +{ + public static class ArrayHelper + { + public static bool AreEquals(byte[] first, byte[] second) + { + return AreEquals(first, second, (x, y) => x.Equals(y)); + } + + public static bool AreEquals(string[] first, string[] second) + { + return AreEquals(first, second, (x, y) => string.Equals(x, y, StringComparison.InvariantCultureIgnoreCase)); + } + + private static bool AreEquals(T[] first, T[] second, Func comparator) + { + if (first == second) + { + return true; + } + if (first.Length != second.Length) + { + return false; + } + for (var i = 0; i < first.Length; i++) + { + var equals = comparator.Invoke(first[i], second[i]); + if (!equals) + { + return false; + } + } + return true; + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/CertificateHelper.cs b/Hcs.ClientNet/GostXades/Helpers/CertificateHelper.cs new file mode 100644 index 0000000..09f6ba1 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/CertificateHelper.cs @@ -0,0 +1,67 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography.X509Certificates; + +namespace GostXades.Helpers +{ + public static class CertificateHelper + { + /// + /// Получение сертификата из личного локального хранилища по отпечатку + /// + /// Отпечаток требуемого сертификата + /// Сертификат с нужным отпечатком + public static X509Certificate2 GetCertificateByThumbprint(string thumbprint) + { + var certificateStore = new X509Store(StoreName.My, StoreLocation.CurrentUser); + + try + { + certificateStore.Open(OpenFlags.ReadOnly); + var certificateCollection = certificateStore.Certificates + .Cast() + .Where(i => string.Equals(i.Thumbprint, thumbprint, StringComparison.InvariantCultureIgnoreCase)) + .ToArray(); + + if (!certificateCollection.Any()) + { + throw new ArgumentException("Некорректный отпечаток сертификата"); + } + + var activeCertificates = certificateCollection.Where(i => DateTime.Parse(i.GetEffectiveDateString()) <= DateTime.Now && + DateTime.Now <= DateTime.Parse(i.GetExpirationDateString())) + .ToArray(); + if (activeCertificates.Any()) + { + return activeCertificates[0]; + } + + throw new ArgumentException($"Сертификат с указанным отпечатком {thumbprint} недействителен"); + } + finally + { + certificateStore.Close(); + } + } + + /// + /// Получение сертификатов из локального хранилища текущего пользователя + /// + /// Сертификаты из локального хранилища текущего пользователя + public static IEnumerable GetCertificates() + { + var certificateStore = new X509Store(StoreName.My, StoreLocation.CurrentUser); + + try + { + certificateStore.Open(OpenFlags.ReadOnly); + return certificateStore.Certificates.OfType(); + } + finally + { + certificateStore.Close(); + } + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/CollectionHelper.cs b/Hcs.ClientNet/GostXades/Helpers/CollectionHelper.cs new file mode 100644 index 0000000..f81db27 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/CollectionHelper.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Linq; + +namespace GostXades.Helpers +{ + public static class CollectionHelper + { + public static bool IsNotEmpty(this IEnumerable enumerable) + { + return enumerable != null && enumerable.OfType().Any(); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/ConvertHelper.cs b/Hcs.ClientNet/GostXades/Helpers/ConvertHelper.cs new file mode 100644 index 0000000..8b44bb3 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/ConvertHelper.cs @@ -0,0 +1,12 @@ +using System.Numerics; + +namespace GostXades.Helpers +{ + public static class ConvertHelper + { + public static string BigIntegerToHex(string str) + { + return BigInteger.Parse(str).ToString("X"); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/DateTimeHelper.cs b/Hcs.ClientNet/GostXades/Helpers/DateTimeHelper.cs new file mode 100644 index 0000000..51af66d --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/DateTimeHelper.cs @@ -0,0 +1,14 @@ +using System; + +namespace GostXades.Helpers +{ + public static class DateTimeHelper + { + public static DateTimeOffset ToDateTimeOffset(this DateTime dateTime, int timeZoneOffsetMinutes = 0) + { + var shiftedDateTime = dateTime.AddMinutes(timeZoneOffsetMinutes); + var unspecifiedDateTime = DateTime.SpecifyKind(shiftedDateTime, DateTimeKind.Unspecified); + return new DateTimeOffset(unspecifiedDateTime, new TimeSpan(0, timeZoneOffsetMinutes, 0)); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/EnumerableHelper.cs b/Hcs.ClientNet/GostXades/Helpers/EnumerableHelper.cs new file mode 100644 index 0000000..5ca801e --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/EnumerableHelper.cs @@ -0,0 +1,15 @@ +using System.Collections.Generic; +using System.Linq; + +namespace GostXades.Helpers +{ + public static class EnumerableHelper + { + public static bool AreSequenceEquals(IEnumerable first, IEnumerable second) + { + var sortedFirst = first.OrderBy(x => x).ToArray(); + var sortedSecond = second.OrderBy(x => x).ToArray(); + return ArrayHelper.AreEquals(sortedFirst, sortedSecond); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/GostHashAlgorithmHelper.cs b/Hcs.ClientNet/GostXades/Helpers/GostHashAlgorithmHelper.cs new file mode 100644 index 0000000..aa6af99 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/GostHashAlgorithmHelper.cs @@ -0,0 +1,23 @@ +using GostCryptography.Config; +using System; + +namespace GostXades.Helpers +{ + public static class GostHashAlgorithmHelper + { + /// + /// Рассчитать хэш + /// + /// Тип криптопровайдера + /// + /// + public static string ComputeHash(CryptoProviderTypeEnum cryptoProviderType, byte[] bytes) + { + byte[] hashValue; + GostCryptoConfig.ProviderType = (GostCryptography.Base.ProviderType)cryptoProviderType; + var hashAlgorithm = new GostCryptography.Gost_R3411.Gost_R3411_2012_512_HashAlgorithm(); + hashValue = hashAlgorithm.ComputeHash(bytes); + return BitConverter.ToString(hashValue).Replace("-", ""); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/KeyInfoHelper.cs b/Hcs.ClientNet/GostXades/Helpers/KeyInfoHelper.cs new file mode 100644 index 0000000..d0957a3 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/KeyInfoHelper.cs @@ -0,0 +1,28 @@ +using System; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace GostXades.Helpers +{ + public static class KeyInfoHelper + { + public static KeyInfo Create(X509Certificate2 certificate) + { + var xmlDocument = new XmlDocument(); + + var x509DataElement = xmlDocument.CreateElement("ds", "X509Data", KeyInfoNamespace); + var x509CertificateElement = xmlDocument.CreateElement("ds", "X509Certificate", KeyInfoNamespace); + x509CertificateElement.InnerText = Convert.ToBase64String(certificate.GetRawCertData()); + + x509DataElement.AppendChild(x509CertificateElement); + + var keyInfo = new KeyInfo(); + keyInfo.AddClause(new KeyInfoNode(x509DataElement)); + + return keyInfo; + } + + private const string KeyInfoNamespace = "http://www.w3.org/2000/09/xmldsig#"; + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/X509NameHelper.cs b/Hcs.ClientNet/GostXades/Helpers/X509NameHelper.cs new file mode 100644 index 0000000..1c6081c --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/X509NameHelper.cs @@ -0,0 +1,74 @@ +using Org.BouncyCastle.Asn1.X509; +using System.Linq; +using System.Text; + +namespace GostXades.Helpers +{ + public static class X509NameHelper + { + /// + /// Исправить строку X509IssuerName для рукожопых пейсателей из Ланита + /// + /// Исходная строка из сертификата + /// Исправленная строка, чтобы ее понимал сервер ГИС ЖКХ + public static string ToX509IssuerName(this X509Name x509Name) + { + string x509IssuerName = x509Name.ToString(); + var pairs = x509IssuerName + .Replace("\\,", "^_^") + .Split(',') + .Select(part => part.Split('=')) + .Select(lrParts => new ReplacementPair + { + Key = lrParts[0], + Value = lrParts.Length == 2 ? lrParts[1] : string.Empty + }).ToList(); + + var nCount = pairs.Count; + var result = new StringBuilder(); + var i = 0; + foreach (var pair in pairs) + { + switch (pair.Key.ToLower()) + { + case "t": + case "title": + pair.Key = "2.5.4.12"; + break; + + case "g": + case "givenname": + pair.Key = "2.5.4.42"; + break; + case "e": + pair.Key = "1.2.840.113549.1.9.1"; + break; + case "sn": + case "surname": + pair.Key = "2.5.4.4"; + break; + + case "ou": + case "orgunit": + pair.Key = "2.5.4.11"; + break; + + case "unstructured-name": + case "unstructuredname": + pair.Key = "1.2.840.113549.1.9.2"; + break; + } + + result.Append($"{pair.Key}={pair.Value}{(i != (nCount - 1) ? ", " : string.Empty)}"); + i++; + } + return result.ToString().Replace("^_^", "\\,"); + } + } + + internal class ReplacementPair + { + public string Key { get; set; } + public string Value { get; set; } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/XadesSignedXmlHelper.cs b/Hcs.ClientNet/GostXades/Helpers/XadesSignedXmlHelper.cs new file mode 100644 index 0000000..c09e77e --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/XadesSignedXmlHelper.cs @@ -0,0 +1,16 @@ +using Microsoft.Xades; +using System.Xml; + +namespace GostXades.Helpers +{ + public static class XadesSignedXmlHelper + { + public static void InjectSignatureTo(this XadesSignedXml signedXml, XmlDocument originalDoc) + { + var signatureElement = signedXml.GetXml(); + var importSignatureElement = originalDoc.ImportNode(signatureElement, true); + var signedDataContainer = signedXml.GetIdElement(originalDoc, signedXml.SignedElementId); + signedDataContainer.InsertBefore(importSignatureElement, signedDataContainer.FirstChild); + } + } +} diff --git a/Hcs.ClientNet/GostXades/Helpers/XmlDocumentHelper.cs b/Hcs.ClientNet/GostXades/Helpers/XmlDocumentHelper.cs new file mode 100644 index 0000000..39803e2 --- /dev/null +++ b/Hcs.ClientNet/GostXades/Helpers/XmlDocumentHelper.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Xml; + +namespace GostXades.Helpers +{ + public static class XmlDocumentHelper + { + /// + /// XmlDocument + /// + public static XmlDocument Create(string xmlData) + { + var xmlDocument = new XmlDocument { PreserveWhitespace = true }; + try + { + xmlDocument.LoadXml(xmlData); + } + catch (XmlException xmlEx) + { + throw new InvalidOperationException($" xml : {xmlEx.Message}", xmlEx); + } + return xmlDocument; + } + + /// + /// XmlDocument + /// + public static XmlDocument Load(string pathName) + { + var xmlDocument = new XmlDocument { PreserveWhitespace = true }; + try + { + xmlDocument.Load(pathName); + } + catch (XmlException xmlEx) + { + throw new InvalidOperationException($" xml : {xmlEx.Message}", xmlEx); + } + return xmlDocument; + } + + /// + /// XmlDocument + /// + public static XmlNamespaceManager CreateNamespaceManager(this XmlDocument xml) + { + var manager = new XmlNamespaceManager(xml.NameTable); + foreach (var name in GetNamespaceDictionary(xml)) + { + manager.AddNamespace(name.Key, name.Value); + } + + return manager; + } + + private static IDictionary GetNamespaceDictionary(this XmlDocument xml) + { + var nameSpaceList = xml.SelectNodes(@"//namespace::*[not(. = ../../namespace::*)]").OfType(); + return nameSpaceList.Distinct(new LocalNameComparer()).ToDictionary(xmlNode => xmlNode.LocalName, xmlNode => xmlNode.Value); + } + + private class LocalNameComparer : IEqualityComparer + { + public bool Equals(XmlNode x, XmlNode y) + { + return x.LocalName == y.LocalName; + } + + public int GetHashCode(XmlNode obj) + { + return obj.LocalName.GetHashCode(); + } + } + } +} diff --git a/Hcs.ClientNet/GostXades/IssuerComparer.cs b/Hcs.ClientNet/GostXades/IssuerComparer.cs new file mode 100644 index 0000000..4c588f9 --- /dev/null +++ b/Hcs.ClientNet/GostXades/IssuerComparer.cs @@ -0,0 +1,59 @@ +using GostXades.Abstractions; +using GostXades.Helpers; +using Org.BouncyCastle.Asn1.X509; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; + +namespace GostXades +{ + public class IssuerComparer : IIssuerComparer + { + static IssuerComparer() + { + var regexps = new Dictionary + { + ["^(ОГРН|OGRN|OID.1.2.643.100.1)="] = "1.2.643.100.1=", + ["^(ОГРНИП|OGRNIP|OID.1.2.643.100.5)="] = "1.2.643.100.5=", + ["^(ИНН|INN|OID.1.2.643.3.131.1.1)="] = "1.2.643.3.131.1.1=", + ["^(E|Е|OID.1.2.840.113549.1.9.1)="] = "1.2.840.113549.1.9.1=", + ["^S="] = "ST=", + ["\\\""] = string.Empty, + [". "] = ".", + }; + RegexpToReplace = regexps.ToDictionary(x => new Regex(x.Key), x => x.Value); + } + + private static IEnumerable ParseIssuer(string issuer) + { + return Tokenize(issuer).Select(ReplaceOids); + } + + private static string ReplaceOids(string oidString) + { + foreach (var item in RegexpToReplace) + { + oidString = item.Key.Replace(oidString, item.Value); + } + return oidString; + } + + private static IEnumerable Tokenize(string issuer) + { + var tokenizer = new X509NameTokenizer(issuer); + while (tokenizer.HasMoreTokens()) + { + yield return tokenizer.NextToken(); + } + } + + private static readonly Dictionary RegexpToReplace; + + public bool AreSameIssuer(string first, string second) + { + var firstTokens = ParseIssuer(first); + var secondTokens = ParseIssuer(second); + return EnumerableHelper.AreSequenceEquals(firstTokens, secondTokens); + } + } +} diff --git a/Hcs.ClientNet/GostXades/XadesBesSignedXml.cs b/Hcs.ClientNet/GostXades/XadesBesSignedXml.cs new file mode 100644 index 0000000..9f93bcb --- /dev/null +++ b/Hcs.ClientNet/GostXades/XadesBesSignedXml.cs @@ -0,0 +1,174 @@ +using GostXades.Abstractions; +using GostXades.Helpers; +using Microsoft.Xades; +using System; +using System.Linq; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Xml; + +namespace GostXades +{ + public class XadesBesSignedXml : XadesSignedXml + { + public ICertificateMatcher CertificateMatcher { get; set; } + public ICryptoProvider CryptoProvider { get; set; } + + /// Документ, который необходимо подписать с помощью XAdES-BES + public XadesBesSignedXml(XmlDocument document) : base(document) { } + + /// Документ, подписанный с помощью XAdES-BES + /// Id подписанного элемента + public XadesBesSignedXml(XmlDocument document, string elementId) : base(document, elementId) + { + var elementToVerify = FindElement(elementId, document); + var signatureNodeList = FindSignatureNodes(elementToVerify); + if (!signatureNodeList.Any()) + { + throw new InvalidOperationException($"Элемент с Id {elementId} не содержит подписи"); + } + if (signatureNodeList.Length > 1) + { + throw new InvalidOperationException($"Элемент с {elementId} подписан более одного раза"); + } + var signatureNode = (XmlElement)signatureNodeList[0]; + var standart = GetSignatureStandart(signatureNode); + if (standart != KnownSignatureStandard.Xades) + { + throw new InvalidOperationException($"Элемент с Id {elementId} подписан не по стандарту XADES-BES"); + } + LoadXml(signatureNode); + } + + /// + /// Валидация XAdES-BES подписи + /// + public void Validate() + { + X509Certificate2 matchedCert; + try + { + matchedCert = CertificateMatcher.GetSignatureCertificate(this); + } + catch (InvalidOperationException ex) + { + throw new XadesBesValidationException(ex.Message, ex); + } + if (matchedCert == null) + { + throw new XadesBesValidationException("XML подпись неверна"); + } + ValidateCertificate(matchedCert); + ValidateAdditionalProperties(); + } + + /// + /// Подписывает XML-документ c помощью XAdES-BES + /// + /// Сертификат, с помощью которого производится подпись + /// Пароль от контейнера закрытого ключа используемого сертификата + public void ComputeSignature(X509Certificate2 certificate, string privateKeyPassword) + { + var signatureId = $"xmldsig-{Guid.NewGuid().ToString().ToLower()}"; + + SigningKey = CryptoProvider.GetAsymmetricAlgorithm(certificate, privateKeyPassword); + + Signature.Id = signatureId; + SignatureValueId = $"{signatureId}-sigvalue"; + + var reference = CryptoProvider.GetReference(SignedElementId, signatureId); + AddReference(reference); + + SignedInfo.CanonicalizationMethod = XmlDsigCanonicalizationUrl; + SignedInfo.SignatureMethod = CryptoProvider.SignatureMethod; + + var xadesInfo = new XadesInfo(certificate); + KeyInfo = KeyInfoHelper.Create(certificate); + + var xadesObject = CryptoProvider.GetXadesObject(xadesInfo, signatureId); + AddXadesObject(xadesObject); + + ComputeSignature(); + + HashAlgorithm hashAlgorithm; + GetSignedInfoHash(out hashAlgorithm); + + var formatter = CryptoProvider.GetSignatureFormatter(certificate); + var signedHash = formatter.CreateSignature(hashAlgorithm.Hash); + Signature.SignatureValue = signedHash; + } + + public XmlElement FindElement(string elementId, XmlDocument xmlDocument) + { + var elementToVerify = GetIdElement(xmlDocument, elementId); + if (elementToVerify == null) + { + throw new InvalidOperationException($"Элемент с Id {elementId} не найден"); + } + return elementToVerify; + } + + private KnownSignatureStandard GetSignatureStandart(XmlElement signatureElement) + { + return GetXadesObjectElement(signatureElement) == null ? KnownSignatureStandard.XmlDsig : KnownSignatureStandard.Xades; + } + + private static XmlNode[] FindSignatureNodes(XmlElement elementToVerify) + { + var items = elementToVerify.ChildNodes + .OfType() + .Where(x => string.Equals(x.LocalName, SignatureTagName, StringComparison.InvariantCulture) + && string.Equals(x.NamespaceURI, XmlDsigNamespaceUrl, StringComparison.InvariantCultureIgnoreCase)) + .ToArray(); + return items; + } + + private void ValidateAdditionalProperties() + { + var signedSignatureProperties = SignedSignatureProperties; + var signedDataObjectProperties = SignedDataObjectProperties; + + // XAdES 1.4.2 clause G.2.2.6 Checking SignaturePolicyIdentifier + ThrowIfTrue(signedSignatureProperties?.SignaturePolicyIdentifier != null, "SignaturePolicyIdentifier"); + + // XAdES 1.4.2 clause G.2.2.8 Checking DataObjectFormat + ThrowIfTrue(signedDataObjectProperties?.DataObjectFormatCollection.IsNotEmpty(), "DataObjectFormat"); + + // XAdES 1.4.2 clause G.2.2.9 Checking CommitmentTypeIndication + ThrowIfTrue(signedDataObjectProperties?.CommitmentTypeIndicationCollection.IsNotEmpty(), "CommitmentTypeIndication"); + + // XAdES 1.4.2 clause G.2.2.11 Checking SignerRole + var signerRole = signedSignatureProperties?.SignerRole; + ThrowIfTrue(signerRole?.ClaimedRoles != null || signerRole?.CertifiedRoles != null, "SignerRole"); + + // XAdES 1.4.2 clause G.2.2.16.1.1 Checking AllDataObjectsTimeStamp + ThrowIfTrue(signedDataObjectProperties?.AllDataObjectsTimeStampCollection.IsNotEmpty(), "AllDataObjectsTimeStamp"); + + // XAdES 1.4.2 clause G.2.2.16.1.2 Checking IndividualDataObjectsTimeStamp + ThrowIfTrue(signedDataObjectProperties?.IndividualDataObjectsTimeStampCollection.IsNotEmpty(), "IndividualDataObjectsTimeStamp"); + } + + private static void ValidateCertificate(X509Certificate2 certificate) + { + if (DateTime.Now > certificate.NotAfter || DateTime.Now < certificate.NotBefore) + { + throw new XadesBesValidationException("Срок действия сертификата истек или еще не наступил"); + } + var isCertValid = certificate.Verify(); + if (!isCertValid) + { + throw new XadesBesValidationException("Неверный сертификат"); + } + } + + private static void ThrowIfTrue(bool? condition, string tagName) + { + if (condition == true) + { + throw new XadesBesValidationException($"Свойство xades:{tagName} не поддерживается"); + } + } + + private const string SignatureTagName = "Signature"; + } +} diff --git a/Hcs.ClientNet/GostXades/XadesBesValidationException.cs b/Hcs.ClientNet/GostXades/XadesBesValidationException.cs new file mode 100644 index 0000000..7a89a42 --- /dev/null +++ b/Hcs.ClientNet/GostXades/XadesBesValidationException.cs @@ -0,0 +1,25 @@ +using System; +using System.Runtime.Serialization; + +namespace GostXades +{ + [Serializable] + public class XadesBesValidationException : Exception + { + public XadesBesValidationException() + { + } + + public XadesBesValidationException(string message) : base(message) + { + } + + public XadesBesValidationException(string message, Exception inner) : base(message, inner) + { + } + + protected XadesBesValidationException(SerializationInfo info, StreamingContext context) : base(info, context) + { + } + } +} diff --git a/Hcs.ClientNet/GostXades/XadesInfo.cs b/Hcs.ClientNet/GostXades/XadesInfo.cs new file mode 100644 index 0000000..899374c --- /dev/null +++ b/Hcs.ClientNet/GostXades/XadesInfo.cs @@ -0,0 +1,21 @@ +using System; +using System.Security.Cryptography.X509Certificates; + +namespace GostXades +{ + public class XadesInfo + { + public byte[] RawCertData { get; } + public DateTime SigningDateTimeUtc { get; } + public int TimeZoneOffsetMinutes { get; } + + public XadesInfo(X509Certificate certificate) + { + var offset = TimeZoneInfo.Local.GetUtcOffset(DateTime.Now); + + RawCertData = certificate.GetRawCertData(); + SigningDateTimeUtc = DateTime.UtcNow; + TimeZoneOffsetMinutes = Convert.ToInt32(offset.TotalMinutes); + } + } +} diff --git a/Hcs.ClientNet/Hcs.ClientNet.csproj b/Hcs.ClientNet/Hcs.ClientNet.csproj new file mode 100644 index 0000000..63ed057 --- /dev/null +++ b/Hcs.ClientNet/Hcs.ClientNet.csproj @@ -0,0 +1,139 @@ + + + + net8.0 + enable + enable + True + + + + + + + + + + + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + Designer + + + + + + + + \ No newline at end of file diff --git a/Hcs.ClientNet/HcsWsdlSources/how-to-generate-cs-from-wsdl.txt b/Hcs.ClientNet/HcsWsdlSources/how-to-generate-cs-from-wsdl.txt new file mode 100644 index 0000000..29f7eb4 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/how-to-generate-cs-from-wsdl.txt @@ -0,0 +1,23 @@ +# Искать документ типа: +# Регламент и форматы информационного взаимодействия внешних информационных систем с ГИС ЖКХ (текущие форматы v.13.2.3.3) +https://dom.gosuslugi.ru/#!/regulations?userCtgrCode=1 + +Чтобы сгенирировать .cs определения классов SOAP в проекте: +Project\Connected Services\Add service reference... + +В поле "Адрес" укажите *полный путь* к файлу, например: + D:\NetFX\Hcs.ClientNetApi\HcsWsdlSources\hcs-wsdl-v.14.5.0.1\debt-requests\hcs-debt-requests-service-async.wsdl + D:\NetFX\Hcs.ClientNetApi\HcsWsdlSources\hcs-wsdl-v.14.5.0.1\house-management\hcs-house-management-service-async.wsdl + D:\NetFX\Hcs.ClientNetApi\HcsWsdlSources\hcs-wsdl-v.14.5.0.1\device-metering\hcs-device-metering-service-async.wsdl + D:\NetFX\Hcs.ClientNetApi\HcsWsdlSources\hcs-wsdl-v.14.5.0.1\organizations-registry-common\hcs-organizations-registry-common-service-async.wsdl + +Нажмите "Перейти" или "Go" +Если визникают ошибки разбора файла смотрите Error Details и в файле пути к подчиненым файлам xsd. + +В поле "Пространство имен" укажите, например: + Service.Async.DebtRequests.v14_5_0_1 + +Нажмите "OK" + +Классы будут созданы в пространстве имен полученном из комбинации: +ПространствоИменПроектаПоУмолчанию.УказанноеПространствоИмен diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-service-async.wsdl new file mode 100644 index 0000000..b94b274 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-service-async.wsdl @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Экспорт обращений и ответов на обращения + + + + + + Импорт ответов на обращения + + + + + + + + + + + + + + + + + + + + + + + Экспорт обращений + + + + + + + + + + + + + + + Импорт ответов на обращения + + + + + + + + + + + + + + + + Сервис управления обращениями + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-types.xsd new file mode 100644 index 0000000..fdbb00e --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/appeals/hcs-appeals-types.xsd @@ -0,0 +1,1122 @@ + + + + + + + + + + + + + + + Запрос на экспорт обращений. Доступны версии 12.2.0.11, 13.1.10.1, 13.2.1.0, 13.2.5.0, 13.3.2.0, 14.4.0.1, 14.8.0.1 + + + + + + + + + + Идентификатор обращения в системе ГИС ЖКХ + + + + + + По бизнес-атрибутам обращения + + + + Номер обращения + + + + + + Дата создания обращения - начало диапазона + + + + + Дата создания обращения - конец диапазона + + + + + Тема обращения (НСИ 220) + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Статус обращения + + + + + + Не отправлено (элемент не используется в Системе - обращения, имеющие статус "Не отправлено", не экспортируются) + + + + + Отправлено + + + + + В работе + + + + + Исполнено + + + + + Отозвано + + + + + + + + + + По бизнес-атрибутам ответа на обращение + + + + Идентификатор ответа + + + + + + Дата создания ответа на обращения - начало диапазона + + + + + Дата создания ответа на обращения - конец диапазона + + + + + Дата отправки ответа на обращения - начало диапазона + + + + + Дата отправки ответа на обращения - конец диапазона + + + + + + + + Признак "Включать в экспорт обращения, сформированные ГИС ЖКХ" (для запросов по бизнес-атрибутам обращения или ответа) + + + + + + + + + + + Результат экспорта обращений. Доступны версии 12.2.0.11, 13.2.5.0, 13.3.2.0 + + + + + + + + Обращение + + + + + + + + + + + + Тип результата экспорта обращений + + + + + Идентификатор обращения в системе ГИС ЖКХ + + + + + Идентификатор родительского обращения + + + + + Заявитель обращения + + + + + + + + + + Номер обращения + + + + + Дата создания обращения + + + + + + Тема обращения (НСИ 220) + + + + + Другая тема обращения + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер помещения (из адреса обращения) + + + + + ОКТМО + + + + + Текст обращения + + + + + Прикрепленные файлы + + + + + Идентификатор исполнителя по обращению + + + + + История изменений по обращению + + + + + + Организация, выполнившая действие по обращению + + + + + Дата изменения (выполнения действия) + + + + + + Сведения об ответе на обращение + + + + + + + + Ответ отправлен + + + + + Прикрепленные файлы с открепленной (detached) подписью + + + + + + + + + + Обращение переадресовано + + + + + + Адресат обращения + + + + + + + + + + Комментарий + + + + + Прикрепленные файлы + + + + + Идентификатор исполнителя по обращению + + + + + + + + Продлен срок рассмотрения обращения + + + + + + + + + + Ответ на обращение не требуется + + + + + + Причина, по которой ответ на обращение не требуется + + + + + + + + Оценка исполнения обращения + + + + + + Необходимая информация получена + + + + + + + Необходимая информация получена частично + + + + + Ответом не удовлетворен + + + + + + Отзыв + + + + + + + + + + + + + Статус обращения +Send -Отправлено /Получено +Executed - Исполнено Withdrawn - Отозвано + + + + + + Перенаправлено в другую организацию + + + + + Перенаправлено в организацию, не зарегистрированную в ГИС ЖКХ + + + + + + Продлен срок рассмотрения + + + + + Ответ на обращение не требуется + + + + + Обращение отозвано заявителем + + + + + + Комментарий заявителя + + + + + + + + Признак поступления обращения из мобильного приложения "Госуслуги Дом" + + + + + Дата окончания срока исполнения обращения. Рассчитывается ГИС ЖКХ на основании требований нормативно-правовых актов (НПА) + + + + + Требования нормативно-правовых актов (НПА), на основании которых рассчитана дата окончания срока исполнения обращения ExecutionEndDate (согласно справочнику «Темы обращений») + + + + + Планируемая дата исполнения обращения + + + + + Признак коллективного обращения + + + + + Присоединившиеся соседи к Коллективному обращению + + + + + + + + + + + + + Импорт ответов на обращения. Доступны версии 12.2.0.13, 13.2.1.0 + + + + + + + + Действия с ответами на обращения + + + + + + + + + Идентификатор обращения в системе ГИС ЖКХ + + + + + Номер обращения + + + + + + + Ответ на обращение + + + + + + + Идентификатор ответа. Заполняется при изменении ранее созданного ответа + + + + + Идентификатор исполнителя по обращению + + + + + + + Создание / изменение ответа + + + + + + Текст ответа + + + + + Прикрепленные файлы + + + + + Прикрепленные файлы с открепленной (detached) подписью + + + + + + + + Отправка ответа + + + + + + Удаление ответа + + + + + + + + + + + + Действия с обращениями + + + + + + + + Идентификатор обращения в системе ГИС ЖКХ + + + + + Номер обращения + + + + + + + Назначить/ изменить исполнителя по обращению + + + + + + Идентификатор исполнителя по обращению + + + + + Плановая дата исполнения +Заполняется при первичном назначении исполнителя + + + + + + + + Проставить для обращения статус "Исполнено" + + + + + + Идентификатор исполнителя по обращению + + + + + + + + Переадресация обращения другой организации + + + + + + + + + + Продление срока рассмотрения обращения + + + + + + + + + + Ответ на обращение не требуется + + + + + + Причина, по которой ответ на обращение не требуется + + + + + Идентификатор исполнителя по обращению + + + + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора обращения в рамках AppealAnswer + + + + + + + Проверка уникальности идентификатора обращения в рамках AppealAction + + + + + + + Проверка уникальности номера обращения в рамках AppealAnswer + + + + + + + Проверка уникальности номера обращения в рамках AppealAnswer + + + + + + + Проверка уникальности номера обращения в рамках AppealAction + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + Результат импорта + + + + + Экспортируемое обращение + + + + + + + + + + + + + Ответ на обращение + + + + + Идентификатор ответа. Заполняется при изменении ранее созданного ответа + + + + + Текст ответа + + + + + Прикрепленные файлы + + + + + Идентификатор исполнителя по обращению + + + + + + + Информация об ответе + + + + + Идентификатор ответа + + + + + Номер ответа на обращение + + + + + Дата отправки ответа на обращение + + + + + Лицо - исполнитель обращения + + + + + + Идентификатор исполнителя + + + + + + + + Текст ответа на обращение + + + + + Прикрепленные файлы + + + + + + + Обращение + + + + + Заявитель + + + + + + + Физическое лицо + + + + + + + + + + Ссылка на реестр организаций + + + + + + Почтовый адрес + + + + + Номер помещения (из адреса заявителя) + + + + + Электронная почта в ЛК + + + + + Электронная почта заявителя обращения + + + + + Номер телефона + + + + + + + + + Обращение сформировано ГИС ЖКХ + + + + + + + Лицо-исполнитель обращения + + + + + Фамилия + + + + + Имя + + + + + Отчество + + + + + Должность + + + + + + + Информация об исполнителе обращения + + + + + Организация - исполнитель обращения + + + + + + + Физическое лицо - заявитель обращения + + + + + Фамилия + + + + + Имя + + + + + Отчество + + + + + + + Переадресация обращения + + + + + Адресат обращения + + + + + + + + + + Комментарий + + + + + Прикрепленные файлы + + + + + Идентификатор исполнителя по обращению + + + + + + + Продление срока обращения + + + + + Дата исполнения (продления) + + + + + Комментарий + + + + + Прикрепленные файлы + + + + + Идентификатор исполнителя по обращению + + + + + + + + Скалярный тип. Строка не более 100 символов. + + + + + + + + Скалярный тип. Строка не более 255 символов. + + + + + + + + + Скалярный тип. Строка не более 256 символов. + + + + + + + + + Скалярный тип. Строка не более 1000 символов. + + + + + + + + Скалярный тип. Строка не более 10 000 символов. + + + + + + + + Номер ответа на обращение + + + + + + + + + Номер обращения + + + + + + + + + Статус обращения. Send - Отправлено/Получено, Executed - Исполнено, Withdrawn - Отозвано, InWork - В работе + + + + + + + + + + + Номер помещения (из адреса обращения) + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-service-async.wsdl new file mode 100644 index 0000000..c888b62 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-service-async.wsdl @@ -0,0 +1,340 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт сведений о платежных документах + + + + + + Экспорт сведений о платежных документах + + + + + + Экспорт документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования + + + + + + Импорт запросов на проведение квитирования + + + + + + Импорт страховых продуктов + + + + + + Экспорт страховых продуктов + + + + + + Импорт информации о состоянии расчетов от имени РСО + + + + + + Импорт информации о состоянии расчетов от имени организации - исполнителя коммунальных услуг (УО, ТСЖ и тд) + + + + + + Экспорт информации о расчетах по ДРСО + + + + + + Постраничный экспорт документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования + + + + + + Получить список обработанных сообщений + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-types.xsd new file mode 100644 index 0000000..c0e8980 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/bills/hcs-bills-types.xsd @@ -0,0 +1,7328 @@ + + + + + + + + + + + + + Запрос на импорт платежных документов + + + + + + + + + True = Передаваемые данные платежных документов, следует считать верными, даже если они отличаются от автоматически рассчитанных Системой значений. + +В том случае, если параметр не заполнен, то ГИС ЖХК будет проводить автоматическую проверку рассчитываемых сумм по ПД. (например: +- проверка на то что сумма, указанная в TotalPayableByChargeInfo равна сумме всех вложений в блоках ChargeInfo, Insurance, CapitalRepairCharge (или CapitalRepairYearCharge) по полю TotalPayable; +- проверка AccountingPeriodTotal = сумма по всем (Consumption/ tns:Volume * Rate). +Проверка осуществляется только для заполненных полей (например, если TotalPayableByPD не заполнено, то ГИС ЖКХ автоматически рассчитает итоговую сумму по ПД, и проверка данной суммы не будет проводиться). + + + + + Месяц расчетного периода платежного документа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Год расчетного периода платежного документа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Сведения о платежных реквизитах получателя платежа - бизнес-ключ поиска размещенных платежных реквизитов в ГИС ЖКХ. + + + + + + + + + + + + + + Размещаемый платежный документ + + + + + + + + + + + + Ссылка на платежные реквизиты. Заполняется, если в ПД только один платежный реквизит + + + + + Детализация информации о начислениях по платежному реквизиту + + + + + + Сумма к оплате за расчетный период, руб. (в рамках платежного реквизита) + + + + + + + + + + + Номер лицевого счета (иной идентификатор плательщика). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken) + + + + + + + + + + + Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. (в рамках платежного реквизита) + + + + + + + + + + + + + + + Заполняется, если в ПД несколько платежных реквизитов для отражения детальной информации о начислениях по каждому из них + + + + + + Ссылка на платежные реквизиты + + + + + Сумма к оплате за расчетный период, руб. (по всем услугам, где указан платежный реквизит) + + + + + + + + + + + Номер лицевого счета (иной идентификатор плательщика). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken) + + + + + + + + + + + Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. (в рамках платежного реквизита) + + + + + + + + + + + + + + + + + + + + Сведения об исполнителе услуг платежного документа. +Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + + Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. + + + + + + + + + Отзываемые платежные документы + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт платежных документов. + +Доступны версии: 11.2.0.10, 12.2.0.1, 13.1.0.1 + + + + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + + + + + + + + + Тип данных для ответа на запрос экспорта платежных документов + + + + + + + + + + + + Сведения о платежных реквизитах получателя платежа + + + + + + + + Сумма к оплате за расчетный период,руб. (в рамках платежного реквизита) + + + + + + + + + + + Идентификатор платежных реквизитов в платежном документе + + + + + Номер лицевого счета (иной идентификатор плательщика). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). + + + + + + + + + + + Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. (в рамках платежного реквизита) + + + + + + + + + + + + + + + + + + + + + + + + Запрос перечня извещений о принятии к исполнению распоряжений (СД_ИОПЛАТА_ИЗВЭКС_ЗАП) + + + + + + + + По реквизитам начислений + + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + + + + + + По реквизитам извещений + + + + + + + + Кол-во дней, за которую формируется выборка + + + + + + + + + + + + Дата нижней границы выборки + + + + + + + + + + + + + + + Запрос перечня извещений о принятии к исполнению распоряжений с постраничной выгрузкой (СД_ИОПЛАТА_ИЗВЭКС_ЗАП) + + + + + + + + + По реквизитам начислений + + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + + + + + + По реквизитам извещений + + + + + + + + Кол-во дней, за которую формируется выборка + + + + + + + + + + + + Дата нижней границы выборки + + + + + + + + + + Идентификатор извещения о принятии к исполнению распоряжения в ГИС ЖКХ. +Для экспорта следующей страницы с результатами поиска передаётся значение из результатов экспорта текущей страницы. +При первом обращении к сервису не заполняется. + + + + + Размер страницы. +Устанавливает максимальное количество элементов, возвращаемых в результате экспорта (по умолчанию - 1000). + + + + + + + + + + + + + + + + + Тип данных для ответа на запрос экспорта извещений о принятии к исполнению распоряжений (квитанций об оплате) с результатами квитирования + + + + + + + + + + + Дата создания документа в системе + + + + + Список результатов квитирования + + + + + + Результат квитирования по услуге + + + + + + + + Уникальный идентификатор распоряжения для нужд квитирования, включающий более мягкие огранчиения UI/Excel до 11.8.0 (тип) + + + + + + + + + + + + + Сумма квитирования (в копейках) + + + + + + Идентификатор организации, принявшей платеж + + + + + + + + + + + + + Передать запросы на проведение квитирования + + + + + + + + + + + + + + + + + + + Отмена квитирования + + + + + + + + + + Уникальный номер платежа (идентификатор операции) + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт информации о состоянии расчетов от имени РСО и УО + + + + + + + + Импорт информации о состоянии расчетов + + + + + + + + Идентификатор информации о состоянии расчетов (обязателен при изменении или аннулировании информации о состоянии расчетов) + + + + + + + Создание/изменение информации о состоянии расчетов + + + + + + Информация о договоре (заполняется при создании информации о состоянии расчетов или необходимости изменения связи с аннулированным ДРСО) + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + Отчетный период (не обязателен только при изменении связи между информацией о состоянии расчетов и ДРСО) + + + + + + + + Создать/изменить отчетный период + + + + + Аннулировать отчетный период + + + + + + + + + + + + + + + + + + Аннулировать информацию о расчетах + + + + + + + + Проверка уникальности месяца и года отчетого периода в рамках информации о состоянии расчетов + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора информации о состоянии расчетов в рамках запроса + + + + + + + Проверка уникальности идентификатора договора ресурсоснабжения в рамках запроса + + + + + + + + Импорт информации о состоянии расчетов от имени организации - исполнителя коммунальных услуг (УО, ТСЖ и тд) + + + + + + + + Импорт информации о состоянии расчетов + + + + + + + + Идентификатор информации о состоянии расчетов + + + + + + + Создание/изменение информации о состоянии расчетов + + + + + + Информация о договоре ресурсоснабжения (Заполняется в случаях: 1. При создании информации о состоянии расчетов. 2. При изменения связи между информацией о состоянии расчетов и ДРСО, если прежний ДРСО аннулирован или связь не была установлена) + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Договор отсутствует + + + + + + Первая сторона договора + + + + + Номер документа + + + + + + + + + + + Дата заключения + + + + + + + + + + + Отчетный период (не заполняется только при изменении связи между информацией о состоянии расчетов и ДРСО) + + + + + + + + Создать/изменить отчетный период + + + + + Аннулировать отчетный период + + + + + + + + + + + + + + + + + + Аннулировать информацию о расчетах + + + + + + + + Проверка уникальности месяца и года отчетого периода в рамках информации о состоянии расчетов + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора информации о состоянии расчетов в рамках запроса + + + + + + + Проверка уникальности идентификатора договора ресурсоснабжения в рамках запроса + + + + + + + + + Запрос на экспорт информации о состоянии расчетов + + + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Идентификатор информации о состоянии расчетов + + + + + + Номер договора ресурсоснабжения + + + + + + + + + + + Другая сторона договора (РСО указывает вторую сторону договора, исполнитель коммунальных услуг - первую сторону) + + + + + Период + + + + + + Период с (Если не заполнено, то без ограничения начального периода) + + + + + Период по (Если не заполнено, то без ограничения конечного периода) + + + + + + + + + + + + + + + Тип для экспорта информации о состоянии расчетов + + + + + Идентификатор информации о состоянии расчетов + + + + + Информация о договоре ресурсоснабжения + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Договор отсутствует + + + + + + Первая сторона договора + + + + + Номер документа + + + + + + + + + + + Дата заключения + + + + + + + + + + + Отчетный период + + + + + + + + + Информация от РСО + + + + + Информация от исполнителя КУ + + + + + + Статус отчетного периода + + + + + + Статус + + + + + + Размещен + + + + + Проект + + + + + Информация аннулирована + + + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + Информация о состоянии расчетов аннулирована + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + Импорт страховых продуктов + + + + + + + + Страховой продукт + + + + + + + + Создать или изменить существующий страховой продукт + + + + + + + + + + + + + + Удалить страховой продукт + + + + + + + Дата закрытия + + + + + + + + + + + + + + + + + + + + + + Запрос экспорта страховых продуктов + + + + + + + + + + + + Идентификатор страхового продукта + + + + + Страховой продукт + + + + + Условия страхования + + + + + Корневой идентификатор страховой компании из реестра организаций + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + Идентификатор извещения о принятии к исполнению распоряжения в ГИС ЖКХ, необходим для проведения экспорта следующих 1000 извещений. +Если элемент не заполнен, то это свидетельствует о том, что все запрашиваемые данные были выгружены + + + + + + Страховой продукт + + + + + Информация о состоянии расчетов + + + + + + + + + + + + + + + + + для полномочия "УО" + + + + + для полномочия "УО" + + + + + + + + Статус расчетного периода. (O)pen - открыт, (C)losed - закрыт, + + + + + + + + + + + + Характеристика расчетного периода дома + + + + + Глобальный уникальный идентификатор дома + + + + + + Дата открытия + + + + + Дата закрытия + + + + + + + + Перерасчеты, корректировки (руб) +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД. + + + + + + + + + + + Льготы, субсидии, скидки (руб) + + + + + + + + + + + Сумма (руб) + + + + + + + + + + Общий тип задолженности при импорте + + + + + Месяц + + + + + Год + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + Общий тип задолженности при импорте + + + + + Месяц + + + + + Год + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Ссылка на платежные реквизиты + + + + + + + Потребление по услуге + + + + + Код услуги из справочника: +- для ЖУ - НСИ 50 "Вид жилищной услуги"; +- для вида КУ - НСИ 3 "Вид коммунальной услуги"; +- для главной КУ - НСИ 51 "Главная коммунальная услуга" (справочник исполнителя); +- для ДУ - НСИ 1 "Вид дополнительной услуги" (справочник исполнителя). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Ссылка на платежные реквизиты + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + + Потребление по услуге + + + + + Код услуги (жилищной, коммунальной или дополнительной) из справочников: +ЖУ - №50 Вид жилищной услуги; +КУ - №51 Коммунальная услуга (справочник исполнителя); +ДУ - №1 Дополнительная услуга (справочник исполнителя). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Идентификатор платежных реквизитов + + + + + + + Общий тип задолженности + + + + + + Месяц + + + + + Год + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + Итого к оплате за расчетный период платежного документа, руб. + + + + + + + + + + + + + Задолженность по услуге за период + + + + + + + Код услуги (жилищной, коммунальной или дополнительной) из справочников: +ЖУ - №50 Вид жилищной услуги; +КУ - №51 Коммунальная услуга (справочник исполнителя); +ДУ - №1 Дополнительная услуга (справочник исполнителя) + + + + + Идентификатор платежных реквизитов + + + + + + + + + Задолженность по услуге за период при импорте + + + + + + + Код услуги из справочника: +- для ЖУ - НСИ 50 "Вид жилищной услуги"; +- для вида КУ - НСИ 3 "Вид коммунальной услуги"; +- для главной КУ - НСИ 51 "Главная коммунальная услуга" (справочник исполнителя); +- для ДУ - НСИ 1 "Вид дополнительной услуги" (справочник исполнителя) + + + + + Ссылка на платежные реквизиты + + + + + + + + + Потребление по услуге + + + + + Код услуги (жилищной, коммунальной или дополнительной) + + + + + + Тариф + + + + + + + Начисление по услуге + + + + + Перерасчеты, корректировки, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Льготы, субсидии, скидки, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + + + Начисление по услуге + + + + + Перерасчеты, корректировки, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Льготы, субсидии, скидки, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты всего, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Льготы, субсидии, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ, руб. (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Порядок расчетов + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Ссылка на платежные реквизиты + + + + + + + + + + + + + + Месяц расчетного периода + + + + + + + + + + Год расчетного периода + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Ссылка на платежные реквизиты + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Перерасчеты всего, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Льготы, субсидии, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + + + + + + + + + Месяц расчетного периода + + + + + + + + + + Год расчетного периода + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Идентификатор платежных реквизитов + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты всего, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Льготы, субсидии, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Порядок расчетов + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + + + Справочная информация + + + + + + + + Норматив потребления коммунальных ресурсов в целях использования и содержания общего имущества в многоквартирном доме + + + + + Норматив потребления коммунальных услуг + + + + + + + + + + Рассрочка + + + + + + Сумма платы с учётом рассрочки платежа - от платы за расчётный период, руб. + + + + + + + + + + + Сумма платы с учётом рассрочки платежа - от платы за предыдущие расчётные периоды, руб. + + + + + + + + + + + Плата за рассрочку, руб. + + + + + + + + + + + Плата за рассрочку, % + + + + + + + + + + + + Сумма к оплате с учётом рассрочки платежа и процентов за рассрочку, руб. + + + + + + + + + + + + + + Перерасчеты + + + + + + Основания перерасчётов + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация + + + + + Текущие показания приборов учёта +коммунальных ресурсов - индивидуальных (квартирных) + + + + + Текущие показания приборов учёта +коммунальных ресурсов - коллективных (общедомовых) + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в помещениях дома + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания общего имущества в многоквартирном доме + + + + + + + Потребление и начисление по услугам в ПД + + + + + Жилищная услуга + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Виды коммунальных ресурсов, потребляемых при использовании и содержании общего имущества в многоквартирном доме. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Код вида коммунального ресурса при содержании общего имущества из справочника НСИ 2 "Вид коммунального ресурса". +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Единица измерения: +(S)quare meter - Кв. м +(D)irectory - Из справочника +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + Способ определения объема: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Может быть не заполнен, если заполнен блок tns:MunicipalResource/ tns:GeneralMunicipalResource. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за коммунальный ресурс потребления при содержании общего имущества, руб. +Ссылка на пост. 924 – Приложение 2, п. 19. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + Норматив потребления коммунальных ресурсов в целях использования и содержания общего имущества в многоквартирном доме. + + + + + Текущие показания приборов учёта +коммунальных ресурсов - коллективных (общедомовых). + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания общего имущества в многоквартирном доме. + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма, руб. + + + + + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Запрещен для заполнения для других типов лицевых счетов, кроме ЛС РЦ. Если для ЛС РЦ не заполнен, то равен значению из ЖУ + + + + + Главные коммунальные ресурсы потребляемые при использовании и содержании общего имущества в многоквартирном доме. +Группируются по виду коммунального ресурса. +Заполняются, если для расчета итоговой суммы начислений по виду коммунального ресурса используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + + + Код главного коммунального ресурса из справочника НСИ 337 "Главный коммунальный ресурс". +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Начислено за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за коммунальный ресурс потребления при содержании общего имущества, руб. +Ссылка на пост. 924 – Приложение 2, п. 19. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + Норматив потребления коммунальных ресурсов в целях использования и содержания общего имущества в многоквартирном доме + + + + + Текущие показания приборов учёта +коммунальных ресурсов - коллективных (общедомовых) + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания общего имущества в многоквартирном доме + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Запрещен для заполнения для других типов лицевых счетов, кроме ЛС РЦ. Если для ЛС РЦ не заполнен, то равен значению из ВКР + + + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + + + + + + Вид дополнительной услуги + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + + + + + + Главная коммунальная услуга. + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб. + + + + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + + + + + + Блок главных коммунальных услуг, сгруппированных по виду коммунальной услуги. +Заполняется, если для расчета итоговой суммы начислений по коммунальной услуге используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Вид коммунальной услуги + + + + + Главные коммунальные услуги + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД. + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб. + + + + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + + + + + + + + + + + Потребление и начисление по услугам в ПД (экспорт) + + + + + Жилищная услуга + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Виды коммунальных ресурсов, потребляемых при использовании и содержании общего имущества в многоквартирном доме. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД. + + + + + + + Код коммунального ресурса при содержании общего имущества. НСИ 2 "Вид коммунального ресурса" +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Начислено за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за коммунальный ресурс потребления при содержании общего имущества, руб. +Ссылка на пост. 924 – Приложение 2, п. 19 + + + + + + + + + + + Справочная информация. +Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + Норматив потребления коммунальных ресурсов в целях использования и содержания общего имущества в многоквартирном доме + + + + + Текущие показания приборов учёта +коммунальных ресурсов - коллективных (общедомовых) + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания общего имущества в многоквартирном доме + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Главные коммунальные ресурсы потребляемые при использовании и содержании общего имущества в многоквартирном доме. +Группируются по виду коммунального ресурса. +Заполняются, если для расчета итоговой суммы начислений по виду коммунального ресурса используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + + + + + + Вид дополнительной услуги + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + + + + + + Главная коммунальная услуга + + + + + + + + Перерасчеты, льготы, субсидии + + + + + + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + + Сумма платы с учётом рассрочки платежа - от платы за расчётный период, руб. + + + + + + + + + + + Сумма платы с учётом рассрочки платежа - от платы за предыдущие расчётные периоды + + + + + + + + + + + Плата за рассрочку, руб. + + + + + + + + + + + Плата за рассрочку, % + + + + + + + + + + + + Сумма к оплате с учётом рассрочки платежа и процентов за рассрочку, руб. + + + + + + + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб. + + + + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + + + + + + Блок главных коммунальных услуг, сгруппированных по виду коммунальной услуги. +Заполняется, если для расчета итоговой суммы начислений по коммунальной услуге используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Вид коммунальной услуги + + + + + Главная коммунальная услуга с объемом потребления + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб. + + + + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + + + + + + + + + + + Задолженность услугам в ПД + + + + + Жилищная услуга + + + + + + + + Виды коммунальных ресурсов, потребляемых при использовании и содержании общего имущества в многоквартирном доме + + + + + + + К оплате за расчетный период, руб. Если Жилищная услуга детализирована по периоду (Month и Year заполнены) + + + + + + + + + + + Итого к оплате за расчетный период платежного документа, руб. Если для Жилищной услуги заполнен элемент Итого к оплате за расчетный период платежного документа, руб. (TotalSumDebtPayable) + + + + + + + + + + + + Код коммунального ресурса при содержании общего имущества. НСИ 2 "Вид коммунального ресурса" + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. + + + + + Главные коммунальные ресурсы потребляемые при использовании и содержании общего имущества в многоквартирном доме. +Группируются по виду коммунального ресурса. +Заполняются, если для расчета итоговой суммы начислений по виду коммунального ресурса используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Код главного коммунального ресурса (НСИ) + + + + + + К оплате за расчетный период, руб. Если Жилищная услуга детализирована по периоду (Month и Year заполнены) + + + + + + + + + + + Итого к оплате за расчетный период платежного документа, руб. Если для Жилищной услуги заполнен элемент Итого к оплате за расчетный период платежного документа, руб. (TotalSumDebtPayable) + + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + + + + + + + + + + Дополнительная услуга + + + + + + + + + + Главная коммунальная услуга + + + + + + + + + + Блок главных коммунальных услуг, сгруппированных по виду коммунальной услуги. +Заполняется, если для расчета итоговой суммы начислений по коммунальной услуге используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Вид коммунальной услуги + + + + + + Код вида коммунальной услуги из справочника НСИ 3 "Вид коммунальной услуги" + + + + + + + Месяц + + + + + Год + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + + Итого к оплате за расчетный период платежного документа, руб. + + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + + Главная коммунальная услуга + + + + + + + + + + Задолженность услугам в ПД при импорте + + + + + Жилищная услуга + + + + + + + + Виды коммунальных ресурсов, потребляемых при использовании и содержании общего имущества в многоквартирном доме + + + + + + Код коммунального ресурса при содержании общего имущества из справочника НСИ 2 "Вид коммунального ресурса" + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Главные коммунальные ресурсы потребляемые при использовании и содержании общего имущества в многоквартирном доме. +Группируются по виду коммунального ресурса. +Заполняются, если для расчета итоговой суммы начислений по виду коммунального ресурса используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Код главного коммунального ресурса из справочника НСИ 337 "Главный коммунальный ресурс" + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + + + + + + + + + + Дополнительная услуга + + + + + + + + + + Главная коммунальная услуга + + + + + + + + + + Блок главных коммунальных услуг, сгруппированных по виду коммунальной услуги. +Заполняется, если для расчета итоговой суммы начислений по коммунальной услуге используются двухкомпонентные тарифы или тарифы (цены), отличные от одноставочных тарифов (цен) + + + + + + Вид коммунальной услуги + + + + + + Код вида коммунальной услуги из справочника НСИ 3 "Вид коммунальной услуги" + + + + + Месяц + + + + + Год + + + + + К оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + + Главная коммунальная услуга + + + + + + + + + + + + + + + Платежный документ (ПД) + + + + + Идентификатор лицевого счета + + + + + Номер платежного документа, по которому внесена плата, присвоенный такому документу исполнителем в целях осуществления расчетов по внесению платы + + + + + Сведения о показаниях индивидуального прибора учета. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + Код коммунальной услуги, учет потребления которой осуществляется прибором учета. +1 - Холодное водоснабжение; +2 - Горячее водоснабжение; +3 - Отведение сточных вод; +4 - Электроснабжение; +5 - Газоснабжение; +6 - Отопление; +7 - Обращение с твердыми коммунальными отходами. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + + + + + + + + + + + + + + Начисления: +1) для текущего ПД указываются ChargeInfo, CapitalRepairCharge, CapitalRepairYearCharge, Insurance, PenaltiesAndCourtCosts +2) для долгового ПД указаываются ChargeDebt, CapitalRepairDebt + + + + + + Начисление по услуге + + + + + + + + + + + Начисление за капитальный ремонт + + + + + + + + + + Начисление за капитальный ремонт. Указываются начисления за капремонт за 12 месяцев календарного года + + + + + + Страхование + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Ссылка на платежные реквизиты + + + + + + + + Неустойки и судебные расходы + + + + + + Вид неустойки и судебных расходов из справочника НСИ 329 "Неустойки и судебные расходы": +- Пени +- Штрафы +- Государственные пошлины +- Судебные издержки + + + + + Основания начислений + + + + + + + + + + + Итого к оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Ссылка на платежные реквизиты + + + + + + + + + + Задолженность за капитальный ремонт + + + + + Задолженность по услуге + + + + + + + + Выставлен на оплату (признак заполняется при экспорте, при импорте необязателен) + + + + + Отозванный (признак заполняется при экспорте, при импорте необязателен) + + + + + + Итого к оплате за расчетный период, руб. (по всем услугам). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (по всем услугам с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды, руб. +Ссылка на пост. 924 – Приложение 2, п. 10 + + + + + + + + + + + + Аванс на начало расчетного периода, руб. +Ссылка на пост. 924 – Приложение 2, п. 10 + + + + + + + + + + + + Сумма к оплате с учетом рассрочки платежа и процентов за рассрочку, руб. (Итого). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + + + + + + + Учтены платежи, поступившие до указанного числа расчетного периода включительно + + + + + + + + + + + Дополнительная информация + + + + + + + + + + + Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. (по всему платежному документу) + + + + + + + + + + + Итого к оплате по неустойкам и судебным издержкам, руб. (итого по всем неустойкам и судебным издержкам). +Заполняется только для ПД с типом = Текущий + + + + + + + + + + + Сумма к оплате за расчетный период, руб. (по всему платежному документу) + + + + + + + + + + + Справочная информация. +Составляющие стоимости электрической энергии + + + + + + Наименование составляющей из НСИ 331 "Составляющая тарифа на электрическую энергию" + + + + + Сумма составляющей, руб. + + + + + + + + + + + + + + Оплачено денежных средств, руб + + + + + + + + + + + Дата последней поступившей оплаты + + + + + Предельный (максимальный) индекс изменения размера платы граждан за коммунальные услуги в муниципальном образовании, % +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + + + + + + + Субсидии, компенсации и иные меры соц. поддержки граждан, руб. + + + + + + + + + + + + + Платежный документ (ПД) + + + + + Идентификатор лицевого счета + + + + + Приказ Минстроя №924/пр - состав данных платежного документа соответствует примерной форме платежного документа, утвержденной приказом Минстроя РФ от 29.12.2014 N 924/пр; +Приказ Минстроя №43/пр - состав данных платежного документа соответствует примерной форме платежного документа, утвержденной приказом Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + Номер платежного документа, по которому внесена плата, присвоенный такому документу исполнителем в целях осуществления расчетов по внесению платы + + + + + Адресные сведения + + + + + + Количество проживающих +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Жилая площадь +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Отапливаемая площадь +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Общая площадь для ЛС +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + + + + Сведения о показаниях индивидуального прибора учета. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + Коммунальная услуга, учет потребления которой осуществляется прибором учета. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + Код коммунальной услуги + + + + + Наименование коммунальной услуги + + + + + + + + + + + + + + + + + + + Начисления: +1) для текущего ПД указываются ChargeInfo, CapitalRepairCharge, CapitalRepairYearCharge, Insurance, PenaltiesAndCourtCosts +2) для долгового ПД указаываются ChargeDebt, CapitalRepairDebt + + + + + + Начисление по услуге + + + + + + Начисление за капитальный ремонт + + + + + + + + Идентификатор платежных реквизитов + + + + + + + + + + Начисление за капитальный ремонт. Указываются начисления за капремонт за 12 месяцев календарного года. + + + + + + Неустойки и судебные расходы + + + + + + Вид неустойки и судебных расходов. НСИ 329 "Неустойки и судебные расходы": +- Пени +- Штрафы +- Государственные пошлины +- Судебные издержки + + + + + Основания начислений + + + + + + + + + + + Итого к оплате за расчетный период, руб. + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Идентификатор платежных реквизитов + + + + + + + + Страхование + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. + + + + + Идентификатор платежных реквизитов + + + + + + + + + + Задолженность за капитальный ремонт + + + + + + + + Идентификатор платежных реквизитов + + + + + + + + + + Задолженность по услуге + + + + + + + + + + + + + Выставлен на оплату (признак заполняется при экспорте, при импорте необязателен) + + + + + Отозванный (признак заполняется при экспорте, при импорте необязателен) + + + + + + Итого к оплате за расчетный период, руб. (по всем услугам). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ, руб. (по всем услугам) +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды, руб. +Ссылка на пост. 924 – Приложение 2, п. 10 + + + + + + + + + + + + Аванс на начало расчетного периода, руб. +Ссылка на пост. 924 – Приложение 2, п. 10 + + + + + + + + + + + + Сумма к оплате с учетом рассрочки платежа и процентов за рассрочку, руб. (Итого) +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + + + + + + + Учтены платежи, поступившие до указанного числа расчетного периода включительно + + + + + + + + + + + Дополнительная информация + + + + + + + + + + + Сумма к оплате за расчетный период, руб. (по всему платежному документу) + + + + + + + + + + + Итого к оплате по неустойкам и судебным издержкам, руб. (итого по всем неустойкам и судебным издержкам). +Заполняется только для ПД с типом = Текущий + + + + + + + + + + + Итого к оплате за расчетный период c учетом задолженности/переплаты, руб. (по всему платежному документу) + + + + + + + + + + + Справочная информация. +Составляющие стоимости электрической энергии. + + + + + + Наименование составляющей из НСИ 331 "Составляющая тарифа на электрическую энергию" + + + + + Сумма составляющей, руб. + + + + + + + + + + + + + + Оплачено денежных средств, руб + + + + + + + + + + + Дата последней поступившей оплаты + + + + + Месяц расчетного периода платежного документа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Год расчетного периода платежного документа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + Предельный (максимальный) индекс изменения размера платы граждан за коммунальные услуги в муниципальном образовании, % +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + + + + + + Субсидии, компенсации и иные меры соц. поддержки граждан, руб. + + + + + + + + + + + Сведения об исполнителе услуг платежного документа. +Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 1 примерной формы ПД + + + + + + Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. + + + + + + + + + + Сведения о платежных реквизитах получателя + + + + + Тип объема + + + + + + + + + Тип объема и показаний + + + + + + + + + Тип объема потребления КУ + + + + + + + + + + Статус квитирования: +0 - Новый (не проходил квитирование) +1 - Аннулирован +2 - Сквитирован +3 - Частично сквитирован +4 - Предварительно сквитирован +5 - Отсутствует возможность сквитировать + + + + + + + + + + + + + + + + + Данные отчетного периода (РСО) + + + + + Начислено + + + + + + + + + + + Поступило + + + + + + + + + + + Задолженность + + + + + + + + + + Переплата + + + + + + + + + + Оплачено. Заполняется, если у организации два полномочия: РСО+УО и в ДРСО она является как первой стороной договора, так и Исполнителем КУ. + + + + + Сведения о документах, подтверждающих факт поставки ресурсов, выполнения работ, оказания услуг + + + + + + + Данные отчетного периода (Исполнитель коммунальных услуг) + + + + + Оплачено + + + + + Сведения о документах, подтверждающих факт оплаты ресурсов, выполнения работ, оказания услуг + + + + + + + Отчетный период + + + + + + + + + Аннулирование информации + + + + + Причина аннулирования + + + + + + + + + + + + Вид коммунальной услуги + + + + + Код вида коммунальной услуги из справочника НСИ 3 "Вид коммунальной услуги". +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб + + + + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23. +Не обрабатывается Системой в связи с вступлением в силу приказа Минстроя РФ от 26.01.2018 N 43/пр + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + + Вид коммунальной услуги + + + + + Код вида коммунальной услуги из справочника НСИ 3 "Вид коммунальной услуги". +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +(I)ndividualConsumption - объем коммунальных услуг +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Размер платы за коммунальные услуги, индивидуальное потребление. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + Начислено за расчетный период (без перерасчетов и льгот), руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Повышающий коэффициент. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Размер повышающего коэффициента + + + + + + + + + + + Размер превышения платы, рассчитанной с применением повышающего коэффициента над размером платы, рассчитанной без учета повышающего коэффициента, руб. + + + + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + К оплате за индивидуальное потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + К оплате за общедомовое потребление коммунальной услуги, руб. +Ссылка на пост. 924 – Приложение 2, п. 23 + + + + + + + + + + + Порядок расчетов + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + Расчет суммы к оплате с учетом рассрочки платежа. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 5 примерной формы ПД + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + + + + + Код главного коммунального ресурса из справочника НСИ 337 "Главный коммунальный ресурс". +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + Объем коммунальных услуг / Объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + Объем + + + + + + + Тип: +house(O)verallNeeds - объем коммунальных ресурсов, потребленных при использовании и содержании общего имущества в многоквартирном доме, или коммунальных услуг на общедомовые нужды + + + + + + + + + + Способ определения объемов КУ: +(N)orm - Норматив +(M)etering device - Прибор учета +(O)ther - Иное + + + + + + + + + + + + + + + + + + + + + + + + Тариф / Размер платы на кв.м, руб. / Размер взноса на кв.м, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Размер платы за коммунальные услуги, общедомовые нужды. +Ссылка на пост. 924 – Приложение 2, п. 18 + + + + + + + + + + + Начислено за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Перерасчеты, льготы, субсидии + + + + + К оплате за коммунальный ресурс потребления при содержании общего имущества, руб. +Ссылка на пост. 924 – Приложение 2, п. 19 + + + + + + + + + + + Справочная информация. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 4 примерной формы ПД + + + + + + Норматив потребления коммунальных ресурсов в целях использования и содержания общего имущества в многоквартирном доме. + + + + + Текущие показания приборов учёта +коммунальных ресурсов - коллективных (общедомовых). + + + + + Суммарный объём коммунальных ресурсов в многоквартирном доме - в целях содержания общего имущества в многоквартирном доме. + + + + + + + + Сведения о перерасчетах (доначислении +, уменьшении -). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 6 примерной формы ПД. + + + + + + Основания перерасчётов + + + + + + + + + + + Сумма + + + + + + + + + + + + + + + К оплате за расчетный период, руб. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Задолженность за предыдущие периоды / Аванс на начало расчетного периода (учтены платежи, поступившие включительно до числа расчетного периода, указанного в tns:PaymentDocument/tns:PaymentsTaken). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Неустойка (штраф, пеня). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Штраф исполнителя работ (услуг). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Государственные пошлины. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Судебные издержки. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + ИТОГО К ОПЛАТЕ (с учетом задолженности/аванса, неустоек и судебных расходов). Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 3 примерной формы ПД + + + + + + + + + + + Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов + + + + + + + + + + + + Сведения о показаниях приборов учета + + + + + Прибор учета. +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + + + + Показания прибора учета за предыдущий месяц, ед. +Должны быть указаны, если указана единица измерения показаний (tns:MDUnit). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + + + Код единицы измерения из классификатора ОКЕИ. +113 - м[3*] +116 - дкл +233 - Гкал +245 - кВт.ч +246 - МВт.ч|^ 10[3*] кВт.ч +271 - Дж +A005 - м вод. ст +A056 - ГДж +A058 - МДж +Должен быть указан, если заполнены показания прибора учета за предыдущий месяц (tns:MDPreviousPeriodReadings). +Ссылка на приложение к приказу Минстроя РФ от 26.01.2018 N 43/пр - Раздел 2 примерной формы ПД + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-service-async.wsdl new file mode 100644 index 0000000..a2a7e6e --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-service-async.wsdl @@ -0,0 +1,653 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + Экспорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + Импорт общих сведений о региональной программе капитального ремонта + + + + + + Импорт сведений о домах и работах региональной программы капитального ремонта + + + + + + Экспорт сведений о региональной программе капитального ремонта + + + + + + Экспорт сведений о домах и работах региональной программы капитального ремонта + + + + + + Импорт общих сведений о КПР/РАПКР/МАПКР + + + + + + Импорт сведений о домах и работах КПР/РАПКР/МАПКР + + + + + + Экспорт КПР + + + + + + Экспорт сведений о домах и работах КПР/РАПКР/МАПКР + + + + + + Импорт счетов регионального оператора + + + + + + Импорт специальных счетов + + + + + + Экспорт счетов регионального оператора и специальных счетов + + + + + + Импорт решений о выборе способа формирования фонда капитального ремонта + + + + + + Экспорт решений о выборе способа формирования фонда капитального ремонта + + + + + + Импорт актов выполненных работ + + + + + + Импорт информации об оплате работ по капитальному ремонту + + + + + + Импорт информации о совершенных операциях и остатках по счетам + + + + + + Экспорт кредитных договоров/договоров займа + + + + + + Импорт информации о размере фондов капитального ремонта + + + + + + Экспорт информации о размере фондов капитального ремонта + + + + + + Импорт решений/информации о порядке представления платежных документов + + + + + + Экспорт решений/информации о порядке представления платежных документов + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сервис Капитальный ремонт + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-types.xsd new file mode 100644 index 0000000..08e150c --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/capital-repair/hcs-capital-repair-types.xsd @@ -0,0 +1,3947 @@ + + + + + + + + + + + + + Денежная сумма (с любым знаком) 13 знаков до разделителя, 2 после разделителя + + + + + + + + + + + Денежная сумма (с любым знаком) + + + + + + + + + Тип модели выставления ПД + + + + + Отдельным платежным документом + + + + + В составе единого платежного документа + + + + + + + Неотрицательная сумма, 8 знаков до разделителя, 2 после разделителя + + + + + + + + + + + + Неотрицательная сумма, 12 знаков до разделителя, 2 после разделителя + + + + + + + + + + + + Неотрицательная сумма 13 знаков до разделителя, 2 после разделителя + + + + + + + + + + + + Простой тип. Номер счета + + + + + + + + Простой тип. КБК + + + + + + + + + Строка не более 50 символов + + + + + + + + Строка не более 100 символов + + + + + + + + Строка не более 500 символов + + + + + + + + Строка не более 512 символов + + + + + + + + Строка не более 1000 символов + + + + + + + + Строка не более 1024 символов + + + + + + + + Статус объекта + + + + + Проект + + + + + Опубликован + + + + + Аннулирован + + + + + + + + Статус объекта (расширенный) + + + + + Проект + + + + + Опубликован + + + + + Аннулирован + + + + + + + + Срок представления платежных документов + + + + + совпадает со сроком, установленным для представления платежных документов на оплату за жилое помещение и коммунальные услуги + + + + + иной срок + + + + + + + Уточнение к сроку предоставления + + + + + текущего расчетного месяца + + + + + следующего месяца за расчетным + + + + + + + + Документ программы (плана) + + + + + Вид документа (НСИ 79). Используются только виды документов, которые могут применяться в программах соответствующего вида. + + + + + Полное наименование документа + + + + + + + + + + Номер документа + + + + + Дата документа + + + + + Орган, принявший документ + + + + + Файл документа + + + + + + + Импортируемый документ программы (плана) + + + + + Транспортный идентификатор для выполнения операции с документами программы/плана + + + + + Идентификатор документа программы/плана. Заполняется при изменении либо удалении документа + + + + + + Добавить/Изменить документ программы/плана + + + + + + + + + + Удалить документ программы/плана + + + + + + + + Экспортируемый документ программы (плана) + + + + + + + Идентификатор документа в ГИС ЖКХ + + + + + + + + + Общий тип для физического лица + + + + + Фамилия физического лица + + + + + Имя физического лица + + + + + Отчество физического лица + + + + + + + + Работа в РПКР + + + + + Адрес дома по ФИАС + + + + + Код ОКТМО + + + + + Вид работ капитального ремонта (НСИ 219) + + + + + Месяц и год начала работы + + + + + Месяц и год окончания работы + + + + + + + Экспортируемая работа в РПКР (включая идентификатор) + + + + + + + Идентификатор работы в ГИС ЖКХ + + + + + + + + + Импортируемый паспорт РПКР + + + + + Наименование программы + + + + + + + + + + Год начала периода реализации + + + + + Год окончания периода реализации + + + + + + + Экспортируемая региональная программа капитального ремонта (включая идентификатор, статус, документы и территорию) + + + + + + + Территория реализации РПКР (ОКТМО уровня региона) + + + + + Идентификатор РПКР в ГИС ЖКХ + + + + + Документы РПКР + + + + + Статус РПКР в ГИС ЖКХ + + + + + + + + + + Паспорт программы/плана + + + + + Наименование программы/плана + + + + + + + + + + Территория реализации программы/плана. Для регионального КПР и РАПКР должно быть прислано ОКТМО уровня региона. Для муниципального КПР и МАПКР должно быть прислано ОКТМО уровня муниципального образования. + + + + + Вид программы, Plan - КПР, MunicipalAddressProgram - МАПКР, RegionalAddressProgram - РАПКР + + + + + + + + + + + + Месяц и год начала периода реализации + + + + + Месяц и год окончания периода реализации + + + + + + + Экспортируемый КПР + + + + + + + Статус программы/плана + + + + + Идентификатор программы/плана в ГИС ЖКХ + + + + + Документы программы/плана + + + + + + + + + Прикладной идентификатор работы в КПР, РАПКР, МАПКР + + + + + Многоквартирный дом + + + + + Вид работ капитального ремонта (НСИ 219) + + + + + Месяц и год окончания работ + + + + + + + Финансирование работы капитального ремонта + + + + + За счет средств Фонда содействия реформированию ЖКХ (с копейками) + + + + + За счет средств бюджета субъекта РФ (с копейками) + + + + + За счет средств местного бюджета (с копейками) + + + + + За счет средств собственников (с копейками) + + + + + + + Работа в КПР + + + + + + + Код ОКТМО + + + + + Финансирование работы в программе/плане + + + + + Удельная стоимость работы (с копейками). Заполняется только для РАПКР/МАПКР + + + + + Предельная стоимость работы (с копейками). Заполняется только для РАПКР/МАПКР + + + + + + + + + Экспортируемая работа в КПР + + + + + + + Идентификатор работы в ГИС ЖКХ + + + + + + + + + + Прикладной идентификатор работы в договоре на выполнение работ (оказание услуг) по капитальному ремонту + + + + + Идентификатор работы в КПР + + + + + + Бизнес-ключ для работы в КПР + + + + + + + + Работа в договоре на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + + Дата начала выполнения работы + + + + + Дата окончания выполнения работы + + + + + Стоимость работы в договоре + + + + + Соответствующая сумма в КПР + + + + + Объем работы + + + + + + + + + + + Единица измерения + + + + + Другая единица измерения + + + + + + Дополнительная информация + + + + + + + + + Сведения о расторжении договора на выполнение работ (оказание услуг) по капитальному ремонту + + + + + Причина расторжения договора (НСИ 54) + + + + + Номер документа + + + + + Дата документа + + + + + Файлы документа, подтверждающего расторжение договора + + + + + + + Договор на выполнение работ (оказание услуг) по капитальному ремонту + + + + + Номер договора + + + + + Дата договора + + + + + Дата начала выполнения работ + + + + + Дата окончания выполнения работ + + + + + Сумма договора + + + + + Заказчик + + + + Заказчиком является Юридическое лицо / ИП + + + + + Заказчиком является Физическое лицо + + + + + + + + + + + Исполнитель + + + + + Список работ договора + + + + + Файлы договора + + + + + Информация о гарантийном сроке + + + + Гарантийный срок (месяцев) + + + + + Гарантийный срок не установлен + + + + + + Информация о сметной документации + + + + Файлы сметной документации + + + + + Сметная документация отсутсвует + + + + + + Адрес страницы в сети Интернет, на которой размещена информация об отборе подрядных организаций + + + + Адрес страницы в сети Интернет, на которой размещена информация об отборе подрядных организаций + + + + + Проведение отбора не предусмотрено законодательством + + + + + + Сведения о расторжении + + + + + + + Экспортируемый договор на выполнение работ (оказание услуг) по капитальному ремонту (без статусов и идентификаторов) + + + + + Номер договора + + + + + Дата договора + + + + + Дата начала выполнения работ + + + + + Дата окончания выполнения работ + + + + + Сумма договора + + + + + Заказчик + + + + Заказчиком является Юридическое лицо / ИП + + + + + Заказчиком является Физическое лицо + + + + + + + + + + + Исполнитель + + + + + Список работ договора + + + + + Файлы договора + + + + + Информация о гарантийном сроке + + + + Гарантийный срок (месяцев) + + + + + Гарантийный срок не установлен + + + + + + Информация о сметной документации + + + + Файлы сметной документации + + + + + Сметная документация отсутсвует + + + + + + Адрес страницы в сети Интернет, на которой размещена информация об отборе подрядных организаций + + + + Адрес страницы в сети Интернет, на которой размещена информация об отборе подрядных организаций + + + + + Проведение отбора не предусмотрено законодательством + + + + + + Сведения о расторжении + + + + + + + Экспортируемый договор на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + + Статус договора + + + + + Статус исполнения договора + + + + + Идентификатор договора в ГИС ЖКХ + + + + + Идентификатор КПР в ГИС ЖКХ + + + + + + + + + Экспортируемый договор, сведения об оплате, акт на выполнение работ (оказание услуг) по капитальному ремонту + + + + + Договор + + + + + Акт + + + + + Сведения об оплате + + + + + + Счета, открытые в целях формирования фонда капитального ремонта (специальные счета и счета регионального оператора) + + + + Общий тип счета регионального оператора/специального счета + + + + + Кредитная организация + + + + + БИК кредитной организации + + + + + + + + + + Номер расчетного счета + + + + + Код ОКТМО + + + + + КБК + + + + + + + Экспортируемые счета регионального оператора/специальные счета + + + + + Идентификатор счета + + + + + Вид счета (ссылка на НСИ "Вид счета" Код 62) + + + + + Дата открытия счета + + + + + Реквизиты счета + + + + + + + + Дата изменения реквизитов счета + + + + + Являются текущими реквизитами + + + + + Номер корреспондентского счета + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Справка об открытии специального счета + + + + + Дата закрытия специального счета/счета регионального оператора + + + + + Статус + + + + + + + + + + + + Информация о совершенных операциях и остатках по счету + + + + + За указанный период нформация о совершенных операциях и остатках по счету отсутствует + + + + + + + Решения о выборе способа формирования фонда капитального ремонта + + + + Тип данных для решения о выборе способа формирования фонда капитального ремонта + + + + + + + Основание принятия решения и документ, подтверждающий принятие решения + + + + Протокол общего собрания собственников. Указывается, если основание принятия решения = решение собственников. Для организаций с функцией Региональный оператор капитального ремонта необходимо прикрепить файл протокола, для остальных организаций необходимо указать идентификатор версии протокола. + + + + + + + + + + Документ решения. Указывается, если основание принятия решения = решение ОМС. Доступно для заполнения только для организации с функцией "Региональный оператор капитального ремонта". + + + + + Идентификатор документа. Указывается, если основание принятия решения = решение ОМС. Доступно для заполнения только для организации с функцией "ОМС". + + + + + + + Способ формирования фонда = Формирование фонда капитального ремонта на специальном счете + + + + + + Дата открытия счета + + + + + Кредитная организация + + + + + БИК кредитной организации + + + + + Номер расчетного счета + + + + + Справка об открытии специального счета + + + + + ОКТМО + + + + + КБК + + + + + Номер корреспондентского счета + + + + + + + + Способ формирования фонда = Формирование фонда капитального ремонта на счете регионального оператора + + + + + + + + + + Экспортируемое решение о выборе способа формирования фонда капитального ремонта + + + + + + + Идентификатор решения о выборе способа формирования фонда капитального ремонта + + + + + Статус решения + + + + + Идентификатор специального счета + + + + + Организация, разместившая решение + + + + + + + + Общие типы для решений + + + + Общий Тип данных для решений + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Дата вступления в силу + + + + + + + Документ решения + + + + + Полное наименование документа решения + + + + + Вид документа + + + + + Номер документа + + + + + Дата документа + + + + + Файлы + + + + + + + Общий тип для протокола общего собрания собственников + + + + + Идентификатор версии протокола + + + + + + Номер протокола + + + + + Дата протокола + + + + + + Файлы протокола + + + + + Файлы протокола отсутствуют + + + + + + + + Решение/информация о порядке представления платежных документов + + + + День месяца от 1 до 30 + + + + + + + + Тип данных для Решение/информация о порядке представления платежных документов + + + + + + + Основание + + + + + + Протокол общего собрания собственников. Заполняется при импорте решений о порядке представления платежных документов. Для организаций с функцией Региональный оператор капитального ремонта необходимо прикрепить файл протокола, для остальных организаций необходимо указать идентификатор версии протокола. + + + + + + + + + + Подтверждающий документ. Заполняется при импорте информации о порядке представления платежных документов + + + + + + Документ + + + + + Документ отсутствует + + + + + + + + + + + Модель выставления платежных документов + + + + + Организация, уполномоченная на выставление платежных документов + + + + + Срок представления платежных документов + + + + + Число к сроку предоставления + + + + + Уточнение к сроку предоставления + + + + + + + + + Тип данных для Решение/информация о порядке представления платежных документов + + + + + + + Идентификатор решения о выборе способа формирования фонда капитального ремонта + + + + + Статус решения + + + + + + + + Расширенный ответ для результата импорта + + + + Расширенный тип ответа на результат импорта + + + + + + + + + + + + + Расширенный тип ответа на результат импорта + + + + + + + Идентификатор специального счета + + + + + + + + Акт выполненных работ (оказанных услуг) по капитальному ремонту + + + + Работа в акте выполненных работ (оказанных услуг) + + + + + Работа в договоре + + + + + Стоимость работ + + + + + Объем работ + + + + + + + + + + + + + Принят в эксплуатацию + + + + + + Дата начала гарантийного срока + + + + + Дата окончания гарантийного срока + + + + + + + + Не принят в эксплуатацию + + + + + + + + Акт выполненных работ (оказанных услуг) + + + + + Наименование акта + + + + + Номер акта + + + + + Дата акта + + + + + Сумма акта по составу принятых работ + + + + + Штрафные санкции Исполнителю (Если санкции не предъявлены, вводится 0) + + + + + Штрафные санкции Заказчику (Если санкции не предъявлены, вводится 0) + + + + + Файлы акта + + + + + Фото "до" + + + + + Фото "после" + + + + + Информация о подписании акта представителем собственников + + + + Акт подписан представителем собственников + + + + + + Фамилия представителя собственника + + + + + Имя представителя собственника + + + + + Отчество представителя собственника + + + + + + + + Акт не подписан представителем собственников + + + + + + Информация о рассрочке по оплате выполненных работ + + + + Предоставлена рассрочка по оплате выполненных работ + + + + + Рассрочка по оплате выполненных работ не предоставлена + + + + + + + + Акт выполненных работ (оказанных услуг) + + + + + + + Работа в акте + + + + + + + + + + + + + + Сведения о рассрочке + + + + + Дата платежа + + + + + Сумма платежа + + + + + + + Экспортируемый акт выполненных работ (оказанных услуг) + + + + + Наименование акта + + + + + Номер акта + + + + + Дата акта + + + + + Сумма акта по составу принятых работ + + + + + Штрафные санкции Исполнителю (Если санкции не предъявлены, вводится 0) + + + + + Штрафные санкции Заказчику (Если санкции не предъявлены, вводится 0) + + + + + Файлы акта + + + + + Фото "до" + + + + + Фото "после" + + + + + Информация о подписании акта представителем собственников + + + + Акт подписан представителем собственников + + + + + + Фамилия представителя собственника + + + + + Имя представителя собственника + + + + + Отчество представителя собственника + + + + + + + + Акт не подписан представителем собственников + + + + + + Информация о рассрочке по оплате выполненных работ + + + + Предоставлена рассрочка по оплате выполненных работ + + + + + Рассрочка по оплате выполненных работ не предоставлена + + + + + + + + Экспортируемый акт выполненных работ (оказанных услуг) + + + + + + + Работа в акте + + + + + + + + + + Статус акта + + + + + Идентификатор акта в ГИС ЖКХ + + + + + + + + Сведения об оплате выполненных работ (оказанных услуг) по капитальному ремонту + + + + Оплата по договорам на выполнение работ (оказание услуг) по капитальному ремонту + + + + + Вид оплаты. Требуется указать одно из трех значений: Prepaid - Аванс, PaymentForPerfomedWork - Оплата выполненных работ, PaymentReturn - Возврат оплаты. + + + + + + + + + + + + Получатель + + + + + Плательщик + + + + + Дата оплаты + + + + + Сумма оплаты + + + + + + + Оплата по договорам на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + + Работа в оплате + + + + + + Работа в договоре (Работа должна быть в том же договоре, на который ссылается объект "Оплата") + + + + + Сумма оплаты за счет средств собственников + + + + + Сумма оплаты за счет средств поддержки + + + + + + + + + + + + Экспортируемый набор сведений об оплате по договору + + + + + + + Работа в оплате + + + + + + Работа в договоре (Работа должна быть в том же договоре, на который ссылается объект "Оплата") + + + + + Сумма оплаты за счет средств собственников + + + + + Сумма оплаты за счет средств поддержки + + + + + + + + Статус оплаты + + + + + Распределено по работам на сумму + + + + + Идентификатор сведений об оплате в ГИС ЖКХ + + + + + + + + + Операция по счету + + + + + Тип операции (НСИ 217) + + + + + Назначение денежных средств (НСИ 215) Обязателен для типа операции Списание денежных средств. + + + + + Источник зачисленных денежных средств (НСИ 321) Обязателен для типа операции Зачисление денежных средств + + + + + Идентификатор сведений об оплате по договору на выполнение работ в ГИС ЖКХ (обязательно для НСИ 215 с кодом 1, 2, 3 И для НСИ 321 с кодом 8) + + + + + Идентификатор кредитного договора/договора займа. Заполняется только Региональным оператором капитального ремонта (обязательно для НСИ 215 с кодом 4, 6, 7) + + + + + Дата операции + + + + + Сумма операции + + + + + + + Отчетный период + + + + + Квартал + + + + + + + + + + + + + + + + Информация о совершенных операциях и остатках по счету + + + + + Муниципальное образование + + + + + Отчетный период + + + + + Остаток на начало периода + + + + + Остаток на конец периода + + + + + Операция по счету (передаются все актуальные операции) + + + + + + + Экспортируемая информация о совершенных операциях и остатках по счету + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Зачислено за период + + + + + Списано за период + + + + + Статус + + + + + + + + + + + Идентификатор информации о совершенных операциях и остатках по счету + + + + + + + + Кредитные договоры/договоры займа РО + + + + Кредитный договор/договор займа + + + + + Вид договора + + + + Кредитный договор + + + + + Договор займа + + + + + + Кредитор + + + + + БИК + + + + + + + + + + Займодавец + + + + + Номер договора + + + + + Дата договора + + + + + + Срок договора в месяцах + + + + + + + + + + Бессрочный + + + + + + + Поцентная ставка + + + + + + + + + + + Беспроцентный + + + + + + Примечание к процентной ставке + + + + + Размер + + + + + + + + + + + Примечание к размеру + + + + + Файлы договора + + + + + + + Экспортируемый кредитный договор/договор займа + + + + + + + Региональный оператор - владелец + + + + + Статус погашения + + + + + Сведения о расторжении + + + + + Статус + + + + + + + + + + + Идентификатор кредитного договора/договора займа + + + + + + + + + Сведения о расторжении + + + + + Причина + + + + + Номер документа + + + + + Дата документа + + + + + Файлы документа + + + + + + Тип для информации о размере фонда + + + + Тип информации о размере фонда капитального ремонта + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + ОКТМО + + + + + Отчетный период + + + + + Размер фонда на начало отчетного периода + + + + + Размер фонда на конец отчетного периода + + + + + Размер средств, направленных на капитальный ремонт за отчетный период + + + + + Размер задолженности за выполненные работы по капитальному ремонту по состояния на конец отчетного периода + + + + + Информация по помещениям. При изменении информации о размере фонда необходимо присылать всю информацию по помещениям в актуальном состоянии + + + + + + Идентификатор лицевого счета + + + + + Задолженность/переплата на начало периода (отрицательная сумма - задолженность, положительная - переплата) + + + + + Начислено взносов за период + + + + + Начислено пени за период + + + + + Уплачено взносов за период + + + + + Уплачено пени за период + + + + + Задолженность/переплата на конец периода (отрицательная сумма - задолженность, положительная - переплата) + + + + + + + + + + Экспортируемая информация о размере фондов капитального ремонта + + + + + + + Идентификатор информации о размере фондов капитального ремонта + + + + + Статус версии + + + + + + + + Импорт КПР, РАПКР, МАПКР + + + + Запрос на импорт сведений о КПР/РАПКР/МАПКР + + + + + + + + Импортируемая программа/план + + + + + + Транспортный идентификатор для выполнения операции с программой/планом + + + + + Идентификатор программы/плана в ГИС ЖКХ + + + + + Создание/Изменение паспорта программы/плана. + + + + + Документы программы/плана + + + + + + + + + + Действия с программой/планом + + + + Удалить программу/план в статусе "Проект" + + + + + Признак указывает на необходимость размещения программы/плана в ГИС ЖКХ + + + + + Аннулировать программу/план + + + + + + + + + + + + + + + + + + + + + + + Запрос на импорт сведений о домах и работах КПР/РАПКР/МАПКР + + + + + + + + Идентификатор программы/плана ГИС ЖКХ + + + + + Сведения о домах и работах программы/плана + + + + + + Транспортный идентификатор для выполнения операции со сведениями о домах и работах программы/плана + + + + + Идентификатор работы в программе/плане. Заполняется при изменении либо удалении работы в доме + + + + + + Добавить дома и работы в программу/план + + + + + Удалить работу в программе/плане + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт КПР, РАПКР, МАПКР + + + + Запрос на экспорт сведений о КПР/РАПКР/МАПКР + + + + + + + + Идентификатор программы/плана в ГИС ЖКХ + + + + + + Вид программы, Plan - КПР, MunicipalAddressProgram - МАПКР, RegionalAddressProgram - РАПКР + + + + + + + + + + + + Территория реализации программы/плана. Для регионального КПР и РАПКР должно быть прислано ОКТМО уровня региона. Для муниципального КПР и МАПКР должно быть прислано ОКТМО уровня муниципального образования. + + + + + + + + + + + + Запрос на экспорт сведений о домах и работах КПР/РАПКР/МАПКР + + + + + + + + Идентификатор программы/плана в ГИС ЖКХ + + + + + Отобрать работы по месяцу окончания работы + + + + + + Месяц и год начала периода + + + + + Месяц и год окончания периода + + + + + + + + Отобрать работы по территории + + + + + + Территория расположеная домов, в которых выполняются работы. В результатах экспорта отображаются также и дома на дочерних территориях + + + + + + + + Отобрать работы по виду работ + + + + + + Вид работы капитального ремонта (НСИ 219) + + + + + + + + Отобрать работы по адресу дома + + + + + + Идентификатор дома в ГИС ЖКХ + + + + + + + + + + Сдвиг относительно первого элемента (первый элемент имеет позицию 0) + + + + + + + + + + Количество строк с информацией о работах, которые необходимо экспортировать + + + + + + + + + + + + + + Импорт сведений о региональной программе капитального ремонта + + + + Запрос на импорт общих сведений о региональной программе капитального ремонта + + + + + + + + Импортируемая региональная программа капитального ремонта + + + + + + Транспортный идентификатор для выполнения операции с региональной программой капитального ремонта + + + + + Идентификатор РПКР в ГИС ЖКХ + + + + + Создание/Изменение паспорта РПКР + + + + + Документы РПКР + + + + + + + + + + Действия с РПКР + + + + Удалить программу в статусе "Проект" + + + + + Признак указывает на необходимость размещения РПКР в ГИС ЖКХ + + + + + Аннулировать программу + + + + + + + + + + + + + + + + + + + + + + + Запрос на импорт сведений о домах и работах региональной программы капитального ремонта + + + + + + + + Идентификатор РПКР в ГИС ЖКХ + + + + + Сведения о домах и работах региональной программы капитального ремонта + + + + + + Транспортный идентификатор для выполнения операции c работой в РПКР + + + + + Идентификатор работы в РПКР + + + + + + Добавить/Изменить дома и виды работ в РПКР + + + + + Удалить работу из РПКР + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт сведений о региональной программе капитального ремонта + + + + Запрос на экспорт сведений о региональной программе капитального ремонта + + + + + + + + Идентификатор РПКР в ГИС ЖКХ + + + + + Территория реализации РПКР (ОКТМО уровня региона) + + + + + + + + + + + Запрос на экспорт сведений о домах и работах региональной программе капитального ремонта + + + + + + + + Идентификатор РПКР, из которой экспортируются работы + + + + + Отобрать работы по месяцу окончания работы + + + + + + Месяц и год начала периода + + + + + Месяц и год окончания периода + + + + + + + + Отобрать работы по территории + + + + + + Территория расположения домов, в которых выполняются работы. В результатах экспорта отображаются также и дома на дочерних территориях + + + + + + + + Отобрать работы по виду работ + + + + + + Вид работы капитального ремонта (НСИ 219) + + + + + + + + Отобрать работы по адресу дома + + + + + + Идентификатор дома в ГИС ЖКХ + + + + + + + + + + Сдвиг относительно первого элемента (первый элемент имеет позицию 0) + + + + + + + + + + Количество строк с информацией о работах, которые необходимо экспортировать + + + + + + + + + + + + + + Экспорт кредитных договоров/договоров займа + + + + Запрос на экспорт кредитных договоров/договоров займа + + + + + + + + Идентификатор кредитного договора/договора займа + + + + + + Дата договора с + + + + + Дата договора по + + + + + + + + + + + Импорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + Запрос на импорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + + + Идентификатор КПР в ГИС ЖКХ + + + + + Импортируемый договор (создание/редактирование договора, расторжение договора, аннулирование договора) + + + + + + Транспортный идентификатор для выполнения операции с договором + + + + + Идентификатор договора в ГИС ЖКХ + + + + + + Создать/Редактировать договор. При редактировании договора необходимо присылать всю актуальную информацию по договору + + + + + + + + + + + + + + + Расторгнуть договор + + + + + Аннулировать договор + + + + + + + + + + + + + + + + + + + + + + Импорт актов выполненных работ (оказанных услуг) по капитальному ремонту + + + + Запрос на импорт актов выполненных работ (оказанных услуг) по капитальному ремонту + + + + + + + + Идентификатор договора в ГИС ЖКХ + + + + + Импорт акта + + + + + + Транспортный идентификатор для выполнения операции с актом + + + + + Идентификатор акта в ГИС ЖКХ + + + + + + Создание/Изменение Акта выполненной работы (оказанных услуг). При редактировании акта необходимо присылать всю актуальную информацию по нему, в том числе присылать актуальный список работ, учтенных в акте + + + + + + + + + + Аннулировать акт + + + + + + + + + + + + + + + + + + + + + + Импорт сведений об оплате по договорам на выполнение работ (оказание услуг) по капитальному ремонту + + + + Запрос на импорт сведений об оплате по договорам + + + + + + + + Идентификатор договора в ГИС ЖКХ + + + + + Импортируемые сведения + + + + + + Транспортный идентификатор для выполнения операции со сведениями об оплате + + + + + Идентификатор сведений об оплате в ГИС ЖКХ + + + + + + Создание/Изменение сведений об оплате. При редактировании оплаты необходимо присылать всю актуальную информацию по ней, в том числе присылать актуальный список работ из оплаты + + + + + Аннулирование сведений об оплате + + + + + + + + + + + + + + + + + + + + + + Экспорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + Запрос на экспорт договоров на выполнение работ (оказание услуг) по капитальному ремонту + + + + + + + + Идентификатор договора в ГИС ЖКХ + + + + + + Дата договора С + + + + + Дата договора ПО + + + + + + + + + + + Импорт счетов регионального оператора + + + + Запрос на импорт счетов регионального оператора + + + + + + + + Импортируемые сведения о создании/изменении реквизитов/закрытии/ аннулировании счета регионального оператора + + + + + + Транспортный идентификатор для выполнения операции со сведениями о счете регионального оператора + + + + + Идентификатор счета регионального оператора + + + + + + Добавить/Изменить реквизиты счета регионального оператора + + + + + + + + Дата открытия/изменения реквизитов счета регионального оператора + + + + + Номер корреспондентского счета + + + + + + + + + + Информация о закрытии счета регионального оператора + + + + + + Дата закрытия счета регионального оператора + + + + + + + + Аннулировать счет регионального оператора + + + + + + + + + + + + + + + + + + + + + + Изменение реквизитов и закрытие специальных счетов + + + + Запрос на импорт сведений об изменении реквизитов и закрытии специального счета. Создание, размещение специальных счетов, а также аннулирование выполняется посредством размещения (аннулирования) решений о выборе способа формирования фонда капитального ремонта операция -importDecisionsonsFormingFundRequest. + + + + + + + + Импортируемые сведения об изменении реквизитов и закрытии специального счета + + + + + + Транспортный идентификатор для выполнения операции со специальным счетом + + + + + Идентификатор специального счета + + + + + + Импортировать сведения об изменении реквизитов специального счета + + + + + + + + Применяется с (дата с которой изменились реквизиты) + + + + + Номер корреспондентского счета + + + + + + + + + + Информация о закрытии специального счета + + + + + + Дата закрытия специального счета + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт счетов региональных операторов и специальных счетов + + + + Запрос на экспорт счетов. + +Доступны версии: 12.0.0.1 и 15.5.0.1 + + + + + + + + + Идентификатор счета + + + + + Кредитная организация + + + + + БИК кредитной организации + + + + + + + + + + + Дата открытия счета С + + + + + Дата открытия счета ПО + + + + + + + Отобразить информацию о совершенных операциях и остатках? + + + + Не отображать + + + + + Отображать + + + + Отчетный период с + + + + + Отчетный период по + + + + + + + + + + + + Импорт решений о выборе способа формирования фонда капитального ремонта + + + + Запрос на импорт решений о выборе способа формирования фонда капитального ремонта. + + + + + + + + Импортируемые сведения о решении о выборе способа формирования фонда капитального ремонта + + + + + + Транспортный идентификатор для выполнения операции с решением + + + + + + Создание решения о выборе способа формирования фонда капитального ремонта с последующим размещением в ГИС ЖКХ + + + + + + + + + + Аннулирование решения о выборе способа формирования фонда капитального ремонта + + + + + + Идентификатор решения о выборе способа формирования фонда капитального ремонта + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт решений о выборе способа формирования фонда капитального ремонта + + + + Запрос на экспорт решений о выборе способа формирования фонда капитального ремонта. + +Доступны версии: 11.3.0.3 и 15.5.0.1 + + + + + + + + Идентификатор решения о выборе способа формирования фонда капитального ремонта в ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + + + + + + Импорт решений о порядке выставления платежных документов + + + + Запрос на импорт решений/информации о порядке представления платежных документов + + + + + + + + Импортируемые сведения о решении/информации о порядке представления платежных документов + + + + + + Транспортный идентификатор + + + + + + Создание решения/информации о порядке представления платежных документов с последующим размещением в ГИС ЖКХ + + + + + + + + + + Аннулирование решения/информации о порядке представления платежных документов + + + + + + Идентификатор решения/информации о порядке представления платежных документов + + + + + + + + + + + + + + + + + + + + + + + + + Экеспорт решений о порядке выставления платежных документов + + + + Запрос на экспорт решений/информации о порядке представления платежных документов + +Доступны версии 11.10.0.2 и 12.2.0.13 + + + + + + + + Идентификатор решения/информации о порядке представления платежных документов в ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + + + + + + Импорт информации о совершенных операциях и остатках по счетам + + + + Импорт информации о совершенных операциях и остатках по счетам + + + + + + + + Импорт информации о совершенных операциях и остатках по счету + + + + + + Транспортный идентификатор для импорта информации о совершенных операциях и остатках по счету + + + + + Идентификатор информации о совершенных операциях и остатках по счету (обязателен в случае внесения изменений или аннулирования информации) + + + + + Счет + + + + Счет регионального оператора + + + + Идентификатор счета регионального оператора в ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Специальный счет + + + + Идентификатор специального счета + + + + + + + + Добавление/внесение изменений в информацию о совершенных операциях и остатках по счету + + + + + + + + + + Аннулировать информацию о совершенных операциях и остатках по счету + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора информации о совершенных операциях и остатках в рамках запроса + + + + + + + Импорт информации о размере фондов капитального ремонта + + + + Импорт информации о размере фондов капитального ремонта + + + + + + + + Импорт информации о размере фондов капитального ремонта (Создание/внесение изменений/аннулирование) + + + + + + Транспортный идентификатор для выполнения операции со сведениями об информации о размере фондов капитального ремонта + + + + + Идентификатор информации о размере фондов капитального ремонта + + + + + + Создание/Внесение изменений в информацию о размере фонда, с последующим размещением в ГИС ЖКХ + + + + + Аннулировать запись + + + + + + + + + + + + + + + + + + + + + + Экспорт информации о размере фондов капитального ремонта + + + + Запрос на экспорт информации о размере фондов капитального ремонта + + + + + + + + Идентификатор информации о размере фондов капитального ремонта + + + + + Экспорт по параметрам + + + + Адрес дома + + + + ОКТМО + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Отчетный период - с + + + + + Отчетный период - по + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + Результат импорта + + + + + Экспортируемый договор + + + + + Информация о счетах регионального оператора/специальных счетах + + + + + Экспортируемое решение о выборе способа формирования фонда капитального ремонта + + + + + Экспортируемый кредитный договор/договор займа + + + + + Экспортируемая информация о размере фондов капитального ремонта + + + + + Экспортируемый КПР/РАПКР/МАПКР + + + + + Экспортируемые сведения о домах и работах КПР/РАПКР/МАПКР + + + + + Экспортируемая РПКР + + + + + Экспортируемые сведения о домах и работах РПКР + + + + + Информация о порядке представления платежных документов + + + + + + + + + \ No newline at end of file diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/changelog.txt b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/changelog.txt new file mode 100644 index 0000000..be3ba63 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/changelog.txt @@ -0,0 +1,2608 @@ +=========================================================== +Изменения в форматах данных от версии 15.6.0.1 до версии 15.7.0.1 +=========================================================== +- NEWHCS-22321 +hcs-debt-requests-types.xsd +1.Для операций импорта (importDebtRequest) удалена поддерживаемая версия 13.3.1.0 + +- HCS-96288 +hcs-house-management-types.xsd +1. Изменена аннотация к элементу EndSupplyDate +=========================================================== +Изменения в форматах данных от версии 15.5.0.1 до версии 15.6.0.1 +=========================================================== +- NEWHCS-23847 + +hcs-house-management-types.xsd +1. Для операции запроса на экспорт информации о доме (exportHouseRequest) добавлена поддерживаемая версия 15.6.0.1, в которой: +1.1. Добавлен элемент "Идентификатор дома в реестре объектов жилищного фонда" (tns:HouseGUID) +1.2. Изменен контроль INT004159 +2. Для операции импорта платежных документов (importPaymentDocumentRequest) добавлен контроль SRV008203 +3. Для операции экспорта (exportHouseData) добавлена поддерживаемая версия 15.6.0.1, в которой: +3.1. Добавлен элемент "Идентификатор дома в реестре объектов жилищного фонда" (tns:HouseGUID) + +- NEWHCS-19528 +hcs-house-management-types.xsd +1. Изменена аннотация для GetStateResult + +- NEWHCS-18974 +hcs-house-management-types.xsd +1. В метод импорта данных дома importHouseOMSRequest внесены изменения: +1.1. Добавлены элементы ApartmentHouseToCreate/tns:ManagementPeriodFrom (Дата начала способа управления), ApartmentHouseToUpdate/tns:ManagementPeriodFrom (Дата начала способа управления) +1.2. Изменена аннотация к элементу /tns:importHouseOMSRequest/tns:ApartmentHouse/tns:ApartmentHouseToCreate/tns:HouseManagementType (добавлено значение "Выбран, но не реализован") +1.3. Изменена аннотация в методе importHouseOMSRequest: добавлена поддержка версии 15.6.0.1 +2. Добавлен контроль INT004216 +3. Изменен контроль INT004169, INT004210 +4. Удален контроль INT004177 + +- NEWHCS-21348 +hcs-house-management-types.xsd +1. В метод импорта МКД для ЕП importHouseESPRequest внесены изменения: +1.1. Добавлены элементы ApartmentHouseToCreate/tns:ManagementPeriodFrom (Дата начала способа управления), ApartmentHouseToUpdate/tns:ManagementPeriodFrom (Дата начала способа управления) +1.2. В описании реквизита tns:HouseManagementType добавлен вариант "Выбран, но не реализован" +1.3. В описании импорта importHouseESPRequest добавлена поддерживаемая версия 15.6.0.1 +2. Добавлен контроль INT004214, INT004215 +=========================================================== +Изменения в форматах данных от версии 15.4.0.1 до версии 15.5.0.1 +=========================================================== +- NEWHCS-20729, NEWHCS-22298 +hcs-capital-repair-types.xsd +1. Для операций импорта (importAccountRegionalOperatorRequest, importAccountSpecialRequest, importDecisionsFormingFundRequest) изменена поддерживаемая версия на 15.5.0.1, в которой: +1.1. Добавлен необязательный элемент "Номер корреспондентского счета" +2. Для результата экспорта (exportAccountRequest и exportDecisionsFormingFundRequest) добавлена поддерживаемая версия 15.5.0.1, в которой: +2.1. Добавлен необязательный элемент "Номер корреспондентского счета" + +- NEWHCS-22321 +(будут доступны только с версии 15.7.0.1) +hcs-debt-requests-types.xsd +1.Для операций импорта (importDebtRequest) удалена поддерживаемая версия 13.3.1.0 + +- HCS-96246 +hcs-house-management-types.xsd +1. Добавление аннотации для схемы: Добавлен статус PostedFromAnotherSystem в StatusProtocol и StatusVersionProtocol для экспорта протоколов ОСС (exportVotingProtocolRequest и exportVotingProtocolResultType) + +=========================================================== +Изменения в форматах данных от версии 15.3.0.1 до версии 15.4.0.1 +=========================================================== +- NEWHCS-22140 +hcs-house-management-types.xsd +1. Для операции импорта (importVotingProtocolRequest, importVotingMessageRequest ), экспорта (exportVotingProtocolRequest) изменена поддерживаемая версия на 15.4.0.1, в которой: +1.1. В поля с Датой начала приема решений (StartMakingDecisionDate) и Датой окончания приема решений (EndMakingDecisionDate) для импорта и экспорта протоколов и сообщений добавлено время для голосований "Заочное (опросным путем)" и "Очно-заочное" (AVoting и MeetingAVoting) +1.2. Поля с Датой начала приема решений (StartMakingDecisionDate) и Датой окончания приема решений (EndMakingDecisionDate) стали необязательны для импорта и экспорта протоколов (importVotingProtocolRequest, exportVotingProtocolRequest) +2. Для операции импорта (importVotingMessageRequest) поле Дата составления сообщения (MessageDate) не обязательно + +- NEWHCS-21447 +hcs-house-management-types.xsd +1. Добавлена операция экспорта ПУ по лицевому счету для Оператора ДСП (exportODSPMeteringDeviceDataRequest) +2. Добавлен элемент ПУ для оператора дистанционного снятия показаний (exportODSPMeteringDeviceDataResult) в запрос getStateResult (Возврат статуса отправленного сообщения) +hcs-house-management-service-async.wsdl +3. Добавлена операция экспорта ПУ по лицевому счету для Оператора ДСП (exportODSPMeteringDeviceData) + +NEWHCS-22674 +hcs-licenses-types +1. Для операций экспорта (exportDisqualifiedPersonRequest и exportDisqualifiedPersonResult) добавлена поддерживаемая версия 15.4.0.1, в которой +1.1. Добавлено поле ErulNumber (Номер по ЕРУЛ) и TempNumber (Временный номер) + +=========================================================== +Изменения в форматах данных от версии 14.8.0.2 до версии 15.3.0.1 +=========================================================== +- NEWHCS-21307 +hcs-debts-types.xsd + +1. Для операций экспорта (exportDebtResult), импорта (importDebtRequest) добавлена поддерживаемая версия 15.3.0.0, в которой: +1.1. Добавлен новый элемент JudicalActDatePronouncing (Дата судебного акта (вынесения)) в запросы importDebtRequest (Запрос на импорт сведений о задолженностях за ЖКУ), exportDebtResult (Результат экспорта сведений о задолженности за ЖКУ) структуру JudicalAct (Сведения о судебном акте) +1.2. Добавлен новый элемент JudicalActDatePronouncing (Дата судебного акта (вынесения)) в запрос getStateResult (Возврат статуса отправленного сообщения) в структуру Debt (Сведения о задолженности за ЖКУ) + +- NEWHCS-21527 +hcs-debt-requests-types.xsd +1. Для операций экспорта (exportDRsRequest) добавлена поддерживаемая версия 15.3.0.0, в которой: +1.1. Добавлен новый элемент JudicalActDatePronouncing (Дата судебного акта (вынесения)) в запрос exportDRsRequest + +- NEWHCS-20729 +(будут доступны только с версии 15.5.0.1) +hcs-capital-repair-types.xsd +1. Для операций импорта (importAccountRegionalOperatorRequest, importAccountSpecialRequest, importDecisionsFormingFundRequest) изменена поддерживаемая версия на 15.5.0.1, в которой: +1.1. Добавлен необязательный элемент "Номер корреспондентского счета" +2. Для результата экспорта (exportAccountRequest и exportDecisionsFormingFundRequest) добавлена поддерживаемая версия 15.5.0.1, в которой: +2.1. Добавлен необязательный элемент "Номер корреспондентского счета" + +- NEWHCS-22140 +(будут доступны только с версии 15.4.0.1) +hcs-house-management-types.xsd +1. Для операции импорта (importVotingProtocolRequest, importVotingMessageRequest ), экспорта (exportVotingProtocolRequest) изменена поддерживаемая версия на 15.4.0.1, в которой: +1.1. В поля с Датой начала приема решений (StartMakingDecisionDate) и Датой окончания приема решений (EndMakingDecisionDate) для импорта и экспорта протоколов и сообщений добавлено время для голосований "Заочное (опросным путем)" и "Очно-заочное" (AVoting и MeetingAVoting) +1.2. Поля с Датой начала приема решений (StartMakingDecisionDate) и Датой окончания приема решений (EndMakingDecisionDate) стали необязательны для импорта и экспорта протоколов (importVotingProtocolRequest, exportVotingProtocolRequest) +2. Для операции импорта (importVotingMessageRequest) поле Дата составления сообщения (MessageDate) не обязательно + +=========================================================== +Изменения в форматах данных от версии 14.8.0.1 до версии 14.8.0.2 +=========================================================== +- NEWHCS-20666 +Для операций экспорта ПУ (exportMeteringDeviceDataRequest) и импорта ПУ (importMeteringDeviceDataRequest) +- в блоках ResidentialPremiseDevice, NonResidentialPremiseDevice, CollectiveApartmentDevice элемент PremiseGUID перемещен на первую позицию. +- в блоке LivingRoomDevice элемент LivingRoomGUID перемещен на первую позицию. +=========================================================== +Изменения в форматах данных от версии 14.7.0.1 до версии 14.8.0.1 +=========================================================== +- NEWHCS-17714 +hcs-appeals-types.xsd +1. Изменен тип exportAppealResultType добавлен элемент PremiseNumber - Номер помещения. +2. Изменен расширенный тип ApplicantType (в элементе ApplicantInfo типа exportAppealResultType): добавлен элемент AppealEmail - Электронная почта, указанная в обращении +3. Изменена аннотация к элементу Email - Электронная почта в ЛК. + +- NEWHCS-17017, NEWHCS-20621 +hcs-house-management-types.xsd +1. Добавлена поддерживаемая версия 14.8.0.1 для операции экспорта ПУ (exportMeteringDeviceDataRequest) +1.1. Для ResidentialPremiseDevice, NonResidentialPremiseDevice, CollectiveApartmentDevice: +добавлены элементы: PremiseInfo/PremiseGUID, PremiseInfo/PremiseNo (заполняется для версии 14.8.0.1) +элемент: PremiseGUID сделан необязательным (заполняется для версии 11.1.0.2) +1.2. Для LivingRoomDevice: +добавлены элементы LivingRoomInfo/LivingRoomGUID, LivingRoomInfo/LivingRoomNo (заполняется для версии 14.8.0.1) +элемент:LivingRoomGUID сделан необязательным (заполняется для версии 11.1.0.2) +=========================================================== +Изменения в форматах данных от версии 14.5.0.1 до версии 14.7.0.1 +=========================================================== +- NEWHCS-17155 +(Будут доступны только с версии 15.1.0.1) +hcs_base.xsd +1. Добавлен метод getRequestsStateRequest +2. Добавлен тип BaseRequestsStateResponse +hcs-bills-types.xsd +3. Добавлен элемент getRequestsStateResult +hcs-bills-service-async.wsdl +4. Добавлен метод getRequestsState +=========================================================== +Изменения в форматах данных от версии 14.4.0.1 до версии 14.5.0.1 +=========================================================== +- NEWHCS-17155 +(Будут доступны только с версии 14.7.0.0) +hcs_base.xsd +1. Добавлен метод getRequestsStateRequest +2. Добавлен тип BaseRequestsStateResponse +hcs-bills-types.xsd +3. Добавлен элемент getRequestsStateResult +hcs-bills-service-async.wsdl +4. Добавлен метод getRequestsState + +- NEWHCS-18611 +hcs-house-management-types.xsd +в элементе exportVotingProtocolRequest расширен enum StatusVersionProtocol значением "PostedFromAnotherSystem" + +============================================================= +Изменения в форматах данных от версии 14.3.0.2 до версии 14.4.0.1 +============================================================= +- NEWHCS-17482, NEWHCS-17736 +hcs-licenses-types.xsd +1. Для результатов экспорта лицензий exportActualLicenseStateResultType в рамках типа LicenseRegistryEntriesType добавлены следующие блоки полей: +1.1 ErulSentInfo - Информация по отправлению в ЕРУЛ +1.2 FnsSentInfo - Информация по отправлению в ФНС +2. Для типа LicenseStatusType добавлен новый вариант в enumeration = "Project" +3. Для результатов экспорта лицензий exportActualLicenseStateResultType добавлен следующий блок полей: +3.1 EsiaSentInfoType - Информация по отправлению в ЕСИА + +- NEWHCS-15492 +hcs-appeals-types.xsd +1. Для метода экспорта обращений exportAppealRequest добавлена поддерживаемая версия 14.4.0.1 +2. Для результатов экспорта обращений ExportAppealResult добавлены элементы: +2.1 Collective - признак "Коллективное обращение" +2.2 NeighbourInfo - список присоединившихся соседей + +- NEWHCS-9469 +hcs-licenses-service-async.wsdl +hcs-licenses-types.xsd +1. Метод импорт информации о реестровой записи importLicenseEntry введен в эксплуатацию + +- NEWHCS-17155 +(Будут доступны только с версии 14.5.0.0) +hcs_base.xsd +1. Добавлен метод getRequestsStateRequest +2. Добавлен тип BaseRequestsStateResponse +hcs-bills-types.xsd +3. Добавлен элемент getRequestsStateResult +hcs-bills-service-async.wsdl +4. Добавлен метод getRequestsState + +- NEWHCS-17825 +hcs-capital-repair-types.xsd +1. Для операции импорта решений о выборе способа формирования фонда капитального ремонта (importDecisionsFormingFundRequest) добавлена аннотация к элементу tns:DocumentIsNotAvailable (tns:importDecision/tns:LoadDecision/tns:Protocol/tns:DocumentIsNotAvailable) +hcs-house-management-types.xsd +2. Для операции импорта лицевых счетов (importAccountRequest) добавлена аннотация к элементу tns:TKOContract (tns:Account/tns:AccountReasons/tns:TKOContract) + +============================================================= +Изменения в форматах данных от версии 14.3.0.2 до версии +============================================================= +NEWHCS-17017 +- hcs-house-management-types.xsd +1.В типе MeteringDeviceBasicCharacteristicsType добавлены номера помещений и комнат. +============================================================= +Изменения в форматах данных от версии 14.3.0.0 до версии 14.3.0.2 +============================================================= + +- NEWHCS-9469, NEWHCS-9470 +hcs-licenses-service-async.wsdl +hcs-licenses-types.xsd +1. В сервис по работе с лицензиями добавлены следующие операции для работы реестром лицензий, ведение которого осуществляется по реестровой модели: +1.1. exportActualLicenseState - Экспорт информации о лицензиях из реестровой модели лицензий +1.2. importLicenseEntry - Импорт информации о реестровой записи (Операция доступна только с версии 14.4.0.0) + +- NEWHCS-9468 +hcs-licenses-types.xsd +1. Для результатов экспорта лицензий в тип exportLicenseResultType добавлены следующие поля: +1.1. tns:ErulNumber - Номер лицензии по ЕРУЛ +1.2. tns:TempNumber - Временный номер лицензии +1.3. tns:ApplicationMethod - Способ подачи заявления о предоставлении лицензии +1.4. tns:ApplicationNumber - Номер заявления на предоставление лицензии +1.5. tns:ApplicationDate - Дата заявления на предоставление лицензии + +============================================================= +Изменения в форматах данных от версии 14.1.0.0 до версии 14.3.0.0 +============================================================= + - HCS-95281 +hcs-payments-base.xsd +1. Изменено ограничение на максимальное кол-во символов для элементов Наименование получателя (PaymentInformationExportType/tns:PaymentRecipient и PaymentInformation/tns:PaymentRecipient) + +============================================================= +Изменения в форматах данных от версии 14.0.0.0 до версии 14.1.0.0 +============================================================= +- HCS-95227 +hcs-services-types.xsd +1. Добавлено ограничение на минимальное кол-во символов для элемента Причина аннулирования (importWorkingListRequest/tns:AnnulledWorkingList/tns:ReasonOfAnnulment) +- NEWHCS-15848 +hcs-services-types.xsd +1. Добавлены возможные значения для элемента Тип акта (importQualityAssessmentRequest/tns:QualityAssessment/tns:PlacingQualityAssessment/tns:Works/tns:Act/tns:AddAct/tns:ActType) +- HCS-95131 +hcs-bills-types.xsd +1. Удалена информация о неактуальности для элементов Задолженность за предыдущие периоды (importPaymentDocumentRequest/tns:PaymentDocument/tns:DebtPreviousPeriods) и Аванс на начало расчетного периода (importPaymentDocumentRequest/tns:PaymentDocument/tns:AdvanceBllingPeriod) +============================================================= +Изменения в форматах данных от версии 13.3.2.1 до версии 14.0.0.0 +============================================================= +- NEWHCS-6307, NEWHCS-13842 +hcs-debt-requests-types.xsd +1. Для операции импорта сведений о задолженности (importDRsRequest) +1.1. Добавлен элемент Импортируемые сведения об объекте жилищного фонда (ОЖФ) (ImportHousingFundObjectInfoType) +1.2 Добавлен элемент Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ и Тип ОЖФ(exportHMObjectGUID) +1.2. Для элемента Сведения об объекте жилищного фонда (ОЖФ), по которому осуществляется запрос (housingFundObject) изменен тип на ImportHousingFundObjectInfoType +1.3. Для элемента Серия (series), находящимся в составе элемента Документ, удостоверяющий личность заявителя (DocumentType), убрана обязательность +1.4. Добавлена поддерживаемая версия 14.0.0.0 + +- NEWHCS-9439, NEWHCS-13842 +hcs-debt-requests-types.xsd +1. Для результатов экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ (exportDSRsResult) и запросов о наличии задолженности за ЖКУ (exportDRsResult) добавлен новый элемент для экспорта Информация о задолженности, подтвержденной судебным актом для экспорта ГИС ЖКХ (ExportDebtInfoType) +2. Для операции импорта в ГИС ЖКХ ответов на подзапросы о наличии задолженности за ЖКУ, сформированные ГИС ЖКХ (importDSRResponsesReques) добавлены элементы +2.1. добавлен элемент Идентификатор записи реестра сведений о задолженности (debtGUID), +2.2. добавлена возможность передачи одного из элементов Информация о непогашенной задолженности, подтвержденной судебным актом (debtInfo) или Идентификатор записи реестра сведений о задолженности (debtGUID) при передаче информации о непогашенной задолженности, подтвержденной судебным актом, в составе элемента Ответ на подзапрос (responseData) +2.3 изменена поддерживаемая версия на 14.0.0.0 +2.4 для элемента Серия (series), находящимся в составе элемента Документ, удостоверяющий личность заявителя (DocumentType), убрана обязательность + +- NEWHCS-13982, NEWHCS-13842 +hcs-debt-requests-types.xsd +1. Удален элемент HousingFundObjectInfoType, т.к. пустой и нигде не использовался +2. Для операций экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ (exportDSRsRequest) и экспорта из ГИС ЖКХ запросов о наличии задолженности за ЖКУ (exportDRsRequest) добавлен элемент Сведения об объекте жилищного фонда (ОЖФ) для запроса экспорта запросов/подзапросов (ExportHMObjectInfoType) + +NEWHCS-12924, NEWHCS-6309, NEWHCS-13842 +- hcs-debt-requests-types.xsd +1. Для операции экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ (exportDSRsRequest) +1.1. Изменена поддерживаемая версия на 14.0.0.0 +1.2. Добавлен элемент Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ и Тип ОЖФ (exportHMObjectGUID) +2. Для операции экспорта из ГИС ЖКХ запросов о наличии задолженности за ЖКУ (exportDRsRequest) +1.1. изменена поддерживаемая версия на 14.0.0.0 +1.2. Добавлен элемент Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ и Тип ОЖФ (exportHMObjectGUID) +3. Для результатов экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ (exportDSRsResult) +3.1. добавлены элементы блок судебного акта (AсtType) и Информация об аннулированном объекте жилищного фонда, указанном в записи в реестре сведений о задолженности (cancelledAddressType), передаваемые в составе элемента Документ, подтверждающий задолженность (document) +3.3. Для элемента Серия (series), находящимся в составе элемента Документ, удостоверяющий личность заявителя DocumentType), убрана обязательность +4. Изменено описание и название элемента houseGUID (название изменено на HMobjectGUID в CancelledAddressType и ExportHousingFundObjectInfoType) + +HCS-95173 +- hcs-house-management-types.xsd +1. Скорректировано описание элемента Дата окончания поставки ресурса (EndSupplyDate), передаваемого в составе элемента Предмет договора (ContractSubject) в операциях импорта договора ресурсоснабжения (importSupplyResourceContractRequest) и импорта проекта договора ресурсоснабжения (importSupplyResourceContractProjectRequest) +============================================================= +Изменения в форматах данных от версии 13.3.2.0 до версии 13.3.2.1 +============================================================= +NEWHCS-9860 +- hcs-appeals-types.xsd +1. Для операции экспорта обращений (exportAppeal) добавлена поддерживаемая версия 13.3.2.0, в которой появилась возможность выгрузки элемента, содержащего сведений о планируемой дате исполнения обращения (DateOfAppointment). +============================================================= +Изменения в форматах данных от версии 13.3.1.2 до версии 13.3.2.0 +============================================================= +HCS-93697 +- hcs-house-management-types.xsd +1. Элемент Номер извещения (PurchaseNumber) помечен как неиспользуемый: +В операции импорта сведений о ДУ (importContractRequest) в элементах, используемых для создания ДУ (PlacingContract) и для внесения изменений в версию ДУ (EditContract) +В ответе на экспорт сведений о ДУ (exportCAChResultType). + +NEWHCS-10019 +- hcs-house-management-types.xsd +1. В операцию импорта сообщений (importNotificationRequest) добавлен элемент RecallNotification для отзыва. +============================================================= +Изменения в форматах данных от версии 13.3.1.1 до версии 13.3.1.2 +============================================================= +NEWHCS-6305 +- hcs-debts-types.xsd +1. Обновлена информация о версии операций: +1.1 exportDebt - экспорт сведений о задолженностях за ЖКУ; +1.2. getState - получение статуса обработки запроса; +============================================================= +Изменения в форматах данных от версии 13.3.1.0 до версии 13.3.1.1 +============================================================= +NEWHCS-6303 +- hcs-debts-types.xsd +1. Добавлены ограничения на кол-во загружаемых файлах (до 1000) в элементах: +tns:Act (tns:EditDebt); +tns:AdditionalAttachment (tns:EditDebt); +tns:JudicalActAttachment (tns:PlacingDebt/tns:JudicalAct); +tns:Act (tns:PlacingDebt); +tns:AdditionalAttachment (tns:PlacingDebt); +============================================================= +Изменения в форматах данных от версии 13.3.0.0 до версии 13.3.1.0 +============================================================= +NEWHCS-6303, NEWHCS-6305 +- hcs-debts-service-async.wsdl +- hcs-debts-types.xsd +1. Добавлен новый сервис работы с реестром сведений о задолжженности за ЖКУ DebtServiceAsync, включающий в себя следующие операции: +1.1. importDebt - импорт сведений о задолженностях за ЖКУ; +1.2. exportDebt - экспорт сведений о задолженностях за ЖКУ; +1.3. getState - получение статуса обработки запроса; + +============================================================= +Изменения в форматах данных от версии 13.2.7.1 до версии 13.3.0.0 +============================================================= +HCS-94052 +- hcs-house-management-types.xsd +1.Изменено описание элемента ExportBriefBasicHouseResultType/tns:BasicHouseInfo/tns:LocationInfo/tns:ESTSTATUS + + +NEWHCS-7947, NEWHCS-7946 +- hcs-services-service-async.wsdl +- hcs-services-types.xsd + + 1. В сервис по работе с перечнями работ и услуг добавлены следующие операции для работы с оценкой качества по выполненным работам и услуги: +importQualityAssessmentRequest - импорт сведений об оценке и качестве выполненных работ и оказанных услуг +exportQualityAssessmentRequest - экспорт сведений об оценке и качестве выполненных работ и оказанных услуг + + +============================================================= +Изменения в форматах данных от версии 13.2.5.3 до версии 13.2.7.1 +============================================================= +NEWHCS-6242 +- hcs-capital-repair-types.xsd - +1. Добавлен простой тип tns:KBKType +2. Добавлены элементы tns:OKTMO и tns:KBK в типы tns:AccountType и tns:DecisionType + +HCS-94264 +- hcs-capital-repair-types.xsd - +Добавлены элементы tns:FIASHouseGuid, tns:QuarterPeriodFrom, tns:QuarterPeriodTo в элемент tns:exportFundSizeInfoRequest + +============================================================= +Изменения в форматах данных от версии 13.2.5.2 до версии 13.2.5.3 +============================================================= +NEWHCS-7129 +– hcs-house-management-types.xsd – +Тип атрибутов FloorType "Количество этажей", StoreysCount "Этажность" и MinFloorCount "Количество этажей (наименьшее)" изменен на int, максимальное значение расширено до 999 + +============================================================= +Изменения в форматах данных от версии 13.2.5.1 до версии 13.2.5.2 +============================================================= +NEWHCS-7966 +--hcs-tech-conn-types.xsd-- +1. В tns:importAgreementApplicationStatusRequest добавлены элементы tns:SendAgreementForReSigning, tns:SendActOfCompletenessForReSigning, tns:SendActOfConnectionForReSigning (повторная отправка на подписание). +2. В типе tns:ActApplicationType добавлен элемент tns:AgreementApplicationVersionGUID. + +============================================================= +Изменения в форматах данных от версии 13.2.5.0 до версии 13.2.5.1 +============================================================= +NEWHCS-4031 +– hcs-appeals-types.xsd – +В tns:exportAppealResult/ tns:Appeal/ tns:AppealHistory/ tns:Answer добавлен элемент tns:AnswerGUID (идентификатор записи ответа на обращение) + +============================================================= +Изменения в форматах данных от версии 13.2.3.3 до версии 13.2.5.0 +============================================================= +NEWHCS-5656, NEWHCS-6582 +--hcs-tech-conn-service-async.wsdl-- +--hcs-tech-conn-types.xsd-- +1. Добавлен новый сервис работы с заявлениями по технологическому присоединению TechConnServiceAsync, включающий в себя следующие операции: +1.1. exportOrganizationDeterminationApplication - экспорт заявления на определение организации для технологического присоединения +1.2. exportTechnicalSpecificationApplication - экспорт заявления на предоставление технических условий подключения +1.3. exportConnectionPossibilityApplication - экспорт заявления на предоставление информации о возможности подключения +1.4. exportAgreementApplication - экспорт заявления на заключение договора о подключении +1.5. exportActApplication - экспорт заявления на получение акта по договору о подключении +1.6. importOrganizationDeterminationApplicationStatus - импорт информации об изменении статуса заявления на определение организации для технологического присоединения +1.7. importTechnicalSpecificationApplicationStatus - импорт информации об изменении статуса заявления на предоставление технических условий подключения +1.8. importConnectionPossibilityApplicationStatus - импорт информации об изменении статуса заявления на предоставление информации о возможности подключения +1.9. importAgreementApplicationStatus - импорт информации об изменении статуса заявления на заключение договора о подключении +1.10. importActApplicationStatus - импорт информации об изменении статуса заявления на получение акта по договору +1.11. getState - операция получения результата обработки асинхронного вызова + +============================================================= +Изменения в форматах данных от версии 13.2.3.1 до версии 13.2.3.3 +============================================================= +NEWHCS-4001 +– hcs-house-management-types.xsd – +В importHouseESPRequest в ApartmentHouseESPType, ApartmentHouseUpdateESPType для атрибутов IsMunicipalProperty и IsRegionProperty добавлено значение fixed = false + +============================================================= +Изменения в форматах данных от версии 13.2.2.3 до версии 13.2.3.1 +============================================================= +NEWHCS-2858 +--hcs-base.xsd-- +1. В комплексный тип RequestHeader добавлен элемент "Информация о физическом лице" (Citizen) + +NEWHCS-5120 +--hcs-house-management-types.xsd-- +1. Добавлены типы HostelDataType и ExportHostelDataType +2. В тип ApartmentHouseOMSType добавлен элемент "Данные общежития" (HostelData) с типом HostelDataType +3. В типы ApartmentHouseUOType и ApartmentHouseESPType добавлены элементы "Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития" (IsMunicipalProperty) и Дом находится в собственности субъекта РФ и в полном объеме используется в качестве общежития" (IsRegionProperty) с типом boolean +4. В типы HouseBasicExportType, BriefBasicCharactericticsType, BriefLivingHouseType добавлен элемент "Данные общежития" (ExportHostelData) с типом ExportHostelDataType + +============================================================= +Изменения в форматах данных от версии 13.2.2.1 до версии 13.2.2.3 +============================================================= +NEWHCS-5268 +-- hcs-house-management-types.xsd -- +1. В запрос для импорт новости для информирования граждан (importNotificationRequest) внесены следующие изменения: +1.1. Добавлено поле "Тема" (tns:TopicNSIRef), которое указывается из справочника №364 "Темы новостных сообщений" +1.2. Добавлено поле "Признак "Для публикации в мобильном приложении"" (tns:IsForPublishToMobileApp) +1.3. Добавлен блок полей для новости, публикуемой в мобильном приложении (tns:MobileAppData), который влючает в себя три поля: +1.3.1. Признак, что текст новости не более 500 символов (tns:IsShortTopic) +1.3.2. Признак закрепления новостного сообщения в ленте (tns:IsPin) +1.3.3. Ссылка для перехода из подробного представления новости на произвольную web-страницу (tns:url) +2. Добавлен choice для выбора формы заполнения темы сообщения - для свободного заполнения (tns:Topic) -ИЛИ- для заполнения из справочника (tns:TopicNSIRef) +3. Для запроса на импорт новости для информирования граждан (importNotificationRequest) снято значение base:version атрибута fixed="11.6.0.2". Внесено изменение в аннозацию в части добавления многоверсионности запроса "Доступны версии 11.6.0.2, 13.2.2.0" + + +============================================================= +Изменения в форматах данных от версии 13.2.2.0 до версии 13.2.2.1 +============================================================= +NEWHCS-5414 +--hcs-outage-report-types.xsd-- +1. В типы ExportOutageReportDataType и OutageReportType добавлен элемент "Вид перерыва" (OutageKind) с базовым типом nsi-base:nsiRef + + +============================================================= +Изменения в форматах данных от версии 13.2.0.2 до версии 13.2.2.0 +============================================================= +NEWHCS-3334/3335 +--hcs-appeals-types.xsd-- +1. В запросе импорт ответов на обращения добавлен необязательный элемент для загрузки файлов с детач подписями tns:importAnswerRequest/tns:AnswerAction/tns:Answer/tns:LoadAnswer/tns:SignedAttachments +2. Внесены изменения в запрос на экспорт обращений exportAppealRequest: +2.1. У атрибута @base:version снято fixed значение +2.2. В аннотацию запроса добавлено "Доступны версии 12.2.0.11 и 13.1.10.1" +3. В результатах экспорта добавлен элемент для выгрузки файлов с детач подписями в ответах tns:getStateResult/tns:ExportAppealResult/tns:AppealHistory/tns:Answer/tns:SignedAttachments +4. Для схемы указана версия 13.1.10.1 + + +NEWHCS-4194/4195 +--hcs-outage-report-service-async.wsdl-- +1. Добавлена операция exportOutageReport +--hcs-outage-report-types.xsd-- +1. Добавлен запрос на экспорт сведений о перерывах exportOutageReportRequest +2. Добалены соответствующие типы, описывающие результат экспорта +3. Добавлен элемент "Причина аннулирования" (tns:AnnulmentReason) в операцию аннулирования сведений о перерывах tns:importOutageReportRequest/tns:OutageReport/tns:AnnulmentOutageReport +4. Изменена аннотация элементов tns:importOutageReportRequest/tns:OutageReport/tns:EditOutageReport и tns:importOutageReportRequest/tns:OutageReport/tns:AnnulmentOutageReport в части удаления текста о доступности в будующих версиях + +============================================================= +Изменения в форматах данных от версии 13.2.0.1 до версии 13.2.0.2 +============================================================= +NEWHCS-4225 +--hcs-outage-report-types.xsd-- +1. Внесены следующие изменения в аннотацию элемента OutageReason: +1.1. Исправлен номер справочника 206 "Причины перерывов в предоставлении коммунальных услуг" на 360; +1.2. Уточнено, что для записи справочника в OutageReason в атрибуте "Вид перерыва" должно быть указано значение "Плановый". + + +============================================================= +Изменения в форматах данных от версии 13.1.10.1 до версии 13.2.0.1 +============================================================= +NEWHCS-4225 +--hcs-outage-report-service-async.wsdl-- +--hcs-outage-report-types.xsd-- +1. Добавлен новый сервис импорта сведений о перерывах в предоставлении коммунальных услуг (outage-report), предоставляющий следующие операции: +1.1. importOutageReport - Операция импорта сведений о перерывах в предоставлении коммунальных услуг + +============================================================= +Изменения в форматах данных от версии 13.1.9.2 до версии 13.1.10.1 +============================================================= + +NEWHCS-3599 +--hcs-rvuo-service-async.wsdl-- +1. В аннотации опреаций заменено название реестра "реестр временных УО" на "реестр управляющих организаций и решений об определении управляющих организаций" +--hcs-rvuo-types.xsd-- +1. В аннотации элеменов и комплексных типов удалено название "реестр временных УО" + +NEWHCS-3731 +--hcs-debt-requests-types.xsd-- +1. Из списка значений простого типа RequestStatusType удалено значение "Revoked" +2. У элемента tns:exportDSRsRequest/tns:requestStatus изменены +2.1. значение maxOccurs (новое значение: 1) +2.2. аннотация +3. Изменена аннотация у элемента //element(*,tns:DSRType)/tns:responseStatus + +NEWHCS-3621 +--hcs-debt-requests-types.xsd-- +1. Внесены изменения запросах exportDRsRequest и exportDSRsRequest: +1.1. У запросов exportDRsRequest и exportDSRsRequest изменены аннотации. Добавлено "Доступны версии 13.1.1.6 и 13.1.10.1" +1.2. У атрибутов tns:exportDSRsRequest/@base:version и tns:exportDRsRequest/@base:version удалено значение fixed +2. Внесены изменения в тип ExportHousingFundObjectInfoType +2.1. Элемент tns:fiasHouseGUID указан как необязательный + +NEWHCS-3783 +--hcs-appeals-types.xsd-- +1. Внесены следующие изменения в тип exportAppealResultType: +1.1. Добавлен элемент tns:FromMobile - Признак поступления обращения из мобильного приложения "Госуслуги Дом" +1.2. Добавлен элемент tns:ExecutionEndDate - Дата окончания срока исполнения обращения +1.3. Добавлен элемент tns:NPARequirements - Требования нормативно-правовых актов (НПА) +2. Внесены изменения в запрос на экспорт обращений exportAppealRequest: +2.1. У атрибута @base:version снято fixed значение +2.2. В аннотацию запроса добавлено "Доступны версии 12.2.0.11 и 13.1.10.1" + +============================================================= +Изменения в форматах данных от версии 13.1.9.1 до версии 13.1.9.2 +============================================================= + +NEWHCS-3593 +--hcs-bills-types.xsd-- +1. Внесены изменения в элемент importAcknowledgmentRequest: +1.1. Изменена множественность элемента AcknowledgmentRequestInfo с 500 до 100; +1.2. Изменена множественность элемента AckCancellation с 500 до 100. + +NEWHCS-2230 +-- hcs-inspection-types.xsd -- +1. Добавлены элементы для передачи данных об электронных документах с отсоединенной подписью: +1.1. Добавлен элемент tns:SignedAttachments в составном типе tns:ExaminationChangeInfoType +1.2. Добавлен элемент tns:SignedAttachments в составном типе tns:ExportExaminationChangeInfoType +1.3. Добавлен элемент tns:SignedAttachment в составном типе tns:PreceptType +1.4. Добавлен элемент tns:SignedAttachment в составном типе tns:exportPreceptType +1.5. Добавлен элемент tns:SignedAttachment в составном типе tns:OffenceType +1.6. Добавлен элемент tns:SignedAttachment в составном типе tns:exportOffenceType +1.7. Добавлен элемент tns:SignedAttachments в составном типе tns:CancelledInfoWithAttachmentsType +1.8. Добавлен элемент tns:SignedAttachments в составном типе tns:ExportCancelledInfoWithAttachmentsType +1.9. Добавлен элемент tns:SignedOtherDocument в составном типе tns:ResultsInfoType +1.10. Добавлен элемент tns:SignedOtherDocument в составном типе tns:ExportResultsInfoType +1.11. Добавлен элемент tns:SignedAttachments в составном типе tns:ExaminationType +1.12. Добавлен элемент tns:SignedAttachments в составном типе tns:exportExaminationType +2. Изменена аннотация у элемента tns:exportExaminationsRequest + +NEWHCS-1673 +-- hcs-house-management-service-async.wsdl -- +1. Удалены следующие элементы: +1.1. Операция importHouseRSOData +1.2. Сообщение importHouseRSODataRequest +1.3. Сообщение importHouseRSODataResult + +-- hcs-house-management-types.xsd -- +1. Удалены следующие элементы: +1.1. tns:importHouseRSORequest +1.2. tns:getStateResult/tns:ImportResult/tns:CommonResult/tns:ImportHouseRSO +2. Изменена аннотация у следующих элементов: +2.1. //element(*,tns:OGFImportStatusType)/tns:GKNRelationshipStatus + +============================================================= +Изменения в форматах данных от версии 13.1.8.8 до версии 13.1.9.1 +============================================================= + +NEWHCS-3456 +-- hcs-rvuo-types.xsd -- +1. Внесены изменения в exportDecisionRequest: +1.1. У элемента DecisionDate уточнена аннотация. +1.2. Добавлен новый необязательный элемент DecisionPeriod. +1.3. В необязательный choice перемещены элементы DecisionDate, DecisionPeriod. + +============================================================= +Изменения в форматах данных от версии 13.1.8.7 до версии 13.1.8.8 +============================================================= + +NEWHCS-2289 +-- hcs-rvuo-types.xsd -- +1. Внесены изменения в операцию импорта решений importDecisionRequest: +1.1. Удален ключ importDecision_OrgGUIDKey для проверки на уникальность идентификатора организации OrgGUID +1.2. Элемент House указан как необязательный + +============================================================= +Изменения в форматах данных от версии 13.1.8.6 до версии 13.1.8.7 +============================================================= + +NEWHCS-2289 +-- hcs-rvuo-types.xsd -- +1. Элемент tns:importDecisionRequest/tns:Decision/tns:AnnulmentDecision/tns:Reason указан как обязательный +2. Элемент tns:importManagingOrganizationRequest/tns:ManagingOrganization/tns:AnnulmentManagingOrganization/tns:AnnulmentReason указан как обязательный + + +============================================================= +Изменения в форматах данных от версии 13.1.8.5 до версии 13.1.8.6 +============================================================= + +NEWHCS-2290 +-- hcs-rvuo-types.xsd -- +1. Изменен элемент tns:getStateResult/tns:exportManagingOrganizationResult/tns:ManagingOrganization/tns:PlacingDate +1.1. Тип изменен на dateTime +1.2. Аннотация изменена на "Дата и время размещения" +2. Изменен элемент tns:getStateResult/tns:exportDecisionResult/tns:Decision/tns:PlacingDate +2.1. Тип изменен на dateTime +2.2. Аннотация изменена на "Дата и время размещения" + +============================================================= +Изменения в форматах данных от версии 13.1.8.4 до версии 13.1.8.5 +============================================================= +NEWHCS-2290 +-- hcs-rvuo-types.xsd -- +1. Изменен запрос exportDecisionRequest: +1.1. У элемента tns:OKTMO удалена кратность maxOccurs="100". +1.2. В choice перемещены элементы tns:FIASHouseGUID и tns:Address. + +============================================================= +Изменения в форматах данных от версии 13.1.8.3 до версии 13.1.8.4 +============================================================= + +NEWHCS-2289/2290 +-- hcs-rvuo-types.xsd -- +1. Изменен элемент tns:exportManagingOrganizationRequest/tns:OKTMO: +1.1. Удалена кратность maxOccurs="100" + +============================================================= +Изменения в форматах данных от версии 13.1.8.2 до версии 13.1.8.3 +============================================================= + +NEWHCS-2289/2290 +-- hcs-rvuo-types.xsd -- +1. Для всех запросов в сервисе указано фиксированное значение атрибута base:version равное 13.1.8.3 + +============================================================= +Изменения в форматах данных от версии 13.1.8.1 до версии 13.1.8.2 +============================================================= + +HCS-93062 +-- hcs-base.xsd -- +1. Изменена аннотация у элемента //element(*,tns:AttachmentType)/tns:AttachmentHASH + + +NEWHCS-3034 +-- hcs-house-management-types.xsd -- +1. Изменена аннотация у элемента //element(*,tns:ContractType)/tns:LocalGovernmentDecision + + +NEWHCS-2289/2290 +-- hcs-rvuo-service-async.wsdl -- +-- hcs-rvuo-types.xsd -- +1. Добавлен новый сервис ведения реестра временных управляющих организаций и решений об определении временных управляющих организаций (rvuo), предоставляющий следующие операции: +1.1. importManagingOrganization - Импорт информации об управляющей организации в реестр временных УО +1.2. importDecision - Импорт информации о решении об определении управляющей организации в реестр временных УО +1.3. exportManagingOrganization - Экспорт информации об управляющих организациях в реестре временных УО +1.4. exportDecision - Экспорт информации о решении об определении управляющей организации в реестр временных УО + +============================================================= +Изменения в форматах данных от версии 13.1.7.1 до версии 13.1.8.1 +============================================================= + +HCS-93044 +-- hcs-organizations-registry-common-types.xsd -- +1. Изменена аннотация у элемента //element(*,tns:exportOrgRegistryResultType)/tns:OrgVersion/tns:lastEditingDate + + +NEWHCS-1030 +-- hcs-house-management-types.xsd -- +1. В операции импорта договоров управления (importContractData) сервиса обмена сведениями о жилищном фонде (hcs-house-management-service) добавлен необязательный элемент RegistryDecisionID в комплексный тип ContractType +2. В операции экспорта списка договоров управления/уставов (exportCAChData) сервиса обмена сведениями о жилищном фонде (hcs-house-management-service) добавлен необязательный элемент RegistryDecisionID в комплексный тип ContractExportType. + + +NEWHCS-2336, NEWHCS-2337 +В операциях импорта документов «Извещение о принятии к исполнению распоряжения» (importNotificationsOfOrderExecution) и импорта пакетов документов «Извещение о принятии к исполнению распоряжения», размещаемых исполнителем (importSupplierNotificationsOfOrderExecution) сервиса обмена сведениями об оплате и квитировании (hcs-payments), а также в операциях экспорта документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования (exportNotificationsOfOrderExecution) и постраничного экспорта документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования (exportNotificationsOfOrderExecutionPaginal) сервиса обмена сведениями о начислениях, взаиморасчетах (hcs-bills) выполнены следующие изменения + +-- hcs-payments-base.xsd -- +1. Добавлен необязательный элемент tns:OrderInfo/tns:OnlinePayment в следующие комплексные типы: +1.1. NotificationOfOrderExecutionType +1.2. NotificationOfOrderExecution139Type +1.3. NotificationOfOrderExecutionExportType + +-- hcs-payment-types.xsd -- +1. В операции импорта пакета документов «Извещение о принятии к исполнению распоряжения», размещаемых исполнителем сервиса обмена сведениями об оплате и квитировании (hcs-payments) добавлен необязательный элемент importSupplierNotificationsOfOrderExecutionRequest/SupplierNotificationOfOrderExecution/OnlinePayment. + +-- hcs-bills-types.xsd -- +1. В операции экспорта документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования сервиса обмена сведениями о начислениях, взаиморасчетах (hcs-bills) удалено фиксированное значение атрибута tns:exportNotificationsOfOrderExecutionRequest/@base:version +2. В операции постраничного экспорта документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования сервиса обмена сведениями о начислениях, взаиморасчетах (hcs-bills) удалено фиксированное значение атрибута tns:exportNotificationsOfOrderExecutionPaginalRequest/@base:version + + +NEWHCS-2648 +-- hcs-base.xsd -- +1. Добавлен комплексный тип SignedAttachmentType. + + +NEWHCS-2333 +-- hcs-house-management-service-async.wsdl -- +1. Добавлены новые операции: +1.1. importExternalVotingProtocol - Импорт итогов голосования, проведенного с использованием системы, отличной от ГИС ЖКХ +1.2. importVotingMessage - Импорт сообщения о проведении ОСС +1.3. exportVotingMessage - Экспорт сообщения о проведении ОСС +2. Уточнены комментарии для операций импорта и экспорта решений собственников (importOwnerDecision, exportOwnerDecision) - удалено уточнение "без использования системы" + +-- hcs-house-management-types.xsd -- +1. Добавлены простые и составные базовые типы: +1.1. Добавлен комплексный тип tns:AdminOfGeneralMeetingType - Сведения об АОСС +1.2. Изменен комплексный тип tns:AnnulmentProtocolType - Аннулирование протокола ОСС. Добавлены необязательные поля: +1.2.1. AnnulmentOrganization - Организация, принявшая решение об аннулировании +1.2.2. AnnulmentOrganizationText - Организация или физическое лицо, принявшая решение об аннулировании +1.2.3. AnnulmentDate - Дата решения об аннулировании +1.2.4. AnnulmentNumber - Номер решения об аннулировании +1.2.5. NSIModification - Причина аннулирования по НСИ (НСИ№271) +1.2.6. Элемент tns:Attachments - Электронная копия документа об аннулировании +1.2.7. Элемент tns:Modification стал необязательным +1.3. Добавлен комплексный тип tns:VotingSystemDetailsType - Информация о системе, в которой проводится собрание +1.4. Добавлен простой тип tns:VotingSystemType - Система, в которой проводится собрание +2. Добавлены типы и элементы для экспорта и импорта сообщений о проведении ОСС: +2.1. Добавлен простой тип tns:MessageStatusType - Статус сообщения о проведении общего собрания +2.2. Добавлен комплексный тип tns:MessageType - Сообщение о проведении ОСС +2.3. Добавлен комплексный тип tns:MessageExportType - Экспорт сообщения о проведении ОСС +2.4. Добавлен комплексный тип tns:exportVotingMessageResultType - Ответ на запрос экспорта сообщений о проведении ОСС +2.5. Добавлен элемент tns:importVotingMessageRequest - Импорт сообщения о проведениии ОСС +2.6. Добавлен элемент tns:exportVotingMessageRequest - Экспорт сообщений о проведении ОСС +3. Добавлены типы и элементы для импорта итогов голосования, проведенного с использованием системы, отличной от ГИС ЖКХ: +3.1. Добавлен комплексный тип tns:ExternalVotingProtocolType - Итоги для голосований с использованием системы +3.2. Добавлен элемент tns:importExternalVotingProtocolRequest - Импорт итогов голосования, проведенного с использованием системы, отличной от ГИС ЖКХ +4. Изменены типы для экспорта и импорта протоколов ОСС: +4.1. Изменен комплексный тип ProtocolType - Протокол ОСС. Добавлены дочерние элементы: +4.1.1. tns:DecisionList/tns:VotingSystemDetails - Система, в которой проводится голосование +4.1.2. tns:DecisionList/tns:AdminOfGeneralMeeting - Сведения о выбираемом АОСС +4.1.3. Изменена аннотация у элементов tns:AVoting и tns:EVoting +4.2. Изменен комплексный тип tns:ProtocolExportType - Протокол ОСС (для экспорта). Добавлены дочерние элементы: +4.2.1. tns:EVoting/tns:VotingSystemDetails +4.2.2. tns:EVoting/tns:FirstVoting +4.2.3. tns:DecisionList/tns:VotingSystemDetails +4.2.4. tns:DecisionList/tns:AdminOfGeneralMeeting +4.2.5. Изменена аннотация у элемента tns:AVoting +4.3. У элемента tns:exportVotingProtocolRequest - Экспорт протоколов ОСС - изменена аннотация (указана доступность версии 13.1.8.1) +4.4. Изменен комментарий у элемента tns:importVotingProtocolRequest/tns:Annulment +5. Изменены типы для импорта и экспорта решений собственников +5.1. Добавлен элемент tns:importOwnerDecisionRequest/tns:OwnerDecision/tns:MessageGUID +5.2. Изменен комплексный тип tns:QuestionOnDecisionType - Решение по вопросу. Добавлен дочерний элемент IsDigitalDecision - Собственник проголосовал с использованием системы +5.3. Изменен комплексный тип tns:exportQuestionOnDecisionType - Экспортируемое решение по вопросу: +5.3.1. Добавлен дочерний элемент IsDigitalDecision - Собственник проголосовал с использованием системы +5.3.2. Изменена аннотация +5.4. Изменен элемент tns:exportOwnerDecisionRequest - Экспорт протоколов ОСС: добавлен комментарий о доступности версии 13.1.8.1 +5.5. Добавлен элемент tns:exportOwnerDecisionRequest/tns:MessageGUID +5.6. Изменены аннотации у следующих элементов: +5.6.1. tns:importOwnerDecisionRequest +5.6.2. tns:importOwnerDecisionRequest/tns:OwnerDecision +5.6.3. tns:importOwnerDecisionRequest/tns:OwnerDecision/tns:RootOwnerDecisionGUID +5.6.4. tns:exportOwnerDecisionRequest +5.6.5. tns:exportOwnerDecisionRequest/tns:RootOwnerDecisionGUID +5.6.6. tns:exportOwnerDecisionResultType +5.6.7. tns:exportOwnerDecisionResultType/tns:RootOwnerDecisionGUID +5.6.8. tns:getStateResult/tns:exportOwnerDecision +6. Добавлен элемент tns:getStateResult/tns:VotingMessage + + +NEWHCS-2334 +-- hcs-house-management-service-async.wsdl -- +1. Добавлены новые операции: +1.1. importOwnerRefusal - Импорт письменных отказов собственников +1.2. exportOwnerRefusal - Экспорт письменных отказов собственников + +-- hcs-house-management-types.xsd -- +1. Добавлены базовые типы для письменных отказов собственников: +1.1. Простой тип tns:OwnerRefusalStatusType - статус письменного отказа собственника +1.2. Комплексный тип tns:OwnerRefusalType - письменный отказ собственника для импорта +1.3. Комплексный тип tns:OwnerRefusalExportType - письменный отказ собственника для экспорта +2. Добавлены корневые элементы запросов для письменных отказов собственников: +2.1. tns:importOwnerRefusalRequest - Импорт письменных отказов собственников +2.2. tns:exportOwnerRefusalRequest - Экспорт письменных отказов собственников +3. В элемент tns:getStateResult добавлен дочерний элемент tns:exportOwnerRefusal + + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.4.2 до версии 13.1.7.1 +================================================================================================================================ +HCS-92946 +-- hcs-house-management-types.xsd -- +1. Изменены аннотации у следующих элементов: +1.1. tns:importCharterRequest/tns:PlacingCharter/tns:Date +1.2. tns:importCharterRequest/tns:EditCharter/tns:Date + +NEWHCS-2524 +-- hcs-house-management-types.xsd -- +1. Изменены аннотации у следующих элементов: +1.1. //element(*,tns:ProtocolType)/tns:AVoting +1.2. //element(*,tns:ProtocolExportType)/tns:AVoting + +NEWHCS-1759 +-- hcs-payments-base.xsd -- +1. Расширена максимально возможная длина значения для элемента //element(*,tns:PaymentInformationType)/tns:BankName с 45 до 255 символов + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.4.1 до версии 13.1.4.2 +================================================================================================================================ + +NEWHCS-1037 +-- hcs-device-metering-types.xsd -- +1. Изменены аннотации у следующих элементов: +1.1. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:OneRateDeviceValue/tns:CurrentValue/tns:Period +1.2. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:ElectricDeviceValue/tns:CurrentValue/tns:Period +1.3. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:VolumeDeviceValue/tns:CurrentValue/tns:Period + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.7 до версии 13.1.4.1 +================================================================================================================================ + +NEWHCS-1037 +-- hcs-device-metering-types.xsd -- +1. Добавлен необязательный элемент tns:Period в следующие блоки: +1.1. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:OneRateDeviceValue/tns:CurrentValue +1.2. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:ElectricDeviceValue/tns:CurrentValue +1.3. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:VolumeDeviceValue/tns:CurrentValue +2. Добавлен необязательный элемент tns:Period в следующие блоки: +2.1. //element(*,tns:VolumeMeteringValueExportType)/tns:CurrentValue +2.2. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:OneRateDeviceValue/tns:Values/tns:CurrentValue +2.3. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:ElectricDeviceValue/tns:Values/tns:CurrentValue +3. Изменены аннотации у следующих элементов: +3.1. //element(*,tns:VolumeMeteringValueExportType)/tns:CurrentValue +3.2. //element(*,tns:VolumeMeteringValueExportType)/tns:CurrentValue/tns:Period +3.3. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:OneRateDeviceValue/tns:CurrentValue +3.4. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:OneRateDeviceValue/tns:CurrentValue/tns:Period +3.5. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:ElectricDeviceValue/tns:CurrentValue +3.6. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:ElectricDeviceValue/tns:CurrentValue/tns:Period +3.7. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:VolumeDeviceValue/tns:CurrentValue +3.8. tns:importMeteringDeviceValuesRequest/tns:MeteringDevicesValues/tns:VolumeDeviceValue/tns:CurrentValue/tns:Period +3.9. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:OneRateDeviceValue/tns:Values/tns:CurrentValue +3.10. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:OneRateDeviceValue/tns:Values/tns:CurrentValue/tns:Period +3.11. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:ElectricDeviceValue/tns:Values/tns:CurrentValue +3.12. //element(*,tns:exportMeteringDeviceHistoryResultType)/tns:ElectricDeviceValue/tns:Values/tns:CurrentValue/tns:Period +4. Удалено фиксированное значение (fixed="10.0.1.1") для атрибута tns:exportMeteringDeviceHistoryRequest/@base:version + +-- hcs-base.xsd -- +1. Добавлен новый комплексный тип YearMonth +2. Уточнены аннотации комплексных типов Period и PeriodOpen + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.6 до версии 13.1.2.7 +================================================================================================================================ + +NEWHCS-735 +-- hcs-debt-requests-types.xsd -- +1. Изменена аннотация элемента tns:importDRsRequest/tns:action/tns:requestData/tns:housingFundObject/tns:houseGUID - в качестве идентификатора дома дополнительно можно указывать коды ФИАС + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.5 до версии 13.1.2.6 +================================================================================================================================ + +NEWHCS-107 +-- hcs-debt-requests-service-async.wsdl -- +-- hcs-debt-requests-types.xsd -- +1. Добавлен сервис запросов о наличии задолженности за ЖКУ, включающий следующие операции +1.1. importDebtRequests - операция загрузки в ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) +1.2. exportDebtSubrequests - операция выгрузки из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) +1.3. importResponses - операция загрузки в ГИС ЖКХ ответов на запросы о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) +1.4. exportDebtRequests - операция выгрузки из ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) +1.5. getState - операция получения результата обработки асинхронного вызова + +-- hcs-base.xsd -- +1. Добавлены общесистемные комплексные типы: +1.1. Period - для указания временного периода (обе даты обязательны) +1.2. PeriodOpen - для указания открытого временного периода (обе даты необязательны) + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.4 до версии 13.1.2.5 +================================================================================================================================ + +HCSINT-51626 +-- hcs-house-management-types.xsd -- +1. Изменена аннотация элемента //element(*,tns:ContractType)/tns:SignedOwners - уточнены условия заполнения элемента + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.3 до версии 13.1.2.4 +================================================================================================================================ + +HCS-84760 +-- hcs-house-management-types.xsd -- +1. Добавлен элемент в ответ для экспорта по решениям tns:getStateResult/tns:exportOwnerDecision + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.2 до версии 13.1.2.3 +================================================================================================================================ + +HCSANALYST-6636 +-- hcs-house-management-types.xsd -- +1. Добавлен корневой элемент NoCadastralNumber +2. Удалены аннотации у корневых элементов CadastralNumber, No_RSO_GKN_EGRP_Registered, No_RSO_GKN_EGRP_Data, ConditionalNumber, RightOrEncumbrance +3. В сервисах импорта сведений о домах (importHouseUORequest, importHouseRSORequest, importHouseOMSRequest, importHouseESPRequest): +3.1. добавлены необязательные элементы +3.1.1. //element(*,tns:GKN_EGRP_KeyType)/tns:NoCadastralNumber +3.1.2. //element(*,tns:GKN_EGRP_KeyRSOType)/tns:NoCadastralNumber +3.1.3. //element(*,tns:ApartmentHouseUOType)/tns:BasicCharacteristicts/tns:NoCadastralNumber +3.2. изменены аннотации у элементов CadastralNumber, No_RSO_GKN_EGRP_Registered, No_RSO_GKN_EGRP_Data, ConditionalNumber, RightOrEncumbrance +4. В сервисе экспорта сведений о домах (exportHouseResultType) изменены аннотации у элементов CadastralNumber, No_RSO_GKN_EGRP_Registered, No_RSO_GKN_EGRP_Data. + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.2.1 до версии 13.1.2.2 +================================================================================================================================ + +HCS-88670 +-- hcs-house-management-types.xsd -- +1. В сервисе экспорта списка договоров управления/уставов (exportCAChData): +1.1. в простой перечислимый тип CharterStatusExportType добавлено новое допустимое значение "Project" +1.2. изменена аннотация элемента //element(*,tns:exportCAChResultType)/tns:Charter/tns:CharterStatus - добавлено новое возможное значение статуса "Project" + + +HCS-89390 +– hcs-inspection-types.xsd – +1. Исправлены аннотации следующих элементов: +1.1. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExaminationInfo/tns:To +1.2. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExaminationInfo/tns:Objective + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.1.5 до версии 13.1.2.1 +================================================================================================================================ + +HCS-86811 +-- hcs-msp-types.xsd -- +1. В сервисе экспорта перечня отдельных категорий граждан (exportCategories) +1.1. добавлен необязательный элемент tns:getStateResult/tns:Category/tns:Actual/tns:Privatized +1.2. реализована многоверсионность схемы. Доступны версии 11.0.0.1 и 13.1.2.1 + + +HCS-84760 +-- hcs-house-management-service-async.wsdl -- +1. Добавлены новые операции: +1.1. Импорт решения собственника по вопросам голосования без использования системы (importOwnerDecision) +1.2. Экспорт решений собственников по вопросам голосования без использования системы (exportOwnerDecision) + +-- hcs-house-management-types.xsd -- +1. Добавлены новые корневые элементы: +1.1. importOwnerDecisionRequest +1.2. exportOwnerDecisionRequest +1.3. DecisionIndID +1.4. Owner +1.5. PropertyDetails +1.6. exportPropertyDetails +1.7. Representative +2. Добавлены новые комплексные типы: +2.1. exportOwnerDecisionResultType +2.2. OwnerDecisionType +2.3. QuestionOnDecisionType +2.4. exportQuestionOnDecisionType +2.5. DecisionIndType + + + +HCS-88670 +-- hcs-house-management-types.xsd -- +1. В сервисе экспорта списка договоров управления/уставов (exportCAChData): +1.1. изменена аннотация корневого элемента exportCAChAsyncRequest - добавлен перечень доступных версий сервиса +1.2. в простой перечислимый тип ContractStatusExportType добавлено новое допустимое значение "Project" +1.3. изменена аннотация элемента //element(*,tns:exportCAChResultType)/tns:Contract/tns:ContractStatus - добавлено новое возможное значение статуса "Project" + + +HCS-89390 +-- hcs-inspection-types.xsd -- +1. В сервис импорта проверок (importExaminations) +1.1. добавлены необязательные элементы: +1.1.1. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExaminationOverview/tns:PublishERP +1.1.2. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:RegulatoryAuthorityInformation/tns:AuthorizedPersons/tns:ERPExecutiveType +1.1.3. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExaminationInfo/tns:ProsecutorAgreementInformation/tns:ReasonDocType +1.1.4. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExaminationInfo/tns:ProsecutorAgreementInformation/tns:ReasonDenyType +1.1.5. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPExecutiveResultType +1.1.6. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersonsPosition +1.1.7. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPRepresentativesType +1.1.8. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersonsPosition +1.1.9. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:SettlingDocumentPlaceType +1.1.10. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InformationResultType +1.1.11. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExecutingInfo/tns:Place/tns:PlaceAddressType +1.1.12. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExecutingInfo/tns:Place/tns:PlaceObjectType +1.1.13. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPExecutiveResultType +1.1.14. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersonsPosition +1.1.15. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPRepresentativesType +1.1.16. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersonsPosition +1.1.17. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:SettlingDocumentPlaceType +1.1.18. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InformationResultType +1.2. изменена аннотация у следующих элементов: +1.2.1. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersons +1.2.2. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersons +1.2.3. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ExaminationInfo/tns:Objective +1.2.4. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersons +1.2.5. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersons +2. В сервис экспорта проверок (exportExaminations) +2.1. добавлены необязательные элементы: +2.1.1. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExaminationOverview/tns:PublishERP +2.1.2. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:RegulatoryAuthorityInformation/tns:AuthorizedPersons/tns:ERPExecutiveType +2.1.3. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExaminationInfo/tns:ProsecutorAgreementInformation/tns:ReasonDocType +2.1.4. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExaminationInfo/tns:ProsecutorAgreementInformation/tns:ReasonDenyType +2.1.5. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPExecutiveResultType +2.1.6. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersonsPosition +2.1.7. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:ERPRepresentativesType +2.1.8. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersonsPosition +2.1.9. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:SettlingDocumentPlaceType +2.1.10. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InformationResultType +2.1.11. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExecutingInfo/tns:Place/tns:PlaceAddressType +2.1.12. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ExecutingInfo/tns:Place/tns:PlaceObjectType +2.2. изменена аннотация у следующих элементов: +2.2.1. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:InspectionPersons +2.2.2. tns:getStateResult/tns:exportExaminationResult/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:RepresentativesRegionPersons + + +HCS-84780 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта протокола голосования (importVotingProtocol) +1.1. следующие элементы сделаны необязательными, их аннотация изменена: +1.1.1. tns:importVotingProtocolRequest/tns:Protocol/tns:FIASHouseGuid +1.1.2. tns:importVotingProtocolRequest/tns:Protocol/tns:DecisionList/tns:DecisionsType +1.2. добавлены следующие необязательные элементы: +1.2.1. tns:importVotingProtocolRequest/tns:Protocol/tns:OrganizationGuid +1.2.2. tns:importVotingProtocolRequest/tns:Protocol/tns:MeetingType +1.2.3. tns:importVotingProtocolRequest/tns:Protocol/tns:DecisionList/tns:HomeownersDecisionsType +1.2.4. tns:importVotingProtocolRequest/tns:Protocol/tns:DecisionList/tns:СharterContained +1.2.5. tns:importVotingProtocolRequest/tns:Protocol/tns:DecisionList/tns:СharterNotContained +1.3. Изменёно ограничение (constraint) orgRootEntityGUID +2. В сервисе экспорта протокола голосования (exportVotingProtocol) +2.1. снято ограничение на число повторений элемента //element(*,tns:exportVotingProtocolResultType)/tns:FIASHouseGuid +2.2. добавлены следующие необязательные элементы: +2.2.1. //element(*,tns:ProtocolExportType)/tns:OrganizationGuid +2.2.2. //element(*,tns:ProtocolExportType)/tns:MeetingType +2.2.3. //element(*,tns:ProtocolExportType)/tns:DecisionList/tns:HomeownersDecisionsType +2.2.4. //element(*,tns:ProtocolExportType)/tns:DecisionList/tns:СharterContained +2.2.5. //element(*,tns:ProtocolExportType)/tns:DecisionList/tns:СharterNotContained +2.3. сделан необязательным элемент //element(*,tns:ProtocolExportType)/tns:DecisionList/tns:DecisionsType +3. Добавлен простой тип MeetingTypeType + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.1.4 до версии 13.1.1.5 +================================================================================================================================ + +HCS-91560 +-- hcs-uk-service-async.wsdl -- +1. Наименования следующих операций приведены в соответствие с soapAction +1.1. importDocumentRegion +1.2. importDocumentMunicipal +1.3. exportDocument + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.1.3 до версии 13.1.1.4 +================================================================================================================================ + +HCS-88660 +-- hcs-tariff-types.xsd -- +1. В сервисе импорта размеров платы за пользование жилым помещением (importResidentialPremisesUsage) для простого типа CoefficientValueType количество допустимых знаков после запятой увеличено до 6-ти + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.1.2 до версии 13.1.1.3 +================================================================================================================================ + +HCS-90410 +-- hcs-payments-base -- +1. В сервисе импорта извещений о принятии к исполнению распоряжений (importNotificationsOfOrderExecution) установлена обязательность для элементов +1.1 //element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo +1.2 //element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo/tns:PaymentInformation + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.1.1 до версии 13.1.1.2 +================================================================================================================================ + +HCS-64379 +-- hcs-inspection-types.xsd -- +1. В сервисе импорта проверок добавлены необязательные элементы +1.1. tns:importExaminationsRequest/tns:ImportExamination/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:IdentifiedOffencesInfo/tns:MaterialsDirectionAgencyRegistry + +1.2. tns:importExaminationsRequest/tns:ImportExamination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:IdentifiedOffencesInfo/tns:MaterialsDirectionAgencyRegistry + +2. В сервисе экспорта проверок +2.1. добавлен необязательный элемент //element(*,tns:exportExaminationResultType)/tns:Examination/tns:ResultsInfo/tns:FinishedInfo/tns:Result/tns:IdentifiedOffencesInfo/tns:MaterialsDirectionAgencyRegistry +2.2. реализована многоверсионность схемы + + +HCS-88739 +-- hcs-payments-base -- +1. В сервисе экспорта извещений о принятии к исполнению распоряжений (exportNotificationsOfOrderExecution, exportNotificationsOfOrderExecutionPaginal) снята обязательность с группы элементов +1.1 //element(*,tns:exportNotificationsOfOrderExecutionResultType)/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:Entpr +1.2 //element(*,tns:exportNotificationsOfOrderExecutionResultType)/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:Legal +1.3 //element(*,tns:exportNotificationsOfOrderExecutionResultType)/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:EntprFIO + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.0.4 до версии 13.1.1.1 +================================================================================================================================ + +HCS-70378 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта договора ресурсоснабжения (importSupplyResourceContractData) в комплексный тип SupplyResourceContractType добавлены необязательные элементы: +1.1. tns:NoConnectionToWaterSupply +1.2. tns:ObjectAddress/tns:NoConnectionToWaterSupply +2. В сервисе импорта проекта договора ресурсоснабжения (importSupplyResourceContractProjectData) в комплексный тип SupplyResourceContractProjectType добавлен необязательный элемент tns:NoConnectionToWaterSupply +3. В сервисе импорта объектов жилищного фонда в договор ресурсоснабжения (importSupplyResourceContractObjectAddressData) добавлен необязательный элемент tns:importSupplyResourceContractObjectAddressRequest/tns:ObjectAddress/tns:LoadObject/tns:NoConnectionToWaterSupply +4. В сервисе экспорта договора ресурсоснабжения (exportSupplyResourceContractData) +4.1. в комплексный тип ExportSupplyResourceContractType добавлен необязательный элемент tns:NoConnectionToWaterSupply +4.2. для операции реализована многоверсионность схемы +5. В сервисе экспорта объектов жилищного фонда из договора ресурсоснабжения (exportSupplyResourceContractObjectAddressData) +5.1. в комплексный тип exportSupplyResourceContractObjectAddressResultType добавлен необязательный элемент tns:NoConnectionToWaterSupply +5.2. для операции реализована многоверсионность схемы +6. В сервисе экспорта сокращенного состава информации о договорах ресурсоснабжения (exportBriefSupplyResourceContract) в комплексный тип exportBriefSupplyResourceContractResultType добавлены необязательные элементы: +6.1. tns:NoConnectionToWaterSupply +6.2. tns:ObjectAddress/tns:NoConnectionToWaterSupply +6.3. для операции реализована многоверсионность схемы + +-- hcs-volume-quality-types.xsd -- +1. В сервисе импорта информации об объеме и качестве коммунальных ресурсов и услуг (importVolumeAndQualityInformation) следующие элементы в контейнере importVolumeAndQualityInformationRequest/importVolumeAndQualityInformation/RegistrationPeriodInformation/QualityServices стали необязательными: +1.1. ColdWater/IsSignedAct/DurationPressure25 +1.2. ColdWater/IsSignedAct/DaysPressure25 +1.3. HotWater/IsSignedAct/DurationPressure25 +1.4. HotWater/IsSignedAct/DaysPressure25 + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.0.3 до версии 13.1.0.4 +================================================================================================================================ + +HCS-41310 +-– hcs-house-management-types.xsd -- +В сервисе экспорта протокола голосования (exportVotingProtocol): +1. Добавлена новая версия сервиса (13.1.0.4) +2. Для tns:exportVotingProtocolRequest/tns:StatusVersionProtocol добавлено новое допустимое значение "Annuled", изменена аннотация + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.0.2 до версии 13.1.0.3 +================================================================================================================================ + +HCSANALYST-6203 +-- hcs-bills-types.xsd -- +1 В сервисе импорта сведений о платежных документах (importPaymentDocumentData) в элементах tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:IndividualMDReadings/tns:MDServiceCode и tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:IndividualMDReadings/tns:MDUnit: +1.1 добавлены ограничения на возможные значения; +1.2 изменены аннотации. + +================================================================================================================================ +Изменения в форматах данных от версии 13.1.0.1 до версии 13.1.0.2 +================================================================================================================================ + +HCSANALYST-6203 +-- hcs-bills-types.xsd -- +1. В сервисы импорта/экспорта сведений о платежных документах (importPaymentDocumentData/exportPaymentDocumentData) добавлен новый комплексный тип PDServiceMDReadings +2. В сервисе импорта сведений о платежных документах (importPaymentDocumentData) внесены следующие изменения в элемент importPaymentDocumentRequest/tns:PaymentDocument: +2.1. Добавлены следующие необязательные элементы +- tns:IndividualMDReadings +- tns:TotalPayableOverallByChargeInfo +- tns:DetailsPaymentInformation/tns:AccountNumber +- tns:DetailsPaymentInformation/tns:DebtPreviousPeriodsOrAdvanceBillingPeriod +- tns:DetailsPaymentInformation/tns:TotalPayableWithDebtAndAdvance +- tns:PaymentInformationDetails, включающий +-- tns:TotalPayableByPaymentInformation +-- tns:AccountNumber +-- tns:DebtPreviousPeriodsOrAdvanceBillingPeriod +-- TotalPayableWithDebtAndAdvance +2.2. В каждый из следующих элементов: +- tns:ChargeInfo/tns:HousingService +- tns:ChargeInfo/tns:HousingService/tns:MunicipalResource +- tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource +- tns:ChargeInfo/tns:AdditionalService +- tns:ChargeInfo/tns:MunicipalService +- tns:ChargeInfo/tns:GroupMunicipalService/tns:TypeMunicipalService +- tns:ChargeInfo/tns:GroupMunicipalService/tns:MunicipalService +- tns:CapitalRepairCharge +- tns:CapitalRepairYearCharge/tns:CapitalRepairMonthlyCharge +- tns:Insurance +добавлены следующие необязательные дочерние элементы: +- tns:DebtPreviousPeriodsOrAdvanceBillingPeriod +- tns:Penalties +- tns:ServiceProviderPenalties +- tns:StateFees +- tns:CourtCosts +- tns:TotalPayableOverall +2.3. Изменены аннотации элементов для соответствия приказу 43пр. +3. В сервисе экспорта сведений о платежных документах (exportPaymentDocumentData) внесены изменения в элемент tns:getStateResult/tns:exportPaymentDocResult/tns:PaymentDocument: +3.1. Добавлены следующие необязательный элементы: +- tns:IndividualMDReadings +- tns:PaymentDocumentForm. +- tns:TotalPayableOverallByChargeInfo +- tns:DetailsPaymentInformation/tns:AccountNumber +- tns:DetailsPaymentInformation/account-base:ServiceID +- tns:DetailsPaymentInformation/tns:DebtPreviousPeriodsOrAdvanceBillingPeriod +- tns:DetailsPaymentInformation/tns:TotalPayableWithDebtAndAdvance +3.2. В каждый из следующих элементов: +- tns:ChargeInfo/tns:HousingService +- tns:ChargeInfo/tns:HousingService/tns:MunicipalResource +- tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource +- tns:ChargeInfo/tns:AdditionalService +- tns:ChargeInfo/tns:MunicipalService +- tns:ChargeInfo/tns:GroupMunicipalService/tns:TypeMunicipalService +- tns:ChargeInfo/tns:GroupMunicipalService/tns:MunicipalService +- tns:CapitalRepairCharge +- tns:CapitalRepairYearCharge/tns:CapitalRepairMonthlyCharge +- tns:Insurance +добавлены следующие необязательные дочерние элементы: +- tns:DebtPreviousPeriodsOrAdvanceBillingPeriod +- tns:Penalties +- tns:ServiceProviderPenalties +- tns:StateFees +- tns:CourtCosts +- tns:TotalPayableOverall +3.3. Изменены аннотации элементов для соответствия приказу 43пр + + +HCSANALYST-6509 +-- hcs-payment-types.xsd -- +1. В сервис экспорта реквизитов платежных документов (exportPaymentDocumentDetails) внесены следующие изменения: +1.1. Изменена аннотация корневого элемента exportPaymentDocumentDetailsRequest - в набор поддерживаемых версий сервиса добавлена версия 13.1.0.1 +1.2. В элемент tns:getStateResult/tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails внесены следующие изменения: +1.2.1. Добавлены необязательные элементы: +- tns:TotalWithDebtAndAdvance +- tns:ExecutorInformation/tns:PaymentInformation/account-base:AccountNumber +- tns:ExecutorInformation/tns:PaymentInformation/account-base:ServiceID +- tns:ExecutorInformation/tns:PaymentInformation/tns:ErrorMessage +- tns:ExecutorInformation/tns:PaymentInformation/tns:DebtOrAdvance +- tns:ExecutorInformation/tns:PaymentInformation/tns:TotalWithDebtAndAdvance +1.2.2. Изменены аннотации следующих элементов: +- tns:Reminder +- tns:ExecutorInformation/tns:PaymentInformation/tns:Reminder +1.3 В элементе tns:getStateResult/tns:exportPaymentDocumentDetailsResult sequence заменен на choice + + +HCS-90136 +-- hcs-payment-types.xsd -- +В сервисе экспорта реквизитов платежных документов (exportPaymentDocumentDetails) в элементе tns:getStateResult/tns:exportPaymentDocumentDetailsResult sequence заменен на choice. + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.1.4 до версии 13.1.0.1 +================================================================================================================================ + +HCS-41310 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта протокола голосования (importVotingProtocol) +1.1. Добавлен комплексный тип AnnulmentProtocolType +1.2. Добавлен необязательный элемент tns:importVotingProtocolRequest/tns:Annulment +2. В сервисе экспорта протокола голосования (exportVotingProtocol) для элементов tns:StatusProtocol и tns:StatusVersionProtocol в комплексном типе tns:exportVotingProtocolResultType добавлено новое допустимое значение "Annuled" и изменена аннотация + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.1.1 до версии 13.0.1.4 +================================================================================================================================ + +HCS-89035 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта протокола голосования (importVotingProtocol) увеличена максимально допустимая длина значения (до 3000 символов) для элемента +tns:importVotingProtocolRequest/tns:Protocol/tns:MeetingAVoting/tns:ResolutionPlace +2. В сервисе экспорта протокола голосования (exportVotingProtocol) увеличена максимально допустимая длина значения (до 3000 символов) для элемента +tns:getStateResult/tns:VotingProtocol/tns:MeetingAVoting/tns:ResolutionPlace + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.10 до версии 13.0.1.1 +================================================================================================================================ + +HCS-41310 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта протокола голосования (importVotingProtocol) изменена аннотация для элемента tns:importVotingProtocolRequest/tns:Delete (исправлена опечатка) + + +HCSANALYST-6358 +-- hcs-payment-types.xsd -- +1. Удален неиспользуемый корневой элемент exportPaymentDocumentDetailsResult + +-- hcs-payment-service-async.wsdl -- +1. Удалено неиспользуемое сообщение (wsdl:message) exportPaymentDocumentDetailsResult + + +HCSINT-49050 +-- hcs-volume-quality-types.xsd -- +1. В сервисе импорта информации о перерыве (importInterval) сделан обязательным элемент tns:importIntervalRequest/tns:importInterval/tns:LoadInterval/tns:AddressObject + + +HCSINT-47708 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта сведений о доме (importHouseUOData, importHouseRSOData, importHouseOMSData, importHouseESP) в комплексных типах ApartmentHouseUOType, ApartmentHouseUpdateUOType, ApartmentHouseOMSType, ApartmentHouseUpdateOMSType, ApartmentHouseESPType, ApartmentHouseUpdateESPType изменены аннотации к элементам MinFloorCount. +2. В сервисе экспорта сведений о доме (exportHouseData) в комплексном типе ApartmentHouseExportType удален элемент MinFloorCount. + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.7 до версии 13.0.0.10 +================================================================================================================================ + +HCSANALYST-6358 +-- hcs-house-management-types.xsd -- +1. Удален неиспользуемый корневой элемент exportCAChRequest + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.5 до версии 13.0.0.7 +================================================================================================================================ + +HCSINT-48993 +-- hcs-bills-service-async.wsdl -- +-- hcs-msp-service-async.wsdl -- +-- hcs-volume-quality-service-async.wsdl -- +1. Удален концевой слеш в адресе точки доступа для следующих сервисов: +1.1. Сервис обмена сведениями о начислениях, взаиморасчетах (hcs-bills) +1.2. Сервис информации о мерах социальной поддержки (hcs-msp) +1.3. Сервис управления сведениями об объеме и качестве коммунальных услуг и коммунальных ресурсов (hcs-volume-quality) + + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.4 до версии 13.0.0.5 +================================================================================================================================ + +HCS-88437 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта протокола голосования (importVotingProtocol) изменена аннотация элемента tns:importVotingProtocolRequest/tns:Protocol/tns:DecisionList/tns:FormingFund +2. В сервисе экспорта протокола голосования (exportVotingProtocol) изменена аннотация элемента //element(*,tns:exportVotingProtocolResultType)/tns:DecisionList/tns:FormingFund + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.3 до версии 13.0.0.4 +================================================================================================================================ + +HCS-87658 +-- hcs-house-management-types.xsd -- +1. Для сервиса экспорта списка договоров управления/уставов (exportCAChData) добавлена поддержка многоверсионности схемы + +================================================================================================================================ +Изменения в форматах данных от версии 13.0.0.1 до версии 13.0.0.3 +================================================================================================================================ + +HCS-87658 +-- hcs-house-management-types.xsd -- +1. В сервисе импорта договора управления (importContractData) +1.1. в комплексный тип ContractType добавлены необязательные элементы tns:CompetentAuthority и tns:LocalGovernmentDecision +1.2. в комплексном типе ContractPaymentsInfoType расширен список допустимых значений элемента tns:Type +2. В сервисе экспорта списка договоров управления/уставов (exportCAChData) +2.1. в комплексный тип ContractExportType добавлены необязательные элементы tns:CompetentAuthority и tns:LocalGovernmentDecision +2.2. в комплексном типе ContractPaymentsInfoType расширен список допустимых значений элемента tns:Type + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.11 до версии 13.0.0.1 +================================================================================================================================ + +HCS-86771 +-- hcs-appeals-types.xsd -- +1. В корневой элемент exportAppealRequest добавлен необязательный элемент tns:IncludeHCSAppeals +2. В комплексный тип ApplicantType добавлен необязательный элемент tns:HCS + + +HCS-86812 +-- hcs-capital-repair-types.xsd -- +1. Для операций импорта и экспорта договоров на выполнение работ (оказание услуг) по капитальному ремонту (importContractData, exportContractData) изменен тип данных для элемента //element(*,tns:WorkContractType)/tns:Cost - максимальное количество символов сокращено до 10 + + +HCSINT-39951 +-- hcs-nsi-types.xsd -- +1. В запросе сервиса импорта данных справочника №59 «Работы и услуги организации» (importOrganizationWorks) изменена аннотация элемента +tns:importOrganizationWorksRequest/tns:ImportOrganizationWork/tns:StringDimensionUnit (элемент не рекомендуется использовать) + + +HCSINT-31101 +-- hcs-organizations-registry-types.xsd -- +1. В запросе сервиса импорта сведений о филиале или представительстве иностранного юридического лица (importForeignBranch) элемент tns:importForeignBranchRequest/tns:ForeignBranch/tns:UpdateForeignBranch/tns:ShortName сделан необязательным + + +HCS-87572 +-- hcs-appeals-types.xsd -- +1. В сервисе экспорта обращений и ответов на обращения (exportAppeal) увеличена до 100 символов максимальная длина элемента tns:exportAppealResult/tns:Appeal/tns:ApplicantInfo/tns:ApartmentNumber + + +HCSINT-47758 +-- hcs-appeals-types.xsd -- +1. В сервисе экспорта обращений и ответов на обращения (exportAppeal) изменена аннотация элемента tns:exportAppealRequest/tns:StatusOfAppeal/tns:NotSent + + +HCSINT-47082 +-- hcs-house-management-types.xsd -- +1. В запросе сервиса импорта сведений о лицевых счетах (importAccountData) изменена максимальная длина содержимого следующих элементов: +1.1. tns:importAccountRequest/tns:Account/tns:AccountReasons/tns:SupplyResourceContract/tns:ContractNumber увеличена до 100 символов; +1.2. tns:importAccountRequest/tns:Account/tns:AccountReasons/tns:SocialHireContract/tns:ContractNumber увеличена до 255 символов. + + +HCS-85446 +-- hcs-bills-types.xsd -- +1. В запрос сервиса постраничного экспорта документов «Извещение о принятии к исполнению распоряжения» с результатами квитирования (exportNotificationsOfOrderExecutionPaginal) +1.1 добавлен необязательный элемент tns:exportNotificationsOfOrderExecutionPaginalRequest/tns:PageSize для установки максимального количества элементов в выгружаемой странице; +1.2 изменена аннотация элемента tns:exportNotificationsOfOrderExecutionPaginalRequest/tns:ExportNotificationsOfOrderExecutionGUID + + +HCSINT-47584 +-- hcs-bills-types.xsd -- +1. В запросе сервиса импорта сведений о платежных документах (importPaymentDocumentData) изменены аннотации следующих элементов: +1.1. //element(*,tns:ServicePDImportType)/tns:ServiceType +1.2. //element(*,tns:ServiceDebtImportType)/tns:ServiceType +1.3. //element(*,tns:PDServiceDebtImportType)/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource/tns:ServiceType +1.4. //element(*,tns:PDServiceDebtImportType)/tns:GroupMunicipalService/tns:TypeMunicipalService/tns:ServiceType +1.5. //element(*,tns:GeneralMunicipalResourceType)/tns:ServiceType + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.11 до версии 12.2.3.12 +================================================================================================================================ + +HCS-88170 +-- hcs-device-metering-types.xsd -- +1. В сервисе экспорта сведений о показаниях приборов учета (exportMeteringDeviceHistory) добавлен необязательный элемент tns:getStateResult/tns:PagedOutput + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.10 до версии 12.2.3.11 +================================================================================================================================ + +HCSINT-47115 +-- hcs-house-management-types.xsd -- +1. В сервисах импорта данных домов (importHouseUOData, importHouseRSOData, importHouseOMSData, importHouseESPData, demolishHouse) для элементов запросов обновлена аннотация (CRUDGUID заменен на GUID). + + +HCSINT-47123 +-- hcs-house-management-types.xsd -- +1. В сервисах импорта данных домов (importHouseUOData, importHouseRSOData, importHouseOMSData, importHouseESPData), сервисе экспорта дома (exportHouseData), в сервисе экспорта краткой базовой информации о доме (exportBriefBasicHouse) обновлена аннотация элемента LifeCycleStage (указан справочник НСИ 338 вместо НСИ 336). + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.9 до версии 12.2.3.10 +================================================================================================================================ + +HCS-86604 +-- hcs-capital-repair-types.xsd -- +1. В сервисе экспорта счетов регионального оператора и специальных счетов (exportAccounts) увеличено максимальное число элементов в ответе tns:getStateResult/tns:Account до 5000. + +HCS-81557 +-- hcs-rap-types.xsd -- +1. В сервисе импорта постановлений и процессуальных документов (importDecreesAndDocumentsData) +1.1 изменена аннотация для элемента tns:ImportDecreesAndDocumentsRequest/tns:importDecreesAndDocuments/tns:Decree/tns:DecreeInfo/tns:ReviewResult/tns:PunishmentKind +1.2 Добавлен необязательный элемент tns:ImportDecreesAndDocumentsRequest/tns:importDecreesAndDocuments/tns:Decree/tns:DecreeInfo/tns:ReviewResult/tns:AdministrativeSuspensionPeriod +2. В сервисе экспорта постановлений и процессуальных документов (exportDecreesAndDocumentsData) добавлен необязательный элемент tns:getStateResult/tns:ExportDecreesAndDocuments/tns:DecreeInfo/tns:ReviewResult/tns:AdministrativeSuspensionPeriod + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.8 до версии 12.2.3.9 +================================================================================================================================ + +HCSINT-46745 +-- hcs-bills-types.xsd -- +1. В сервисе импорта сведений о платежных документах (importPaymentDocumentData) сделан необязательным элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:Insurance/tns:AccountingPeriodTotal + + +HCSINT-46903 +-- hcs-bills-types.xsd -- +1. В сервисе импорта сведений о платежных документах (importPaymentDocumentData) актуализирована аннотация к элементу tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:DetailsPaymentInformation + + +JIRA-000 +-- hcs-house-management-types.xsd -- +1. Удален неиспользуемый комплексный тип ExclusionType +2. В сервисе импорта договоров управления (importContractData) исправлен селектор для ключа importContractRequest_ContractObjectVersionGUID + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.7 до версии 12.2.3.8 +================================================================================================================================ + +HCS-85944 +-- hcs-capital-repair-types.xsd -- +1. Добавлен комплексный тип "ExportShortCertificateType" +2. Для комплексного типа tns:exportCertificateType изменён базовый тип на ExportShortCertificateType (элемент tns:getStateResult/tns:Contract/tns:Certificate/tns:AttachCertificate сделан необязательным) + + +HCS-86243 +-- hcs-inspection-types.xsd -- +1. В сервисе экспорта проверок (exportExaminationURIState) изменен тип с xs:integer на xs:string у следующих элементов (для возможности указывать лидирующие нули): +1.1 tns:exportExaminationURIStateRequest/tns:URIRegistrationNumber +1.2 tns:getStateResult/tns:exportURIExaminationStateResult/tns:URIRegistrationNumber + + +HCSANALYST-6358 +1. Удалены все WSDL-файлы с описанием синхронных сервисов: +1.1 hcs-bills-service.wsdl +1.2 hcs-capital-repair-service.wsdl +1.3 hcs-device-metering-service.wsdl +1.4 hcs-house-management-service.wsdl +1.5 hcs-infrastructure-service.wsdl +1.6 hcs-inspection-service.wsdl +1.7 hcs-licenses-service.wsdl +1.8 hcs-msp-service.wsdl +1.9 hcs-nsi-service.wsdl +1.10 hcs-nsi-common-service.wsdl +1.11 hcs-organizations-registry-service.wsdl +1.12 hcs-organizations-registry-common-service.wsdl +1.13 hcs-rap-service.wsdl +1.14 hcs-services-service.wsdl +1.15 hcs-uk-service.wsdl +1.16 hcs-volume-quality-service.wsdl + +2. В XSD-схемах удалены элементы, описывающие ответ на синхронные вызовы: +-- hcs-bills-types.xsd -- +2.1 Удалены корневые элементы exportPaymentDocumentResult, exportNotificationsOfOrderExecutionResult, exportNotificationsOfOrderExecutionPaginalResult +-- hcs-capital-repair-types.xsd -- +2.2 Удалены корневые элементы CapRemImportResult, exportPlanResult, exportPlanWorkResult, exportRegionalProgramResult, exportRegionalProgramWorkResult, exportCreditContractResult, +exportContractsResult, exportAccountResult, exportDecisionsFormingFundResult, exportDecisionsOrderOfProvidingPDResult, exportFundSizeInfoResult +-- hcs-device-metering-types.xsd -- +2.3 Удален корневой элемент exportMeteringDeviceHistoryResult +-- hcs-house-management-types.xsd -- +2.4 Удалены корневые элементы exportHouseResult, exportBriefBasicHouseResult, exportBriefLivingHouseResult, exportBriefApartmentHouseResult, exportAccountResult, exportAccountIndividualServicesResult, exportMeteringDeviceDataResult, exportStatusCAChResult, exportRolloverStatusCAChResult, exportCAChResult, exportStatusPublicPropertyContractResult, exportSupplyResourceContractResult, exportSupplyResourceContractObjectAddressResult, exportBriefSupplyResourceContractResult, exportVotingProtocolResult, exportBriefSocialHireContractResult, ImportResult +-- hcs-infrastructure-types.xsd -- +2.5 Удален корневой элемент exportOKIResult +-- hcs-inspection-types.xsd -- +2.6 Удалены корневые элементы exportInspectionPlansResult, exportExaminationsResult, exportExaminationURIStateResult +-- hcs-licenses-types.xsd -- +2.7 Удалены корневые элементы exportLicenseResult, exportDisqualifiedPersonResult +-- hcs-msp-types.xsd -- +2.8 Удалены корневые элементы exportCategoriesResult, exportCitizenSubsidyResult, exportCitizenCompensationResult +-- hcs-nsi-types.xsd -- +2.9 Удалены корневые элементы exportNsiItemResult, exportNsiPagingItemResult +-- hcs-nsi-common-types.xsd -- +2.10 Удалены корневые элементы exportNsiListResult, exportNsiItemResult, exportNsiPagingItemResult +-- hcs-organizations-registry-common-types.xsd -- +2.11 Удалены корневые элементы exportOrgRegistryResult, exportDataProviderResult, exportDelegatedAccessResult, exportObjectsDelegatedAccessResult, exportTerritoryDelegatedAccessResult +-- hcs-rap-types.xsd -- +2.12 Удален корневой элемент ExportDecreesAndDocumentsResult +-- hcs-services-types.xsd -- +2.13 Удалены корневые элементы exportWorkingListResult, exportWorkingPlanResult, exportCompletedWorksResult, exportHMServicesTarifsResult +-- hcs-uk-types.xsd -- +2.14 Удален корневой элемент exportDocumentResult +-- hcs-base.xsd -- +2.15 Удален корневой элемент ImportResult + +-- hcs-house-management-types.xsd -- +3. Удалено наследование элемента tns:getStateResult/tns:ImportResult от base:BaseType, вместе с ним удалены: +3.1 tns:getStateResult/tns:ImportResult/@Id +3.2 tns:getStateResult/tns:ImportResult/ds:Signature + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.6 до версии 12.2.3.7 +================================================================================================================================ + +HCS-85883 +-- hcs-organizations-registry-common-types.xsd -- +1. У элементов tns:exportObjectsDelegatedAccessResult/tns:IsNextPage и tns:exportTerritoryDelegatedAccessResult/tns:IsNextPage тип изменен на xs:boolean + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.5 до версии 12.2.3.6 +================================================================================================================================ + +HCSANALYST-6182 +-- hcs-house-management-types.xsd -- +1. Добавлен необязательный элемент tns:importMeteringDeviceDataRequest/tns:MeteringDevice/tns:DeviceDataToUpdate/tns:UpdateAfterDevicesValues/tns:CommissioningDate + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.4 до версии 12.2.3.5 +================================================================================================================================ + +HCS-76347, HCS-80518, HCSANALYST-6157 +-- hcs-device-metering-types.xsd -- +1. В корневом элементе exportMeteringDeviceHistoryRequest: +1.1. изменена аннотация +1.2. элемент tns:FIASHouseGuid сделан необязательным. У него изменена кратность (maxOccurs="100") и аннотация +1.3. добавлен необязательный элемент tns:ExportMeteringDeviceRootGUID +1.4. изменены аннотации элементов tns:inputDateFrom и tns:inputDateTo +2. В корневой элемент exportMeteringDeviceHistoryResult добавлен необязательный элемент tns:PagedOutput +3. В комплексный тип exportMeteringDeviceHistoryResultType добавлены необязательные элементы tns:HCSHouseGUID и tns:FIASHouseGuid + + +HCS-85668 +– hcs-capital-repair-types – +1. Изменена аннотация к элементу tns:importOperationAndBalanceRequest/tns:ImportOperationAndBalance/tns:OperationAndBalanceInfo/tns:Operation/tns:PaymentPurpose + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.3 до версии 12.2.3.4 +================================================================================================================================ + +HCSANALYST-6189 +--hcs-house-management-types.xsd-- +1. Изменены форматы следующих элементов (для коэффициента трансформации допускается указывать 10 знаков до десятичной точки и 4 знака после; при импорте не допускается указывать ‘0’ в качестве значения коэффициента трансформации): +//element(*,tns:MunicipalResourceElectricExportType)/tns:TransformationRatio, +//element(*,tns:MunicipalResourceElectricBaseType)/tns:TransformationRatio, +//element(*,tns:MunicipalResourceElectricUpdateType)/tns:TransformationRatio, +//element(*,tns:DeviceMunicipalResourceType)/tns:TransformationRatio + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.2 до версии 12.2.3.3 +================================================================================================================================ + +HCS-85636 +--hcs-house-management-types.xsd-- +1. Изменен тип у следующих элементов (снято ограничение xs:maxLength value="250"): +tns:exportSupplyResourceContractResult/tns:Contract/tns:PlannedVolume/tns:FeedingMode +tns:exportSupplyResourceContractObjectAddressResult/tns:ObjectAddress/tns:PlannedVolume/tns:FeedingMode + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.3.1 до версии 12.2.3.2 +================================================================================================================================ + +HCS-81225 +--hcs-house-management-types.xsd-- +1. Для следующих элементов изменено ограничение на минимально допустимое значение (ограничение minExclusive заменено на minInclusive): +tns:importSupplyResourceContractObjectAddressRequest/tns:ObjectAddress/tns:LoadObject/tns:TemperatureChart/tns:FlowLineTemperature +tns:importSupplyResourceContractObjectAddressRequest/tns:ObjectAddress/tns:LoadObject/tns:TemperatureChart/tns:OppositeLineTemperature + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.15 до версии 12.2.3.1 +================================================================================================================================ + +HCS-84518 +--hcs-house-management-types.xsd-- +1. Добавлен необязательный элемент tns:exportVotingProtocolRequest/tns:RootProtocolGUID +2. Добавлен необязательный элемент tns:exportVotingProtocolResult/tns:VotingProtocol/tns:RootProtocolGUID +3. Для exportVotingProtocolRequest и exportVotingProtocolResult изменён атрибут @version для поддержания многоверсионности схемы + + +HCS-81225 +* В сервисах импорта договоров ресурсоснабжения (importSupplyResourceContractData) и импорта проектов договоров ресурсоснабжения (importSupplyResourceContractProjectData) в полях Температура теплоносителя в подающем трубопроводе и Температура теплоносителя в обратном трубопроводе допускается указывать значение "0" +--hcs-house-management-types.xsd-- +1. Для следующих элементов изменено ограничение на минимально допустимое значение (ограничение minExclusive заменено на minInclusive): +tns:importSupplyResourceContractRequest/tns:Contract/tns:SupplyResourceContract/tns:TemperatureChart/tns:FlowLineTemperature, +tns:importSupplyResourceContractRequest/tns:Contract/tns:SupplyResourceContract/tns:TemperatureChart/tns:OppositeLineTemperature, +tns:importSupplyResourceContractProjectRequest/tns:Contract/tns:ContractProject/tns:TemperatureChart/tns:FlowLineTemperature, +tns:importSupplyResourceContractProjectRequest/tns:Contract/tns:ContractProject/tns:TemperatureChart/tns:OppositeLineTemperature + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.14 до версии 12.2.2.15 +================================================================================================================================ + +HCS-84833 +--hcs-capital-repair-types-- +1. Для метода importDecisionsFormingFund изменен селектор в контроле дублирования элементов AttachmentGUID (importSpecialAccountRequest_AttachmentGUID): указан .//base:AttachmentGUID вместо .//tns:AttachmentGUID + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.13 до версии 12.2.2.14 +================================================================================================================================ + +HCS-83820 +--hcs-capital-repair-types-- +1. В комплексном типе TermForGrantingType изменена аннотация для enumeration value="COINCIDES" + + +HCS-85321 +--hcs-bills-types.xsd-- +1. У следующих элементов изменена аннотация: +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:orgPPAGUID +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource/tns:orgPPAGUID + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.12 до версии 12.2.2.13 +================================================================================================================================ + +HCS-84156 +-- hcs-bills-types.xsd -- +1. В корневом элементе importRSOSettlementsRequest изменена обязательность и аннотация элемента tns:importSettlement/tns:Settlement/tns:ReportingPeriod. + + +HCS-85171 +--hcs-bills-types.xsd-- +1. В комплексном типе exportPaymentDocumentResultType (используется в exportPaymentDocumentData) сделан необязательным элемент //element(*,tns:exportPaymentDocumentResultType)/tns:PaymentDocument/tns:PaymentInformation/tns:PaymentInformationGuid. + + +HCSINT-46595 +--hcs-bills-types.xsd-- +1. В комплексном типе PDServiceDebtImportType (используется в importPaymentDocumentData) сделан обязательным элемент //element(*,tns:PDServiceDebtImportType)/tns:GroupMunicipalService/tns:MunicipalService. + + +HCS-84945 +--hcs-bills-types.xsd-- +1. Изменён тип элемента //element(*,tns:PaymentDocumentExportType)/tns:CapitalRepairYearCharge на tns:CapitalRepairYearExportType (отличается аннотацией элемента tns:PaymentInformationKey; используется в exportPaymentDocumentData). + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.11 до версии 12.2.2.12 +================================================================================================================================ + +HCSINT-46536 +--hcs-payment-types.xsd-- +1. В корневом элементе importSupplierNotificationsOfOrderExecutionRequest изменены ограничения для элемента tns:SupplierNotificationOfOrderExecution (значение maxOccurs уменьшено с 1000 до 250) +2. В корневом элементе importNotificationsOfOrderExecutionCancellationRequest изменены ограничения для элемента tns:NotificationOfOrderExecutionCancellation (значение maxOccurs увеличено с 250 до 500) + + +HCSINT-46391 +--hcs-bills-types.xsd-- +В следующих элементах уточнено ограничение: максимум 8 знаков в целой части и 2 в дробной: +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport +tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport + + +HCSINT-46561 +--hcs-bills-types.xsd-- +1. В следующих элементах tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource и tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource переупорядочены дочерние элементы (для соответствия версии 12.2.1). Новый порядок элементов приведён ниже: +1.1 tns:ServiceType, +1.2 tns:Unit (только import), +1.3 tns:Consumption, +1.4 tns:Rate, +1.5 tns:AccountingPeriodTotal, +1.6 tns:ServiceCharge, +1.7 tns:MunicipalServiceCommunalConsumptionPayable, +1.8 tns:ServiceInformation, +1.9 tns:PaymentRecalculation, +1.10 tns:AmountOfPaymentMunicipalServiceCommunalConsumption, +1.11 tns:TotalPayable, +1.12 tns:orgPPAGUID, +1.13 tns:GeneralMunicipalResource; +2. tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource. Снята обязательность для элемента tns:TotalPayable. + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.10 до версии 12.2.2.11 +================================================================================================================================ + +HCSINT-46392 +--hcs-bills-types.xsd-- +Добавлен необязательный элемент +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Unit + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.9 до версии 12.2.2.10 +================================================================================================================================ + +HCS-84547 +--hcs-bills-base.xsd-- +Изменён простой тип SmallMoneyType - паттерн допускает ввод знака. + + +--hcs-house-management-types.xsd-- +tns:importPublicPropertyContractRequest/tns:AddAgreementPayment/tns:Debt - изменён паттерн (см. изменения hcs-bills-base.xsd) +tns:importCharterRequest, tns:exportCAChResult: +1. //element(*,tns:CharterPaymentsInfoType)/tns:MaintenanceAndRepairsForMembers/tns:MaintenanceAndRepairsForMembersPaymentSize - тип изменён на SmallMoneyPositiveType +2. //element(*,tns:CharterPaymentsInfoType)/tns:MaintenanceAndRepairsForNonMembersInfo/tns:MaintenanceAndRepairsForNonMembersPaymentSize - тип изменён на SmallMoneyPositiveType + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.8 до версии 12.2.2.9 +================================================================================================================================ + +HCS-83820 +--hcs-capital-repair-types-- +В структуре importDecisionsFormingFundRequest для элемента .//tns:AttachmentGUID введен контроль уникальности + + +HCSINT-46366 +--hcs-bills-types-- +В элементе tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:LimitIndex изменено ограничение: 3 знака в целой части и 2 в дробной + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.7 до версии 12.2.2.8 +================================================================================================================================ + +HCSINT-46391 +--hcs-bills-types-- +В следующих элементах уточнено ограничение: максимум 10 знаков в целой части и 2 в дробной: +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport +tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.6 до версии 12.2.2.7 +================================================================================================================================ + +HCSANALYST-6224 +--hcs-inspection-types-- +Добавлены следующие элементы: +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:CourtName +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:SubmittedDate +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:SubmittedNumber +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:AddSubmittedInformation/tns:CourtName +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:AddSubmittedInformation/tns:SubmittedDate +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:AddSubmittedInformation/tns:SubmittedNumber +tns:importExaminationsRequest/tns:ImportExamination/tns:ImportOffence/tns:DeleteSubmittedInformation +tns:exportExaminationsResult/tns:exportExaminationResult/tns:ExportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:CourtName +tns:exportExaminationsResult/tns:exportExaminationResult/tns:ExportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:SubmittedDate +tns:exportExaminationsResult/tns:exportExaminationResult/tns:ExportOffence/tns:Offence/tns:IsSubmittedToCourt/tns:SubmittedNumber + + +HCS-84925 +--hcs-house-management-types.xsd-- +В комплексный тип MeteringDeviceToUpdateAfterDevicesValuesType добавлены необязательные элементы tns:MeteringDeviceStamp, tns:MeteringDeviceModel + + +HCS-84547 +--hcs-house-management-types.xsd-- +Тип tns:importPublicPropertyContractRequest/tns:AddAgreementPayment/tns:Debt изменен на SmallMoneyType + + +HCS-84277 +--hcs-house-management-types.xsd-- +Сняты ограничения на элемент //element(*,tns:OGFDataValue)/tns:FloatValue + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.5 до версии 12.2.2.6 +================================================================================================================================ + +HCSINT-46158 +hcs-bills-types +Удалены: +1. tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:GeneralMunicipalResource +2. tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:GeneralMunicipalResource +3. tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:GeneralMunicipalResource +4. tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:GeneralMunicipalResource + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.4 до версии 12.2.2.5 +================================================================================================================================ + +HCS-84547 +-- hcs-house-management-types.xsd -- +Тип tns:importPublicPropertyContractRequest/tns:AddAgreementPayment/tns:Debt изменен на SmallMoneyType + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.4 до версии 12.2.2.5 +================================================================================================================================ + +HCS-84275 +-- hcs-house-management-types.xsd -- +1. В комплексном типе OGFDataValue (используется в корневых элементах importHouseUORequest, importHouseOMSRequest, importHouseESPRequest, exportHouseResult) изменён тип данных для элемента tns:FloatValue (xs:float изменен на xs:decimal с ограничением 20 знаков до десятичной точки и 5 после) + + +HCSANALYST-6259 +-- hcs-payment-types.xsd -- +1. В корневом элементе importNotificationsOfOrderExecutionRequest изменены ограничения для элементов tns:NotificationOfOrderExecutionType и tns:NotificationOfOrderExecution139Type (значение maxOccurs уменьшено с 1000 до 500) +2. В корневом элементе importNotificationsOfOrderExecutionCancellationRequest изменены ограничения для элемента tns:NotificationOfOrderExecutionCancellation (значение maxOccurs уменьшено с 1000 до 250) + +-- hcs-bills-types.xsd -- +1. В корневом элементе importAcknowledgmentRequest изменены ограничения для элементов tns:AcknowledgmentRequestInfo и tns:AckCancellation (значение maxOccurs уменьшено с 1000 до 500) + + +HCS-84050 +-- hcs-bills-types.xsd -- +1. В комплексном типе PaymentDocumentType (используется в корневом элементе importPaymentDocumentRequest) изменены ограничения элемента tns:LimitIndex (totlaDigits="5" и maxInclusive="100") + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.3 до версии 12.2.2.4 +================================================================================================================================ + +HCSANALYST-6184 +-- hcs-house-management-types.xsd -- +1. В комплексный тип MeteringDeviceToUpdateAfterDevicesValuesType добавлен необязательный элемент tns:MeteringDeviceNumber + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.2 до версии 12.2.2.3 +================================================================================================================================ + +HCS-83749 +-- hcs-house-management-types.xsd -- +1. В комплексном типе ProtocolType изменены аннотации элементов +1.1. tns:AVoting/tns:AVotingStartDate +1.2. tns:MeetingAVoting/tns:AVotingStartDate + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.2.1 до версии 12.2.2.2 +================================================================================================================================ + +HCSANALYST-6141 +-- hcs-appeals-types.xsd -- +1. В комплексный тип exportAppealResultType добавлен необязательный элемент tns:AppealWithdrawn + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.10 до версии 12.2.2.1 +================================================================================================================================ + +HCSANALYST-4616 + +1.1) Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:LimitIndex - Предельный (максимальный) индекс изменения размера платы граждан за коммунальные услуги в муниципальном образовании, % +1.2) Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport - Субсидии, компенсации и иные меры соц. поддержки граждан, руб. Ссылка на пост. 924 – Приложение 2, п. 21 +1.3) Дополнена аннотация tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource - Главная коммунальная услуга с объемом потребления +1.4) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:GroupMunicipalService - Вид коммунальной услуги, содержащей главные коммунальные услуги. Предоставляет возможность указать группирующие виды коммунальных услуг, с разбивкой на главные коммуанльные услуги +1.5) Элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Rate сделан необязательным. Может быть не заполнен, если заполнен блок tns:MunicipalResource/ tns:GeneralMunicipalResource +1.6) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource - Главные коммунальные ресурсы +1.7) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:PaymentRecalculation - Перерасчеты +1.8) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:PaymentRecalculation - Перерасчеты +1.9) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:AdditionalService/tns:PaymentRecalculation - Перерасчеты +1.10) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:PaymentRecalculation - Перерасчеты +1.11) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:PaymentRecalculation - Перерасчеты +1.12) Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:ServiceInformation/tns:houseOverallNeedsCurrentValue - Текущие показания приборов учёта коммунальных ресурсов - коллективных (общедомовых). +1.13) В перечислимый тип атрибута tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Consumption/tns:Volume/@determiningMethod добавлен "O" - Other - Иное +1.14) Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:orgPPAGUID - Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. +1.15) Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource/tns:orgPPAGUID - - Поставщик услуги. Идентификатор зарегистрированной организации. Обязателен, если тип ЛС "ЛС РЦ" (isRCAccount), запрещен для заполнения для остальных типов лицевых счетов. +1.16) Дополнена аннотация tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource +1.17) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeDebt/tns:GroupMunicipalService - Вид коммунальной услуги, содержащей главные коммунальные услуги. В блоке предоставляется возможность указать группирующие виды коммунальных услуг, с разбивкой на главные коммунальные услуги. +1.18) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource - Главные коммунальные ресурсы +1.19) Добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:ServiceInformation - Справочная информация +2) В комплексных типах tns:ServicePDImportType (используется в importPaymentDocument) и tns:ServicePDType (используется в exportPaymentDocument) элемент tns:AccountingPeriodTotal сделан необязательным +3.1) Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:LimitIndex - Предельный (максимальный) индекс изменения размера платы граждан за коммунальные услуги в муниципальном образовании, % +3.2) Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:SubsidiesCompensationSocialSupport - Субсидии, компенсации и иные меры соц. поддержки граждан, руб. Ссылка на пост. 924 – Приложение 2, п. 21 +3.3) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:GroupMunicipalService (Вид коммунальной услуги, содержащей главные коммунальные услуги) Выгружается информация о коммунальных услугах с группирующими строками +3.4) Элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Rate (Тариф) сделан необязательным +3.5) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource - Главные коммунальные ресурсы +3.6) дополнена аннотация tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource - В том числе коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме. +3.7) дополнена аннотация tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource - В том числе коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме. +3.8) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource/tns:GeneralMunicipalResource - Главные коммунальные ресурсы +3.9) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeDebt/tns:GroupMunicipalService - Вид коммунальной услуги, содержащей главные коммунальные услуги +3.10) Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:orgPPAGUID - Поставщик услуги. Идентификатор зарегистрированной организации. +3.11) Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeDebt/tns:HousingService/tns:MunicipalResource/tns:orgPPAGUID - Поставщик услуги. Идентификатор зарегистрированной организации. +3.12) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:AdditionalService/tns:PaymentRecalculation - Перерасчеты +3.13) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:PaymentRecalculation - Перерасчеты +3.14) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:PaymentRecalculation - Перерасчеты +3.15) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:PaymentRecalculation - Перерасчеты +3.16) Элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Rate сделан необязательным. Может быть не заполнен, если заполнен блок tns:MunicipalResource/ tns:GeneralMunicipalResource +3.17) Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:ServiceInformation/tns:houseOverallNeedsCurrentValue - Текущие показания приборов учёта коммунальных ресурсов - коллективных (общедомовых). +3.18) В перечислимый тип атрибута tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:Consumption/tns:Volume/@determiningMethod добавлен "O" - Other - Иное +3.19) Добавлен новый блок tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:ChargeInfo/tns:HousingService/tns:MunicipalResource/tns:ServiceInformation - Справочная информация +4) Добавлен новый комплексный тип TypeMunicipalServiceType - Вид коммунальной услуги + + +HCSANALYST-5922 + +1. у элемента //element(*,tns:AcknowledgmentRequestInfoType)/tns:PaymentDocumentAck/tns:MSType изменена аннотация - "Вид ГКУ (справочник "Главная коммунальная услуга")". Принцип заполнения без изменений +2. добавлен элемент //element(*,tns:AcknowledgmentRequestInfoType)/tns:PaymentDocumentAck/tns:TMSType (Вид коммунальной услуги. НСИ 3) используется в importAcknowledgmentRequest - добавлена возможность квитировать по виду коммунальной услуги +3. у элемента //element(*,tns:AcknowledgmentRequestInfoExportType)/tns:PaymentDocumentAck/tns:MSType изменена аннотация- "Вид ГКУ (справочник "Главная коммунальная услуга")". Принцип заполнения без изменений +4. добавлен элемент //element(*,tns:AcknowledgmentRequestInfoExportType)/tns:PaymentDocumentAck/tns:TMSType (Вид коммунальной услуги. НСИ 3) используется в exportNotificationsOfOrderExecutionResult и exportNotificationsOfOrderExecutionPaginal - выгружается информация о квитировании по виду коммунальной услуги + + + +HCSANALYST-6171 +-- bills/hcs-bills-types.xsd -- +1. В корневом элементе importRSOSettlementsRequest изменена аннотация элемента tns:importSettlement/tns:Settlement/tns:Contract. + + + +HCSANALYST-5796 +--hcs-nsi-service-async.wsdl-- +1. Добавлена асинхронная операция importGeneralNeedsMunicipalResource для импорта данных справочника №337 "Коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме" (используется в платежных документах) + +--hcs-nsi-types-- +1. Добавлен корневой элемент importGeneralNeedsMunicipalResourceRequest +2. Добавлен комплексный тип importGeneralNeedsMunicipalResourceType +3. В корневом элементе importMunicipalServicesRequest изменены аннотации элементов tns:importMunicipalServicesRequest/tns:ImportMainMunicipalService/tns:GeneralNeeds и tns:importMunicipalServicesRequest/tns:ImportMainMunicipalService/tns:SelfProduced (указано, что элементы не используются) +4. Код нового справочника (337) добавлен в списки реестровых номеров (enumeration) элементов tns:exportDataProviderNsiItemRequest/tns:RegistryNumber и tns:exportDataProviderNsiPagingItemRequest/tns:RegistryNumber + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.9 до версии 12.2.1.10 +================================================================================================================================ + +HCS-82039 +-- hcs-licenses-types.xsd -- +1. В комплексном типе LicenseType +1.1 у элемента tns:LicenseStatus расширен список допустимых значений и ограничения типа pattern заменены на ограничения типа enumeration; изменена аннотация +1.2 у элемента tns:AccompanyingDocument/tns:DocumentStatus расширен список допустимых значений (enumeration) и изменена аннотация +2. В комплексном типе AccompanyingDocumentType расширен список допустимых значений (enumeration) и изменена аннотация элемента ns:Document/tns:DocumentStatus + + +HCS-82734 +-- hcs-bills-types.xsd -- +1. В комплексном типе CapitalRepairImportType для элемента tns:Contribution установлено ограничение minInclusive +2. В комплексном типе CapitalRepairMonthlyImportType для элемента tns:Contribution установлено ограничение minInclusive + + +HCS-82686 +-- hcs-payments-base.xsd -- +1. В комплексном типе PaymentInformationExportType у элемента tns:NumberBudgetaryAccount удалено ограничение типа pattern + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.8 до версии 12.2.1.9 +================================================================================================================================ + +HCS-82884 +-– hcs-organizations-registry-common-types.xsd -- +1. В корневой элемент getStateResult добавлен необязательный элемент tns:IsNextPage +2. В корневых элементах exportDelegatedAccessResult и getStateResult у элемента tns:IsNextPage указан тип boolean + +HCS-82916 +-- hcs-licenses-types.xsd – +1. В комплексном типе HouseType увеличено максимальное кол-во цифр в элементе tns:Contract/tns:Validity/tns:Year + + +HCS-83103 +-- hcs-capital-repair-types.xsd -- +1. В комплексном типе DecisionPDType изменена аннотация элемента tns:Reason/tns:Protocol + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.7 до версии 12.2.1.8 +================================================================================================================================ + +HCS-82767 +-– hcs-house-management-types.xsd -- +1. В комплексном типе ProtocolType добавлены необязательные элементы tns:AVoting/tns:AVotingStartDate и tns:MeetingAVoting/tns:AVotingStartDate +2. В комплексном типе ProtocolExportType добавлены необязательные элементы tns:AVoting/tns:AVotingStartDate и tns:MeetingAVoting/tns:AVotingStartDate + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.6 до версии 12.2.1.7 +================================================================================================================================ + +HCSANALYST-922 +-- hcs-house-management-types -- +1. В корневом элементе importVotingProtocolRequest для элемента tns:Protocol добавлены ограничения уникальности элементов +tns:VoteInitiators/tns:Org/organizations-registry-base:orgVersionGUID и tns:VoteInitiators/tns:Org/organizations-registry-base:orgRootEntityGUID + + +HCS-81410 +-- hcs-capital-repair-types.xsd -- +1. В комплексный тип exportDecisionType добавлен необязательный элемент tns:DecisionsOrganization + + +HCS-82163 +-- hcs-capital-repair-types.xsd -- +1. В комплексном типе OperationType сделан необязательным элемент tns:Date + + +HCS-82969 +-- hcs-house-management-types.xsd -- +1. В комплексном типе MeteringDeviceBasicCharacteristicsType для следующих контейнеров добавлены ограничения на возможность дублирования значений в коллекциях элементов tns:AccountGUID: +1.1 tns:ResidentialPremiseDevice +1.2 tns:NonResidentialPremiseDevice +1.3 tns:ApartmentHouseDevice +1.4 tns:LivingRoomDevice +1.5 tns:CollectiveApartmentDevice +2. В корневом элементе importMeteringDeviceDataRequest для элемента tns:MeteringDevice/tns:DeviceDataToUpdate/tns:UpdateAfterDevicesValues добавлено ограничение на возможность дублирования значений в коллекции элементов tns:AccountGUID + + +HCS-83125 +-- hcs-house-management-types.xsd -- +1. В корневой элемент getStateResult добавлен элемент tns:exportBriefSupplyResourceContractResult + + +HCSINT-45445 +-- hcs-house-management-types.xsd -- +1. В комплексный тип BriefLivingHouseType добавлены необязательные элементы tns:TerminationDate, tns:AnnulmentReason, tns:AnnulmentInfo, tns:DemolishionDate и tns:DemolishionReason +2. В комплексный тип BriefApartmentHouseType добавлены необязательные элементы tns:TerminationDate, tns:AnnulmentReason, tns:AnnulmentInfo, tns:DemolishionDate и tns:DemolishionReason + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.5 до версии 12.2.1.6 +================================================================================================================================ + +HCSINT-39668 +-- hcs-services-types.xsd -- +1. В комплексном типе WorkingListBaseType сделан необязательным элемент tns:ContractGUID + + +HCSINT-40170 +-- hcs-house-management-types.xsd -- +1. В корневой элемент importHouseESPRequest добавлены необязательные элементы: +tns:ApartmentHouse/tns:ApartmentHouseToCreate/tns:HouseManagementType +tns:ApartmentHouse/tns:ApartmentHouseToUpdate/tns:HouseManagementType +2. В корневом элементе importHouseOMSRequest изменены аннотации у следующих элементов: +tns:ApartmentHouse/tns:ApartmentHouseToCreate/tns:HouseManagementType +tns:ApartmentHouse/tns:ApartmentHouseToUpdate/tns:HouseManagementType +tns:LivingHouse/tns:LivingHouseToCreate/tns:HouseManagementType +tns:LivingHouse/tns:LivingHouseToUpdate/tns:HouseManagementType + + +HCS-82716 +-- hcs-house-management-types.xsd -- +1. В комплексном типе BriefBasicCharactericticsType сделан необязательным элемент tns:State + + +HCS-82043 +-- hcs-house-management-types.xsd -- +1. В корневом элементе importHouseRSORequest сделаны обязательными указание +1.1. одного из элементов tns:ApartmentHouse/tns:ApartmentHouseToCreate или tns:ApartmentHouse/tns:ApartmentHouseToUpdate +1.2. одного из элементов tns:LivingHouse/tns:LivingHouseToCreate или tns:LivingHouse/tns:LivingHouseToUpdate + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.3 до версии 12.2.1.5 +================================================================================================================================ + +HCS-81813 +-- hcs-bills-types.xsd -- +1. В комплексном типе ExportSettlementResultType сделан необязательным элемент tns:ReportingPeriod. + + +HCS-81967 +-- hcs-organizations-registry-common-types.xsd -- +1. В корневом элементе exportDelegatedAccessRequest изменена аннотация элемента tns:Page + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.2 до версии 12.2.1.3 +================================================================================================================================ + +HCSANALYST-6107 +--hcs-house-management-types-- +1. В комплексный тип SupplyResourceContractProjectType добавлен необязательный элемент tns:RegionalSettings (с комплексной структурой) +2. В комплексном типе SupplyResourceContractProjectType изменена аннотация элемента tns:Period + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.1.1 до версии 12.2.1.2 +================================================================================================================================ + +HCSANALYST-4232 +--hcs-house-management-types-- +1. В корневом элементе exportBriefLivingHouseResult элемент tns:searchResultItem переименован в tns:ResultItem +2. В корневой элемент getStateResult добавлены элементы tns:exportBriefBasicHouseResult, tns:exportBriefApartmentHouseResult и tns:exportBriefLivingHouseResult + + +HCSINT-44793, HCSINT-44794 +--hcs-house-management-types-- +1. В комплексном типе MeteringDeviceBasicCharacteristicsType изменены аннотации элементов tns:VerificationInterval и tns:FactorySealDate + + +HCS-79479 +--hcs-capital-repair-types-- +1. Добавлен простой тип TermDayType (base="xs:positiveInteger", maxInclusive value="30") +2. В комплексном типе DecisionPDType для элемента tns:TermDay установлен тип TermDayType + + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0. до версии 12.2.1.1 +================================================================================================================================ + +HCSANALYST-5906 +--hcs-bills-types-- +1. Сделаны необязательными элементы tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscount, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscount +2. Добавлен элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairYearCharge +3. Добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge +4. Добавлен элемент tns:importAcknowledgmentRequest/tns:AcknowledgmentRequestInfo/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod + + +HCSANALYST-4232 + + +1. Добавлены операции: exportBriefBasicHouse, exportBriefLivingHouse, exportBriefApartmentHouse + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.16 до версии 12.2.0.17 +================================================================================================================================ + +HCS-81900 +--hcs-house-management-types.xsd-- +1. В комплексном типе ProtocolExportType сделаны необязательными элементы //element(*,tns:ProtocolExportType)/tns:EVoting/tns:Discipline и //element(*,tns:ProtocolExportType)/tns:DecisionList/tns:votingResume + + +HCS-81682 +--hcs-payments-base.xsd-- +1. В комплексный тип PaymentInformationExportType добавлен необязательный элемент tns:IsCapitalRepair +2. Удален избыточный комплексный тип PaymentInformationExportPDType + +--hcs-payments-types.xsd-- +1. В комплексном типе PaymentDocumentDetailsType изменен базовый тип элемента //element(*,tns:PaymentDocumentDetailsType)/tns:ExecutorInformation/tns:PaymentInformation на payments-base:PaymentInformationExportType + +-- hcs-bills-types.xsd -- +1. В комплексном типе exportPaymentDocumentResultType изменен базовый тип элемента //element(*,tns:exportPaymentDocumentResultType)/tns:PaymentDocument/tns:PaymentInformation на payments-base:PaymentInformationExportType +2. В комплексный тип exportPaymentDocumentResultType добавлен элемент //element(*,tns:exportPaymentDocumentResultType)/tns:PaymentDocument/tns:PaymentInformation/tns:PaymentInformationGuid + + +HCS-79479 +--hcs-capital-repair-types-- +1. Добавлен простой тип TermDayType (base="xs:positiveInteger", maxInclusive value="30") +2. Для элемента //element(*,tns:DecisionPDType)/tns:TermDay установлен тип TermDayType + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.15 до версии 12.2.0.16 +================================================================================================================================ + +HCS-81086 +--hcs-payments-types.xsd-- +1. Добавлен корневой элемент Service +2. Элементы tns:getStateResult/tns:exportPaymentDocumentDetailsResult/tns:Service и tns:exportPaymentDocumentDetailsResult/tns:Service сделаны ссылкой на корневой элемент Service; их структура не изменилась. + + +HDWORK-83313 +--hcs-capital-repair-types-- +1. В комплексном типе OperationType изменена аннотация к элементу tns:PaymentPurpose + + +HCS-79210 +--hcs-licenses-types.xsd-- +1. В комплексном типе LicenseType изменена аннотация к элементу RegionFIASGuid + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.14 до версии 12.2.0.15 +================================================================================================================================ + +HCS-81057 +--hcs-bills-types-- +1. Изменена маска (pattern) у следующих элементов (теперь для них допускается указание отрицательных значений) +tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal и tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal + + +HCS-81086 +--hcs-payments-types.xsd-- +1. Добавлен необязательный элемент tns:getStateResult/tns:exportPaymentDocumentDetailsResult/tns:Service + + +HCS-81480 +--hcs-appeals-types.xsd-- +1. В комплексном типе exportAppealResultType сделан необязательным элемент //element(*,tns:exportAppealResultType)/tns:AppealHistory/tns:Redirected/tns:AnswererGUID + + +HCS-81548 +--hcs-appeals-types.xsd-- +1. В комплексном типе ApplicantType снято ограничение на длину значения (maxLength) для элемента //element(*,tns:ApplicantType)/tns:PhoneNumber + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.13 до версии 12.2.0.14 +================================================================================================================================ + +HCSANALYST-5906 +--hcs-bills-types.xsd-- +1. Удалены элементы tns:importPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge, tns:importAcknowledgmentRequest/tns:AcknowledgmentRequestInfo/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod, tns:exportNotificationsOfOrderExecutionPaginalResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/tns:AcknowledgmentRequestsList/tns:AcknowledgmentRequest/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod +2. Сделаны обязательными элементы tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal + +--hcs-payments-base.xsd-- +1. Удалены элементы //element(*,tns:AcknowledgmentRequestInfoType)/tns:PaymentDocumentAck/tns:CapitalRepairYearAckPeriod, + //element(*,tns:AcknowledgmentRequestInfoExportType)/tns:PaymentDocumentAck/tns:CapitalRepairYearAckPeriod + + +HCSANALYST-4232 +--hcs-house-management-service-async-- +1. Удалены операции exportBriefBasicHouse, exportBriefLivingHouse и exportBriefApartmentHouse вместе с соответствующими сообщениями + +--hcs-house-management-types-- +1. Удалены корневые элементы exportBriefBasicHouseRequest, exportBriefBasicHouseResult, exportBriefLivingHouseRequest, exportBriefLivingHouseResult, exportBriefApartmentHouseRequest, exportBriefApartmentHouseResult + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.12 до версии 12.2.0.13 +================================================================================================================================ + +HCS-79479 +--hcs-capital-repair-types-- +1. Добавлены простые типы tns:TermForGrantingType, tns:TermQualificationType, String100Type +2. В комплексный тип DecisionPDType добавлены необязательные элементы tns:TermForGranting, tns:TermDay и tns:TermQualification +3. В корневых элементах exportDecisionsOrderOfProvidingPDRequest и exportDecisionsOrderOfProvidingPDResult удалено фиксированное значение у атрибута base:version + + +HCS-80618 + +1. В AppealStatusType добавлен enumeration value="InWork" +2. Для tns:getStateResult/tns:ExportAppealResult задан тип exportAppealResultType +3. Для ImportResult задан тип base:CommonResultType +4. Удален exportAppealResult + + +HCSANALYST-3045 +--hcs-appeals-types.xsd-- +1. Полностью изменен элемент importAnswerRequest. + + +HCSANALYST-5906 +--hcs-bills-types.xsd-- +1. tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal,tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscount,tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal,tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation,tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscountсделаны необязательными +2. добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge для импортаначислений за КР на год +3. добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge для экспорта ПД с указанием начислений за КР за год +4. Добавлен tns:importAcknowledgmentRequest/tns:AcknowledgmentRequestInfo/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod для квитирования ПД с указанием взносов на год + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.11 до версии 12.2.0.12 +================================================================================================================================ + +HCS-80618 +--hcs-appeals-types.xsd-- +tns:exportAppealResult/tns:Appeal/tns:FIASHouseGuid сделан необязательным + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.10 до версии 12.2.0.11 +================================================================================================================================ + +HCS-80618 +--hcs-appeals-types.xsd-- +1. В комплексном типе AnswerInfoType элемент tns:AnswerNumber сделан необязательным + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.9 до версии 12.2.0.10 +================================================================================================================================ + +HCSANALYST-6108 + +Добавлены tns:importContractRequest/tns:Contract/tns:PlaceContractPaymentsInfo/tns:VotingProtocolGUID и tns:exportCAChResult/tns:exportCACh/tns:Contract/tns:ContractPaymentsInfo/tns:VotingProtocolGUID и choice для выбора VotingProtocolGUID или Protocol. Добавлено пояснение по автоматической привязке протокола к размеру платы. + +HCS-80870 +--hcs-nsi-types.xsd-- +1. Добавлен tns:importOrganizationWorksRequest/tns:ImportOrganizationWork/tns:ParentCopiedWorks +2. В комплексный тип ImportOrganizationWorkType добавлен необязательный элемент tns:InsertInCopiedWorks + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.8 до версии 12.2.0.9 +================================================================================================================================ + +HCS-80618 + +1. В простом типе AppealStatusType добавлено новое значение (enumeration value="InWork") и изменена аннотация +2. У элемента tns:getStateResult/tns:ImportResult указан тип base:CommonResultType +3. Удален корневой элемент exportAppealResult +4. В комплексном типе exportAppealResultType изменена аннотация элемента tns:AppealStatus + + +HCS-79822 + +1. В корневой элемент exportExaminationsRequest добавлены необязательные элементы tns:ExaminationGuid и tns:RegistryNumber. +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.6 до версии 12.2.0.8 +================================================================================================================================ + +HDWORK-82588 + +1. output для метода importDecisionsOrderOfProvidingPD изменен на tns:importDecisionsOrderOfProvidingPDResult. + +HCSANALYST-3045 + +1. Для элемента tns:getStateResult/tns:ImportResult задан maxOccurs="unbounded" + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.5 до версии 12.2.0.6 +================================================================================================================================ + +HCS-79872 + +1. Удален неиспользуемый комплексный тип WorkingListItemExportType +2. Тип элемента //element(*,tns:CompletedWorkExportType)/tns:Amount изменён на tns:WorkAmountType + + +HCSANALYST-3630, HCSANALYST-5896 + +1. Добавлена множественность tns:exportPaymentDocumentDetailsResult/tns:Service + + +JIRA-0000 + +1. totalDigits увеличен до 17 у //element(*,tns:CapitalRepairImportType)/tns:Contribution, //element(*,tns:CapitalRepairImportType)/tns:AccountingPeriodTotal, //element(*,tns:CapitalRepairImportType)/tns:MoneyRecalculation, //element(*,tns:CapitalRepairImportType)/tns:MoneyDiscount, //element(*,tns:CapitalRepairImportType)/tns:TotalPayable +2. maxLength = 2000 у //element(*,tns:CapitalRepairImportType)/tns:CalcExplanation + + +Cнята обязательность tns:exportCAChResult/tns:exportCACh/tns:Contract/tns:Terminate/tns:ReasonRef + + +HCSANALYST-3045 + +1) удален элемент StatusOfAppeal.Redirected +2) для элементов из StatusOfAppeal указан тип boolean +3) для элемента AnswerIsNotRequired указан тип boolean +4) удален комплексный тип ReportPeriodType + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.4 до версии 12.2.0.5 +================================================================================================================================ + +HCSANALYST-3045 +Добавлен новый сервис Управления обращениями граждан (папка appeals) + + +Новые методы: +1. exportAppeal- экспорт обращений +2. importAnswer - импорт ответов на обращения + + +HCS-77591 + +1. В типе CompletedWorkExportType элемент MonthlyWork стал необязательным. +2. Базовый тип для tns:exportCompletedWorksResult/tns:exportCompletedWorksResult/tns:UnplannedWork изменён на CompletedWorkExportType. + + +HCS-79829 + +1. Изменена аннотация элемента //element(*,tns:ApartmentHouseExportType)/tns:OverhaulFormingKind по факту реализации - возвращается значение "Вид счета\Способ формирования фонда" (НСИ 62) + + +HCSANALYST-6080 + +1. Добавлены необязательные элементы tns:importContractRequest/tns:Contract/tns:EditContract/tns:IndicationsAnyDay, tns:importCharterRequest/tns:PlacingCharter/tns:IndicationsAnyDay, tns:importCharterRequest/tns:EditCharter/tns:IndicationsAnyDay, tns:exportCAChResult/tns:exportCACh/tns:Contract/tns:IndicationsAnyDay, tns:exportCAChResult/tns:exportCACh/tns:Charter/tns:IndicationsAnyDay + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.3 до версии 12.2.0.4 +================================================================================================================================ + +HCSINT-44085 +--hcs-services-types-- +1. Добавлен комплексный тип MonthlyWorkType для запланированной или выполненной работы за месяц. Все элементы MonthlyWork приведены к данному типу. +2. Добавлен простой тип WorkAmountType для объема работ с ограничением в 14 знаков, включая 3 после запятой (в соответстви с UI). Вcе элементы, которые содержат объем работ, приведены к данному типу. +3. Уточнена аннотация комплексного типа CompletedWorkExportType +4. Изменён простой тип WorkPriceType: уточнена аннотация, общее количество символов увеличено до 14 знаков, включая 4 знака после запятой (в соответствии с UI). +5. Уточнена аннотация простого типа WorkCountType. +6. Изменён простой тип MonthlyWorkCountType: допустимое количество символов сокращено до 2 (в соответствии с UI). Все элементы, которые содержат количество работ за месяц, приведены к данному типу. + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.2 до версии 12.2.0.3 +================================================================================================================================ + +HCS-75076 +--hcs-capital-repair-types-- +1. Для элемента tns:importRegionalProgramRequest/tns:importRegionalProgram/tns:LoadRegionalProgram/tns:EndYear (Год окончания региональной программы капитального ремонта) установлен тип xs:gYear +2. Удален простой тип YearUpTo2060Type + +HCS-77620 +--hcs-capital-repair-types-- +1. Введен элемент //element(*,tns:ProtocolType)/tns:DocumentIsNotAvailable + +HCS-78570 + +1. Добавлен элемент tns:importSupplyResourceContractRequest/tns:Contract/tns:SupplyResourceContract/tns:Tariff/tns:ForAllAddressObjects + +================================================================================================================================ +Изменения в форматах данных от версии 12.2.0.1 до версии 12.2.0.2 +================================================================================================================================ + +HCSANALYST-3630, HCSANALYST-5896 + +1. Добавлен tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecution139Type/base:TransportGUID +2. //element(*,tns:NotificationOfOrderExecution139Type)/tns:OrderInfo/tns:PaymentInformationGUID сделан общим + + +HCSANALYST-5872 + + +1) добавлена множественность tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge +2) добавлен tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:Period +3) tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscount, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:AccountingPeriodTotal, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyRecalculation, tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:MoneyDiscountсделаны необязательными +4) добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge для импортаначислений за КР на год +5) добавлен элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairYearCharge для экспорта ПД с указанием начислений за КР за год +6) Добавлен tns:importAcknowledgmentRequest/tns:AcknowledgmentRequestInfo/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod для квитирования ПД с указанием взносов на капремонт на год. +7) Добавлены tns:exportNotificationsOfOrderExecutionResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/tns:AcknowledgmentRequestsList/tns:AcknowledgmentRequest/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod и tns:exportNotificationsOfOrderExecutionPaginalResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/tns:AcknowledgmentRequestsList/tns:AcknowledgmentRequest/payments-base:PaymentDocumentAck/payments-base:CapitalRepairYearAckPeriod для выгрузки информации о квитировании ПД с указанием взносов на капремонт на год. + + +================================================================================================================================ +Изменения в форматах данных от версии 11.14.0.13 до версии 12.2.0.1 +================================================================================================================================ + +HCSANALYST-3630, HCSANALYST-5896 + + + + +1.1) Изменена аннотация элемента tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:PaymentInformationKey +1.2) В комплексный тип tns:ServicePDImportType добавлен необязательный элемент tns:PaymentInformationKey - ссылка на платежные реквизиты +1.3) В операцию importPaymentDocument добавлены ключи importPaymentDocumentRequest_HS_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_MS_PaymentInformationGUIDKeyRef, +importPaymentDocumentRequest_AS_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_CR_PaymentInformationGUIDKeyRef, +importPaymentDocumentRequest_I_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_PC_PaymentInformationGUIDKeyRef, +importPaymentDocumentRequest_CRD_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_HSD_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_ASD_PaymentInformationGUIDKeyRef, +importPaymentDocumentRequest_MSD_PaymentInformationGUIDKeyRef, importPaymentDocumentRequest_DeteailsPaymentInformationGUIDKeyRef +1.4) Добавлен новый необязательный элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairCharge/tns:PaymentInformationKey - Ссылка на платежные реквизиты +1.5) Добавлен новый необязательный элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:Insurance/tns:PaymentInformationKey - Ссылка на платежные реквизиты +1.6) Добавлен новый необязательный элемент tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:PenaltiesAndCourtCosts/tns:PaymentInformationKey - Ссылка на платежные реквизиты +1.7) добавлен новый тип tns:DebtImportCRType +1.8) У блока tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:CapitalRepairDebt изменен тип на tns:DebtImportCRType +1.9) В комплексный тип tns:ServiceDebtImportType добавлен элемент tns:PaymentInformationKey - ссылка на платежные реквизиты +1.10) добавлен новый блок tns:importPaymentDocumentRequest/tns:PaymentDocument/tns:DetailsPaymentInformation - Детализация информации о платежных реквизитах. Заполняется если в ПД несколько платежных реквизитов, и необходимо отразить сумму к оплате за расчетный период в рамках определенного платежного реквизита +-- +2.1) Добавлена множественность для блока tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation +2.2) В комплексный тип tns:ServicePDType добавлен необязательный элемент tns:PaymentInformationGuid - идентификатор платежного реквизита в ГИС ЖКХ +2.3) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairCharge/tns:PaymentInformationGuid +2.4) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PenaltiesAndCourtCosts/tns:PaymentInformationGuid +2.5) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:Insurance/tns:PaymentInformationGuid +2.6) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/payments-base:PaymentInformationGuid - Идентификатор платежных реквизитов в платежном документе +2.7) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/tns:TotalPayableByPaymentInformation - Сумма к оплате за расчетный период (руб) в рамках платежного реквизита +2.8) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:CapitalRepairDebt/tns:PaymentInformationGuid +2.9) В комплексный тип tns:ServiceDebtType добавлен необязательный элемент tns:PaymentInformationGuid - идентификатор платежного реквизита в ГИС ЖКХ +2.10) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/payments-base:IsCapitalRepair - Платежные реквизиты для платежей капитального ремонта +2.11) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/payments-base:KBK +2.12) Добавлен новый необязательный элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/payments-base:OKTMO + +3.1) Дополнена аннотация //element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo +3.2) Кол-во максимальных символов //element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo/tns:Legal/tns:Name увеличено до 4000 +3.3) Кол-во максимальных символов //element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:Surname, +//element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:FirstName и +//element(*,tns:NotificationOfOrderExecutionType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:Patronymic увеличено до 256 +3.4) Кол-во максимальных символов //element(*,tns:NotificationOfOrderExecutionExportType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:Surname, +//element(*,tns:NotificationOfOrderExecutionExportType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:FirstName и +//element(*,tns:NotificationOfOrderExecutionExportType)/tns:RecipientInfo/tns:Entpr/individual-registry-base:Patronymic увеличено до 256 (используется в exportNotificationsOfOrderExecution, exportNotificationsOfOrderExecution, +exportNotificationsOfOrderExecutionPaginal) +3.5) Кол-во максимальных символов //element(*,tns:NotificationOfOrderExecutionExportType)/tns:RecipientInfo/tns:Legal/tns:Name увеличено до 4000 (используется в exportNotificationsOfOrderExecution, exportNotificationsOfOrderExecution, +exportNotificationsOfOrderExecutionPaginal) +3.6) В операцию importNotificationsOfOrderExecution добавлен новый блок tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecution139Type - указание реквизитов платежа по п.139 приказа №589/944 от 28.12.2015 +3.7) В hcs-payments-base.xsd добавлен новый тип NotificationOfOrderExecution139Type + +3.10) Добавлена аннотация к элементу tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecutionType + +-- +4.1) Кол-во максимальных символов tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:Legal/tns:Name увеличено до 4000 +4.2) Добавлен новый необязательный элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:PaymentInformationGuid - Идентификатор платежных реквизитов в платежном документе +4.3) Добавлен новый необязательный элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:Reminder - Сумма к оплате по платежным реквизитам (в копейках) +4.4) Дополнена аннотация tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:Reminder - Сумма к оплате по платежным реквизитам (в копейках) +4.5) Добавлена множественность для блока tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation +4.6) Добавлен новый необязательный элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:IsCapitalRepair - Платежные реквизиты для платежей капитального ремонта +4.7) Добавлен новый необязательный элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentGUID - GUID платежного документа +4.8) Изменена аннотация tns:exportPaymentDocumentDetailsResult/tns:Charge +4.9) Добавлен новый блок tns:exportPaymentDocumentDetailsResult/tns:Service - Сведения об ИЖКУ (при отсутствии начислений) +4.10) У блока tns:exportPaymentDocumentDetailsResult/tns:Service/tns:ExecutorInformation/tns:PaymentInformation изменен тип на payments-base:PaymentInformationExportType +-- +5.1) Добавлен новый блок tns:importAcknowledgmentRequest/tns:AcknowledgmentRequestInfo/payments-base:PaymentDocumentAck/payments-base:PaymentInformation - Сведения о платежных реквизитах +-- +6.1) Удален элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/base:ErrorMessage, так как он не использовался + + +HCSANALYST-5889 + + + + +1) У элемента tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation +изменен тип на payments-base:PaymentInformationExportType +2) Добавлен новый элемент tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecutionType/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:KBK - Код из Классификатора доходов в бюджет +3) Добавлен новый элемент tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecutionType/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:OKTMO - Код из Общероссийского классификатора территорий муниципальных образований +4) Добавлен новый элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:KBK +5) Добавлен новый элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:OKTMO +6) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:KBK +7) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:OKTMO +8) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionPaginalResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:KBK +9) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionPaginalResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:OKTMO +10) Добавлены новые типы OKTMOType и OKTMOImportType - Код по ОКТМО +11) Добавлен новый элемент tns:exportPaymentDocumentDetailsResult/tns:Charge/tns:PaymentDocument/tns:PaymentDocumentDetails/tns:ExecutorInformation/tns:PaymentInformation/payments-base:NumberBudgetaryAccount - Номер лицевого счета, открытый в органах Федерального казначейства (финансовых органах) +12) Добавлен новый элемент tns:importNotificationsOfOrderExecutionRequest/tns:NotificationOfOrderExecutionType/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:NumberBudgetaryAccount +13) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:NumberBudgetaryAccount +14) Добавлен новый элемент tns:exportNotificationsOfOrderExecutionPaginalResult/tns:exportNotificationsOfOrderExecutionResult/tns:NotificationOfOrderExecutionWithStatus/payments-base:RecipientInfo/payments-base:PaymentInformation/payments-base:NumberBudgetaryAccount +15) Добавлен новый элемент tns:exportPaymentDocumentResult/tns:PaymentDocument/tns:PaymentDocument/tns:PaymentInformation/payments-base:NumberBudgetaryAccount + + +16) удалена версия в tns:exportPaymentDocumentDetailsRequest/@base:version и tns:exportPaymentDocumentDetailsResult/@base:version +17) удалена версия в tns:exportPaymentDocumentRequest/@base:version и tns:exportPaymentDocumentResult/@base:version + + +HCSANALYST-5482 + +В importSupplyResourceContractRequest, importSupplyResourceContractProjectRequest, exportSupplyResourceContractResult добавлен необязательный элемент IndicationsAnyDay +Изменено описание элемента Period + + +HCSANALYST-5890 + +1. Добавлена операция сноса дома "demolishHouse" +2. В следующие типы данных добавлен необязательный элемент "LifeCycleStage" + 2.1 HouseBasicUOType + 2.2 HouseBasicUpdateUOType + 2.3 HouseBasicUpdateOMSType + 2.4 HouseBasicUpdateESPType + 2.5 ApartmentHouseOMSType + 2.6 ApartmentHouseESPType + 2.7 LivingHouseOMSType + + +HCSINT-43674 + +1. tns:exportHouseRequest/@base:version - убрано fixed значение +2. tns:exportHouseResult/@base:version - убрано fixed значение +3. HouseBasicExportType - добавлены необязательные элементы: + 3.1 LifeCycleStage + 3.2 DemolishionDate + 3.3 DemolishionReason + + +HCS-69233 + +1. Добавлен запрос exportBriefBasicHouse - Экспорт краткой базовой информации о домах +2. Добавлен запрос exportBriefLivingHouse - Экспорт краткой информации о жилых домах +3. Добавлен запрос exportBriefApartmentHouse - Экспорт краткой информации о многоквартирных домах + + +HCSANALYST-5513 + +Количество символов в типе данных WorkCountType (количество работ/услуг) увеличено до 4, исправлена опечатка в описании типа + + +HCS-76095 + +Добавлен тип данных MonthlyWorkCountType (количество работ/услуг за месяц) - неотрицательное целое число до 3 знаков. Используется для количества в типе данных CompletedWorkType. + + +NEWHCS-21510 + +1. importVotingProtocolRequest изменения для параметров: + 1.1 tns:Protocol/tns:AVoting/tns:AVotingStartDate: + 1.1.1 Изменен тип на xs:dateTime + 1.1.2 В аннотации удалена информация об обязательности + 1.1.3 Переименован в tns:StartMakingDecisionDate + 1.2 tns:Protocol/tns:AVoting/tns:AVotingDate: + 1.2.1 Изменен тип на xs:dateTime + 1.2.2 Поле необязательное + 1.2.3 Переименован в tns:EndMakingDecisionDate + 1.3 tns:Protocol/tns:MeetingAVoting/tns:AVotingStartDate: + 1.3.1 Изменен тип на xs:dateTime + 1.3.2 В аннотации удалена информация об обязательности + 1.3.3 Переименован в tns:StartMakingDecisionDate + 1.4 tns:Protocol/tns:MeetingAVoting/tns:AVotingDate: + 1.4.1 Изменен тип на xs:dateTime + 1.4.2 Поле необязательное + 1.4.3 Переименован в tns:EndMakingDecisionDate + 1.5 Значение поддерживаемой версии base:version изменено на 15.3.0.1 +2. exportVotingProtocolRequest Перечень поддерживаемых версий заменен на фиксированное значение 15.3.0.1 +3. exportVotingProtocolResultType изменения параметров: + 3.1 tns:AVoting/tns:AVotingStartDate: + 3.1.1 Изменен тип на xs:dateTime + 3.1.2 Переименован в tns:StartMakingDecisionDate + 3.2 tns:AVoting/tns:AVotingDate: + 3.2.1 Изменен тип на xs:dateTime + 3.2.2 Поле необязательное + 3.2.3 Переименован в tns:EndMakingDecisionDate + 3.3 tns:MeetingAVoting/tns:AVotingStartDate: + 3.3.1 Изменен тип на xs:dateTime + 3.3.2 Переименован в tns:StartMakingDecisionDate + 3.4 tns:MeetingAVoting/tns:AVotingDate: + 3.4.1 Изменен тип на xs:dateTime + 3.4.2 Поле необязательное + 3.4.3 Переименован в tns:EndMakingDecisionDate +4. importVotingMessageRequest изменения параметров: + 4.1 tns:AVoting/tns:AVotingStartDate + 4.1.1 Изменен тип на xs:dateTime + 4.1.2 Переименован в tns:StartMakingDecisionDate + 4.2 tns:AVoting/tns:AVotingEndDate + 4.2.1 Изменен тип на xs:dateTime + 4.2.2 Переименован в tns:EndMakingDecisionDate + 4.3 tns:MeetingAVoting/tns:AVotingStartDate + 4.3.1 Изменен тип на xs:dateTime + 4.3.2 Переименован в tns:StartMakingDecisionDate + 4.4 tns:MeetingAVoting/tns:AVotingEndDate + 4.4.1 Изменен тип на xs:dateTime + 4.4.2 Переименован в tns:EndMakingDecisionDate + 4.5 Значение поддерживаемой версии base:version изменено на 15.3.0.1 +5. exportVotingMessageRequest Значение поддерживаемой версии base:version изменено на 15.3.0.1 +6. exportVotingMessageResultType изменения параметров: + 6.1 tns:AVoting/tns:AVotingStartDate + 6.1.1 Изменен тип на xs:dateTime + 6.1.2 Переименован в tns:StartMakingDecisionDate + 6.2 tns:AVoting/tns:AVotingEndDate + 6.2.1 Изменен тип на xs:dateTime + 6.2.2 Переименован в tns:EndMakingDecisionDate + 6.3 tns:MeetingAVoting/tns:AVotingStartDate + 6.3.1 Изменен тип на xs:dateTime + 6.3.2 Переименован в tns:StartMakingDecisionDate + 6.4 tns:MeetingAVoting/tns:AVotingEndDate + 6.4.1 Изменен тип на xs:dateTime + 6.4.2 Переименован в tns:EndMakingDecisionDate + +NEWHCS-22674 + +1. exportDisqualifiedPersonRequest изменения параметров: + 1.1 Добавлены элементы Номер по ЕРУЛ tns:DisqualifiedPerson/tns:ErulNumber и Временный номер лицензии tns:DisqualifiedPerson/tns:TempNumber + 1.2 Уточнено описание tns:DisqualifiedPerson/tns:LicenseNumber + 1.3 Удалено фиксированное значение версии, добавлено уточнение, что возможные версии 10.0.1.1, 15.4.0.1 +2. exportDisqualifiedPersonResult изменения параметров: + 2.1 Добавлены элементы Номер по ЕРУЛ tns:exportDisqualifiedPersonResults/tns:ErulNumber и Временный номер лицензии tns:exportDisqualifiedPersonResults/tns:TempNumber + 2.2 Уточнено описание tns:exportDisqualifiedPersonResults/tns:LicenseNumber + 2.3 Удалено фиксированное значение версии \ No newline at end of file diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-service-async.wsdl new file mode 100644 index 0000000..9f6409d --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-service-async.wsdl @@ -0,0 +1,163 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Загрузка в ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) + + + + + + Выгрузка из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) + + + + + + Загрузка в ГИС ЖКХ ответов на запросы о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) + + + + + + Выгрузка из ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) + + + + + + Результат обработки асинхронного вызова + + + + + + + + + Загрузка в ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) + + + + + + + + + + + + + + + Выгрузка из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) + + + + + + + + + + + + + + + Загрузка в ГИС ЖКХ ответов на запросы о наличии задолженности за ЖКУ (организациями, предоставляющими ЖКУ) + + + + + + + + + + + + + + + Выгрузка из ГИС ЖКХ запросов о наличии задолженности за ЖКУ (организациями, направляющими запросы) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сервис управления запросами о наличии задолженности за ЖКУ + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-types.xsd new file mode 100644 index 0000000..3fca7d6 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debt-requests/hcs-debt-requests-types.xsd @@ -0,0 +1,1455 @@ + + + + + + + + + Импорт в ГИС ЖКХ запросов о наличии задолженности за ЖКУ. Доступны версии 13.1.10.1, 14.0.0.0, + + + + + + + + Операция над запросом о наличии задолженности за ЖКУ + + + + + + + Идентификатор запроса о наличии задолженности за ЖКУ. + + Обязателен для операции Revoke. + + Для операции Send указывается в том случае, если поставщикам ЖКУ направляется уже существующий в ГИС ЖКХ запрос + + + + + Тип операции над запросом о наличии задолженности за ЖКУ. + + Допустимые значения: + Send - Направить запрос поставщикам ЖКУ; + Revoke - Отозвать запрос, ранее направленный поставщикам ЖКУ. + + Для операции Send должен быть указан хотя бы один из элементов requestGUID или requestData + + + + + Данные запроса о наличии задолженности за ЖКУ. + + Указывается только для операции Send. + + Если операция связана с уже существующим в ГИС ЖКХ запросом (указан элемент requestGUID), то контент элемента используется для изменения запроса перед его направлением поставщикам ЖКУ. В противном случае, контент элемента используется для создания в ГИС ЖКХ нового запроса, который направляется поставщикам ЖКУ + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности подзапроса о наличии задолженности в рамках importDRsRequest + + + + + + + + + Экспорт из ГИС ЖКХ запросов о наличии задолженности за ЖКУ. Доступны версии 13.1.10.1, 14.0.0.0 и 15.3.0.0 + + + + + + + Условия отбора запросов о наличии задолженности за ЖКУ + + + + Идентификатор запроса о наличии задолженности за ЖКУ + + + + + Номер запроса, присвоенный ГИС ЖКХ + + + + + Условия отбора по атрибутам запроса. + + Условия могут указываться в любых сочетаниях. В ответное сообщение будут включены только те запросы о задолженности, которые удовлетворяют ВСЕМ указанным условиям. Условие считается выполненным, если значение соответствующего атрибута запроса о задолженности + + либо совпадает с указанным в условии значением (применимо к элементу applicantInfo); + + либо совпадает с одним из указанных в условии значений (для элементов requestStatus, requestResult, houseGuid); + + либо попадает в заданный временной период (для элементов, задающих временной период) + + + + Период создания запроса в ГИС ЖКХ. + + Указываемый период не должен превышать 6-ти месяцев + + + + + Период направления запроса поставщикам ЖКУ. + + Указываемый период не должен превышать 6-ти месяцев + + + + + Период крайнего срока ответа на запрос + + + + + Информация о заявителе + + + + + + Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ и Тип ОЖФ. +Указывается для версии 14.0.0.0 + + + + + Идентификатор дома в Реестре адресных объектов ГИС ЖКХ, по которому осуществляется запрос. +Указывается для версии 13.1.10.1 + + + + + + Статус запроса в ГИС ЖКХ. + + Допустимые значения: + Draft - Проект; + Processing - В обработке; + Sent - Направлен поставщикам ЖКУ; + Processed - Получен ответ; + Revoked - Отозван + + + + + Результат выполнения запроса о наличии задолженности за ЖКУ (НСИ #357) + + + + + Идентификатор, используемый для экспорта 2-го и последующих блоков данных. + + Если в элементе exportDRsRequest указаны условия отбора по атрибутам запроса, то экспорт запросов осуществляется блоками по 100 запросов в каждом блоке (последний блок может содержать меньшее число запросов). + + Для экспорта первого блока данных элемент не указывается. Для экспорта каждого следующего блока данных в элементе должно указываться значение элемента getStateResult/ exportDRsResult/ pagedOutput/ nextRequestGUID, полученное при экспорте предыдущего блока данных + + + + + + + + + + + + Результат экспорта из ГИС ЖКХ запросов о наличии задолженности за ЖКУ. + + + + + + + + Результат выполнения запроса на экспорт из ГИС ЖКХ запросов о наличии задолженности за ЖКУ + + + + + + + + + + + + Тип для результата экспорта из ГИС ЖКХ запросов о наличии задолженности за ЖКУ + + + + + Данные запроса о наличии задолженности за ЖКУ + + + + + Запросы о наличии задолженности за ЖКУ, данные о которых не найдены в ГИС ЖКХ + + + + + + Идентификатор запроса о наличии задолженности за ЖКУ + + + + + Номер запроса, присвоенный ГИС ЖКХ + + + + + + + + Параметры, необходимые для экспорта следующего блока данных (см. аннотацию элемента exportDRsRequest/ exportRequestGUID). + + Заполняется, если в элементе exportDRsRequest указаны условия отбора по атрибутам запроса + + + + + + Идентификатор, который необходимо указать в элементе exportDRsRequest/ exportRequestGUID для экспорта следующего блока данных + + + + + Признак того, что текущий экспортируемый блок является последним + + + + + + + + + + + + Экспорт из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ. Доступны версии 13.1.10.1, 14.0.0.0 и 15.3.0.0 + + + + + + + + Условия отбора подзапросов + + + + Идентификатор подзапроса, сформированного ГИС ЖКХ + + + + + Номер запроса о наличии задолженности за ЖКУ, направленного в ГИС ЖКХ + + + + + Условия на атрибуты запроса / подзапроса + + + + Период направления запроса поставщикам ЖКУ. + Указываемый период не должен превышать 6-ти месяцев + + + + + + Идентификатор дома в Реестре адресных объектов ГИС ЖКХ, с которым связан запрос о наличии задолженности. +Указывается для версии 13.1.10.1 + + + + + Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ и Тип ОЖФ. +Указывается для версии 14.0.0.0 + + + + + + Статус запроса, направленного в ГИС ЖКХ. + + Допустимые значения: + Sent - Направлен; + Processed - Получен ответ + + + + + Статус ответа на подзапрос, сформированный ГИС ЖКХ. + + Допустимые значения: + NotSent - Не отправлен; + Sent - Отправлен; + AutoGenerated - Сформирован автоматически + + + + + Идентификатор, используемый для экспорта 2-го и последующих блоков данных. + + Если в элементе exportDSRsRequest указаны условия отбора по атрибутам запроса/подзапроса, то экспорт подзапросов осуществляется блоками по 100 подзапросов в каждом блоке (последний блок может содержать меньшее число подзапросов). + + Для экспорта первого блока данных элемент не указывается. Для экспорта каждого следующего блока данных в элементе должно указываться значение элемента getStateResult/ exportDSRsResult/ pagedOutput/ nextSubrequestGUID, полученное при экспорте предыдущего блока данных + + + + + + + Признак включения в результат сведений об ответах на запросы о задолженности по ЖКУ. +Указывается для версии 13.1.10.1 + + + + + + + + + + + Результат экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ. Доступны версии 13.1.10.1, 14.0.0.0 и 15.3.0.0 + + + + + + + + Результат выполнения запроса на экспорт подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ + + + + + + + + + + + + Тип для результата экспорта из ГИС ЖКХ подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ + + + + + Данные подзапроса о наличии задолженности за ЖКУ + + + + + Запросы и подзапросы о наличии задолженности за ЖКУ, данные о которых не найдены в ГИС ЖКХ + + + + + + Идентификатор подзапроса, сформированного ГИС ЖКХ + + + + + Номер запроса о наличии задолженности за ЖКУ, направленного в ГИС ЖКХ + + + + + + + + Параметры, необходимые для экспорта следующего блока данных (см. аннотацию элемента exportDSRsRequest/ exportSubrequestGUID). + + Заполняется, если в элементе exportDSRsRequest указаны условия отбора по атрибутам запроса / подзапроса + + + + + + Идентификатор, который необходимо указать в элементе exportDSRsRequest/ exportSubrequestGUID для экспорта следующего блока данных + + + + + Признак того, что текущий экспортируемый блок является последним + + + + + + + + + + + Импорт в ГИС ЖКХ ответов на подзапросы о наличии задолженности за ЖКУ, сформированные ГИС ЖКХ + + + + + + + + Действие с ответом на подзапрос о наличии задолженности + + + + + + + Идентификатор подзапроса о наличии задолженности, сформированного ГИС ЖКХ + + + + + Тип операции с ответом на подзапрос. + + Допустимые значения: + Send - Отправить ответ; + Revoke - Отозвать ранее отправленный ответ + + + + + Ответ на подзапрос. + + Указывается только для операции Send. + + Если для подзапроса ответ уже существует в ГИС ЖКХ, то контент элемента используется для изменения ответа перед его отправкой. В противном случае, контент элемента используется для создания и отправки нового ответа + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности подзапроса о наличии задолженности в рамках importDSRResponsesRequest + + + + + + + + + Возврат статуса и результатов отправленного сообщения + + + + + + + + Результат импорта + + + + + Результат выполнения запроса на экспорт из ГИС ЖКХ запросов о наличии задолженности за ЖКУ + + + + + Результат выполнения запроса на экспорт подзапросов о наличии задолженности за ЖКУ, сформированных ГИС ЖКХ + + + + + + + + + + + + + Информация о заявителе, указываемая в параметрах запроса + + + + + Имя + + + + + Фамилия + + + + + Отчество + + + + + СНИЛС + + + + + Документ, удостоверяющий личность заявителя + + + + + + + Информация о заявителе + + + + + Имя + + + + + Фамилия + + + + + Отчество + + + + + СНИЛС + + + + + Документ, удостоверяющий личность заявителя + + + + + + + Информация о задолженности, подтвержденной судебным актом + + + + + Информация о лице, в отношении которого имеется задолженность + + + + + + Имя + + + + + Фамилия + + + + + Отчество + + + + + СНИЛС + + + + + Документ, удостоверяющий личность + + + + + + + + Документ, подтверждающий задолженность + + + + + + Тип документа, для ответа на подзапрос (НСИ 358) + + + + + Прикрепленный файл + + + + + + + + + + Документ, удостоверяющий личность заявителя + + + + + Вид документа, удостоверяющего личность (НСИ #95) + + + + + Серия + + + + + + + + + + Номер + + + + + + + + + + + + Данные подзапроса о наличии задолженности за ЖКУ, сформированного ГИС ЖКХ + + + + + Идентификатор подзапроса, присвоенный в ГИС ЖКХ + + + + + Информация об исходном запросе в ГИС ЖКХ о наличии задолженности за ЖКУ + + + + + + Идентификатор запроса в ГИС ЖКХ + + + + + Номер запроса + + + + + Организация, + направившая запрос + + + + + Объект жилищного фонда (ОЖФ), по которому осуществляется запрос + + + + + Период, за который запрашивается задолженность + + + + + Статус запроса. + + Допустимые значения: + Sent - Направлен + Processed - Получен ответ + + + + + Дата направления запроса + + + + + Крайний срок ответа на запрос + + + + + Информация о сотруднике, сформировавшем запрос + + + + + + + + Статус ответа на подзапрос о наличии задолженности за ЖКУ. + + Допустимые значения: + NotSent - Не отправлен + Sent - Отправлен + AutoGenerated - Сформирован автоматически + + + + + Ответ на подзапрос + + + + + + Признак наличия задолженности, подтвержденной судебным актом + + + + + Информация о непогашенной задолженности, подтвержденной судебным актом + + + + + Дополнительный файл + + + + + Дополнительная информация + + + + + + + + + + Информация о сотруднике, сформировавшем ответ + + + + + + + + + + Информация об исполнителе + + + + + Идентификатор исполнителя + + + + + ФИО Исполнителя + + + + + + + Данные запроса о наличии задолженности за ЖКУ для экспорта из ГИС ЖКХ + + + + + Идентификатор запроса, присвоенный в ГИС ЖКХ + + + + + Номер запроса, присвоенный в ГИС ЖКХ + + + + + Информация о заявителе + + + + + Сведения об объекте жилищного фонда (ОЖФ), по которому осуществляется запрос + + + + + Период, за который запрашивается задолженность + + + + + Организация, + сформировавшая запрос + + + + + Информация о сотруднике, сформировавшем запрос + + + + + Статус запроса в ГИС ЖКХ. + + Допустимые значения: + Draft - Проект; + Processing - В обработке; + Sent - Направлен поставщикам ЖКУ; + Processed - Получен ответ; + Revoked - Отозван + + + + + Результат выполнения запроса. + + Допускаются любые значения из справочника ГИС ЖКХ "Результат запроса о наличии или отсутствии + задолженности за ЖКУ" (НСИ #345). Aктуальными + являются следующие значения: + 1 - Запрос не отправлен + 2 - Запрос ожидает ответа + 3 - Имеется информация о задолженности + 4 - Задолженности нет + 5 - Отсутствует размещенная информация в ГИС ЖКХ + 6 - Информация о задолженности отсутствует + 7 - Информация о задолженности не подтверждена поставщиком + + + + + Дата создания запроса + + + + + Дата направления запроса поставщикам ЖКУ + + + + + Крайний срок ответа на запрос + + + + + Запросы организациям, предоставляющим ЖКУ + + + + + + Организация, + предоставляющая ЖКУ + + + + + Ответ организации + + + + + + Способ формирования ответа. + + Допустимые значения: + Provided - Предоставлен организацией + AutoGenerated - Сформирован автоматически + + + + + Признак наличия задолженности, подтвержденной судебным актом + + + + + Информация о непогашенной задолженности, подтвержденной судебным актом + + + + + Дополнительный файл + + + + + Дополнительная информация + + + + + + + + + + Информация о сотруднике, сформировавшем ответ + + + + + + + + + + + + + Экспортируемые сведения об объекте жилищного фонда (ОЖФ), по которому осуществляется запрос + + + + + + Заполняется для запросов, направленных по версии 13.1.10.1 + + + + Идентификатор дома (либо в Реестре адресных объектов ГИС ЖКХ, либо в справочнике ФИАС) + + + + + Дополнительная информация об ОЖФ (номер квартиры / помещения, комнаты, блока жилого дома). + +Обязателен для ОЖФ, имеющих тип многоквартирный дом или жилой дом блокированной застройки. Не указывается для ОЖФ, имеющих тип жилой дом + + + + + + + + + + + Заполняется для запросов, направленных по версии 14.0.0.0 + + + + Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ. + + + + + Тип объекта. + Возможные значения: + Appartment - Помещение/блок, + Room - Комната, + House - Жилой дом + Заполняется только для новой версии + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Адресная строка + + + + + + + + + + + + + Данные запроса о наличии задолженности за ЖКУ для импорта в ГИС ЖКХ + + + + + Информация о заявителе + + + + + Сведения об объекте жилищного фонда (ОЖФ), по которому осуществляется запрос + + + + + Идентификатор сотрудника, сформировавшего запрос + + + + + + + Данные подзапроса о наличии задолженности за ЖКУ для импорта в ГИС ЖКХ + + + + + Признак наличия задолженности, подтвержденной судебным актом + + + + + Дополнительный файл. + + Может быть указан, только если hasDebt=TRUE + + + + + Дополнительная информация + + + + + + + + + + Идентификатор сотрудника, сформировавшего ответ + + + + + Информация о непогашенной задолженности, подтвержденной судебным актом. + +Может быть указан, только если hasDebt=TRUE. + + + + Информация о непогашенной задолженности, подтвержденной судебным актом. Указывается, если ответ направляется без учета реестра сведений о задолженности. + +Может быть указан, только если hasDebt=TRUE. В этом случае элемент обязателен + + + + + Идентификатор записи реестра сведений о задолженности. Указывается при направлении ответа с учетом реестра сведений о задолженности. Может быть указан, только если hasDebt=TRUE. Необязателен для заполнения + + + + + + + + Сведения об организации + + + + + Корневой идентификатор организации (в Реестре организаций ГИС ЖКХ) + + + + + Наименование организации + + + + + Телефон организации + + + + + + + блок судебного акта Доступные версии: 14.0.0.0 и 15.3.0.0 + + + + + Номер судебного акта + + + + + + + + + + Дата вступления в силу судебного акта + + + + + Дата судебного акта (вынесения) Необязательный атрибут. Заполняется, начиная с версии 15.3.0.0, если значение не пустое + + + + + + + Информация об аннулированном объекте жилищного фонда, указанном в записи в реестре сведений о задолженности. + Запролняется, если судебный акт ссылается на аннулированный в ГИС ЖКХ объект жилищного фонда. + + + + + Адрес аннулированного объекта жилищного фонда. + + + + + + + + + + Глобальный уникальный идентификатор аннулированного дома по ФИАС + + + + + Идентификационный код аннулированного дома в ГИС ЖКХ.Адреса объектов, добавленных по заявкам на добавление в ФИАС, выгружаются в открытой части ГИС ЖКХ в разделе «Регламенты и инструкции». + + + + + Глобальный уникальный идентификатор аннулированного объекта жилищного фонда в Реестре адресных объектов ГИС ЖКХ. + + + + + + + Информация о задолженности, подтвержденной судебным актом для экспорта ГИС ЖКХ + + + + + Информация о лице, в отношении которого имеется задолженность + + + + + + Имя + + + + + Фамилия + + + + + Отчество + + + + + СНИЛС + + + + + Документ, удостоверяющий личность + + + + + + + + Документ, подтверждающий задолженность + + + + + + Тип документа, для ответа на подзапрос (НСИ 358) + + + + + Прикрепленный файл + + + + + Идентификатор записи в реестре сведений о задолженности. + +Выгружается, если запрос на экспорт отправлен по новой версии (14.0.0.0) + + + + + Информация о судебном акте. + Обязательно для заполнения, если тип документа = судебный акт (заполняется для новой версии ответа на запрос). + +Выгружается, если запрос на экспорт отправлен по новой версии (14.0.0.0) + + + + + Информация об аннулированном объекте жилищного фонда, указанном в записи в реестре сведений о задолженности. + Запролняется, если судебный акт ссылается на аннулированный в ГИС ЖКХ объект жилищного фонда. + +Выгружается, если запрос на экспорт отправлен по новой версии (14.0.0.0) + + + + + + + + + + Сведения об объекте жилищного фонда (ОЖФ) для запроса экспорта запросов/подзапросов (версия 14.0.0.0) + + + + + Идентификатор дома/помещения/комнаты в Реестре адресных объектов ГИС ЖКХ. + + + + + Тип объекта. + Возможные значения: + Apartment - Помещение/блок, + Room - Комната, + House - Жилой дом + + + + + + + + Импортируемые сведения об объекте жилищного фонда (ОЖФ) в запросе + + + + + Указывается при направлении запроса по версии 13.1.10.1 + + + + Идентификатор дома (либо в Реестре адресных объектов ГИС ЖКХ, либо в справочнике ФИАС) + + + + + Дополнительная информация об ОЖФ (номер квартиры / помещения, комнаты, блока жилого дома). + +Обязателен для ОЖФ, имеющих тип многоквартирный дом или жилой дом блокированной застройки. Не указывается для ОЖФ, имеющих тип жилой дом + + + + + + + + + + + Указывается при направлении запроса по версии 14.0.0.0. + + + + + Идентификатор объекта жилищного фонда в Реестре адресных объектов ГИС ЖКХ. Обязателен для заполнения для всех типов, кроме жилой дом. Если тип = жилой дом. то может быть заполнен, либо HMObjectGUID, либо fiasHouseGUID + + + + + Тип объекта. + Возможные значения: + Apartment - Помещение/блок, + Room - Комната, + House - Жилой дом + + + + + + + Идентификатор ФИАС. Может быть заполнен, если тип объекта = жилой дом + + + + + + + + + Все статусы запроса в ГИС ЖКХ. + + Допустимые значения: + Draft - Проект; + Processing - В обработке; + Sent - Направлен поставщикам ЖКУ; + Processed - Получен ответ; + Revoked - Отозван + + + + + + + + + + + + Типы операций с запросами о наличии задолженности за ЖКУ. + + Допустимые значения: + Send - Направить запрос поставщикам ЖКУ; + Revoke - Отозвать запрос, ранее направленный поставщикам ЖКУ + + + + + + + + + Типы операций с ответами на подзапросы о наличии задолженности за ЖКУ. + + Допустимые значения: + Send - Отправить ответ; + Revoke - Отозвать ранее отправленный ответ + + + + + + + + + Скалярный тип для ввода ФИО + + + + + + + + + Скалярный тип для номера запроса + + + + + + + + Статус запроса, направленного в ГИС ЖКХ. + + Допустимые значения: + Sent - Направлен; + Processed - Получен ответ + + + + + + + + + Статус ответа на подзапрос, сформированный ГИС ЖКХ. + + Допустимые значения: + NotSent - Не отправлен; + Sent - Отправлен; + AutoGenerated - Сформирован автоматически + + + + + + + + + + Способ формирования ответа на подзапрос. + + Допустимые значения: + Provided - Предоставлен организацией; + AutoGenerated - Сформирован автоматически + + + + + + + + + Тип для ввода СНИЛС + + + + + + + + Тип ОЖФ. Возможные значения: Apartment - Помещение, Room - Комната, House - Жилой дом, HouseBlock - Блок в жилом доме + + + + + + \ No newline at end of file diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-service-async.wsdl new file mode 100644 index 0000000..f81268a --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-service-async.wsdl @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт о сведений о задолженностях за ЖКУ + + + + + + Экспорт сведений о задолженностях за ЖКУ + + + + + + Получение статуса обработки запроса + + + + + + + + + Импорт о сведений о задолженностях за ЖКУ + + + + + + + + + + + + + Экспорт сведений о задолженностях за ЖКУ + + + + + + + + + + + + + Получение статуса обработки запроса + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-types.xsd new file mode 100644 index 0000000..febfdcf --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/debts/hcs-debts-types.xsd @@ -0,0 +1 @@ + Запрос на импорт сведений о задолженностях за ЖКУ Сведения о задолженностях за ЖКУ Размещение сведений о задолженностях за ЖКУ Объект жилого фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Cведения о гражданине, у которого имеется задолженность, подтвержденная судебным актом Сведения о судебном акте Номер судебного акта Дата вступления в силу судебного акта Дата судебного акта (вынесения). Обязательный элемент. Файл судебного акта Акт сверки Дополнительная информация Дополнительные файлы Редактирование сведений о задолженностях за ЖКУ Уникальный идентификатор сведений о задолженности за ЖКУ Акт сверки Дополнительные файлы Дополнительная информация Аннулирование сведений о задолженностях за ЖКУ Уникальный идентификатор сведений о задолженности за ЖКУ Причина аннулирования сведений о задолженности за ЖКУ. Ссылка на НСИ "Причины аннулирования записи о задолженности за коммунальные услуги" (реестровый номер 365) Текстовая причина аннулирования сведений о задолженности за ЖКУ. Заполняется, если Причина аннулирования = 5. Иная Размещение сведений о погашении задолженности за ЖКУ Уникальный идентификатор сведений о задолженности за ЖКУ Комментарий при погашении задолженности Дата погашения задолженности Аннулирование сведений о погашении задолженности за ЖКУ Уникальный идентификатор сведений о задолженности за ЖКУ Причина аннулирования сведений о погашении задолженности за ЖКУ. Ссылка на НСИ "Причины аннулирования информации о погашении задолженности за коммунальные услуги" (реестровый номер 366) Текстовая причина аннулирования сведений о погашении задолженности за ЖКУ. Заполняется, если Причина аннулирования = 3. Иная Запрос на экспорт сведений о задолженностях за ЖКУ Доступные версии: 13.3.1.0 и 15.3.0.0 Критерии экспорта сведений о задолженностях за ЖКУ Идентификатор, используемый для экспорта 2-го и последующих блоков данных. Если в элементе exportDebtRequest указаны условия отбора по атрибутам запроса, то экспорт осуществляется блоками по 1000 записей в каждом блоке (последний блок может содержать меньшее число записей). Элемент NextPageExportRequestGUID не указывается для экспорта первого блока данных. Для экспорта каждого следующего блока данных в элементе NextPageExportRequestGUID должно указываться значение элемента tns:getStateResult/tns:ExportDebt/tns:ExportDebtGUID, полученное при экспорте предыдущего блока данных Результат экспорта сведений о задолженности за ЖКУ Доступные версии: 13.3.1.0 и 15.3.0.0 Результат выполнения запроса на экспорт сведений о погашении задолженности за ЖКУ Возврат статуса отправленного сообщения Результат импорта сведений о задолженности за ЖКУ Результат экспорта сведений о задолженности за ЖКУ Тип данных, описывающий сведения о гражданине, у которого имеется задолженность, подтвержденная судебным актом Фамилия Имя Отчество ИНН СНИЛС Документ, удостоверяющий личность Вид документа. Ссылка на НСИ "Документ, удостоверяющий личность" (реестровый номер 95) Серия документа, удостоверяющего личность Номер документа, удостоверяющего личность Тип данных, описывающий статус информации о задолженности. Возможные значения: PUBLISHED - Информация размещена; CANCELLED - Информация аннулирована. Тип данных, описывающий статус информации о погашении задолженности. Возможные значения: PAID – Задолженность погашена; UNPAID - Задолженность не погашена. Тип данных, описывающий статус информации об объекте, по которому имеется непогашенная задолженность, подтвержденная судебным актом Возможные значения: DEMOLISHED - снесен; ANNULED - аннулирован. Тип данных, описывающий объекты жилого фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Дом, по которому имеется непогашенная задолженность, подтвержденная судебным актом Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ, по которому имеется непогашенная задолженность, подтвержденная судебным актом Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ, по которой имеется непогашенная задолженность, подтвержденная судебным актом Тип данных, описывающий сведения о задолженноси за ЖКУ при экспорте Уникальный идентификатор сведений о задолженности за ЖКУ Jбъект жилищного фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Сведения о гражданине, у которого имеется задолженность, подтвержденная судебным актом Сведения о судебном акте Номер судебного акта Дата вступления в силу судебного акта Дата судебного акта (вынесения). Необязательный элемент. Заполняется, если значение не пустое. Файл судебного акта Акт сверки Дополнительные файлы Дополнительная информация Статус сведений о задолженности. Возможные значения: PUBLISHED – Информация размещена; CANCELLED - Информация аннулирована. Дата первого размещения сведений о задолженности Дата последнего размещения сведений о задолженности Сведения о погашении задолженности за ЖКУ Статус сведений о погашении задолженности. Возможные значения: PAID – Задолженность погашена; UNPAID - Задолженность не погашена. Дата размещения сведений о погашении задолженности Дата погашения задолженности, указанная пользователем Комментарий при погашении задолженности Сведения об аннулировании сведений о погашении задолженности за ЖКУ Причина аннулирования сведений о погашении задолженности за ЖКУ Причина аннулирования сведений о погашении задолженности за ЖКУ. Ссылка на НСИ "Причины аннулирования информации о погашении задолженности за коммунальные услуги" (реестровый номер 366) Текстовая причина аннулирования сведений о погашении задолженности за ЖКУ. Заполняется, если Причина аннулирования = 3. Иная Дата аннулирования сведений о погашении задолженности за ЖКУ Сведения об аннулировании Дата аннулирования сведений о задолженности Причина аннулирования сведений о задолженности за ЖКУ Причина аннулирования сведений о задолженности за ЖКУ. Ссылка на НСИ "Причины аннулирования записи о задолженности за коммунальные услуги" (реестровый номер 365) Текстовая причина аннулирования сведений о задолженности за ЖКУ. Заполняется, если Причина аннулирования = 5. Иная Тип данных, описывающий результат экспорта сведений о задолженности за ЖКУ Сведения о задолженности за ЖКУ Идентификатор сведений о задолженности за ЖКУ для экспорта следующей 1000 записей Последняя страница экспорта Тип данных, описывающий критерии экспорта сведений о задолженностях за ЖКУ Дата вступления в силу судебного акта Период размещения сведений о задолженностях за ЖКУ Период размещения сведений о погашении задолженностях за ЖКУ Список статусов сведений о задолженностях за ЖКУ Статус сведений о задолженности. Возможные значения: PUBLISHED - Информация размещена; CANCELLED - Информация аннулирована. Список статусов сведений о погашении задолженности за ЖКУ Статус сведений о погашении задолженности. Возможные значения: PAID – Задолженность погашена; UNPAID - Задолженность не погашена. Объект жилищного фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Номер судебного акта Cведения о гражданине, у которого имеется задолженность, подтвержденная судебным актом Тип данных, описывающий критерии экспорта объектов жилого фонда, по которым имеется непогашенная задолженность, подтвержденная судебным актом Дом, по которому имеется непогашенная задолженность, подтвержденная судебным актом Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ, по которому имеется непогашенная задолженность, подтвержденная судебным актом Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ, по которой имеется непогашенная задолженность, подтвержденная судебным актом Тип данных, описывающий объект жилого фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Объект жилого фонда, по которому имеется непогашенная задолженность, подтвержденная судебным актом Дом, по которому имеется непогашенная задолженность, подтвержденная судебным актом Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ, по которому имеется непогашенная задолженность, подтвержденная судебным актом Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ, по которой имеется непогашенная задолженность, подтвержденная судебным актом Статус объекта жилищного фонда. Возможные значения: DEMOLISHED - снесен; ANNULED - аннулирован. Если статус объекта жилищного фонда отличен от данных значений, то элемент не заполняется. Дата изменения статуса объекта жилищного фонда. Заполняется только заполнен элемент tns:ObjectStatus Причина изменения статуса объекта жилищного фонда. Заполняется только заполнен элемент tns:ObjectStatus Причина изменения статуса объекта жилищного фонда на статус Снесен Причина изменения статуса объекта жилищного фонда на статус Аннулирован Тип данных, описывающий критерии экспорта сведений о гражданине, у которого имеется задолженность, подтвержденная судебным актом ИНН СНИЛС Документ, удостоверяющий личность Вид документа. Ссылка на НСИ "Документ, удостоверяющий личность" (реестровый номер 95) Серия документа, удостоверяющего личность Номер документа, удостоверяющего личность Тип данных, описывающий результаты экспорта сведений о гражданине, у которого имеется задолженность, подтвержденная судебным актом Фамилия Имя Отчество ИНН СНИЛС Документ, удостоверяющий личность Вид документа. Ссылка на НСИ "Документ, удостоверяющий личность" (реестровый номер 95) Серия документа, удостоверяющего личность Номер документа, удостоверяющего личность \ No newline at end of file diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-service-async.wsdl new file mode 100644 index 0000000..258a6f9 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-service-async.wsdl @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Передать показания ПУ + + + + + + Получить историю показаний ПУ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис управления приборами учета и передачей показаний + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-types.xsd new file mode 100644 index 0000000..657b015 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/device-metering/hcs-device-metering-types.xsd @@ -0,0 +1,1001 @@ + + + + + + + + + Показание однотарифного ПУ. Используется при импорте текущих и контрольных показаний ПУ + + + + + + + Дата снятия показания + + + + + + + + + + Показание однотарифного ПУ. Используется при импорте текущих и контрольных показаний ПУ + + + + + + + Дата снятия показания + + + + + + + + + + Данные ПУ, измеряющего объем потребления КР. Используется при импорте текущих и контрольных объемов + + + + + + + Дата снятия показания + + + + + + + + + + Базовые показания однотарифного ПУ: коммунальный ресурс, значение показания в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ, дата-время внесения в Систему. Используется при экспорте базовых показаний ПУ и показаний на начало / окончание поверки + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Заполняется, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + Значение показания ПУ, выраженное в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + + + + + Показания многотарифного ПУ: значения показаний в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ, дата-время внесения в Систему. Используется при экспорте базовых показаний ПУ и показаний на начало / окончание поверки + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Заполняется, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + Значения показаний ПУ, выраженные в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение по тарифу T1 + + + + + Значение по тарифу T2 + + + + + Значение по тарифу T3 + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + + + + + Текущие показания однотарифного ПУ: расширяет тип базовых показаний однотарифного ПУ датой снятия показаний. Используется при экспорте текущих и контрольных показаний ПУ + + + + + + + Дата снятия показания + + + + + + + + + Текущие показания многотарифного ПУ: расширяет тип базовых показаний многотарифного ПУ датой снятия показаний. Используется при экспорте текущих и контрольных показаний ПУ электроэнергии + + + + + + + Дата снятия показания + + + + + + + + + Данные текущих показаний ПУ, измеряющего объем потребляемого коммунального ресурса: коммунальный ресурс, значение показания в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ. Используется при экспорте показаний на начало / окончание поверки + + + + + + + Кем внесено + + + + + Идентификатор организации, которая ввела данные в Систему. Не заполняется, если данные были введены гражданином + + + + + Дата и время внесения в Систему + + + + + Код единицы измерения объемов потребления (из расширенного классификатора ОКЕИ). Заполняется, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + Значения объемов потребления ПУ, выраженные в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение по тарифу T1 + + + + + Значение по тарифу T2 + + + + + Значение по тарифу T3 + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + + + + + Данные текущих показаний ПУ, измеряющего объем потребляемого коммунального ресурса: расширяет базовый тип датой снятия показаний. Используется при экспорте текущих и контрольных показаний + + + + + + + Дата снятия показания + + + + + + + + + Экспортируемые виды показаний ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (используется при экспорте показаний) + + + + + Объем потребления за период + + + + + + + + Период, к которому относятся показания + + + + + + + + + + Контрольный объем + + + + + Данные поверки, ПУ остается прежним + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Объем на начало поверки + + + + + Объем на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + + + + Импорт показаний приборов учета. Показания импортируются в единицах измерения, которые назначены прибору учета при его создании. (Допустимы следующие ЕИ: для коммунальных ресурсов "Холодная вода", "Горячая вода", "Сточные бытовые воды" - 112 (Литр) и 113 (Кубический метр); для КР "Электрическая энергия" - 245 (Киловатт-час); для КР "Газ" - 113 (Кубический метр); для КР "Тепловая энергия" - 233 (Гигакалория), 245 (Киловатт-час), 246 (Мегаватт-час), 271 (Джоуль), A056 (Гигаджоуль) и A058 (Мегаджоуль)) + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Показания и объемы потребленных ресурсов ПУ + + + + + + + Идентификатор ПУ + + + + + Идентификатор версии ПУ + + + + + + + Показания по ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих показания + + + + + + Показания за период + + + + + + + + Период, за который передаются показания. + +Если не указан, то показания относятся к месяцу Даты снятия показаний + + + + + + + + + + Контрольное показание + + + + + Показание поверки, ПУ остается прежним либо архивируется в случае выхода из строя + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Показание на начало поверки + + + + + Показание на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + + + + + Показания по ПУ (электрическая энергия). Указывается только для ПУ, предоставляющих показания + + + + + + Показания за период + + + + + + + + Период, за который передаются показания. + +Если не указан, то показания относятся к месяцу Даты снятия показаний + + + + + + + + + + Контрольное показание + + + + + Показание поверки, ПУ остается прежним либо архивируется в случае выхода из строя + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Показание на начало поверки + + + + + Показание на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + + + + + Объемы потребленных ресурсов по ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих объем потребленного КР + + + + + + Объем потребления за период + + + + + + + + Период, за который передаются показания. + +Если не указан, то показания относятся к месяцу Даты снятия показаний + + + + + + + + + + Контрольный объем + + + + + Сведения о поверке, ПУ остается прежним либо архивируется в случае выхода из строя + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Объем на начало поверки + + + + + Объем на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт истории показаний и поверок приборов учета (ПУ) пользователя, установленных в указанном доме. Допускается указание нескольких домов. Также допускается не указывать ни одного дома (в этом случае экспортируются данные по всем ПУ пользователя). Если запрошен экспорт по 2-м и более (или всем) домам, то данные экспортируются блоками, содержащими не более 1000 ПУ в каждом блоке. Для экспорта 2-го и последующих блоков необходимо повторить запрос с теми же значениями параметров и указать в нем элемент ExportMeteringDeviceRootGUID + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС, в котором установлен ПУ пользователя. Допускается указание нескольких элементов. Если не указан, то будут экспортироваться данные по всем ПУ пользователя + + + + + Идентификатор ПУ в ГИС ЖКХ, используемый для экспорта 2-го и последующих блоков данных (см. аннотацию корневого элемента). Должно указываться значение, полученное в элементе exportMeteringDeviceHistoryResult/PagedOutput/ExportMeteringDeviceRootGUID при экспорте предыдущего блока данных. Для выгрузки первого блока данных элемент не указывается + + + + + + Тип прибора учета (НСИ 27) + + + + + Вид коммунального ресурса (НСИ 2) + + + + + Идентификатор ПУ + + + + + + Дата ввода в эксплуатацию «С» + + + + + Дата ввода в эксплуатацию «По» + + + + + Выгружать архивированные + + + + + Дата архивации «С» + + + + + Дата архивации «По» + + + + + Дата начала периода, за который выгружаются показания и поверки ПУ (по дате снятия показаний). Значение по умолчанию: 1-е число предыдущего календарного месяца. Период выгрузки показаний ПУ (определяемый элементами inputDateFrom и inputDateTo) не должен выходить за пределы двух последовательных календарных месяцев + + + + + Дата окончания периода, за который выгружаются показания и поверки ПУ (по дате снятия показаний). Значение по умолчанию: текущая дата. Период выгрузки показаний ПУ (определяемый элементами inputDateFrom и inputDateTo) не должен выходить за пределы двух последовательных календарных месяцев + + + + + Если флаг сброшен или отсутствует, то показания, введенные в Систему гражданином, включаются в выгрузку. Если флаг установлен, то такие показания в выгрузку не включаются + + + + + Если флаг сброшен или отсутствует, то показания, введенные в Систему текущей организацией, включаются в выгрузку (при условии, что не установлен флаг excludeISValues). Если флаг установлен, то такие показания в выгрузку не включаются + + + + + Если флаг сброшен или отсутствует, то показания, введенные в Систему организациями отличной от текущей, включаются в выгрузку. Если флаг установлен, то такие показания в выгрузку не включаются + + + + + Если флаг установлен, то в выгрузку включаются только показания, введенные в личном кабинете или загруженные организациями отличной от текущей. В остальных случаях выгружаются все показания. (Устаревшая функциональность, которая перекрывается флагами ExcludePersonAsDataSource, ExcludeCurrentOrgAsDataSource, ExcludeOtherOrgAsDataSource) + + + + + + + + + + + Экспорт показаний и поверок приборов учета. Значения показаний и поверок указываются в единицах измерения (ЕИ), которые назначены прибору учета при его создании. Если ЕИ прибора учета отличается от ЕИ коммунального ресурса (КР) по умолчанию, то дополнительно указываются значения показаний и поверок в ЕИ КР по умолчанию + + + + + Идентификатор ПУ + + + + + Уникальный идентификатор дома-места установки ПУ (в ГИС ЖКХ). Заполняется всегда, кроме случая, когда в запросе exportMeteringDeviceHistoryRequest указан ровно один элемент tns:FIASHouseGuid + + + + + Уникальный идентификатор дома-места установки ПУ (по ФИАС). Заполняется всегда, кроме случая, когда в запросе exportMeteringDeviceHistoryRequest указан ровно один элемент tns:FIASHouseGuid + + + + + + Показания ПУ расхода холодной/горячей воды; газа; тепловой энергии. Указывается только для ПУ, предоставляющих показания + + + + + + Базовое показание + + + + + Показание + + + + + + Показание за период + + + + + + + + Период, к которому относятся показания + + + + + + + + + + Контрольное показание + + + + + Показание поверки, ПУ остается прежним + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Показание на начало поверки + + + + + Показание на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + Выгрузить показания, поставщик которых не текущая ИС. +(Часть показаний может быть внесена не только через ГУИ, а с помощью другой ИС) Если флаг = "истина", то выгружаются показания, созданные через ГУИ и с помощью других ИС, в остальных случаях выгружаются все показания + + + + + + + + + + + Показания ПУ расхода электроэнергии. Указывается только для ПУ, предоставляющих показания + + + + + + Базовое показание + + + + + Показание + + + + + + Показания за период + + + + + + + + Период, к которому относятся показания + + + + + + + + + + Контрольное показание + + + + + Показание поверки, ПУ остается прежним + + + + + + Дата начала поверки + + + + + Дата окончания поверки + + + + + Дата опломбиролвания ПУ после поверки + + + + + Показание на начало поверки + + + + + Показание на окончание поверки + + + + + + Признак плановой поверки + + + + + Причина выхода ПУ из строя (НСИ 224). Вносится при неплановой поверке. + + + + + + + + + Выгрузить показания, поставщик которых не текущая ИС. +(Часть показаний может быть внесена не только через ГУИ, а с помощью другой ИС) Если флаг = "истина", то выгружаются показания, созданные через ГУИ и с помощью других ИС, в остальных случаях выгружаются все показания + + + + + + + + + + + Объемы потребления ресурсов ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих объем потребленного КР + + + + + + + + Выгрузить данные, поставщик которых не текущая ИС. +(Часть данных может быть внесена не только через ГУИ, а с помощью другой ИС) Если флаг = "истина", то выгружаются данные, созданные через ГУИ и с помощью других ИС, в остальных случаях выгружаются все данные + + + + + + + + + + + Данные об архивации ПУ + + + + + + Причина архивации. Ссылка на НСИ "Причина архивации прибора учета" (реестровый номер 21). + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + Параметры, используемые для выгрузки показаний и поверок ПУ блоками, содержащими не более 1000 ПУ в каждом блоке. Заполняется всегда, кроме случая, когда в запросе exportMeteringDeviceHistoryRequest указан ровно один элемент tns:FIASHouseGuid + + + + + + Корневой идентификатор ПУ в ГИС ЖКХ для получения следующего блока запроса + + + + + Признак последнего блока запроса + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-service-async.wsdl new file mode 100644 index 0000000..1654a73 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-service-async.wsdl @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Статус операции + + + + + + Импорт сведений о лицах, осуществляющих поставки ресурсов. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-types.xsd new file mode 100644 index 0000000..65c7fca --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/fas/hcs-fas-types.xsd @@ -0,0 +1,260 @@ + + + + + + + + Импорт сведений о лицах, осуществляющих поставки ресурсов, необходимых для предоставления коммунальных услуг, в многоквартирные дома, жилые дома + + + + + + + + Ресурсоснабжающая организация + + + + + + + Дата актуальности сведений + + + + + + Внести актуальные сведения в реестр + + + + + + + + Наименование для ЮЛ или фамилия, имя и отчество для ИП + + + + + + + + + + + Признак ИП + + + + + + + + + Регулируемый вид деятельности по поставке ресурсов + + + + + + Регулируемый вид деятельности по поставке ресурсов по справочнику + + + + + Муниципальное образование, на территории которого юридическое лицо или индивидуальный предприниматель осуществляет регулируемые виды деятельности по поставке ресурсов + + + + + + + + Реестр субъектов естественных монополий + + + + + + Номер + + + + + + + + + + + Дата включения + + + + + + + + Федеральный информационный реестр гарантирующих поставщиков и зон их деятельности + + + + + + Номер + + + + + + + + + + + Дата включения + + + + + + + + + + + Аннулировать сведения в реестре + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + Регулируемый вид деятельности по поставке ресурсов (по справочнику Реестр ВД) + + + + + + Регулируемый вид деятельности по поставке ресурсов (по справочнику видов деятельности ГИС ЖКХ) + + + + + Холодное водоснабжение/Транспортировка воды, включая распределение воды + + + + + Холодное водоснабжение/Подвоз воды (на основании заявления органа местного самоуправления) + + + + + Горячее водоснабжение с использованием закрытых систем теплоснабжения (горячего водоснабжения)/Приготовление воды на нужды горячего водоснабжения + + + + + Водоотведение, в том числе очистка сточных вод, обращение с осадком сточных вод + + + + + Теплоснабжение/Сбыт тепловой энергии и теплоносителя + + + + + Теплоснабжение/Поддержание резервной тепловой мощности при отсутствии потребления тепловой энергии + + + + + Поставки электрической энергии населению + + + + + Услуги по поставке (реализации) природного газа/Реализация газа населению + + + + + Услуги по поставке (реализации) природного газа/Реализация сжиженного газа населению для бытовых нужд + + + + + Поставка топлива твердого, топлива печного бытового и керосина гражданам/Поставка топлива твердого гражданам + + + + + Электроснабжение: поставки электрической энергии населению + + + + + Услуги по поставке (реализации) природного газа: реализация газа населению + + + + + Услуги по поставке (реализации) природного газа: реализация сжиженного газа населению для бытовых нужд + + + + + Поставка топлива твердого, топлива печного бытового и керосина гражданам: поставка топлива твердого гражданам + + + + + Поставка топлива твердого, топлива печного бытового и керосина гражданам: Поставка топлива печного бытового гражданам + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-service-async.wsdl new file mode 100644 index 0000000..c1ebca9 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-service-async.wsdl @@ -0,0 +1,1075 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Передать данные ПУ + + + + + + Получить перечень ПУ + + + + + + Получить перечень ПУ по ЛС для ОДСП + + + + + + + + + + + Cоздание/редактирование, удаление, пролонгация, расторжение ДУ + + + + + + Cоздание/редактирование, удаление, пролонгация, расторжение устава + + + + + + Экспорт статусов договоров управления, уставов, доп. соглашений + + + + + + ВИ_ИРАО_ДОМ_ЭКСП. Экспорт данных дома. + + + + + + ВИ_ИЛС_СЗЛС. передать данные лицевых счетов + + + + + + ВИ_ИЛС_РЛС. получить перечень лицевых счетов + + + + + + Импорт ДОИ (Договор на пользование общим имуществом) + + + + + + Экспорт списка ДОИ + + + + + + ВИ_ИО_И_1. Импорт новостей для информирования граждан + + + + + + Импорт протокола ОСС + + + + + + Экспорт протокола ОСС + + + + + + Импорт решения собственника по вопросам голосования + + + + + + Экспорт решений собственников по вопросам голосования + + + + + + Экспорт договоров управления, уставов, доп. соглашений + + + + + + Импорт данных дома для полномочия УО + + + + + + Импорт данных дома для полномочия ОМС + + + + + + Импорт данных дома для полномочия ЕСП + + + + + + Импорт договора ресурсоснабжения с РСО + + + + + + Экспорт договоров ресурсоснабжения + + + + + + Импорт индивидуальных услуг лицевого счета + + + + + + Экспорт индивидуальных услуг лицевого счета + + + + + + Экспорт объектов жилищного фонда из договоров ресурсоснабжения + + + + + + Импорт информации об объектах жилищного фонда в договор ресурсоснабжения + + + + + + Импорт проекта договора ресурсоснабжения + + + + + + Экспорт статусов автопролонгации договоров управления, уставов + + + + + + Экспорт сокращенного состава информации о договоре ресурсоснабжения + + + + + + Экспорт краткой информации о договоре найма + + + + + + Операция сноса дома + + + + + + Экспорт краткой базовой информации о доме + + + + + + Экспорт краткой информации о жилом доме + + + + + + Экспорт краткой информации о многоквартирном доме + + + + + + Импорт итогов голосования, проведенного с использованием системы, отличной от ГИС ЖКХ + + + + + + Импорт сообщения о проведении ОСС + + + + + + Экспорт сообщения о проведении ОСС + + + + + + Импорт письменных отказов собственников + + + + + + Экспорт письменных отказов собственников + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сервис управления объектами РАО + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-types.xsd new file mode 100644 index 0000000..c1e0b85 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/house-management/hcs-house-management-types.xsd @@ -0,0 +1,19770 @@ + + + + + + + + + + + + + + + + Импорт данных дома. В ответ на запрос формируется статус обработки данных многоквартирного дома. ImportResult содержит результат обработки данных дома (В GUID содержится FIASHouseGuid входных данных, UniqueNumber содержит Уникальный номер дома), помещений (UniqueNumber содержит Уникальный номер помещения), комнат (UniqueNumber содержит Уникальный номер комнаты). Доступны версии 11.0.10.1, 13.2.3.2 + + + + + + + + + Многоквартирный дом + + + + + + + Добавление многоквартирного дома + + + + + + + + + + + + + + Изменение данных многоквартирного дома + + + + + + + + + + + + + + + Нежилое помещение + + + + Добавление нежилого помещения + + + + + + + + + + + + + + Изменение данных нежилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Подъезды и жилые помещения + + + + + Добавление нового подъезда + + + + + + + + + + + + + + Изменение подъезда + + + + + + + + + Идентификатор подъезда + + + + + + + + + + + Жилое помещение + + + + + + + Добавление жилого помещения + + + + + + + + + + + + + + Изменение данных жилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Комната в квартире коммунального заселения + + + + Добавление комнаты + + + + + + + + + + + + + + Изменение комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + Добавление нового лифта + + + + + + + + + + + + + + Изменение лифта + + + + + + + + + Идентификатор лифта + + + + + + + + + + + + + + + Жилой дом + + + + + + + Добавление жилого дома + + + + + + + + + + + + + + Изменение данных жилого дома + + + + + + + + + + + + + + + + Комнаты (для обычных ЖД) + + + + Добавление комнаты + + + + + + + + + + + + + + Обновление комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + Блоки (для ЖД блокированной застройки) + + + + + + + Создание блока + + + + + + + + + + + + + + Обновление блока + + + + + + + + + Идентификатор блока жилого дома + + + + + + + + + + + Комнаты в блоке + + + + Добавление комнаты + + + + + + + + + + + + + + Обновление комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт данных дома. В ответ на запрос формируется статус обработки данных многоквартирного дома. ImportResult содержит результат обработки данных дома (В GUID содержится FIASHouseGuid входных данных, UniqueNumber содержит Уникальный номер дома), помещений (UniqueNumber содержит Уникальный номер помещения), комнат (UniqueNumber содержит Уникальный номер комнаты). Доступны версии 11.5.0.2, 13.2.3.2, 15.6.0.1 + + + + + + + + + Многоквартирный дом + + + + + + + Добавление многоквартирного дома + + + + + + + + Cпособ управления домом (НСИ 25). Разрешено передавать параметр только при отсутствии информации об управлении МКД (отсутствует запись в РИСУ и/или не размещён договор управления/устав): +- Не выбран; +- Непосредственное управление; +- Выбран, но не реализован. +В иных случаях значение элемента игнорируется. + + + + + + Дата начала способа управления. Заполняется только для версии 15.6.0.1 и выше + + + + + + + + + + Изменение данных многоквартирного дома + + + + + + + + + Cпособ управления домом (НСИ 25). Разрешено предавать параметр только при отсутствии информации об управлении МКД (отсутствует запись в РИСУ и/или не размещён договор управления/устав): +- Не выбран; +- Непосредственное управление; +- Выбран, но не реализован. +В иных случаях значение элемента игнорируется. + + + + + Дата начала способа управления. Заполняется только для версии 15.6.0.1 и выше + + + + + + + + + + + Нежилое помещение + + + + Добавление нежилого помещения + + + + + + + + + + + + + + Изменение данных нежилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Подъезд + + + + + Добавление нового подъезда + + + + + + + + + + + + + + Изменение подъезда + + + + + + + + + Идентификатор подъезда + + + + + + + + + + + Жилое помещение + + + + + + + Добавление жилого помещения + + + + + + + + + + + + + + Изменение данных жилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Комната в квартире коммунального заселения + + + + Добавление комнаты + + + + + + + + + + + + + + Изменение комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + Добавление нового лифта + + + + + + + + + + + + + + Изменение лифта + + + + + + + + + Идентификатор лифта + + + + + + + + + + + + + + + Жилой дом + + + + + + + Добавление жилого дома + + + + + + + + + Не применимо для ЖД + + + + + + + + + + Изменение данных жилого дома + + + + + + + + + Не применимо для ЖД + + + + + + + + + + + + Комнаты (для обычных ЖД) + + + + Добавление комнаты + + + + + + + + + + + + + + Обновление комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + Блоки (для ЖД блокированной застройки) + + + + + + + Создание блока + + + + + + + + + + + + + + Обновление блока + + + + + + + + + Идентификатор блока жилого дома + + + + + + + + + + + Комнаты в блоке + + + + Добавление комнаты + + + + + + + + + + + + + + Обновление комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт данных дома. В ответ на запрос формируется статус обработки данных многоквартирного дома. ImportResult содержит результат обработки данных дома (В GUID содержится FIASHouseGuid входных данных, UniqueNumber содержит Уникальный номер дома), помещений (UniqueNumber содержит Уникальный номер помещения), комнат (UniqueNumber содержит Уникальный номер комнаты). Доступны версии 11.6.0.2, 13.2.3.2, 15.6.0.1 + + + + + + + + Многоквартирный дом + + + + + + + Добавление многоквартирного дома + + + + + + + + + Разрешено предавать параметр только при отсутствии информации об управлении МКД (отсутствует запись в РИСУ и/или не размещён договор управления/устав): +- Не выбран +- Непосредственное управление +- Выбран, но не реализован. + + + + + + Дата начала способа управления + + + + + + + + + + + Изменение данных многоквартирного дома + + + + + + + + + Разрешено предавать параметр только при отсутствии информации об управлении МКД (отсутствует запись в РИСУ и/или не размещён договор управления/устав): +- Не выбран +- Непосредственное управление +- Выбран, но не реализован. + + + + + + Дата начала способа управления + + + + + + + + + + + + Нежилое помещение + + + + Добавление нежилого помещения + + + + + + + + + + + + + + Изменение данных нежилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Подъезды и жилые помещения + + + + + Добавление нового подъезда + + + + + + + + + + + + + + Изменение подъезда + + + + + + + + + Идентификатор подъезда + + + + + + + + + + + Жилое помещение + + + + + + + Добавление жилого помещения + + + + + + + + + + + + + + Изменение данных жилого помещения + + + + + + + + + Идентификатор помещения + + + + + + + + + + + Комната в квартире коммунального заселения + + + + Добавление комнаты + + + + + + + + + + + + + + Изменение комнаты + + + + + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + Добавление нового лифта + + + + + + + + + + + + + + Изменение лифта + + + + + + + + + Идентификатор лифта + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о доме. + +Доступны версии: 11.1.0.1, 12.2.0.1, 13.2.3.2, 15.6.0.1 + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + Ответ на экспорт информации о доме. + + + + + Уникальный номер дома + + + + + Дата модификации данных дома + + + + + Идентификатор дома в реестре объектов жилищного фонда. Элемент заполняется для версии 15.6.0.1 + + + + + + Многоквартирный дом + + + + + + + + Подъезд + + + + + + + + Дата модификации данных подъезда + + + + + Идентификатор подъезда + + + + + + + + + + Жилое помещение + + + + + + + + Уникальный номер помещения + + + + + Дата модификации данных помещения + + + + + Комната в квартире коммунального заселения + + + + + + + + Уникальный номер комнаты + + + + + Дата модификации данных комнаты + + + + + Идентификатор комнаты + + + + + + + + + + Идентификатор помещения + + + + + + + + + + Лифты + + + + + + + + Дата модификации данных лифта + + + + + Идентификатор лифта + + + + + + + + + + Нежилое помещение + + + + + + + + Уникальный номер помещения + + + + + Дата модификации данных помещения + + + + + Идентификатор помещения + + + + + + + + + + Cпособ управления домом (НСИ 25). + + + + + + + + + + Жилой дом + + + + + + + + + Комнаты (для обычного жилого дома) + + + + + + + + Уникальный номер комнаты + + + + + Дата модификации данных комнаты + + + + + Идентификатор комнаты + + + + + + + + + + Блоки (для жилого дома блокированной застройки) + + + + + + + + Уникальный номер блока + + + + + Дата модификации данных блока + + + + + Идентификатор блока жилого дома + + + + + Комната в блоке + + + + + + + + Уникальный номер комнаты + + + + + Дата модификации данных комнаты + + + + + Идентификатор комнаты + + + + + + + + + + + + + + + + Актуальная версия сведений о доме + + + + + + + + + + + + + + Снос дома. В ответ на запрос формируется статус обработки данных дома. ImportResult содержит результат обработки данных дома (В GUID содержится FIASHouseGuid входных данных, UniqueNumber содержит Уникальный номер дома). + + + + + + + + + Тип, описывающий запрос на снос дома + + + + + + + + + + + + + Информация о сносе дома + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Дата сноса + + + + + Основание сноса. Обязательно для домов, не признанных аварийными + + + + + + + + Причина сноса + + + + + Документ + + + + + Описание + + + + + + + + Запрос на экспорт краткой базовой информации о доме. Доступны версии 12.2.1.2, 13.2.3.2 + + + + + + + + Элемент поискового запроса. Один элемент - одна операция поиска дома + + + + + + + + + + + + + + + Запрос на экспорт краткой информации о жилом доме. Доступны версии 12.2.1.2, 13.2.3.2 + + + + + + + + Элемент поискового запроса. Один элемент - одна операция поиска дома + + + + + + + + + + + + + + + Запрос на экспорт краткой информации о многоквартирном доме. Доступны версии 12.2.1.2, 13.2.3.2 + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС или в ГИС ЖКХ + + + + + + + + + + + + Тип данных, описывающий запрос на экспорт краткой базовой информации об одном доме + + + + + + Критерий поиска + + + + + + + Критерии поиска дома + + + + + Уникальный номер дома + + + + + Уникальный номер помещения + + + + + Уникальный номер комнаты + + + + + Уникальный номер блока + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Результат экпорта краткой базовой информации об одном доме. + + + + + Транспортный идентификатор + + + + + + Базовая информация о доме + + + + + Описание ошибки + + + + + + + + Тип данных, описывающий запрос на экспорт краткой информации об одном жилом доме + + + + + + Глобальный уникальный идентификатор дома по ФИАС или в ГИС ЖКХ + + + + + + + Результат запроса краткой информации о жилом доме. + + + + + Транспортный идентификатор + + + + + + Базовая информация о доме + + + + + Описание ошибки + + + + + + + + Кратка базовая информация о доме + + + + + Информация о расположении дома + + + + + Базовые характеристики дома в реестре адресных объектов ГИС ЖКХ + + + + + + + Краткая информация о базовых характеристиках дома в реестре адресных объектов ГИС ЖКХ + + + + + Уникальный номер дома + + + + + Состояние (НСИ 24) + + + + + + Стадия жизненного цикла (НСИ 338) + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Идентификатор управляющей организации + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Дата сноса + + + + + Основание сноса (описание) + + + + + Признак асинхронной обработки - для дома запущена процедура аннулирования или сохранения информации о сносе + + + + + Данные общежития + + + + + + + Краткая информация о расположении дома + + + + + Уникальный идентификатор адреса дома, присвоенный ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Неформализованное описание адреса + + + + + + + + + + + Guid записи родительского объекта (улицы) + + + + + Номер дома + + + + + + + + + + + Номер корпуса + + + + + + + + + + + Номер строения + + + + + + + + + + + Признак владения: +0 – не определено; +1 – владение; +2 – дом; +3 – домовладение; +4 - участок; +5 - здание; +6 - шахта; +7 - подвал; +8 - котельная; +9 - погреб; +10 - объект незавершенного строительства. + + + + + + + + + + + + + + + + + + + + + + Признак строения: +0 – не определено; +1 – строение; +2 – сооружение; +3 – литер. + + + + + + + + + + + + + + + Краткая информация о жилом доме + + + + + Уникальный идентификатор адреса дома, присвоенный ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Уникальный номер дома + + + + + Дата модификации данных дома + + + + + Жилой дом блокированной застройки + + + + + Несколько жилых домов с одинаковым адресом + + + + + + Блоки (для жилого дома блокированной застройки) + + + + + Комнаты (для обычного жилого дома) + + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Дата сноса + + + + + Основание сноса (описание) + + + + + Признак асинхронной обработки - для дома запущена процедура аннулирования или сохранения информации о сносе + + + + + Данные общежития + + + + + + + Краткая информация о многоквартирном доме + + + + + Уникальный идентификатор адреса дома, присвоенный ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Уникальный номер дома + + + + + Дата модификации данных дома + + + + + Подъезд + + + + + Жилое помещение + + + + + Нежилое помещение + + + + + Cпособ управления домом (НСИ 25). + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Дата сноса + + + + + Основание сноса (описание) + + + + + Признак асинхронной обработки - для дома запущена процедура аннулирования или сохранения информации о сносе + + + + + Данные общежития + + + + + + + Краткая информация о блоке в жилом доме блокированной застройки + + + + + Идентификатор блока + + + + + Уникальный номер блока + + + + + Номер блока + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + Комната в квартире коммунального заселения + + + + + + + Краткая информация о подъезде + + + + + Идентификатор подъезда + + + + + Номер подъезда +(Может быть не заполнен для группирующих домов) + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Краткая информация о нежилом помещении + + + + + Идентификатор помещения + + + + + Уникальный номер помещения + + + + + Номер помещения + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + Краткая информация о жилом помещении + + + + + Идентификатор помещения + + + + + Уникальный номер помещения + + + + + Номер помещения + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Признак отсутствия подъезда + + + + + + Комната в квартире коммунального заселения + + + + + + + Краткая информация о комнате + + + + + Идентификатор комнаты + + + + + Уникальный номер комнаты + + + + + Номер комнаты + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + Импорт лицевых счетов. В ImportResult/CRUDResult/UniqueNumber содержится уникальный номер счета, присвоенный ЛС в ГИС ЖКХ + + + + + + + + Перечень ЛС + + + + + + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + Конкретизация оснований ЛС (договоров ресурсоснабжения, договоров социального найма, договоров по обращению с ТКО) + + + + + + + + + + + + + + + + + + + Проверка уникальности идентификатора ЛС в рамках запроса + + + + + + + + + Экспорт лицевых счетов + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + + + + + + + + + Ответ на запрос экспорта лицевых счетов + + + + + + + Основания ЛС + + + + + + + + + + + + + + + + + + + + + + Протокол решения собственников о выбранном способе формирования фонда капитального ремонта + + + + + + Идентификатор протокола решения собственников о выбранном способе формирования фонда капитального ремонта + + + + + + + + Решение ОМС о выбранном способе формирования фонда капитального ремонта + + + + + + Идентификатор решения ОМС о выбранном способе формирования фонда капитального ремонта + + + + + + + + + + + + + Номер лицевого счета/Иной идентификтатор плательщика + + + + + + + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + + + + + + + + Импорт индивидуальных услуг ЛС + + + + + + + + Создание/обновление индивидуальной услуги ЛС +AccountGUID - для создания индивидуальной услуги ЛС +IndividualServiceGUID - для обновления индивидуальной услуги ЛС + + + + + + + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + + + + + + + + Удаление индивидуальной услуги + + + + + + + + + + + + + + + + + + + + + + Экспорт индивидуальных услуг лицевого счета + + + + + + + + + + + + + + + + Ответ на запрос экспорта индивидуальных услуг лицевого счета + + + + + + + + Идентификатор ЛС в ГИС ЖКХ (при обновлении данных ЛС) + + + + + Услуга связана с лицевыс счетом? + + + + + + + + + + Передать данные приборов учета +(Создание ПУ или обновление данных о ПУ (в том числе замена ПУ, архивация ПУ)) + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Приборы учета + + + + + + + + Данные ПУ для добавления в ГИС ЖКХ + + + + + Изменение существующего в ГИС ЖКХ ПУ (в том числе замена ПУ, архивация ПУ) + + + + + + Идентификатор версии ПУ (для обновления данных) + + + + + + Обновление характеристик ПУ до начала внесения показаний. Необходимо прислать все актуальные сведения по ПУ + + + + + Обновление характеристик ПУ после начала внесения показаний + + + + Контроль дублирования ЛС + + + + + + + + Связать ПУ с другими заведенными в ГИС ЖКХ ПУ. Операция возможна только, если для текущего ПУ установлен признак "Объем ресурса(ов) определяется с помощью нескольких приборов учета". Необходимо присылать актуальную коллекцию связанных ПУ + + + + + + Идентификатор версии ПУ, заведенного в ГИС ЖКХ, с которым требуется установить связь текущего ПУ + + + + + + + + Архивация ПУ без замены на другой ПУ + + + + + + Причина архивации. Ссылка на НСИ "Причина архивации прибора учета" (реестровый номер 21). + + + + + + + + Архивация ПУ с заменой на другой ПУ + + + + + + Дата поверки + + + + + + Замена в рамках плановой поверки + + + + + Замена в рамках неплановой поверки - указывается Причина выхода ПУ из строя (НСИ 224). + + + + + + Показания ПУ при его замене + + + + Показания по ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих показания + + + + + Показания по ПУ (электрическая энергия). Указывается только для ПУ, предоставляющих показания + + + + + Объемы по ПУ. Указывается только для ПУ, предоставляющих объемы потребления КР + + + + + + Заменить на существующий (идентификатор версии ПУ в ГИС ЖКХ) + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт ПУ. Доступные версии 11.1.0.2, 14.8.0.1 + + + + + + + + + Идентификатор ПУ в ГИС ЖКХ + + + + + Идентификатор версии ПУ + + + + + + Выгружать ПУ, находящиеся в собственности или на ином законном основании только текущей организации (критерий применяется только для ОДПУ) (если признак не установлен, то будут выгружены все ОДПУ, доступные текущей организации для просмотра) + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Дата модификации + + + + + + Вид прибора учета (НСИ 27) + + + + + Коммунальный ресурс (НСИ 2) + + + + + + Дата архивации «По» + + + + + Дата архивации «С» + + + + + Выгружать архивированные + + + + + Дата ввода в эксплуатацию «По» + + + + + Дата ввода в эксплуатацию «С» + + + + + + + Включать в выгрузку для МКД и ЖД глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + Ответ на запрос экспорта ПУ + + + + + + + Идентификатор ПУ в ГИС ЖКХ + + + + + Статус сущности +Допустимые значения: +Active-Активный +Archival-Архивный + + + + + + + + + + + Идентификатор версии ПУ + + + + + Номер версии + + + + + Статус версии + + + + + Дата модификации + + + + + Организация, у которой прибор учета находится на праве собственности или на ином законном основании + + + + + + + + + + Номер прибора учета в ГИС ЖКХ + + + + + + + + + Запрос экспорта ПУ по лицевому счету для Оператора ДСП + + + + + + + + Номер ЛС + + + + + + + + + + + Ответ на запрос экспорта ПУ по лицевому счету для Оператора ДСП + + + + + Идентификатор ПУ в ГИС ЖКХ + + + + + Заводской (серийный) номер ПУ + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Признак подключения + + + + + Дата подключения/отключения к опратору ДСП + + + + + + Последние полученные показания и коэффициент трансформации для ПУ, измеряющего электроэнергию. Указывается только для ПУ, предоставляющих показания + + + + + Сведения о коммунальном ресурсе и последние полученные показания ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих показания + + + + + + + + + Импорт сведений о ДУ + + + + + + + + + + + + + + + Создание ДУ + + + + + + + + + Объект управления + + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + + + + + + + + + + + Внесение изменений в версию ДУ + + + + + + + + Формировать заявки на проверки сведений для ГЖИ при возникновении конфликтов сведений об управляемых объектов с реестром лицензий/реестром информации о способах управления МКД + + + + + Управляемый объект + + + + + + + + Добавление + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + + + + + + Изменение + + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + + + + + + Аннулирование + + + + + + + + + + + + + + + Разрешить (true) или запретить (false) передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. Если признак не передан, исползуется значение глобальной настройки "Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета в любой день месяца по всем договорам". Может быть передан только если есть хотя бы один объект управления в статусе "Утвержден". + + + + + + + + + + Утверждение ДУ, в отношении которого были одобрены заявки на включение управляемых объектов в РЛ + + + + + + + + + + + + + + Пролонгация ДУ + + + + + + + + + + Пролонгировать до даты. Если не указано, то договор пролонгируется на срок, равный Дата окончания действия - Дата вступления в силу. + + + + + + + + + + Расторжение ДУ + + + + + + + + + Ссылка на НСИ "54 Причина расторжения договор" (реестровый номер 54) + + + + + Основание + + + + + + + + + + + Аннулирование ДУ + + + + + + + + + + + + + + + Размещение сведений о размере платы + + + + + + + + + + + + + + Аннулирование сведений о размере платы + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт сведений устава + + + + + + + + + + + + Создание устава + + + + + + + + Объект управления. Если устав является бессрочным элемент Дата окончания предоставления жилищных услуг необходимо заполнить значением "5000" + + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + Управление многоквартирным домом осуществляется управляющей организацией по договору управления + + + + + + + + + + + + + + + Внесение изменений в версию устава + + + + + + + + Объект управления. Если устав является бессрочным элемент Дата окончания предоставления жилищных услуг необходимо заполнить значением "5000" + + + + + + + + Добавление + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + Управление многоквартирным домом осуществляется управляющей организацией по договору управления + + + + + + + + + + Изменение + + + + + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + Управление многоквартирным домом осуществляется управляющей организацией по договору управления + + + + + + + + + + Аннулирование + + + + + + + + + + + + + + + + + + + + Продление срока оказания услуг + + + + + + + + + Пролонгировать до даты. Если не указано, то дата окончания управления домами устава и всех услуг увеличиваются на 1 год. + + + + + + + + + + Прекращение действия устава + + + + + + + + Причина прекращения действия устава + + + + + + + + + + + + + + + + Аннулирование устава + + + + + + + + + + + + + + Размещение сведений о размере платы + + + + + + + + + + + + + + Аннулирование сведений о размере платы + + + + + + + + + + + + + + + + + + + + + Экспорт ДУ/уставов + + + + + + + + + + + + + + + + + Дополнительные критерии выборки по управляемым объектам + + + + + + Выгружать только с признаком расхождения с Реестром инфомрации об управлении МКД + + + + + Выгружать только с признаком заблокированного дома + + + + + + + + + + + + + + + + + Ответ на запрос экспорта ДУ/уставов + + + + + + + + + Статус ДУ: + Project - проект + ApprovalProcess - на утверждении + Approved - утвержден + Rejected- отклонен + Terminated - расторгнут/закрыт + Reviewed - рассмотрен + Annul - сведения аннулированы + + + + + + + + + + + + +Состояние документа: + Running - действующий + NotRunning - не действующий + Expired - истек срок действия + + + + + + + + + + + + Управляемый объект + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Статус управляемого объекта: + Project - проект + ApprovalProcess - на утверждении + Approved - утвержден + Rejected- отклонен + Terminated - расторгнут + Reviewed - рассмотрен + Locked - заблокирован + + + + + + Признак расхождения с Реестром инфомрации об управлении МКД + + + + + Признак заблокированного дома + + + + + + + + Номер версии + + + + + + + Экспорт статуса пролонгации ДУ/уставов + + + + + + + + Выгрузить сведения о пролонгации до указанной даты + + + + + Выгрузить сведения о пролонгации от указанной даты + + + + + + + + + + + + Ответ на запрос экспорта ДУ/уставов + + + + + + + + + Пролонгированный ДУ/устав + + + + + + + + + + Статус ДУ: + Project - проект + ApprovalProcess - на утверждении + Approved - утвержден + Rejected- отклонен + Terminated - расторгнут/закрыт + Reviewed - рассмотрен + Annul - сведения аннулированы + + + + + Идентификатор предыдущей версии договора + + + + + + + + + + Идентификатор предыдущей версии устава в ГИС ЖКХ + + + + + + + +Состояние документа: + Running - действующий + NotRunning - не действующий + Expired - истек срок действия + + + + + + + + + + + + Управляемый объект + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Статус управляемого объекта: + Project - проект + ApprovalProcess - на утверждении + Approved - утвержден + Rejected- отклонен + Terminated - расторгнут + Reviewed - рассмотрен + Locked - заблокирован + + + + + + Признак расхождения с Реестром инфомрации об управлении МКД + + + + + Признак заблокированного дома + + + + + Идентификатор предыдущей версии объекта управления в ГИС ЖКХ + + + + + + + + Номер версии + + + + + true, если ДУ/устав был пролонгирован, false если не был + + + + + Описание события пролонгации + + + + + + + + + + + + + + Экспорт ДУ/уставов. + +Доступные версии формата экспорта: 10.0.1.1, 13.0.0.1 и 13.1.2.1 + + + + + + + + + + + + + + + Ответ на запрос экспорта ДУ/уставов + + + + + ДУ + + + + + + + + Информация о расторжении ДУ + + + + + + + + Ссылка на НСИ "54 Причина расторжения договор" (реестровый номер 54) + + + + + + + + + + Статус ДУ в ГИС ЖКХ: +Project - проект +ApprovalProcess - на утверждении +Approved - утвержден +Rejected - отклонен +Reviewed - рассмотрен +Terminated - расторгнут/закрыт +Annul - сведения аннулированы + + + + + + + Объект управления + + + + + + + + Идентификатор версии объекта управления в ГИС ЖКХ + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + Сведения об исключении объекта управления из ДУ + + + + + + Основание + + + + + Дата исключения + + + + + + + + Статус в ГИС ЖКХ +Допустимые значения: +Project-Проект +ApprovalProcess-На утверждении +Rejected-Отклонен +Approved-Утвержден +Locked-Заблокирован + + + + + + + + + + Сведения о размере платы + + + + + + + + + Статус версии: +(P)laced - информация размещена +(A)nnulled - инофрмация аннулирована + + + + + + + + + + + + + + + + + + + + + + Устав + + + + + + + + Информация о прекращении действия устава + + + + + + + + Причина прекращения действия устава + + + + + + + + + + + + + + + Статус устава в ГИС ЖКХ: + Project - проект + Reviewed - рассмотрен + ApprovalProcess - на утверждении + Approved - утвержден + Terminated - расторгнут/закрыт + Rejected - отклонен + Annul - аннулирован + + + + + + + + Объект управления + + + + + + + + Идентификатор версии объекта управления в ГИС ЖКХ + + + + + Основание + + + + + Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + Основание + + + + + + + + + + Дополнительные услуги. Ссылка на НСИ "Дополнительные услуги" (реестровый номер 1) + + + + + + + + Основание + + + + + + + + + + Сведения об исключении объекта управления из устава + + + + + + Основание + + + + + Дата исключения + + + + + + + + Статус в ГИС ЖКХ +Допустимые значения: +Project-Проект +ApprovalProcess-На утверждении +Rejected-Отклонен +Approved-Утвержден +Locked-Заблокирован + + + + + Управление многоквартирным домом осуществляется управляющей организацией по договору управления + + + + + + + + + + Сведения о размере платы + + + + + + + + + Статус версии: +(P)laced - информация размещена +(A)nnulment - инофрмация аннулирована + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Идентификатор УО в ГИС ЖКХ + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Дата заключения ДУ + + + + + Настройка для экспорта только крайней версии ДУ/устава. Если элемент не указан, экспорту подлежат все версии документа + + + + + + + + + Импорт ДОГПОИ (Договор на пользование общим имуществом ) + + + + + + + + + + + + + Идентификатор версии ДОГПОИ в ГИС ЖКХ + + + + + + + Создание\изменение ДОГПОИ + + + + + + + + Период внесения платы по договору о предоставлении в пользование части общего имущества собственников помещений в многоквартирном доме + + + + + + + Начало периода + + + + + Окончание периода + + + + + + Иное + + + + + + + + + + + + + + + + + + Аннулирование ДПОИ + + + + + + + + + Заполнение сведений о внесении платы + + + + + + + + Идентификатор версии ДОГПОИ в ГИС ЖКХ + + + + + Идентификатор версии сведений о внесении платы в ГИС ЖКХ + + + + + + Период + + + + + + + + + + + Начислено за период + + + + + Размер задолженности (-)/переплаты (+) за период + + + + + Оплачено за период + + + + + + + + Аннулирование сведений о внесении платы + + + + + + + + + Идентификатор версии сведений о внесении платы в ГИС ЖКХ + + + + + + + + + + Удаление сведений о внесении платы + + + + + + + Идентификатор версии сведений о внесении платы в ГИС ЖКХ + + + + + + + + + + + + + + + + + + Экспорт ДОГПОИ + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер договора + + + + + Дата начала действия договора + + + + + Дата окончания действия договора + + + + + + + Корневой идентификатор ДОГПОИ (не меняется от версии к версии) + + + + + Идентификатор версии ДОГПОИ + + + + + + + + + + + + Ответ на запрос экспорта ДОГПОИ + + + + + ДОИ + + + + + + + + + Состояние договора + + + + + + Номер версии + + + + + Статус версии + + + + + Период внесения платы по договору о предоставлении в пользование части общего имущества собственников помещений в многоквартирном доме + + + + + + + Начало периода + + + + + Окончание периода + + + + + + Иное + + + + + + + + + + + + + Сведения о внесении платы и задолженности по такой плате + + + + + + Идентификатор версии сведений о внесении платы в ГИС ЖКХ + + + + + Период + + + + + + + + + + + Начислено за период + + + + + + + + + + + Размер задолженности (-)/переплаты (+) за период + + + + + + + + + + + Оплачено за период + + + + + + + + + + + + + + Договор заключен на безвозмездной основе? + + + + + + + + + + + + + Импорт договора ресурсоснабжения + + + + + + + + Договор ресурсоснабжения + + + + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ Необходимо указать идентификатор последней версии договора + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + Создание/изменение + + + + Проверка уникальности пары из коммунальной услуги и коммунального ресурса в рамках договора + + + + + + + + Проверка уникальности транспортного идентификатора пары из коммунальной услуги и ресурса + + + + + + + Ссылка на транспортный идентификатор пары из коммунальной услуги и ресурса + + + + + + + Проверка уникальности транспортного идентификатора ОЖФ + + + + + + + + + + + + + + + + + + + Проверка уникальности пары из коммунальной услуги и ресурса и дифференцированной цены тарифа + + + + + + + + Ссылка на ОЖФ в тарифе + + + + + + + Ссылка на ОЖФ в нормативах потребления + + + + + + + Проверка уникальности пары из коммунальной услуги и ресурса и норматива потребления коммунальной услуги + + + + + + + + + Расторжение + + + + + + + + Ссылка на НСИ "54 Причина расторжения договора" (реестровый номер 54) + + + + + + + + + + Пролонгация + + + + + + Дата окончания пролонгации + + + + + + + + Аннулирование + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора версии договора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора договора в рамках запроса + + + + + + + + Импорт проекта договора ресурсоснабжения + + + + + + + + Договор ресурсоснабжения + + + + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ Необходимо указать идентификатор последней версии договора + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + Создание/изменение проекта договора ресурсоснабжения + + + + Проверка уникальности транспортного идентификатора пары из коммунальной услуги и ресурса + + + + + + + Ссылка на транспортный идентификатор пары из коммунальной услуги и ресурса + + + + + + + Проверка уникальности пары из коммунальной услуги и коммунального ресурса в рамках договора + + + + + + + + + Удаление проекта договора ресурсоснабжения. У размещенных договоров ресурсоснабжения удаляется последняя версия договора в статусе "Проект" + + + + + Размещение проекта договора ресурсоснабжения + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора версии договора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора договора в рамках запроса + + + + + + + + Запрос на экспорт договоров ресурсоснабжения. + +Доступные версии формата экспорта: 11.11.0.2 и 13.1.1.1 + + + + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + + + Корневой идентификатор договора ресурсоснабжения в ГИС ЖКХ для установки экспорта следующей 1000 договоров При первичном экспорте не заполняется + + + + + Номер договора + + + + + + + + + + + Дата заключения "С" + + + + + Дата заключения "По" + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Предмет договора + + + + + + Предмет договора +Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + + + + + + Импорт объектов жилищного фонда в договор ресурсоснабжения + + + + + + + + + Необходимо указать идентификатор последней версии договора + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ + + + + + + + Добавление/изменение информации об ОЖФ + + + + + + + + Коммунальная услуга и коммунальный ресурс, поставляемые в объект жилищного фонда + + + + + + + + Тип системы теплоснабжения (заполняется для коммунальных ресурсов "Тепловая энергия" и "Горячая вода") + + + + + + Открытая/Закрытая + + + + + + + + + + + Централизованная/нецентрализованная + + + + + + + + + + + + + + + + + + + + Признак "Отсутствие присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов ведутся в разрезе объектов жилищного фонда и в число поставляемых в объект жилищного фонда коммунальных услуг входит "Холодное водоснабжение" и/или "Горячее водоснабжение" + + + + + Показатель качества (содержащийся в справочнике показателей качества). Обязательно для заполнения, если показатели качества ведутся в разрезе ОЖФ Для пары КУ и КР "Горячее водоснабжение" и "Питьевая вода" указываются актуальные показатели, определенные для КР "Горячая вода" в справочнике показателей качества коммунальных ресурсов Для пары КУ и КР "Горячее водоснабжение" и "Тепловая энергия" информация о показателях качества не заполняется только в том случае, если для договора (если показатели ведутся в разрезе договора) или ОЖФ в договоре (если показатели ведутся в разрезе ОЖФ) также указана пара КУ и КР "Горячее водоснабжение" и "Питьевая вода" + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Показатель качества. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276) + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Иной показатель качества коммунального ресурса (не содержащийся в справочнике показателей качества). Могут быть указаны только, если показатели качества ведутся в разрезе ОЖФ + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Наименование показателя + + + + + + + Установленное значение показателя качества + + + + Число + + + + + Диапазон + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + Дополнительная информация + + + + + + + + Информация о температурном графике. Доступно для заполнения, если в рамках ОЖФ хотя бы раз встречается ресурс "Тепловая энергия". + + + + + + Температура наружного воздуха + + + + + Температура теплоносителя в подающем трубопроводе + + + + + + + + + + + Температура теплоносителя в обратном трубопроводе + + + + + + + + + + + + + + Плановый объем и режим подачи за год. Может быть заполнено только если плановый объем и режим подачи ведется в разрезе ОЖФ + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Плановый объем + + + + + Единица измерения. +справочника НСИ №236 "Связь вида коммунальной услуги, тарифицируемого ресурса и единиц измерения ставки тарифа" + + + + + Режим подачи + + + + + + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. Заполняется, если порядок размещения информации о начислениях за коммунальные услуги ведется в разрезе ОЖФ + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. Обязательно для заполнения, если в tns:CountingResource указано"РСО" . В остальных случаях не заполняется. + + + + + Информация о применяемом тарифе + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор дифференцированной цены тарифа + + + + + + + + Информация о нормативе потребления коммунальной услуги + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор норматива потребления коммунальной услуги + + + + + + + + + + + + Проверка уникальности пары из коммунальной услуги и коммунального ресурса в рамках ОЖФ + + + + + + + + Проверка уникальности транспортного идентификатора пары из коммунальной услуги и ресурса + + + + + + + Ссылка на транспортный идентификатор пары из коммунальной услуги и ресурса + + + + + + + Проверка уникальности пары из коммунальной услуги и ресурса и дифференцированной цены тарифа + + + + + + + + + Удаление ОЖФ из договора ресурсоснабжения + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора объекта жилищного фонда в рамках запроса + + + + + + + Проверка уникальности идентификатора версии договора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора договора в рамках запроса + + + + + + + + Запрос на экспорт объектов жилищного фонда из договора ресурсоснабжения. + +Доступные версии формата экспорта: 11.6.0.1 и 13.1.1.1 + + + + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ для установки экспорта следующей 1000 ОЖФ При первичном экспорте не заполняется + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + + + + + + Запрос на экспорт сокращенного состава информации о договоре ресурсоснабжения. + +Доступные версии формата экспорта: 11.14.0.1 и 13.1.1.1 + + + + + + + + + Корневой идентификатор договора ресурсоснабжения в ГИС ЖКХ для установки экспорта следующей страницы с договорами. При первичном экспорте не заполняется + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ для установки экспорта следующей страницы с ОЖФ внутри договора с идентиифкатором, указанным в NextPageContractRootGUID. При первичном экспорте не заполняется + + + + + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + + + Номер договора + + + + + + + + + + + Дата заключения "С" + + + + + Дата заключения "По" + + + + + Предмет договора + + + + + + Предмет договора +Виды КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + + + + Организация, заключившая договор + + + + + + + + + + + + Результат экспорта договоров ресурсоснабжения + + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + Состояние договора + + + + + + Не вступил в силу + + + + + Действующий + + + + + Истек срок действия + + + + + + + + Номер версии договора + + + + + + + + Статус версии договора + + + + + + Размещен + + + + + Расторгнут + + + + + Проект + + + + + Информация аннулирована + + + + + + + + Информация о расторжении + + + + + + + + Ссылка на НСИ "54 Причина расторжения договора" (реестровый номер 54) + + + + + + + + + + Аннулирование + + + + + + + + + Договор ресурсоснабжения + + + + + + Договор не является публичным и/или присутствует заключенный на бумажном носителе (электронной форме) и/или не заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + Договор является публичным и/или отсутствует заключенный на бумажном носителе (в электронной форме) и/или заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + + + Договор заключен на неопределенный срок + + + + + + Автоматически пролонгировать договор на один год при наступлении даты окончания действия. + + + + + Дата окончания действия. Обязательно для заполнения, если указано значение в AutomaticRollOverOneYear + + + + + + + Период передачи текущих показаний по индивидуальным приборам учета. Обязателен для заполнения, если в поле VolumeDepends = true ИЛИ если поле MeteringDeviceInformation = «true» + + + + + + Начало периода + + + + + + Дата начала + + + + + + + + + + + Следующего месяца + + + + + + + + Конец периода + + + + + + Дата окончания. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Следующего месяца + + + + + + + + + + + Разрешить передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. +Заполнение возможно только если: в настройках организации установлена настройка «Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета в любой день месяца» ИЛИ в настройках организации установлена настройка «Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета только в сроки, установленные в договоре, или в любой день месяца, если в договоре установлен признак «Разрешить передачу показаний приборов учета в любой день месяца» И заполнен Period + + + + + +Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). + + + + + Вторая сторона договора + + + + Договор оферта + + + + + Собственник или пользователь жилого (нежилого) помещения в МКД + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Собственник или пользователь жилого дома (домовладения) + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Управляющая организация + + + + + + + + + + Представитель собственников многоквартирного дома + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + Единоличный собственник помещений в многоквартирном доме + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + + Наличие в договоре планового объема и режима подачи поставки ресурсов + + + + + Тип ведения планового объема и режима подачи: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. Заполняется при наличии в договоре планового объема и режима поставки ресурсов. + + + + + + + + + + + Предмет договора + + + + + + + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. Заполняется, если порядок размещения информации о начислениях за коммунальные услуги ведется в разрезе договора + + + + + + + + + + + Показатели качества коммунальных ресурсов и температурный график ведутся: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. + + + + + + + + + + + Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов ведутся в разрезе договора и предмет договора включает коммунальную услугу "Холодное водоснабжение" и/или "Горячее водоснабжение" + + + + + Данные об объекте жилищного фонда. При импорте договора должен быть добавлен как минимум один адрес объекта жилищного фонда + + + + + + + + + Коммунальная услуга и коммунальный ресурс, поставляемые в объект жилищного фонда + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Дата начала поставки ресурса + + + + + Дата окончания поставки ресурса. Является обязательным, если указано значение в AutomaticRollOverOneYear + + + + + Тип системы теплоснабжения (заполняется для коммунальных ресурсов "Тепловая энергия" и "Горячая вода") + + + + + + Открытая/Закрытая + + + + + + + + + + + Централизованная/нецентрализованная + + + + + + + + + + + + + + + + + Признак "Отсутствие присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов ведутся в разрезе объектов жилищного фонда и в число поставляемых в объект жилищного фонда коммунальных услуг входит "Холодное водоснабжение" и/или "Горячее водоснабжение" + + + + + Плановый объем и режим подачи за год. Может быть заполнено только если плановый объем и режим подачи ведется в разрезе ОЖФ + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Плановый объем + + + + + Единица измерения. +справочника НСИ №236 "Связь вида коммунальной услуги, тарифицируемого ресурса и единиц измерения ставки тарифа" + + + + + Режим подачи + + + + + + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. Заполняется, если порядок размещения информации о начислениях за коммунальные услуги ведется в разрезе ОЖФ + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. Обязательно для заполнения, если в tns:CountingResource указано"РСО" . В остальных случаях не заполняется. + + + + + + + + + + + + + + Показатель качества (содержащийся в справочнике показателей качества). Если показатели указываются в разрезе договора, то ссылка на ОЖФ не заполняется. Если показатели указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна. + + + + + + Ссылка на ОЖФ, обязательно заполняется, если показатели качества ведутся в разрезе ОЖФ + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Показатель качества. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276) + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Иной показатель качества коммунального ресурса (не содержащийся в справочнике показателей качества). Если показатели указываются в разрезе договора, то ссылка на ОЖФ не заполняется. Если показатели указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна. + + + + + + Ссылка на ОЖФ, обязательно заполняется, если показатели качества ведутся в разрезе ОЖФ + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Наименование показателя + + + + + + + Установленное значение показателя качества + + + + Число + + + + + Диапазон + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + Дополнительная информация + + + + + + + + Информация о температурном графике. Если показатели качества указываются в разрезе договора, то ссылка на ОЖФ в данном элементе не заполняется и элемент может заполняться только если предмете договора хотя бы раз встречается ресурс "Тепловая энергия". Если показатели качества указываются в разрезе ОЖФ, то ссылка на ОЖФ обязательна и элемент заполняется только если в рамках ОЖФ встречается ресурс "Тепловая энергия". + + + + + + Ссылка на ОЖФ, обязательно заполняется, если показатели качества ведутся в разрезе ОЖФ + + + + + Температура наружного воздуха + + + + + Температура теплоносителя в подающем трубопроводе + + + + + + + + + + + Температура теплоносителя в обратном трубопроводе + + + + + + + + + + + + + + Информация о сроках оплаты + + + + Срок представления (выставления) платежных документов, не позднее. Является обязательным, если вторая сторона договора отличается от "Управляющая организация" ИЛИ если заполнено поле tns:MeteringDeviceInformation Не заполняется, если OneTimePayment = true + + + + + + Срок представления (выставления) платежных документов (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок внесения платы, не позднее. Является обязательным, если вторая сторона договора отличается от "Управляющая организация" И договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме И в поле OneTimePayment = false. Не заполняется, если OneTimePayment = true + + + + + + Срок внесения платы (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок предоставления информации о поступивших платежах, не позднее. Является обязательным, если второй стороной договора является «Управляющая организация», «Размещение информации о начислениях за коммунальные услуги осуществляет» = «РСО» И договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме. + + + + + + Срок предоставления информации о поступивших платежах (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. Обязательно для заполнения, если в tns:CountingResource указано"РСО" . В остальных случаях не заполняется. + + + + + Объем поставки ресурса(ов) определяется на основании прибора учета. Поле не заполняется, если вторая сторона договора = Управляющая организация ИЛИ в поле OneTimePayment = true + + + + + Оплата предоставленных услуг осуществляется единоразово при отгрузке указанных ресурсов без заведения лицевых счетов для потребителей. Доступно для заполнения, только если вторая сторона договора отлична от Управляющая организация. + + + + + Порядок размещения информации о начислениях за коммунальные услуги ведется +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. +Заполняется, если второй стороной договора является исполнитель коммунальных услуг + + + + + + + + + + + Информация о применяемом тарифе + + + + + + + Ссылка на ОЖФ + + + + + Тариф применяется для всех ОЖФ договора + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор дифференцированной цены тарифа + + + + + + + + Информация о нормативе потребления коммунальной услуги + + + + + + + Ссылка на ОЖФ + + + + + Норматив применяется для всех ОЖФ договора + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор норматива потребления коммунальной услуги + + + + + + + + + + + + + + Экспортируемый договор ресурсоснабжения + + + + + + Договор не является публичным и/или присутствует заключенный на бумажном носителе (электронной форме) и/или не заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + Договор является публичным и/или отсутствует заключенный на бумажном носителе (в электронной форме) и/или заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + + + Договор заключен на неопределенный срок + + + + + + Автоматически пролонгировать договор на один год при наступлении даты окончания действия. + + + + + Дата окончания действия + + + + + + + Объем поставки ресурса(ов) определяется на основании прибора учета. + + + + + Период передачи текущих показаний по индивидуальным приборам учета. + + + + + + Начало периода + + + + + + Дата начала + + + + + Следующего месяца + + + + + + + + Конец периода + + + + + + Дата окончания. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + Следующего месяца + + + + + + + + + + + Разрешить передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца + + + + + +Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). + + + + + Вторая сторона договора + + + + Договор оферта + + + + + Собственник или пользователь жилого (нежилого) помещения в МКД + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Собственник или пользователь жилого дома (домовладения) + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Управляющая организация + + + + + + + + + + Представитель собственников многоквартирного дома + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + Единоличный собственник помещений в многоквартирном доме + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + + Наличие в договоре планового объема и режима подачи поставки ресурсов + + + + + Тип ведения планового объема и режима подачи: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. + + + + + + + + + + + Предмет договора + + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Коммунальный ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + Дата начала поставки ресурса + + + + + Дата окончания поставки ресурса + + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. + + + + + Показатели качества коммунальных ресурсов и температурный график ведутся: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. + + + + + + + + + + + Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной системе водоснабжения" + + + + + Показатель качества (содержащийся в справочнике показателей качества). Информация выгружается, если показатели ведутся в разрезе договора. + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Показатель качества. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276) + + + + + Значение показателя качества + + + + + + + + Число + + + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + + + Дополнительная информация + + + + + + + + Иной показатель качества коммунального ресурса (не содержащийся в справочнике показателей качества). Информация выгружается, если показатели ведутся в разрезе договора. + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Наименование показателя + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Плановый объем и режим подачи за год. Информация выгружается, если плановый объем и режим подачи ведется в разрезе договора. + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Плановый объем + + + + + Единица измерения. +справочника НСИ №236 "Связь вида коммунальной услуги, тарифицируемого ресурса и единиц измерения ставки тарифа" + + + + + Режим подачи + + + + + + + + Оплата предоставленных услуг осуществляется единоразово при отгрузке указанных ресурсов без заведения лицевых счетов для потребителей. + + + + + Информация о сроках оплаты + + + + Срок представления (выставления) платежных документов, не позднее. + + + + + + Срок представления (выставления) платежных документов (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок внесения платы, не позднее. + + + + + + Срок внесения платы (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок предоставления информации о поступивших платежах, не позднее. + + + + + + Срок предоставления информации о поступивших платежах (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + + + + Экспорт объектов жилищного фонда из договора ресурсоснабжения + + + + + + + Информация о КУ и КР по ОЖФ + + + + + + + + Тип системы теплоснабжения (заполняется для коммунальных ресурсов "Тепловая энергия" и "Горячая вода") + + + + + + Открытая/Закрытая + + + + + + + + + + + Централизованная/нецентрализованная + + + + + + + + + + + + + + + + + + + + Признак "Отсутствие присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения" + + + + + Показатель качества (содержащийся в справочнике показателей качества). + + + + + + Ссылка на пару из коммунальной услуги и ресурса из Информации о КУ и КР по ОЖФ + + + + + Показатель качества. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276) + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Иной показатель качества коммунального ресурса (не содержащийся в справочнике показателей качества). + + + + + + Ссылка на пару из коммунальной услуги и ресурса из Информации о КУ и КР по ОЖФ + + + + + Наименование показателя + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Плановый объем и режим подачи за год. + + + + + + Ссылка на пару из коммунальной услуги и ресурса из Информации о КУ и КР по ОЖФ + + + + + Плановый объем + + + + + Единица измерения. +справочника НСИ №236 "Связь вида коммунальной услуги, тарифицируемого ресурса и единиц измерения ставки тарифа" + + + + + Режим подачи + + + + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + Номер версии договора + + + + + + + + Статус версии договора + + + + + + Размещен + + + + + Расторгнут + + + + + Проект + + + + + Информация аннулирована + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. Заполняется, если порядок размещения информации о начислениях за коммунальные услуги ведется в разрезе ОЖФ + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. Обязательно для заполнения, если в tns:CountingResource указано"РСО" . В остальных случаях не заполняется. + + + + + + + + + Договор ресурсоснабжения (проект) + + + + + + Договор не является публичным и/или присутствует заключенный на бумажном носителе (электронной форме) и/или не заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + Договор является публичным и/или отсутствует заключенный на бумажном носителе (в электронной форме) и/или заключен в отношении нежилых помещений в многоквартирных домах + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Договор ресурсоснабжения и приложения к договору + + + + + + + + + + Договор заключен на неопределенный срок + + + + + + Автоматически пролонгировать договор на один год при наступлении даты окончания действия. + + + + + Дата окончания действия. Обязательно для заполнения, если указано значение в AutomaticRollOverOneYear + + + + + + + Период передачи текущих показаний по индивидуальным приборам учета. Может быть указан только, если поле VolumeDepends = true -ИЛИ- поле MeteringDeviceInformation = «true» + + + + + + Начало периода + + + + + + Дата начала + + + + + + + + + + + Следующего месяца + + + + + + + + Конец периода + + + + + + Дата окончания. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Следующего месяца + + + + + + + + + + + Разрешить передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. +Заполнение возможно только если: в настройках организации установлена настройка «Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета в любой день месяца» ИЛИ в настройках организации установлена настройка «Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета только в сроки, установленные в договоре, или в любой день месяца, если в договоре установлен признак «Разрешить передачу показаний приборов учета в любой день месяца» И заполнен Period + + + + + +Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). + + + + + Вторая сторона договора + + + + Договор оферта + + + + + Собственник или пользователь жилого (нежилого) помещения в МКД + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Собственник или пользователь жилого дома (домовладения) + + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + Не указывать собственника или пользователя + + + + + + + + Управляющая организация + + + + + + + + + + Единоличный собственник помещений в многоквартирном доме + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + Представитель собственников многоквартирного дома + + + + + + Не указывать собственника или пользователя + + + + + Организация (Юридическое лицо или индивидуальный предприниматель) + + + + + Физическое лицо + + + + + + + + + Наличие в договоре планового объема и режима подачи поставки ресурсов + + + + + Тип ведения планового объема и режима подачи: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. Заполняется при наличии в договоре планового объема и режима поставки ресурсов. + + + + + + + + + + + Предмет договора + + + + + + + + + + + + + + Размещение информации о начислениях за коммунальные услуги осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. +Заполняется, если порядок размещения информации о начислениях за коммунальные услуги ведется в разрезе договора + + + + + + + + + + + Показатели качества коммунальных ресурсов и температурный график ведутся: +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. + + + + + + + + + + + Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов ведутся в разрезе договора и предмет договора включает коммунальную услугу "Холодное водоснабжение" и/или "Горячее водоснабжение" + + + + + Показатель качества (содержащийся в справочнике показателей качества). Обязательно для заполнения, если показатели качества указываются в разрезе договора. Для пары КУ и КР "Горячее водоснабжение" и "Питьевая вода" указываются актуальные показатели, определенные для КР "Горячая вода" в справочнике показателей качества коммунальных ресурсов Для пары КУ и КР "Горячее водоснабжение" и "Тепловая энергия" информация о показателях качества не заполняется только в том случае, если для договора (если показатели ведутся в разрезе договора) или ОЖФ в договоре (если показатели ведутся в разрезе ОЖФ) также указана пара КУ и КР "Горячее водоснабжение" и "Питьевая вода" + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Показатель качества. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276) + + + + + Значение показателя качества + + + + + + + + + + Дополнительная информация + + + + + + + + Иной показатель качества коммунального ресурса (не содержащийся в справочнике показателей качества). + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Наименование показателя + + + + + + + Установленное значение показателя качества + + + + Число + + + + + Диапазон + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + Дополнительная информация + + + + + + + + Информация о температурном графике. Доступно для заполнения только, если в предмете договора хотя бы раз встречается ресурс "Тепловая энергия". + + + + + + Температура наружного воздуха + + + + + Температура теплоносителя в подающем трубопроводе + + + + + + + + + + + Температура теплоносителя в обратном трубопроводе + + + + + + + + + + + + + + Информация о сроках оплаты + + + + Срок представления (выставления) платежных документов, не позднее. Является обязательным, если вторая сторона договора отличается от "Управляющая организация" ИЛИ если заполнено поле tns:MeteringDeviceInformation Не заполняется, если OneTimePayment = true + + + + + + Срок представления (выставления) платежных документов (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок внесения платы, не позднее. Является обязательным, если вторая сторона договора отличается от "Управляющая организация" И договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме И в поле OneTimePayment = false. Не заполняется, если OneTimePayment = true + + + + + + Срок внесения платы (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок предоставления информации о поступивших платежах, не позднее. Является обязательным, если второй стороной договора является «Управляющая организация», «Размещение информации о начислениях за коммунальные услуги осуществляет» = «РСО» И договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме. + + + + + + Срок предоставления информации о поступивших платежах (число), не позднее. Если нужно указать значение "Последний день месяца", то поле заполняется значением "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + + Размещение информации об индивидуальных приборах учета и их показаниях осуществляет ресурсоснабжающая организация. Обязательно для заполнения, если в tns:CountingResource указано"РСО" . В остальных случаях не заполняется. + + + + + Объем поставки ресурса(ов) определяется на основании прибора учета. Поле не заполняется, если вторая сторона договора = Управляющая организация ИЛИ в поле OneTimePayment = true. + + + + + Оплата предоставленных услуг осуществляется единоразово при отгрузке указанных ресурсов без заведения лицевых счетов для потребителей. Доступно для заполнения, только если вторая сторона договора отлична от Управляющая организация. + + + + + Порядок размещения информации о начислениях за коммунальные услуги ведется +D - в разрезе договора. +O - в разрезе объектов жилищного фонда. +Заполняется, если второй стороной договора является исполнитель коммунальных услуг + + + + + + + + + + + Данные о тарифах и/или нормативах потребления коммунальных услуг, применяемых для всех объектов жилищного фонда договора в Субъекте РФ. Заполняется при наличии хотя бы одного такого тарифа / норматива в Субъекте РФ + + + + + + Субъект РФ, в котором применяются тарифы и/или нормативы потребления КУ (у поставщика данных должна быть подтвержденная функция РСО в этом Субъекте РФ) + + + + + Информация о применяемом тарифе + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор дифференцированной цены тарифа + + + + + + + + Информация о нормативе потребления коммунальной услуги + + + + + + Ссылка на пару из коммунальной услуги и ресурса из предмета договора + + + + + Идентификатор норматива потребления коммунальной услуги + + + + + + + + + + Проверка уникальности пары из тарифицируемого ресурса и дифференцированной цены тарифа в рамках одного Субъекта РФ + + + + + + + + Проверка уникальности пары из коммунального ресурса и норматива потребления в рамках одного Субъекта РФ + + + + + + + + + + + + + Идентификатор договора ресурсоснабжения в ГИС ЖКХ + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + Номер версии договора + + + + + + + + Статус версии договора + + + + + + Размещен + + + + + Расторгнут + + + + + Проект + + + + + Информация аннулирована + + + + + + + + Состояние договора + + + + + + Не вступил в силу + + + + + Действующий + + + + + Истек срок действия + + + + + + + + + Договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + + + + Договор является публичным и/или отсутствует заключенный на бумажном носителе или в электронной форме + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + + + + + + Первая сторона договора (РСО) + + + + + + + + + + Вторая сторона договора + + + + + + Управляющая организация + + + + + + + + + + Договор оферта + + + + + Договор заключен с собственниками + + + + + + + + + Предмет договора + + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Коммунальный ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + Дата начала поставки ресурса + + + + + Дата окончания поставки ресурса + + + + + + + + + Коммерческий учет ресурса осуществляет: +R(SO)- РСО. +P(roprietor)-Исполнитель коммунальных услуг. + + + + + + + + + + + Информация о сроках оплаты + + + + Срок представления (выставления) платежных документов, не позднее. + + + + + + Срок представления (выставления) платежных документов (число), не позднее. Если указан "Последний день месяца", то в поле выгружается значение "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок внесения платы, не позднее. + + + + + + Срок внесения платы (число), не позднее. Если указан "Последний день месяца", то в поле выгружается значение "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + Срок предоставления информации о поступивших платежах, не позднее. + + + + + + Срок предоставления информации о поступивших платежах (число), не позднее. Если указан "Последний день месяца", то в поле выгружается значение "-1". + + + + + + + + + + + + Тип срока: +C (urrrent) - текущего расчетного месяца. +N (ext) - следующего месяца за расчетным. + + + + + + + + + + + + + + + Период сдачи текущих показаний по ПУ. + + + + + + Начало периода + + + + + + Дата начала + + + + + + + + + + Следующего месяца + + + + + + + + Конец периода + + + + + + Дата окончания. Если "Последний день месяца", то в поле выгружается значение "-1". + + + + + + + + + + Следующего месяца + + + + + + + + + + + Признак "Отсутствие присоединения сетей объектов жилищного фонда к централизованной системе водоснабжения". Может быть указан, только если показатели качества коммунальных ресурсов ведутся в разрезе договора и предмет договора включает коммунальную услугу "Холодное водоснабжение" и/или "Горячее водоснабжение" + + + + + Информация о расторжении + + + + + + + + Ссылка на НСИ "54 Причина расторжения договора" (реестровый номер 54) + + + + + + + + + + Информация об аннулировании + + + + + Объект жилищного фонда в договоре ресурсоснабжения + + + + + + + Предмет договора + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Коммунальный ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + Дата начала поставки ресурса + + + + + Дата окончания поставки ресурса. Не заполняется, если указано, что договор заключен на неопределенный срок (IndefiniteTerm = true) + + + + + Плановый объем и режим подачи за год + + + + + + Плановый объем + + + + + Единица измерения. +справочника НСИ №236 "Связь вида коммунальной услуги, тарифицируемого ресурса и единиц измерения ставки тарифа" + + + + + Режим подачи + + + + + + + + + + + + + + + Экспорт объектов жилищного фонда из договора ресурсоснабжения + + + + + Тип дома: MKD - Многоквартирный дом ZHD - Жилой дом ZHDBlockZastroyki - Жилой дом блокированной застройки + + + + + + + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) / номер блока + + + + + Номер комнаты + + + + + Идентификатор помещения + + + + + Идентификатор блока жилого дома + + + + + Идентификатор комнаты + + + + + Информация о КУ и КР по ОЖФ + + + + + + + + + + + + + + Признак "Отсутствие присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения" + + + + + + + + Импорт новости для информирования граждан. Доступны версии 11.6.0.2, 13.2.2.0 + + + + + + + + + + + + + Идентификатор новости в ГИС ЖКХ + + + + + + + Создание, редактирование новости + + + + + + + Тема + + + + + + + + + + + Тема. Указывается из справочника №364 "Темы новостных сообщений" + + + + + + Высокая важность новости + + + + + Текст новости + + + + + + + + + + + Адресаты + + + + Все дома (в адресатах) + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Собственник помещений в МКД + + + + + + Необходимость погашения задолженности + + + + + + Лицевой счет + + + + + + Сумма задолженности + + + + + + + + + + + + Принятие решения о выборе другой кредитной организации + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + Принятие рещшения об открытии нового специального счета + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + + + + Идентификатор организации-владельца специального счета + + + + + Идентификатор организации-органа государственного надзора + + + + + + Период актуальности + + + + Не ограничено + + + + + + В период "С" + + + + + В период "До" + + + + + + + Документы новости + + + + + Направить новость адресатам + + + + + Признак "Для публикации в мобильном приложении" + + + + + Информация для новости, публикуемой в мобильном приложении + + + + + + Признак, что текст новости не более 500 символов + + + + + Признак закрепления новостного сообщения в ленте + + + + + Ссылка для перехода из подробного представления новости на произвольную web-страницу + + + + + + + + + + + + + + + + + Направить новость адресатам + + + + + Удаление новости + + + + + Отзыв новости + + + + + + Причина отзыва + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт протокола ОСС (протокол общего собрания собственников) + + + + + + + + + + Идентификатор версии протокола ОСС в ГИС ЖКХ + + + + + + + Протокол ОСС + + + + + + + + Разместить протокол + + + + + + + + + + + + + + + + + + Разместить протокол ОСС + + + + + Отменить последние изменения + + + + + Удалить протокол ОСС + + + + + Аннулировать голосование и всю связанную информацию + + + + + + + + + + + + + + + + Импорт итогов голосования, проведенного с использованием системы, отличной от ГИС ЖКХ + + + + + + + + + + Идентификатор сообщения о проведении общего собрания в ГИС ЖКХ + + + + + + Разместить итоги голосования, проведенного с использованием системы, отличной от ГИС ЖКХ + + + + + + + + + + + + + + + Экспорт протоколов ОСС + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Статус версии протокола ОСС +Допустимые значения: +-Created-создан +-Posted-Размещен +-Edited-На изменении +-Annuled-Аннулирован +-PostedFromAnotherSystem-Размещен по голосованию в другой системе + + + + + + + + + + + + + + + Идентификатор версии протокола голосования + + + + + Корневой идентификатор протокола голосования + + + + + + + + + + + Ответ на запрос экспорта протоколов ОСС + + + + + + + Статус протокола ОСС +Допустимые значения: +-Created-создан +-Posted-Размещен +-Edited-На изменении +-Annuled-Аннулирован +-PostedFromAnotherSystem-Размещен по голосованию в другой системе + + + + + + + + + + + + + + Идентификатор версии протокола голосования + + + + + Корневой идентификатор протокола голосования + + + + + Статус версии протокола ОСС +Допустимые значения: +-Created-создан +-Posted-Размещен +-Edited-На изменении +-Annuled-Аннулирован +-PostedFromAnotherSystem-Размещен по голосованию в другой системе + + + + + + + + + + + + + + Номер версии протокола + + + + + Дата и время последнего изменения версии протокола + + + + + Дата и время размещения версии протокола + + + + + + + + + Импорт сообщения о проведениии ОСС + + + + + + + + + + Идентификатор сообщения о проведении ОСС в ГИС ЖКХ + + + + + + + Разместить или изменить сообщение о проведении ОСС + + + + + Отменить голосование по причине размещения 50% отказов + +Операция доступна только для голосований в форме "Заочное голосование с использованием системы" + + + + + Аннулировать голосование и всю связанную информацию + + + + + + + + + + + + + + + + Экспорт сообщений о проведении ОСС + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Корневой идентификатор сообщения о проведении голосования + + + + + + + + + + + Ответ на запрос экспорта сообщений о проведении ОСС + + + + + + + Идентификатор сообщения о проведении голосования + + + + + Статус сообщения о проведении ОСС +Допустимые значения: +- Posted - Размещено +- Goes - Голосование идет +- Finished - Голосование завершено +- MeetingCancelled - Собрание не состоялось +- Cancelled - Аннулирован + + + + + Дата и время размещения версии сообщения + + + + + Дата и время последнего изменения версии сообщения + + + + + + + + + + Импорт решения собственника по вопросам голосования + + + + + + + + Решение собственника по вопросам голосования + + + + + + + + Идентификатор версии протокола ОСС в ГИС ЖКХ + + + + + Идентификатор сообщения о проведении ОСС в ГИС ЖКХ + + + + + + Корневой идентификатор решения собственника по вопросам голосования + + + + + + Создание/Изменение решения + + + + + Аннулировать решение + + + + + + + + + + + + + + + + + + + + + + + Экспорт решений собственников по вопросам голосования +Доступны версии 13.0.0.2 и 13.1.8.1 + + + + + + + + Идентификатор версии протокола голосования + + + + + Корневой идентификатор протокола голосования + + + + + Корневой идентификатор решения собственника по вопросам голосования + + + + + Идентификатор сообщения о проведении ОСС + + + + + + + + + + + Ответ на запрос экспорта решений собственника по вопросу голосования + + + + + Корневой идентификатор решения собственника по вопросам голосования + + + + + + Экспортируемые сведения о собственности + + + + + + Вопрос повестки + + + + + Электронный образ решения собственника + + + + + Решение аннулировано + + + + + + + + Импорт письменных отказов собственников + + + + + + + + Письменные отказы собственников + + + + + + + + + + Разместить письменный отказ собственника + + + + + + Корневой идентификатор сообщения о проведении общего собрания собственников + + + + + Письменный отказ собственника + + + + + + + + Внести изменения в ранее размещенный письменный отказ собственника + + + + + + Корневой идентификатор письменного отказа собственника в ГИС ЖКХ + + + + + Письменный отказ собственника + + + + + + + + Аннулировать письменный отказ собственника + + + + + + Корневой идентификатор письменного отказа собственника в ГИС ЖКХ + + + + + + + + + + + + + + + + + + + + + + Экспорт письменных отказов собственников + + + + + + + + Корневые идентификаторы сообщений о проведении общего собрания, письменные отказы из которых должны быть экспортированы + + + + + Корневые идентификаторы отказов собственников + + + + + + + + + + + + Запрос на экспорт краткой информации о договоре найма + + + + + + + + поиск по + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + + Идентификатор договора социального наймам в ГИС ЖКХ + + + + + Идентификатор версии договора социального наймам в ГИС ЖКХ + + + + + + Номер договора + + + + + + + + + + + Дата заключения "С" + + + + + Дата заключения "По" + + + + + Тип: +(D)WELLING_APARTMENT - Договор социального найма жилого помещения +STATE_(M)UNICIPAL_FUND - Договор найма жилого помещения государственного или муниципального жилищного фонда +(S)OCIAL_FUND - Договор найма жилого помещения жилищного фонда социального использования + + + + + + + + + + + + + + + + + + + + + + + + + Ответ на запрос экспорта краткой информации о договоре найма + + + + + Идентификатор договора социального наймам в ГИС ЖКХ + + + + + Идентификатор версии договора социального наймам в ГИС ЖКХ + + + + + Состояние договора. Заполняется для договора в статусе "Утвержден" + + + + + + Не вступил в силу + + + + + Действующий + + + + + Истек срок действия + + + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Информация о расторжении + + + + + + + + Ссылка на НСИ "54 Причина расторжения договора" (реестровый номер 54) + + + + + + + + + + Аннулирование + + + + + Тип: +(D)WELLING_APARTMENT - Договор социального найма жилого помещения +STATE_(M)UNICIPAL_FUND - Договор найма жилого помещения государственного или муниципального жилищного фонда +(S)OCIAL_FUND - Договор найма жилого помещения жилищного фонда социального использования + + + + + + + + + + + + + + Данные об объекте жилищного фонда + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) + + + + + Номер комнаты (указывается в случае квартиры коммунального заселения) + + + + + + + + Идентификатор зарегистрированной организации заключившей договор (первая сторона договора) + + + + + + + Тип статуса размещения ДУ в ГИС ЖКХ + + + + + + + Описание ошибки + + + + + + + + + Тип статуса размещения устава в ГИС ЖКХ + + + + + + + Описание ошибки + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + + + Расширенный ответ по импорту объекта жилищного фонда для УО + + + + + Расширенный ответ по импорту объекта жилищного фонда для ОМС + + + + + Расширенный ответ по импорту объекта жилищного фонда для ЕСП + + + + + Заполняется для операции importContract статусом размещения ДУ в ГИС ЖКХ + + + + + Заполняется для операции importCharter статусом размещения устава в ГИС ЖКХ + + + + + Заполняется для операции importMeteringDevice + + + + + + Идентификатор ПУ + + + + + + + + Заполняется для операции importAccount + + + + + + + + + + + Заполняется для операции importSuppleResourceContractObjectAddress + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + Заполняется для операции importSuppleResourceContract + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + Корневой идентификатор договора ресурсоснабжения (не меняется от версии к версии) + + + + + + + + Заполняется для операции importSupplyResourceContractProject + + + + + + Идентификатор версии договора ресурсоснабжения в ГИС ЖКХ + + + + + + + + + + + + + + + + + + Запрос на экспорт краткой базовой информации о доме + + + + + + Результат поиска дома по критерию. + + + + + + + + Запрос на экспорт краткой базовой информации о доме + + + + + + Краткая информация о МКД + + + + + + + + Запрос на экспорт краткой базовой информации о доме + + + + + + Результат поиска дома по критерию. + + + + + + + + + + + + + + + + + + Договор ресурсоснабжения + + + + + + Последняя страница экспорта + + + + + Идентификатор договора ресурсоснабжения для экспорта следующей 1000 договоров + + + + + + + + + Объект жилищного фонда в договоре ресурсоснабжения + + + + + + Объект жилищного фонда в договоре ресурсоснабжения + + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ для установки экспорта следующей 1000 ОЖФ + + + + + Последняя страница экспорта + + + + + + + + + Результат экспорта сокращенного состава информации о договоре ресурсоснабжения + + + + + + + + + Идентификатор договора ресурсоснабжения для экспорта следующей страницы договоров + + + + + Идентификатор объекта жилищного фонда в ГИС ЖКХ для экспорта следующей страницы ОЖФ + + + + + + Последняя страница экспорта + + + + + + + + + + Статус пролонгации ДУ/уставов + + + + + + Решение собственника по вопросам голосования + + + + + Письменные отказы собственников + + + + + ПУ для оператора дистанционного снятия показаний + + + + + + + + + + + + Сведения из ГКН для УО и ОМС + + + + + Кадастровый номер объекта недвижимости. При указании осуществляется привязка к ГКН и ЕГРП (поиск в ГКН и ЕГРП выполняется по кадастровому номеру). Перечень Субъектов РФ, по которым размещена информация в ГКН/ЕГРП, можно уточнить у Оператора ГИС ЖКХ. Наличие в экспорте указывает на установленную связь с ГКН/ЕГРП по этому элементу. + + + + + Информация об объекте недвижимости из Росреестра не размещена в ГИС ЖКХ. При указании в ГИС ЖКХ не сохраняется информация ни о кадастровом номере, ни о его отсутствии. При изменении объекта, привязанного к ГКН или ЕГРП, выполняется отвязка. Перечень Субъектов РФ, по которым размещена информация в ГКН, можно уточнить у Оператора ГИС ЖКХ. + + + + + + У объекта отсутствует кадастровый номер. При указании в ГИС ЖКХ сохраняется информация об отсутствии кадастрового номера, привязка к ГКН и ЕГРП не выполняется. При изменении объекта, привязанного к ГКН, выполняется отвязка от ГКН и ЕГРП. При изменении объекта, привязанного только к ЕГРП, отвязка не выполняется. + + + + + + Условный номер. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП выполняется по условному номеру). + + + + + Регистрационные данные права или ограничения/обременения прав. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП по регистрационным данным прав или ограничений/обременений прав). + + + + + + + + + Сведения из ГКН для РСО + + + + + Кадастровый номер объекта недвижимости. При указании осуществляется привязка к ГКН и ЕГРП (поиск в ГКН и ЕГРП выполняется по кадастровому номеру). Перечень Субъектов РФ, по которым размещена информация в ГКН/ЕГРП, можно уточнить у Оператора ГИС ЖКХ. Наличие в экспорте указывает на установленную связь с ГКН/ЕГРП по этому элементу. + + + + + Информация об объекте недвижимости из Росреестра не размещена в ГИС ЖКХ. При указании в ГИС ЖКХ не сохраняется информация ни о кадастровом номере, ни о его отсутствии. При изменении объекта, привязанного к ГКН или ЕГРП, выполняется отвязка. Перечень Субъектов РФ, по которым размещена информация в ГКН, можно уточнить у Оператора ГИС ЖКХ. + + + + + Признак отсутствия у РСО, импортирующего дом, сведений о кадастровом номере и других ключей, позволяющих установить связь с ГКН/ЕГРП. При указании в ГИС ЖКХ не сохраняется информация ни о кадастровом номере, ни о его отсутствии. При изменении объекта, привязанного к ГКН или ЕГРП, объект не отвязывается. + + + + + + У объекта отсутствует кадастровый номер. При указании в ГИС ЖКХ сохраняется информация об отсутствии кадастрового номера, привязка к ГКН и ЕГРП не выполняется. При изменении объекта, привязанного к ГКН, выполняется отвязка от ГКН и ЕГРП. При изменении объекта, привязанного только к ЕГРП, отвязка не выполняется. + + + + + + Условный номер. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП выполняется по условному номеру). + + + + + Регистрационные данные права или ограничения/обременения прав. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП по регистрационным данным прав или ограничений/обременений прав). + + + + + + + + + Сведения из ГКН и ЕГРП для экспорта + + + + + Объект в ГИС ЖКХ привязан к ГКН. + + + + + Объект в ГИС ЖКХ не привязан к ГКН (у объекта отсутствует кадастровый номер или информация из Росреестра об объекте не размещена в ГИС ЖКХ). Объект может быть привязан к ЕГРП. + + + + + Не используется, оставлен для совместимости. + + + + + + + + + + + + + + + + + + + + + + + + + + Тип ключа: +(R)ight - право +(E)ncumbrance - ограничение/обременение права + + + + + + + + + + + Номер государственной регистрации + + + + + + + + + + Дата государственной регистрации + + + + + + + + + + + + Статус связи объекта с ГКН: +(C)reated - связь с ГНК установлена +(D)roped - связь разорвана +(N)o relationship - связь с ГКН не устанавливалась + + + + + + + + + + + + + + Пользовательский параметр МКД, принятый ГИС ЖКХ после установления связи с ГКН + + + + + Пользовательский параметр ЖД, принятый ГИС ЖКХ после установления связи с ГКН + + + + + Пользовательский параметр нежилого помещения, принятый ГИС ЖКХ после установления связи с ГКН + + + + + Пользовательский параметр жилого помещения, принятый ГИС ЖКХ после установления связи с ГКН + + + + + Пользовательский параметр комнаты, принятый ГИС ЖКХ после установления связи с ГКН + + + + + + + + + + Статус связи объекта с ЕГРП: +(C)reated - найдена запись в ЕГРП, доля(и)/обремененения(и) создана(ы) +(D)roped - связь с долей/обремененением разорвана +(N)o relationship - связь с долей/обремененением не устанавливалась + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сводный статус объекта жилищного фонда в ГИС ЖКХ (для импорта) + + + + + Заполняется для операций importHouseUO, importHouseOMS, ImportHouseESP + + + + + + + + + + + + + Сводный статус объекта жилищного фонда в ГИС ЖКХ (для экспорта) + + + + + + + + Основные характеристики дома (для импорта от УО) + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь здания + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в собственности субъекта Российской Федерации и в полном объеме используется в качестве общежития + + + + + + + + + Основные характеристики дома + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + + + + + Основные характеристики дома (обновление данных для УО) + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО. Только для ОКТМО не из ФИАС + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в собственности субъекта РФ и в полном объеме используется в качестве общежития + + + + + + + + + Основные характеристики дома (обновление данных) + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + ОКТМО. Только для ОКТМО не из ФИАС + + + + + Часовая зона + + + + + + + + + Основные характеристики дома (обновление данных для ОМС) + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО.Только для ОКТМО не из ФИАС + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Данные общежития для импорта + + + + + + + + + Основные характеристики дома (обновление данных для ЕСП) + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО.Только для ОКТМО не из ФИАС + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в cобственности субъекта РФ и в полном объеме используется в качестве общежития + + + + + + + + + Основные характеристики дома (для экспорта). На связь объекта с ГКН/ЕГРП указывает + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Дата сноса + + + + + Основание сноса + + + + + Данные общежития для экспорта + + + + + + + + + Многоквартирный дом (для импорта от УО) + + + + + Основные характеристики + + + + + + + + + Кадастровый номер объекта недвижимости. При указании осуществляется привязка к ГКН и ЕГРП (поиск в ГКН и ЕГРП выполняется по кадастровому номеру). Перечень Субъектов РФ, по которым размещена информация в ГКН/ЕГРП, можно уточнить у Оператора ГИС ЖКХ. Наличие в экспорте указывает на установленную связь с ГКН/ЕГРП по этому элементу. + + + + + Информация об объекте недвижимости из Росреестра не размещена в ГИС ЖКХ. При указании в ГИС ЖКХ не сохраняется информация ни о кадастровом номере, ни о его отсутствии. При изменении объекта, привязанного к ГКН или ЕГРП, выполняется отвязка. Перечень Субъектов РФ, по которым размещена информация в ГКН, можно уточнить у Оператора ГИС ЖКХ. + + + + + + У объекта отсутствует кадастровый номер. При указании в ГИС ЖКХ сохраняется информация об отсутствии кадастрового номера, привязка к ГКН и ЕГРП не выполняется. При изменении объекта, привязанного к ГКН, выполняется отвязка от ГКН и ЕГРП. При изменении объекта, привязанного только к ЕГРП, отвязка не выполняется. + + + + + + Условный номер. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП выполняется по условному номеру). + + + + + Регистрационные данные права или ограничения/обременения прав. При указании в ГИС ЖКХ осуществляется привязка к ЕГРП (поиск в ЕГРП по регистрационным данным прав или ограничений/обременений прав). + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь здания + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в собственности субъекта Российской Федерации и в полном объеме используется в качестве общежития + + + + + + + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (для импорта от РСО) + + + + + Основные характеристики + + + + + + + Многоквартирный дом (для импорта от ОМС) + + + + + Основные характеристики + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Данные общежития для импорта + + + + + + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (для импорта от ЕСП) + + + + + Основные характеристики + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в cобственности субъекта РФ и в полном объеме используется в качестве общежития + + + + + + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (обновление данных для УО) + + + + + Основные характеристики + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (обновление данных для РСО) + + + + + Основные характеристики + + + + + + + Многоквартирный дом (обновление данных для ОМС) + + + + + Основные характеристики + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (обновление данных для ЕСП) + + + + + Основные характеристики + + + + + Количество подземных этажей + + + + + Количество этажей, наименьшее (значение игнорируется при обработке) + + + + + + + + + + + + Многоквартирный дом (для экспорта) + + + + + Основные характеристики + + + + + Количество подземных этажей + + + + + Вид счета\Способ формирования фонда (НСИ 62) + + + + + + + Лифт (для импорта от УО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + + + Лифт (для импорта от ОМС) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + + + Лифт (для импорта от ЕСП) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + + + Лифт (обновление данных от УО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + Лифт (обновлени еданных от ОМС) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + Лифт (обновлени еданных от ЕСП) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + Лифт (для экспорта) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Заводской номер + + + + + Тип лифта. Ссылка на НСИ "Тип лифта" (реестровый номер 192) + + + + + Данные ОЖФ + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + Жилой дом (для импорта от УО) + + + + + Основные характеристики + + + + + Жилой дом блокированной застройки +(Если не указан - аналог false). + + + + + Несколько жилых домов с одинаковым адресом +(Если не указан - аналог false) + + + + + + + Жилой дом (для импорта от РСО) + + + + + Основные характеристики + + + + + Жилой дом блокированной застройки (Если не указан - аналог false). + + + + + Несколько жилых домов с одинаковым адресом +(Если не указан - аналог false) + + + + + + + Жилой дом (для импорта от ОМС) + + + + + Основные характеристики + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Общая площадь + + + + + Состояние (НСИ 24) + + + + + Стадия жизненного цикла (НСИ 338) + + + + + Год ввода в эксплуатацию + + + + + Количество этажей + + + + + ОКТМО (обязательное для всех территорий, за исключением города и космодрома "Байконур"). Значение из ФИАС при наличии. + + + + + Часовая зона + + + + + Наличие у дома статуса объекта культурного наследия + + + + + Данные ОЖФ + + + + + Данные общежития для импорта + + + + + + + + + + Жилой дом блокированной застройки (Если не указан - аналог false). + + + + + Несколько жилых домов с одинаковым адресом +(Если не указан - аналог false) + + + + + + + Жилой дом (обновление данных для УО) + + + + + Основные характеристики + + + + + + + Жилой дом (обновление данных для РСО) + + + + + Основные характеристики + + + + + + + Жилой дом (обновление данных ОМС) + + + + + Основные характеристики + + + + + + + Жилой дом (для экспорта) + + + + + Основные характеристики + + + + + Жилой дом блокированной застройки + + + + + Несколько жилых домов с одинаковым адресом +(Если не указан - аналог false) + + + + + + + Подъезд (для импорта от УО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (для импорта от РСО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + + + Подъезд (для импорта от ОМС) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (для импорта от ЕСП) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (обновление данных для УО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (обновление данных для РСО) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + Подъезд (обновление данных для ОМС) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (обновление данных для ЕСП) + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Подъезд (для экспорта) + + + + + Номер подъезда +(Может быть не заполнен для группирующих домов) + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Этажность + + + + + + + + + + + Год постройки + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + Блок дома блокированной застройки (для импорта от УО) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + + Жилая площадь помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (для импорта от РСО) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (для импорта от ОМС) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + + Жилая площадь помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (обновление данных для УО) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + + Жилая площадь помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (обновление данных для РСО) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (обновление данных для ОМС) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + + Жилая площадь помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Блок дома блокированной застройки (для экспорта) + + + + + + + Номер блока + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь помещения по паспорту помещения + + + + + + Жилая площадь помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + Категория помещения +(если не задано, считается как жилое) + + + + + + + + + Базовый тип помещения (для импорта от УО) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (для импорта от РСО) + + + + + + + Номер помещения + + + + + + + + + Базовый тип помещения (для импорта от ОМС) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (для импорта от ЕСП) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (обновление данных для УО) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (обновление данных для РСО) + + + + + + + Номер помещения + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + + + Базовый тип помещения (обновление данных для ОМС) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (обновление данных для ЕСП) + + + + + + + Номер помещения + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Базовый тип помещения (для экспорта) + + + + + + + Номер помещения + + + + + Этаж + + + + + Данные ОЖФ + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Жилое помещение (для импорта от УО) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + + + + Жилое помещение (для импорта от РСО) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + + + + Жилое помещение (для импорта от ОМС) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + + + + Жилое помещение (для импорта от ЕСП) + + + + + + + + + Признак отсутствия подезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + + + + Жилое помещение (обновление данных для УО) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + + + + Жилое помещение (обновление данных для РСО) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + + + + Жилое помещение (обновление данных для ОМС) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + + + + Жилое помещение (обновление данных для ЕСП) + + + + + + + + + Признак отсутствия подезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + + + + Жилое помещение (для экспорта) + + + + + + + + + Признак отсутствия подъезда + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Характеристика помещения (НСИ 30) + + + + + Общая площадь жилого помещения по паспорту помещения + + + + + + Жилая площадь жилого помещения по паспорту помещения + + + + + Отсутствует значение жилой площади + + + + + + + + + + Нежилое помещение (для импорта от УО) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (для импорта от РСО) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + + + + + Нежилое помещение (для импорта от ОМС, экспорта) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (для импорта от ЕСП) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (обновление данных для УО) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (обновление данных для РСО) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + + + + + Нежилое помещение (обновление данных для ОМС) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (обновление данных для ЕСП) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Нежилое помещение (для экспорта) + + + + + + + ГУИД дочернего дома по ФИАС, к которому относится подъезд для группирующих домов + + + + + Общая площадь нежилого помещения по паспорту помещения + + + + + Помещение, составляющее общее имущество в многоквартирном доме + + + + + + + + + Комната (для импорта от УО) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (для импорта от РСО) + + + + + + + Номер комнаты + + + + + Площадь + + + + + + + + + Комната (для импорта от ОМС) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (для импорта от ЕСП) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (обновление данных для УО) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (обновление данных для РСО) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + + + + + Комната (обновление данных для ОМС) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (обновление данных для ЕСП) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Данные ОЖФ + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Комната (для экспорта) + + + + + + + Номер комнаты + + + + + Площадь + + + + + Этаж + + + + + Данные ОЖФ + + + + + + Причина аннулирования объекта жилищного фонда (НСИ 330) + + + + + Причина аннулирования.Дополнительная информация + + + + + Информация подтверждена поставщиком + + + + + + + + + Категория помещения для блока + + + + + Жилое + + + + + Нежилое + + + + + + + Количество этажей (тип) + + + + + + + + + Количество подземных этажей (тип) + + + + + + + + + Год ввода в эксплуатацию (тип) + + + + + + + + Номер помещения, комнаты (тип) + + + + + + + + + Номер подъезда + + + + + + + + + + + Если флаг указан для запроса с обновлением данных, то отсутствующие в дельте значения будут подгружены из предыдущей версии сущности. В противном случае отсутствующие значения будут сброшены в NULL. + + + + + Дата аннулирования объекта в ГИС ЖКХ + + + + + + Строка данных для объекта ЖФ + + + + + Код строки в справочнике Форма описания объектов ЖФ + + + + + Значение показателя + + + + + + + Значение строки данных для объекта ЖФ + + + + + Строка + + + + + Вещественное + + + + + Дата + + + + + Целое + + + + + Логическое + + + + + Перечислимое (ссылка на код записи справочника) + + + + + Файл (ссылка на файл) + + + + + + + + + + + Лицевой счет для оплаты за жилое помещение и коммунальные услуги + + + + + Лицевой счет для оплаты за коммунальные услуги. + + + + + Лицевой счет для оплаты капитального ремонта + + + + + Лицевой счет РКЦ + + + + + Лицевой счет ОГВ/ОМС + + + + + Лицевой счет ТКО + + + + + + Дата создания ЛС в ГИС ЖКХ (игнорируется при импорте, оставлено для совместимости) + + + + + Количество проживающих + + + + + + + + + + Общая площадь для ЛС + + + + + Жилая площадь + + + + + Отапливаемая площадь + + + + + Счет закрыт + + + + + Помещение + + + + + + + Идентификатор помещения + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Идентификатор комнаты + + + + + + Доля внесения платы, размер доли в % + + + + + + + + + + + + + + + Сведения о платильщике + + + + + + Является нанимателем? + + + + + Лицевые счета на помещение(я) разделены? + + + + + В случае неуказания СНИЛС/удостоверения личности/ссылки на реестр организаций, личный кабинет плательщика не будет автоматически подключен к лицевому счету. + + + + Физическое лицо/индивидуальный предприниматель. + + + + + Организация. ЮЛ/ИП/ОП. Ссылка на реестр организаций + + + + + + + + + + + + + + Лицевой счет для оплаты за жилое помещение и коммунальные услуги + + + + + Лицевой счет для оплаты за коммунальные услуги. + + + + + Лицевой счет для оплаты капитального ремонта + + + + + Лицевой счет РКЦ + + + + + Лицевой счет ОГВ/ОМС + + + + + Лицевой счет ТКО + + + + + + Дата создания ЛС в ГИС ЖКХ + + + + + Количество проживающих + + + + + Общая площадь для ЛС + + + + + Жилая площадь + + + + + Отапливаемая площадь + + + + + Счет закрыт + + + + + Помещение + + + + + + + Идентификатор помещения + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Идентификатор комнаты + + + + + + Доля внесения платы, размер доли в % + + + + + + + + + + + + + + Сведения о платильщике + + + + + + Является нанимателем? + + + + + Лицевые счета на помещение(я) разделены? + + + + + В случае неуказания СНИЛС/удостоверения личности/ссылки на реестр организаций, личный кабинет плательщика не будет автоматически подключен к лицевому счету. + + + + Физическое лицо/индивидуальный предприниматель. + + + + + Организация. ЮЛ/ИП/ОП. Ссылка на реестр организаций + + + + + + + + + + + Физическое лицо + + + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + Дата рождения + + + + + + + + + + + + + Физическое лицо + + + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + Дата рождения + + + + + + + Удостоверение личности + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата выдачи документа + + + + + + + + + + + + + Характеристика ЛС + + + + + Количество проживающих + + + + + + + + + + Плательщик + + + + Собственник ФЛ. Ссылка на физлицо в реестре физлиц + + + + + Собственник ЮЛ/ИП/ОП. Ссылка га реестр организаций + + + + + ФЛ по договору социального наема. Ссылка на физлицо в реестре физлиц + + + + + Собственник ЮЛ/ИП/ОП. Ссылка га реестр организаций + + + + + + Нежилая площадь + + + + + Нежилая площадь + + + + + Нежилая площадь + + + + + Счет закрыт + + + + + + + Параметры закрытого ЛС + + + + + Причина закрытия (НСИ 22) + + + + + Дата закрытия + + + + + Примечание + + + + + + + + + + + + + Тип импорта оснований ЛС + + + + + Договор ресурсоснабжения + + + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + True, если договор не является публичным и/или присутствует заключенный на бумажном носителе или в электронной форме. + + + + + + + + + Договор найма жилого помещения + + + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Тип: +(D)WELLING_APARTMENT - Договор социального найма жилого помещения +STATE_(M)UNICIPAL_FUND - Договор найма жилого помещения государственного или муниципального жилищного фонда +(S)OCIAL_FUND - Договор найма жилого помещения жилищного фонда социального использования + + + + + + + + + + + + + + + + + + + + + + + Номер договора + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + + + + + + + Индивидуальная услуга ЛС + + + + + Дата начала представления услуги + + + + + Дата окончания представления услуги + + + + + Ссылка на справочник дополнительных услуг (НСИ №1) + + + + + Основание + + + + + + + Идентификатор индивидуальной услуги ЛС + + + + + + Корневой идентификатор договора (не меняется от версии к версии) + + + + + Идентификатор версии договора + + + + + Корневой идентификатор устава (не меняется от версии к версии) + + + + + Идентификатор версии устава в ГИС ЖКХ + + + + + + + Номер документа + + + + + + + + + + + + + + Сроки передачи показаний индивидуальных и общих (квартирных) приборов учета с указанием даты начала и даты окончания периода передачи показаний + + + + + + Начало периода ввода показаний ПУ + + + + + Окончание периода ввода показаний ПУ + + + + + + + + Срок представления (выставления) платежных документов для внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + Срок внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + + + + + Сроки передачи показаний индивидуальных и общих (квартирных) приборов учета с указанием даты начала и даты окончания периода передачи показаний + + + + + + Начало периода ввода показаний ПУ + + + + + Окончание периода ввода показаний ПУ + + + + + + + + Срок представления (выставления) платежных документов для внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + Срок внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + + + Тип выбора дня + + + + + + День месяца + + + + + + + + + + + Последний день месяца + + + + + + Следующего месяца? + + + + + + + Тип выбора дня для экспорта + + + + + + День месяца + + + + + + + + Последний день месяца + + + + + + Следующего месяца? + + + + + + + + + Сроки передачи показаний индивидуальных и общих (квартирных) приборов учета с указанием даты начала и даты окончания периода передачи показаний + + + + + + Начало периода ввода показаний ПУ + + + + + Окончание периода ввода показаний ПУ + + + + + + + + Срок представления (выставления) платежных документов для внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + Срок внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + + + + + Сроки передачи показаний индивидуальных и общих (квартирных) приборов учета с указанием даты начала и даты окончания периода передачи показаний + + + + + + Начало периода ввода показаний ПУ + + + + + Окончание периода ввода показаний ПУ + + + + + + + + Срок представления (выставления) платежных документов для внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + Срок внесения платы за жилое помещение и (или) коммунальные услуги + + + + + + + День месяца (от 1-30) + + + + + + + + Последний день месяца + + + + + + + Текущего месяца + + + + + + + Следующего месяца + + + + + + + + + + + + Тип выбора дня начала/окончания периода ввода показаний по ПУ + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Дата начала предоставления услуг + + + + + Дата окончания предоставления услуг + + + + + + + + + + Идентификатор в ГИС ЖКХ (ссылка на подсистему голосования) + + + + + Приложенный документ + + + + + + + + + Признак пролонгации + + + + + + + + + Дата расторжения, прекращения действия устава + + + + + + + + + Удалить проект документа + + + + + + + + + Ссылка на НСИ + + + + + Дата начала предоставления услуги + + + + + Дата окончания предоставления услуги + + + + + + + + + Номер + + + + + + + + + + Дата + + + + + + + + + Номер + + + + + + + + + + Дата + + + + + + + + + Признак утверждения ДУ + + + + + + + + + Текущий ДУ + + + + + Ссылка на дополнительное соглашение + + + + + + + + + Текущий устав + + + + + Ссылка на протокол собрания собственников + + + + + + + Устав + + + + + Дата присвоения ОГРН TCН/ТСЖ/ кооперативу (Организации поставщика данных) + + + + + Информация о сроках + + + + + Протокол собрания собственников + + + + + + Протокол собрания собственников (Добавление нового протокола) + + + + + Идентификатор версии протокола голосования (Добавление протокола из реестра сведений о голосовании) + + + + + + + + Протокол, содержащий решение об утверждении устава, отсутствует (при значениии True MeetingProtocol необзяательны) + + + + + Документы устава + + + + + Автоматически продлить срок оказания услуг на один год. Для автоматического продления указывается значение true. + + + + + Разрешить (true) или запретить (false) передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. Если признак не передан, исползуется значение глобальной настройки "Разрешить передачу гражданам показаний индивидуальных или общих (квартирных) приборов учета в любой день месяца по всем договорам". + + + + + + + Устав (для экспорта) + + + + + Дата регистрации TCН/ТСЖ/кооператива (Организации Поставщика данных) + + + + + Информация о сроках + + + + + Протокол собрания собственников + + + + + + Протокол собрания собственников (Добавление нового протокола) + + + + + Идентификатор версии протокола голосования (Добавление протокола из реестра сведений о голосовании) + + + + + + + + Протокол, содержащий решение об утверждении устава, отсутствует (при значениии True MeetingProtocol необзяательны) + + + + + Документы устава + + + + + Автоматически продлить срок оказания услуг на один год. Для автоматического продления указывается значение true. + + + + + Разрешить (true) или запретить (false) передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. + + + + + + + ДУ + + + + + Номер документа + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Планируемая дата окончания + + + + + Срок действия (заполняется при экспорте) + + + + + + Месяц + + + + + + + + + + год/лет + + + + + + + + + + + + + Вторая сторона договора + + + + Собственник объекта жилищного фонда (можно указать только один действущий управляемый объект) + + + + + ТСЖ/Кооператив + + + + + Собственник муниципального жилья + + + + + Застройщик + + + + + Орган, уполномоченный на принятие решения об определении управляющей организации + + + + + + Сведения о протоколе открытого конкурса/собрания собственников + + + + + + Протокол открытого конкурса/собрания собственников (Добавление нового протокола) + + + + + + + + Элемент не используется, оставлен в схеме для обеспечения совместимости интеграционного взаимодействия + + + + + + + + + + Протокол открытого конкурса + + + + + + Протокол собрания собственников + + + + + + Протокол заседания правления + + + + + Документ, подтверждающий принятое решение органом управления застройщика + + + + + + + + Идентификатор версии протокола голосования (Добавление протокола из реестра сведений о голосовании) + + + + + + + + +Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). + + + + + Сведения о сроках. Для EditContract допускается указывать пустым, сведения будут скопированы из предыдущей версии. + + + + + Договор на управление и приложения + + + + + Дополнительное соглашение + + + + + + + + Реквизиты дополнительного соглашения + + + + + + + + + + Реестр собственников, подписавших договор. + +Элемент обязателен, если стороной договора являются собственники объекта жилищного фонда и основанием заключения договора указано "Решение общего собрания собственников". В остальных случаях элемент не заполняется + + + + + Разрешение на ввод в эксплуатацию. Обязателен, если в "Основание заключения договора" указано "Разрешение на ввод в эксплуатацию". + + + + + Устав. Обязателен, если в "Основание заключения договора" указано "Устав". + + + + + Решение органа местного самоуправления. + +Может указываться только в том случае, если в "Основание заключения договора" указано "Решение органа местного самоуправления" + + + + + Идентификатор решения из Реестра решений об определении управляющей организации. Обязателен, если в элементе "Основание заключения договора" указано "Решение органа местного самоуправления". + + + + + Автоматически пролонгировать договор на один год при наступлении даты окончания действия договора. Для автоматического пролонгирования указывается значение true. + + + + + + + ДУ (для экспорта) + + + + + Номер документа + + + + + + + + + + + Дата заключения + + + + + Дата вступления в силу + + + + + Планируемая дата окончания + + + + + Срок действия (заполняется при экспорте) + + + + + + Месяц + + + + + + + + + + год/лет + + + + + + + + + + + + + Вторая сторона договора + + + + Собственник объекта жилищного фонда (можно указать только один действущий управляемый объект) + + + + + ТСЖ/Кооператив + + + + + Собственник муниципального жилья + + + + + Застройщик + + + + + Орган, уполномоченный на принятие решения об определении управляющей организации + + + + + + Сведения о протоколе открытого конкурса/собрания собственников + + + + + + Протокол открытого конкурса/собрания собственников (Добавление нового протокола) + + + + + + + + Элемент не используется, оставлен в схеме для обеспечения совместимости интеграционного взаимодействия + + + + + + + + + + Протокол открытого конкурса + + + + + + Протокол собрания собственников + + + + + + Протокол заседания правления + + + + + Документ, подтверждающий принятое решение органом управления застройщика + + + + + + + + Идентификатор версии протокола голосования (Добавление протокола из реестра сведений о голосовании) + + + + + + + + +Ссылка на НСИ "Основание заключения договора" (реестровый номер 58). + + + + + Сведения о сроках. Для EditContract допускается указывать пустым, сведения будут скопированы из предыдущей версии. + + + + + Договор на управление и приложения + + + + + Дополнительное соглашение + + + + + + + + Реквизиты дополнительного соглашения + + + + + + + + + + Реестр собственников, подписавших договор. + + + + + Разрешение на ввод в эксплуатацию. Обязателен, если в "Основание заключения договора" указано "Разрешение на ввод в эксплуатацию". + + + + + Устав. Обязателен, если в "Основание заключения договора" указано "Устав". + + + + + Решение органа местного самоуправления. + + + + + Идентификатор решения из Реестра решений об определении управляющей организации. + + + + + Автоматически пролонгировать договор на один год при наступлении даты окончания действия договора. Для автоматического пролонгирования указывается значение true. + + + + + Разрешить (true) или запретить (false) передачу гражданам текущих показаний по индивидуальным приборам учета в любой день месяца. + + + + + + + Статус ДУ в ГИС ЖКХ: +Project - проект +ApprovalProcess - на утверждении +Rejected - отклонен +Approved - утвержден +Terminated - расторгнут +Reviewed - рассмотрен +Annul - сведения аннулированы + + + + + + Статус устава в ГИС ЖКХ: + Project - проект + Approved - утвержден + Terminated - расторгнут/закрыт + Annul - аннулирован + Reviewed - рассмотрен + ApprovalProcess - на утверждении + Rejected - отклонен + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Идентификатор версии объекта управления в ГИС ЖКХ + + + + + Статус объекта управления + + + + + + + + + + + + + Статус управляемого объекта: +Project-Проект +ApprovalProcess-На утверждении +Rejected-Отклонен +Approved-Утвержден +Locked-Заблокирован +Annul-Сведения аннулированы + + + + + + Аннулирование сведений + + + + + Причина аннулировани + + + + + + + + + + + + Тип информации о размере платы за жилое помещение по ДУ + + + + + Дата начала периода + + + + + Дата окончания периода + + + + + Размер платы (цена) за услуги, работы по управлению МКД (если утверждена протоколом обшего собрания собственников)/Размер платы за содержание жилого помещения, установленный по результатам открытого конкурса (если утверждена протоколом открытого конкурса) + + + + + Если элемент не указан, выполняется попытка привязки к одному из протоколов, приложенному к ДУ + + + + Протокол общего собрания собственников помещений в многоквартирном доме об установлении размера платы за содержание жилого помещения + + + + + Идентификатор версии протокола голосования с решением с типом 12.1 «Текущий ремонт общего имущества» и(или) с типом 15.1 «Другие вопросы» адресом объекта управления. + + + + + + Информация о размере платы (цене, тарифе) за содержание и текущий ремонт общего имущества в многоквартирном доме/Информация о размере платы за содержание жилого помещения, установленном по результатам открытого конкурса по отбору управляющей организации для управления многоквартирным домом + + + + + + Работа/услуга организации (НСИ №59) + + + + + Размер платы (цены, тарифа) за работы (услуги)/Размер платы за работы (услуги), в целой части указываются рубли, в вещественной - до сотых долей копеек. + + + + + + + + Тип размера платы: +(P)rotocol - утвержденный протоколом общего собрания собственников +(С)ompetition - установленный по результатам открытого конкурса +(A)uthority - установленный органом местного самоуправления + + + + + + + + + + + + + + + + Тип информации о размере платы за жилое помещение по уставу + + + + + Дата начала периода + + + + + Дата окончания периода + + + + + Информация о размере обязательных платежей и (или) взносов членов товарищества, кооператива, +связанных с оплатой расходов на содержание и текущий ремонт общего имущества в МКД + + + + + + Размер обязательных платежей и (или) взносов членов товарищества, кооператива + + + + + Протокол общего собрания членов товарищества, кооператива об утверждении обязательных платежей и (или) взносов членов товарищества, кооператива + + + + + + + + Информация о размере платы за содержание и ремонт жилого помещения для собственника +помещения в МКД, не являющегося членом товарищества, кооператива + + + + + + Размер платы за содержание и ремонт жилого помещения для собственника помещения в МКД + + + + + Протокол общего собрания членов товарищества, кооператива об утверждении размера платы за содержание и ремонт жилого помещения для собственника помещения в многоквартирном доме + + + + + + + + Информация о размере платы (цене, тарифе) за содержание и текущий ремонт общего имущества в многоквартирном доме + + + + + + Работа/услуга организации (НСИ №59) + + + + + Размер платы (цена) за услуги, работы по управлению МКД. В целой части указываются рубли, в вещественной сотые долей копеек. + + + + + + + + + + Для всех управляемых объектов + + + + + + + + Идентификатор версии сведений о размере платы по ДУ + + + + + Идентификатор версии сведений о размере платы по уставу + + + + + Формировать заявки в реестр лицензий, если сведения об управляемом объекте в договоре управления конфликтуют с реестром лицензий + + + + + Формировать заявки в реестр информации о способах управления МКД (РИСУ), если сведения об управляемом объекте устава конфликтуют с РИСУ + + + + + Неотрицательная маленькая сумма + + + + + + + + + + + + + + + + + + + Место проведения собрания + + + + + + + + + + + + + Сведения об инициаторах собрания + + + + + + Физическое лицо (собственник помещений) + + + + + Организация инициатор собрания ИП или Юр. лицо (УО) + + + + + + + + Прикрепляемые файлы + + + + + + + + + + Протокол ОСС + + + + + Глобальный уникальный идентификатор дома по ФИАС + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" и не заполнено ТСЖ/Кооператив + + + + + Товарищество Собственников Жилья/ Кооператив + + + + + Номер протокола + + + + + + + + + + Дата составления протокола + + + + + Форма проведения + + + + Заочное голосование (опросным путем) + + + + + + Дата начала приема решений собственников. + + + + + Дата окончания приема решений + + + + + Место приема решения + + + + + + + + + + + + + + + Очное голосование + + + + + + + + + Дата и время проведения собрания + + + + + + + + + + + Заочное голосование с использованием системы. Не используется для импорта протоколов + + + + + + Дата и время начала проведения голосования + + + + + Дата и время окончания проведения голосования + + + + + Порядок приема оформленных в письменной форме решений собственников + + + + + + + + + + Порядок ознакомления с информацией и (или) материалами, которые будут представлены на данном собрании + + + + + + + + + + + + + + Очное-заочное голосование + + + + + + + Дата и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + Дата начала приема решений собственников. + + + + + Дата окончания приема решений + + + + + Место приема решения + + + + + + + + + + + + + + + + Тип собрания + +Доступны следующие значения: +-Owners - Собрание собственников +-Homeowners - Собрание ТСЖ +-Cooperative - Собрание кооператива + +По умолчанию устанавливается значение "Собрание собственников", если не заполнено + + + + + Вид собрания + + + + Внеочередное собрание + + + + + Ежегодное собрание + + + + + + + Правомочность собрания +Допустимые значения +(C)OMPETENT - Правомочно (имеет кворум) +(N)OT_COMPETENT- Не правомочно (кворум отсутствует) + + + + + + + + + + + + Повестка + + + + + + + Номер вопроса + + + + + Вопрос + + + + + + + + + + + Тип вопроса (НСИ №63) + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" + + + + + Тип вопроса для ТСЖ (НСИ №341) + +Обязательно к заполнению, если "Тип собрания" = "Собрание ТСЖ" + + + + + + + + + + Тип вопроса для Кооператива + +Обязательно к заполнению, если "Тип собрания" = "Собрание кооператива" + + + + Есть в уставе + + + + + Нет в уставе + + + + + + Результаты голосования + + + + Результаты голосования «За» + + + + + Результаты голосования «Против» + + + + + Результаты голосования «Воздержался» + + + + + + Выбранный способ формирования фонда (справочник «Вид счета\Способ формирования фонда» НСИ 62). При импорте нельзя указывать "Значение не выбрано". + + + + + Выбранный способ управления МКД (справочник «Способ управления» НСИ 25) + + + + + Система, в которой проводится голосование. Заполняется только для вопроса "Использование иной информационной системы при проведении общего собрания собственников помещений в многоквартирном доме в форме заочного голосования" + + + + + Сведения о выбираемом АОСС + +Заполняется только для вопросов с типом "Определение администратора общего собрания с указанием СНИЛС и(или) ОГРН" + + + + + + Итог голосования +Допустимые значения: +DECISION_IS_(M)ADE - решение принято +DECISION_IS_(N)OT_MADE - решение не принято + + + + + + + + + + + + + + Основание изменения. Заполняется для протоколов ОСС в статусе "Размещен" + + + + + + + + + + + + Сообщение о проведении ОСС + + + + + Глобальный уникальный идентификатор дома по ФИАС + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" и не заполнено ТСЖ/Кооператив + + + + + Товарищество Собственников Жилья/ Кооператив + + + + + Номер сообщения + + + + + Дата составления сообщения + +Обязательна к заполнению для всех сообщений, кроме голосований, проводимых с помощью системы ГИС ЖКХ. Для собраний, проводимых с помощью ГИС ЖКХ значение элемента будет проигнорировано и в дату составления запишется текущая дата и время. + + + + + Вид собрание + + + + Внеочередное собрание + + + + + Ежегодное собрание + + + + + + Форма проведения + + + + Заочное голосование (опросным путем) + + + + + + Дата начала приема решений + + + + + Дата окончания приема решений + + + + + Место приема решений + + + + + + + + + + + + + + + Очное голосование + + + + + + Даьа и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + + + + + Очно-заочное голоосвание + + + + + + Дата начала приема решений + + + + + Дата окончания приема решений + + + + + Место приема решений + + + + + + + + + + + Даьа и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + + + + + Заочное голоосвание с использованием системы + + + + + + Дата и время начала проведения голосования + + + + + Дата и время окончания проведения голосования + + + + + Порядок приема оформленных в письменной форме решений собственников + + + + + + + + + + Порядок ознакомления с информацией и (или) материалами, которые будут представлены на данном собрании + + + + + + + + + + Система, в которой проводится голосование + + + + + Первое ОСС + +Заполняется только если в tns:VotingSystem выбрано "Региональная информационная система" или "ЕПГУ" + + + + + Сведения об АОСС + + + + + Место или фактический адрес администратора общего собрания + + + + + + + + + + + + + + + + Тип собрания + +Доступны следующие значения: +-Owners - Собрание собственников +-Homeowners - Собрание ТСЖ +-Cooperative - Собрание кооператива + +По умолчанию устанавливается значение "Собрание собственников" + + + + + + Повестка + + + + + + Номер вопроса + + + + + Вопрос + + + + + + + + + + + Тип вопроса (НСИ №63) + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" + + + + + Тип вопроса для ТСЖ (НСИ №341) + +Обязательно к заполнению, если "Тип собрания" = "Собрание ТСЖ" + + + + + + + + + + Тип вопроса для Кооператива + +Обязательно к заполнению, если "Тип собрания" = "Собрание кооператива" + + + + Есть в уставе + + + + + Нет в уставе + + + + + + Выбранный способ формирования фонда (справочник «Вид счета\Способ формирования фонда» НСИ 62). При импорте нельзя указывать "Значение не выбрано". + + + + + Выбранный способ управления МКД (справочник «Способ управления» НСИ 25) + + + + + Система, в которой проводится голосование. Заполняется только для вопроса "Использование иной информационной системы при проведении общего собрания собственников помещений в многоквартирном доме в форме заочного голосования" + + + + + Сведения о выбираемом АОСС + +Заполняется только для вопросов с типом "Определение администратора общего собрания с указанием СНИЛС и(или) ОГРН" + + + + + + + + Основание изменения. Заполняется для сообщений в статусе "Сообщение размещено" и с формой проведения отличной от "Заочное голосование с использованием системы" + + + + + + + + + + + + Экспорт сообщения о проведении ОСС + + + + + Глобальный уникальный идентификатор дома по ФИАС + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" и не заполнено ТСЖ/Кооператив + + + + + Товарищество Собственников Жилья/ Кооператив + + + + + Номер сообщения + + + + + Дата составления сообщения + + + + + Вид собрание + + + + Внеочередное собрание + + + + + Ежегодное собрание + + + + + + Форма проведения + + + + Заочное голосование (опросным путем) + + + + + + Дата начала приема решений + + + + + Дата окончания приема решений + + + + + Место приема решений + + + + + + + + + + + + + + + Очное голосование + + + + + + Даьа и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + + + + + Очно-заочное голоосвание + + + + + + Дата начала приема решений + + + + + Дата окончания приема решений + + + + + Место приема решений + + + + + + + + + + + Даьа и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + + + + + Заочное голоосвание с использованием системы + + + + + + Дата и время начала проведения голосования + + + + + Дата и время окончания проведения голосования + + + + + Порядок приема оформленных в письменной форме решений собственников + + + + + + + + + + Порядок ознакомления с информацией и (или) материалами, которые будут представлены на данном собрании + + + + + + + + + + Система, в которой проводится голосование + + + + + Первое ОСС + +Заполняется только если в tns:VotingSystem выбрано "Региональная информационная система" или "ЕПГУ" + + + + + Сведения об АОСС + + + + + Место или фактический адрес администратора общего собрания + + + + + + + + + + + + + + + + Тип собрания + +Доступны следующие значения: +-Owners - Собрание собственников +-Homeowners - Собрание ТСЖ +-Cooperative - Собрание кооператива + +По умолчанию устанавливается значение "Собрание собственников" + + + + + + Повестка + + + + + + Номер вопроса + + + + + Вопрос + + + + + + + + + + + Тип вопроса (НСИ №63) + +Обязательно к заполнению, если "Тип собрания" = "Собрание собственников" + + + + + Тип вопроса для ТСЖ (НСИ №341) + +Обязательно к заполнению, если "Тип собрания" = "Собрание ТСЖ" + + + + + + + + + + Тип вопроса для Кооператива + +Обязательно к заполнению, если "Тип собрания" = "Собрание кооператива" + + + + Есть в уставе + + + + + Нет в уставе + + + + + + Выбранный способ формирования фонда (справочник «Вид счета\Способ формирования фонда» НСИ 62). При импорте нельзя указывать "Значение не выбрано". + + + + + Выбранный способ управления МКД (справочник «Способ управления» НСИ 25) + + + + + Система, в которой проводится голосование. Заполняется только для вопроса "Использование иной информационной системы при проведении общего собрания собственников помещений в многоквартирном доме в форме заочного голосования" + + + + + Сведения о выбираемом АОСС + +Заполняется только для вопросов с типом "Определение администратора общего собрания с указанием СНИЛС и(или) ОГРН" + + + + + + + + Основание изменения. Заполняется для сообщений в статусе "Сообщение размещено" и с формой проведения отличной от "Заочное голосование с использованием системы" + + + + + + + + + + + + Сведения об АОСС + + + + + Физическое лицо (собственник помещений) + + + + + + Физическое лицо (собственник помещений) + + + + + Глобальный уникальный идентификатор дома по ФИАС + +Место постояного проживания по ФИАС + + + + + Место постоянного проживания + + + + + + + + + + + Номер контактного телефона + + + + + + + + + + + Адрес электронной почты + + + + + + + + + + + + + + Организация инициатор собрания ИП или Юр. лицо (УО) + + + + + + + Аннулирование протокола ОСС + + + + + Основание аннулирования протокола + + + + + + + + + + + Организация, принявшая решение об аннулировании + + + + + Организация или физическое лицо, принявшая решение об аннулировании + + + + + + Дата решения об аннулировании. По умолчанию сохраняется дата выполнения аннулирования + + + + + Номер решения об аннулировании + + + + + + + + + + Причина аннулирования по НСИ (НСИ№271). По умолчанию запись с кодом 3 "Ошибка ввода" + + + + + Электронная копия документа об аннулировании. Обязательно добавление хотя бы одного файла, если Причина аннулирования по НСИ "Решение суда" (код записи 1) + + + + + + + Итоги для голосований с использованием системы + + + + + Номер протокола + + + + + + + + + + Дата составления протокола + + + + + Правомочность собрания +Допустимые значения +(C)OMPETENT - Правомочно (имеет кворум) +(N)OT_COMPETENT- Не правомочно (кворум отсутствует) + + + + + + + + + + + + Повестка + + + + + + Номер вопроса + + + + + Результаты голосования + + + + Результаты голосования «За» + + + + + Результаты голосования «Против» + + + + + Результаты голосования «Воздержался» + + + + + + Итог голосования +Допустимые значения: +DECISION_IS_(M)ADE - решение принято +DECISION_IS_(N)OT_MADE - решение не принято + + + + + + + + + + + + + + + + + Протокол ОСС (для экспорта) + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Товарищество Собственников Жилья/ Кооператив + + + + + Номер протокола + + + + + + + + + + Дата составления протокола + + + + + Форма проведения + + + + Заочное голосование (опросным путем) + + + + + + Дата начала приема решений собственников + + + + + Дата окончания приема решений + + + + + Место приема решения + + + + + + + + + + + + + + + Очное голосование + + + + + + + + + Дата и время проведения собрания + + + + + + + + + + + Заочное голосование с использованием системы + + + + + + Дата и время начала проведения голосования + + + + + Дата и время окончания проведения голосования + + + + + Порядок приема оформленных в письменной форме решений собственников + + + + + + + + + + Порядок ознакомления с информацией и (или) материалами, которые будут представлены на данном собрании + + + + + + + + + + Система, в которой проводится голосование + + + + + Первое ОСС + +Заполняется только если в tns:VotingSystem выбрано "Региональная информационная система" или "ЕПГУ" + + + + + + + + + Очное-заочное голосование + + + + + + + Дата и время проведения собрания + + + + + Место проведения собрания + + + + + + + + + + + Дата начала приема решений собственников + + + + + Дата окончания приема решений + + + + + Место приема решения + + + + + + + + + + + + + + + + Тип собрания + +Доступны следующие значения: +-Owners - Собрание собственников +-Homeowners - Собрание ТСЖ +-Cooperative - Собрание кооператива + + + + + Вид собрания + + + + Внеочередное собрание + + + + + Ежегодное собрание + + + + + + Сведения об инициаторах собрания + + + + + + Физическое лицо (собственник помещений) + + + + + Организация инициатор собрания ИП или Юр. лицо (УО) + + + + + + + + Правомочность собрания +Допустимые значения +(C)OMPETENT - Правомочно (имеет кворум) +(N)OT_COMPETENT- Не правомочно (кворум отсутствует) + + + + + + + + + + + + Повестка + + + + + + + Номер вопроса + + + + + Вопрос + + + + + + + + + + + Тип вопроса (НСИ №63) + + + + + Тип вопроса для ТСЖ (НСИ №341) + + + + + + + + + + Тип вопроса для Кооператива + + + + Есть в уставе + + + + + Нет в уставе + + + + + + Результаты голосования + + + + Результаты голосования «За» + + + + + Результаты голосования «Против» + + + + + Результаты голосования «Воздержался» + + + + + + Выбранный способ формирования фонда (справочник «Вид счета\Способ формирования фонда» НСИ 62) + + + + + Выбранный способ управления МКД (справочник «Способ управления» НСИ 25) + + + + + Система, в которой проводится голосование. Заполняется только для вопроса "Использование иной информационной системы при проведении общего собрания собственников помещений в многоквартирном доме в форме заочного голосования" + + + + + Сведения о выбираемом АОСС + +Заполняется только для вопросов с типом "Определение администратора общего собрания с указанием СНИЛС и(или) ОГРН" + + + + + + Итог голосования +Допустимые значения: +DECISION_IS_(M)ADE - решение принято +DECISION_IS_(N)OT_MADE - решение не принято + + + + + + + + + + + + + + Основание изменения. Заполняется для протоколов ОСС в статусе "Размещен" + + + + + + + + + + + + Информация о системе, в которой проводится собрание + + + + + Система, в которой проводится голосование + + + + + Обязательно если в VotingSystem выбрано "Региональная информационная система" или "Иная система" + + + + Наименование системы + + + + + + + + + + + Идентификатор системы. Может быть заполнен только если в VotingSystem выбрано "Региональная информационная система" + + + + + + Адрес в сети Интернет. Обязательно если в VotingSystem выбрано "Региональная информационная система" или "Иная система" + + + + + + + + + + + + + + + Арендатор/Наниматель + + + + Организация + + + + + Физическое лицо + + + + + + Адрес. Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер договора + + + + + Дата договора + + + + + Дата начала действия договора + + + + + Планируемая дата окончания действия договора + + + + + Предмет договора + + + + + + + + + + Комментарий + + + + + + + + + + Размер платы за предоставление в пользование части общего имущества собственников помещений в МКД в месяц + + + + + Направление расходования средств, внесенных за пользование частью общего имущества + + + + + + + + + + Документы договора (Договор/дополнительные соглашения) + + + + + Протокол собрания собственников + + + + + + Протокол собрания собственников (Добавление нового протокола) + + + + + + Номер протокола + + + + + + + + + + Дата составления протокола + + + + + Документы, подтверждающие полномочия заключать договор + + + + + + + + Идентификатор версии протокола собрания собственников в ГИС ЖКХ (Добавление протокола из реестра сведений о голосовании) + + + + + + + + Договор заключен на безвозмездной основе? + + + + + + + + + Арендатор/Наниматель + + + + Организация + + + + + Физическое лицо + + + + + + Адрес. Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер договора + + + + + Дата договора + + + + + Дата начала действия договора + + + + + Планируемая дата окончания действия договора + + + + + Предмет договора + + + + + + + + + + Комментарий + + + + + + + + + + Размер платы за предоставление в пользование части общего имущества собственников помещений в МКД в месяц + + + + + + + + + + + Направление расходования средств, внесенных за пользование частью общего имущества + + + + + + + + + + Документы договора (Договор/дополнительные соглашения) + + + + + Протокол собрания собственников + + + + + + Протокол собрания собственников (Добавление нового протокола) + + + + + + Номер протокола + + + + + + + + + + Дата составления протокола + + + + + Документы, подтверждающие полномочия заключать договор + + + + + + + + Идентификатор версии протокола собрания собственников в ГИС ЖКХ (Добавление протокола из реестра сведений о голосовании) + + + + + + + + + + Инициатор - физическое лицо + + + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + Дата рождения + + + + + + + + + Место рождения + + + + + + + + + + + + + + + Удостоверение личности + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата выдачи документа + + + + + + + + Тип собрания + + + + + + + + + + Статус сообщения о проведении общего собрания + + + + + + + + + + + + Система, в которой проводится собрание + + + + + ГИС ЖКХ + + + + + Федеральная государственная информационная система «Единый портал государственных и муниципальных услуг» (ЕПГУ) + + + + + Региональная информационная система + + + + + Иная система + + + + + + + Номер вопроса в голосовании + + + + + + + + + + Решение собственника по вопросам, переданным в письменной форме + + + + + + + Сведения о представителе. + +Заполняется, если в голосании участвует представитель собственника + + + + + Вопрос повестки + + + + + Электронный образ решения собственника + + + + + + + Решение по вопросу + + + + + Номер вопроса + + + + + Решение собственника + + + + Решение собственника «За» + + + + + Решение собственника «Против» + + + + + Решение собственника «Воздержался» + + + + + + Признак "Собственник проголосовал с использованием системы". Может быть равно true только для голосований с формой проведения "Заочное голосование с использованием системы" + + + + + + + Экспортируемое решение по вопросу + + + + + + Номер вопроса + + + + + Вопрос + + + + + + + + + + + + Решение собственника + + + + Решение собственника «За» + + + + + Решение собственника «Против» + + + + + Решение собственника «Воздержался» + + + + + + Признак "Собственник проголосовал с использованием системы". Может быть равно true только для голосований с формой проведения "Заочное голосование с использованием системы" + + + + + + + Физическое лицо для решений + + + + + + + + Удостоверение личности для решений + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + + + + Сведения о собственнике + + + + + + Физическое лицо (собственник помещений) + + + + + + + Документы удостоверяющие личность + + + + + Удостоверение личности собственника + + + + + + + + + + Организация собственник ИП или Юр. лицо (УО) + + + + + + + + Сведения о собственности + + + + + + Номер государственной регистрации + + + + + + + + + + Дата государственной регистрации + + + + + Номер помещения + + + + + Общая площадь помещения + + + + + Вид собственности + + + + + + Долевая + + + + + Индивидуальная + + + + + Совместная + + + + + + + + Размер доли, принадлежащей собственнику. +Заполняется, если "Вид собственности"="Долевая" + + + + + + Доля собственности. Размер доли (Числитель) + + + + + + + + + + + Доля собственности. Размер доли (Знаменатель) + + + + + + + + + + + + + + + + + Сведения о собственности для экспорта + + + + + + Номер государственной регистрации + + + + + + + + + + Дата государственной регистрации + + + + + Номер помещения + + + + + Общая площадь помещения + + + + + Вид собственности + + + + + + Долевая + + + + + Индивидуальная + + + + + Совместная + + + + + + + + Размер доли, принадлежащей собственнику. +Заполняется, если "Вид собственности"="Долевая" + + + + + + Доля собственности. Размер доли (Числитель) + + + + + + + + + + + Доля собственности. Размер доли (Знаменатель) + + + + + + + + + + + + + + + + + Сведения о представителе + + + + + + + Физическое лицо (представитель) + + + + + + + Документы удостоверяющие личность + + + + + Удостоверение личности представителя + + + + + + + + + + Организация представитель ИП или Юр. лицо + + + + + + Представитель собственника действует на основании доверенности, удостоверенной нотариально + + + + + Документ, подтверждающий законное представительство собственника помещения + + + + + + + + + Письменный отказ собственника + + + + + + + Сведения о представителе. Заполняется, если отказ внесён представителем собственника + + + + + Электронный образ отказа собственника + + + + + + + Статус письменного отказа собственника + + + + + Размещен + + + + + Аннулирован + + + + + + + Письменный отказ собственника (для экспорта) + + + + + Корневой идентификатор сообщения о проведении общего собрания + + + + + Корневой идентификатор письменного отказа собственника + + + + + + + Сведения о представителе. Заполняется, если отказ внесён представителем собственника + + + + + Электронный образ отказа собственника + + + + + Статус письменного отказа собственника. +Допустимые значения: +-Posted-Размещен +-Annuled-Аннулирован + + + + + Дата и время размещения письменного отказа + + + + + + + + Объект жилищного фонда + + + + + Тип дома: MKD - Многоквартирный дом ZHD - Жилой дом ZHDBlockZastroyki - Жилой дом блокированной застройки + + + + + + + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) / Номер блока + + + + + Номер комнаты (указывается в случае квартиры коммунального заселения) + + + + + + + Объект жилищного фонда (экспорт) + + + + + Тип дома: MKD - Многоквартирный дом ZHD - Жилой дом ZHDBlockZastroyki - Жилой дом блокированной застройки + + + + + + + + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) / Номер блока + + + + + Номер комнаты (указывается в случае квартиры коммунального заселения) + + + + + + + Выбор значения показателя качества + + + + + + Установленное значение показателя качества + + + + Число + + + + + Диапазон + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + + Юридическое лицо или индивидуальный предприниматель в ДРСО + + + + + + + + Физическое лицо в ДРСО + + + + + Фамилия + + + + + + + + + + + Имя + + + + + + + + + + + Отчество + + + + + + + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + Дата рождения + + + + + + + + + Место рождения + + + + + + + + + + + + + КУ и КР для ОЖФ в договоре ресурсоснабжения + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + Коммунальный ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239) + + + + + + + + + + Дата начала поставки ресурса + + + + + Дата окончания поставки ресурса. Является обязательным, если указано значение в AutomaticRollOverOneYear или не указано значение в IndefiniteTerm + + + + + + + Плановый объем поставки ресурса по договору + + + + + + + + + Значение показателя качества + + + + + + + + + + + Наименование иного показателя качества + + + + + + + + + Основные характеристики ПУ + + + + + Заводской (серийный) номер ПУ + + + + + + + + + + Марка ПУ (обязательно для заполнения при импорте) + + + + + + + + + + Модель ПУ (обязательно для заполнения при импорте) + + + + + + + + + + Дата установки + + + + + Дата ввода в эксплуатацию +Поле обязательно, если вид ПУ отличен от "Коллективный (общедомовой)" + + + + + Наличие возможности дистанционного снятия показаний + + + + + Информация о наличии возможности дистанционного снятия показаний ПУ указанием наименования установленной системы (обязательно для заполнения, если tns:RemoteMeteringMode = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + Дата последней поверки (поле обязательно для заполнения, если ПУ - коллективный (общедомовой)) + + + + + Межповерочный интервал (НСИ 16) (поле обязательно для заполнения, если ПУ - коллективный (общедомовой)) + + + + + Дата опломбирования ПУ заводом- изготовителем (обязательно для заполнения при импорте) + + + + + Наличие датчиков температры + + + + + Наличие датчиков давления + + + + + Признак «ПУ предоставляет объем потребленного КР» + + + + + + Характеристики общедомового ПУ (тип прибора учета = "Коллективный (общедомовой)") + + + + + + Глобальный уникальный идентификатор дома по ФИАС (при импорте обязательно для заполнения тогда и только тогда, когда отсутствует корневой элемент FIASHouseGuid) + + + + + Информация о наличии датчиков температуры с указанием их местоположения на узле учета (обязательно для заполнения, если tns:TemperatureSensor = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + Информация о наличии датчиков давления с указанием их местоположения на узле учета (обязательно для заполнения, если tns:PressureSensor = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + Электронный образ проекта узла учета + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + + + + Характеристики ИПУ жилого помещения (тип прибора учета = "Индивидуальный") + + + + + + Идентификатор помещения (тип = жилое помещение). +Идентификатор помещения (тип = жилое помещение). +Заполняется для импорта версии 11.1.0.8 и экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Идентификатор ЛС + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + Заполняется для экспорта для версии 14.8.0.1. Для импорта игнорируется + + + + + + Идентификатор помещения (тип = жилое помещение) Идентификатор помещения (тип = жилое помещение). +Заполняется для экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Номер помещения + + + + + + + + + + Контроль дублирования ЛС для ИПУ жилого помещения + + + + + + + + Характеристики ИПУ нежилого помещения (тип прибора учета = "Индивидуальный") + + + + + + Идентификатор помещения (тип = жилое помещение). +Идентификатор помещения (тип = жилое помещение). +Заполняется для импорта версии 11.1.0.8 и экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Идентификатор ЛС + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + Заполняется для экспорта для версии 14.8.0.1. Для импорта игнорируется + + + + + + Идентификатор помещения (тип = жилое помещение) Идентификатор помещения (тип = жилое помещение). +Заполняется для экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Номер помещения + + + + + + + + + + Контроль дублирования ЛС для ИПУ нежилого помещения + + + + + + + + Характеристики ИПУ жилого дома (тип прибора учета = "Индивидуальный", тип дома = "Жилой") + + + + + + Глобальный уникальный идентификатор дома по ФИАС (при импорте обязательно для заполнения тогда и только тогда, когда отсутствует корневой элемент FIASHouseGuid) + + + + + Идентификатор ЛС + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + + + Контроль дублирования ЛС для ИПУ жилого дома + + + + + + + + Характеристики комнатного ИПУ (тип прибора учета = "Комнатный") + + + + + + Идентификатор комнаты. +Заполняется для импорта и экспорта версии 11.1.0.2 + + + + + Идентификатор ЛС + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + Заполняется для экспорта для версии 14.8.0.1. Для импорта игнорируется + + + + + + Идентификатор комнаты + + + + + Номер комнаты + + + + + + + + + + Контроль дублирования ЛС для комнатного ИПУ + + + + + + + + Характеристики общеквартирного ПУ (для квартир коммунального заселения) (тип прибора учета = "Общий (квартирный)") + + + + + + Идентификатор помещения (тип = жилое помещение). +Идентификатор помещения (тип = жилое помещение). +Заполняется для импорта версии 11.1.0.8 и экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Идентификатор ЛС + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + Заполняется для экспорта для версии 14.8.0.1. Для импорта игнорируется + + + + + + Идентификатор помещения (тип = жилое помещение) Идентификатор помещения (тип = жилое помещение). +Заполняется для экспорта версий 11.1.0.2 и 14.8.0.1 + + + + + Номер помещения + + + + + + + + + + Контроль дублирования ЛС для общеквартирного ПУ + + + + + + + + + + + Тип для создания ПУ, редактирования ПУ до начала внесения показаний, а также для экспорта сведений о ПУ + + + + + Основные характеристики + + + + + Информация о связи текущего ПУ с другими ПУ. При обновлении данных о ПУ, если ПУ имеет связи с другими ПУ, необходимо присылать актуальную коллекцию связанных ПУ + + + + Объем ресурса(ов) определяется только с помощью текущего ПУ (связей с другими ПУ нет) + + + + + Объем ресурса(ов) определяется с помощью нескольких приборов учета + + + + + + Место установки текущего прибора учета. Возможные значения: in - На входе/На подающем трубопроводе, out - На выходе/На обратном трубопроводе. Если прибор учета измеряет электрическую энергию, то ПУ устанавливается на входе/на выходе; если прибор учета измеряет коммунальный ресурс, отличный от электрической энергии, то ПУ устанавливается на подающем трубопроводе / на обратном трубопроводе + + + + + + + + + + + Идентификатор версии ПУ, заведенного в ГИС ЖКХ, с которым требуется установить связь текущего ПУ + + + + + + + + + + Сведения о коммунальном ресурсе и последние полученные показания ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих показания + + + + + Последние полученные показания и коэффициент трансформации для ПУ, измеряющего электроэнергию. Указывается только для ПУ, предоставляющих показания + + + + + Сведения о коммунальных ресурсах ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих объем потребленного КР + + + + + + + + Тип для создания ПУ, редактирования ПУ до начала внесения показаний, а также для экспорта сведений о ПУ + + + + + Основные характеристики + + + + + Информация о связи текущего ПУ с другими ПУ. При обновлении данных о ПУ, если ПУ имеет связи с другими ПУ, необходимо присылать актуальную коллекцию связанных ПУ + + + + Объем ресурса(ов) определяется только с помощью текущего ПУ (связей с другими ПУ нет) + + + + + Объем ресурса(ов) определяется с помощью нескольких приборов учета + + + + + + Место установки текущего прибора учета. Возможные значения: in - На входе/На подающем трубопроводе, out - На выходе/На обратном трубопроводе. Если прибор учета измеряет электрическую энергию, то ПУ устанавливается на входе/на выходе; если прибор учета измеряет коммунальный ресурс, отличный от электрической энергии, то ПУ устанавливается на подающем трубопроводе / на обратном трубопроводе + + + + + + + + + + + Идентификатор версии ПУ, заведенного в ГИС ЖКХ, с которым требуется установить связь текущего ПУ + + + + + + + + + + Сведения о коммунальном ресурсе и последние полученные показания ПУ (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих показания + + + + + Последние полученные показания и коэффициент трансформации для ПУ, измеряющего электроэнергию. Указывается только для ПУ, предоставляющих показания + + + + + Сведения о коммунальных ресурсах ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды). Указывается только для ПУ, предоставляющих объем потребленного КР + + + + + + + + Тип для редактирования ПУ после начала внесения показаний + + + + + Заводской (серийный) номер ПУ + + + + + + + + + + Марка ПУ (обязательно для заполнения при импорте) + + + + + + + + + + Модель ПУ (обязательно для заполнения при импорте) + + + + + + + + + + Дата установки + + + + + Дата ввода в эксплуатацию + + + + + Наличие возможности дистанционного снятия показаний + + + + + Информация о наличии возможности дистанционного снятия показаний ПУ указанием наименования установленной системы (обязательно для заполнения, если tns:RemoteMeteringMode = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + Наличие датчиков температры + + + + + Наличие датчиков давления + + + + + Характеристики общедомового ПУ (значение справочника "Тип прибора учета" = коллективный (общедомомвой)) + + + + + + Информация о наличии датчиков температуры с указанием их местоположения на узле учета (обязательно для заполнения, если tns:TemperatureSensor = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + Информация о наличии датчиков давления с указанием их местоположения на узле учета (обязательно для заполнения, если tns:PressureSensor = true, в противном случае поле не обрабатывается при импорте) + + + + + + + + + + + + + В случае изменения лицевых счетов необходимо прислать их актуальный перечень (данные будут полностью заменены) + + + + + Электронный образ акта ввода узла учета в эксплуатацию + + + + + Указывается только для ПУ, предоставляющих показания + + + + Данные об изменении базовых показаний. Коммунальный ресурс (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) должен быть указан тот же, что и при создании ПУ + + + + + Данные об изменении базовых показаний ПУ электрической энергии. Необходимо прислать все актуальные базовые показания в соответсвии с видом ПУ по количеству тарифов (даже если требуется отредактировать только одно показание). + + + + + + Дата последней поверки (поле можно редактировать после начала внесения показаний, но запрещено к редактированию после внесения первой поверки) + + + + + Дата опломбирования ПУ заводом-изготовителем + + + + + Признак «ПУ предоставляет объем потребленного КР» + + + + + Информация о связи текущего ПУ с другими ПУ. При обновлении данных о ПУ, если ПУ имеет связи с другими ПУ, необходимо присылать актуальную коллекцию связанных ПУ + + + + Объем ресурса(ов) определяется только с помощью текущего ПУ (связей с другими ПУ нет) + + + + + Объем ресурса(ов) определяется с помощью нескольких приборов учета + + + + + + Место установки текущего прибора учета. Возможные значения: in - На входе/На подающем трубопроводе, out - На выходе/На обратном трубопроводе. Если прибор учета измеряет электрическую энергию, то ПУ устанавливается на входе/на выходе; если прибор учета измеряет коммунальный ресурс, отличный от электрической энергии, то ПУ устанавливается на подающем трубопроводе / на обратном трубопроводе + + + + + + + + + + + Идентификатор версии ПУ, заведенного в ГИС ЖКХ, с которым требуется установить связь текущего ПУ + + + + + + + + + Изменение адреса установленного ПУ + + + + + + Характеристики ИПУ жилого помещения (тип прибора учета = "Индивидуальный") + + + + + + Идентификатор помещения (тип = жилое помещение) + + + + + + + + Характеристики ИПУ нежилого помещения (тип прибора учета = "Индивидуальный") + + + + + + Идентификатор помещения (тип = нежилое помещение) + + + + + + + + Характеристики ИПУ жилого дома (тип прибора учета = "Индивидуальный", тип дома = "Жилой") + + + + + + Глобальный уникальный идентификатор дома по ФИАС, который необходимо установить в качестве адреса ПУ (не должен указываться при наличии tns:importMeteringDeviceDataRequest/tns:FIASHouseGuid) + + + + + Признак "Изменить адрес ПУ на адрес дома, указанный в tns:importMeteringDeviceDataRequest/tns:FIASHouseGuid?" + + + + + + + + Характеристики общедомового ПУ (тип прибора учета = "Коллективный (общедомовой)") + + + + + + Глобальный уникальный идентификатор дома по ФИАС, который необходимо установить в качестве адреса ПУ (не должен указываться при наличии tns:importMeteringDeviceDataRequest/tns:FIASHouseGuid) + + + + + Признак "Изменить адрес ПУ на адрес дома указанного в tns:importMeteringDeviceDataRequest/ tns:FIASHouseGuid?" + + + + + + + + Характеристики комнатного ИПУ (тип прибора учета = "Комнатный" + + + + + + Идентификатор комнаты + + + + + + + + Характеристики общеквартирного ПУ (для квартир коммунального заселения) (тип прибора учета = "Общий (квартирный)") + + + + + + Идентификатор жилого помещения + + + + + + + + + + + + + Сведения о коммунальном ресурсе ПУ и последнее полученное показание (холодная вода, горячая вода, тепловая энергия, газ, сточные бытовые воды). Используется при создании / изменении ПУ для определения КР + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Обязателен для заполнения, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + 112: Литр, 113: Кубический метр, 233: Гигакалория, 245: Киловатт-час, 246: Мегаватт-час, 271: Джоуль, A056: Гигаджоуль, A058: Мегаджоуль + + + + + + + + + + + + + + + + + + + Сведения о коммунальном ресурсе ПУ и последнее полученное показание (холодная вода, горячая вода, тепловая энергия, газ, сточные бытовые воды). Используется при создании / изменении ПУ для определения КР + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Обязателен для заполнения, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + 112: Литр, 113: Кубический метр, 233: Гигакалория, 245: Киловатт-час, 246: Мегаватт-час, 271: Джоуль, A056: Гигаджоуль, A058: Мегаджоуль + + + + + + + + + + + + + + + Значение показания ПУ, выраженное в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + + + + + Данные однотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ. Используется при экспорте данных ПУ + + + + + + + Значение показания ПУ, выраженное в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + Кем внесено + + + + + Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином + + + + + + + + + Последние полученные показания (электрическая энергия) и сведения о ПУ (коэфф. трансформации и ЕИ). В зависимости от количества показаний, заданных при создании ПУ, определяется его вид по количеству тарифов + + + + + + + Коэффициент трансформации + + + + + + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Обязателен для заполнения, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + 245: Киловатт-час + + + + + + + + + + + + Последние полученные показания (электрическая энергия) и изменяемые сведения о ПУ (коэфф. трансформации). В зависимости от количества показаний, заданных при создании ПУ, определяется его вид по количеству тарифов. + + + + + + + Коэффициент трансформации + + + + + + + + + + + + + + + + Данные многотарифного ПУ: коммунальный ресурс, последние полученные показания в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ. Используется при экспорте данных ПУ + + + + + + + Коэффициент трансформации + + + + + + + + + + + + Код единицы измерения показаний ПУ (из расширенного классификатора ОКЕИ). Обязателен для заполнения, если ЕИ показаний ПУ отличается от ЕИ коммунального ресурса по умолчанию + + + + + 245: Киловатт-час + + + + + + + + Значения показаний ПУ, выраженные в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение по тарифу T1 + + + + + Значение по тарифу T2 + + + + + Значение по тарифу T3 + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + + + + + Данные многотарифного ПУ: коммунальный ресурс, последние полученные показания в единицах измерения ПУ и (если отличается) в единицах измерения коммунального ресурса по умолчанию, источник данных о показаниях ПУ. Используется при экспорте данных ПУ + + + + + + + Значения показаний ПУ, выраженные в единицах измерения коммунального ресурса по умолчанию. Заполняется, если ЕИ показаний ПУ отличается от ЕИ КР по умолчанию + + + + + + Значение по тарифу T1 + + + + + Значение по тарифу T2 + + + + + Значение по тарифу T3 + + + + + Единица измерения коммунального ресурса по умолчанию + + + + + + + + Кем внесено + + + + + Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином + + + + + + + + + Сведения о коммунальном ресурсе ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) + + + + + Коммунальный ресурс (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (НСИ 2) + + + + + Код единицы измерения показаний ПУ по КР + + + + + + + + + + + + + + + + + Количество тарифов ПУ (1, 2 или 3). Заполняется только для КР - электроэнергия + + + + + + + + + + + Коэффициент трансформации. Может заполняться только для КР электроэнергия + + + + + + + + + + + + + + Информация об аннулировании (экспорт) + + + + + Причина аннулировани + + + + + + + + + + + + Данные общежития + + + + + + Дом находится в собственности субъекта Российской Федерации и в полном объеме используется в качестве общежития + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + + Тип общежития (заполняется значениями из справочника НСИ 362) + + + + + + + Данные общежития для экспорта + + + + + Дом находится в муниципальной собственности и в полном объеме используется в качестве общежития + + + + + Дом находится в собственности субъекта Российской Федерации и в полном объеме используется в качестве общежития + + + + + Тип общежития (значения из справочника 362) + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-service-async.wsdl new file mode 100644 index 0000000..7fd3059 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-service-async.wsdl @@ -0,0 +1,107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт информации об ОКИ + + + + + + Экспорт списка ОКИ + + + + + + Получить статус запроса + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис управления ОКИ + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-types.xsd new file mode 100644 index 0000000..e52337c --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/infrastructure/hcs-infrastructure-types.xsd @@ -0,0 +1,562 @@ + + + + + + + Импорт информации об ОКИ + + + + + + + + Объект коммунальной инфраструктуры + + + + + + + + Идентификатор ОКИ ГИС ЖКХ + + + + + + + ОКИ + + + + + + + + + + Заполняется только ОМС Удалить ОКИ + + + + + + + + + + + + + + + + + + + Экспорт ОКИ + + + + + + + + Вид ОКИ + + + + + ОКИ только с истекшим сроком управления + + + + + ОКТМО + + + + + Заполняется только ОМС Идентификатор РСО + + + + + + + + + + + Ответ на экспорт ОКИ + + + + + Идентификатор ОКИ + + + + + Реестровый номер в РКИ + + + + + ОКИ + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + + Ресурс + + + + + Ссылка на НСИ "Вид коммунального ресурса" (реестровый номер 2) + + + + + Присоединенная нагрузка, в т.ч.: + + + + + Промышленность + + + + + Социальная сфера + + + + + Население + + + + + + + + + Наименование объекта + + + + + + + + + + Ссылка на НСИ "Основание эксплуатации объекта инфраструктуры" (Реестровый номер 39) + + + + + Основание управления объектом + + + + + + Окончание управления + + + + + Бессрочное управление + + + + + + Заполняется только ОМС Организация, управляющая ОКИ + + + + + Ссылка на НСИ "Вид ОКИ" (реестровый номер 33) + + + + + + + + + Ссылка на НСИ "Вид водозаборного сооружения" (реестровый номер 34) + + + + + Ссылка на НСИ "Тип электрической подстанции" (реестровый номер 37) + + + + + Ссылка на НСИ "Вид электростанции" (реестровый номер 38) + + + + + + Ссылка на НСИ "Вид топлива" (реестровый номер 40) + + + + + Ссылка на НСИ "Тип газораспределительной сети" (реестровый номер 35) + + + + + + + + + + Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + ОКТМО + + + + + Адрес объекта + + + + + Год ввода в эксплуатацию + + + + + + + + + + Признак автономного источника снабжения + + + + + Уровень износа (%) + + + + + + + + + + + + + Характеристики объекта + + + + + + Характеристика сетевого объекта. Значения указываются в единицах измерения в соответствии с полем «Единица измерения мощности и присоединенной нагрузки (ссылка на справочник «ОКЕИ»)» справочника «Вид коммунальной услуги». + + + + + + + + Установленная мощность.Значение указывается в единицах измерения в соответствии с полем "Единица измерения ссылка на справочник «ОКЕИ»" справочника "Вид коммунального ресурса" + + + + + Распологаемая мощность. Значение указывается в единицах измерения в соответствии с полем "Единица измерения ссылка на справочник «ОКЕИ»" справочника "Вид коммунального ресурса" + + + + + + + + + + + Характеристика передачи (транспортировки) коммунальных ресурсов. Значения указываются в единицах измерения в соответствии с полем «Единица измерения мощности и присоединенной нагрузки (ссылка на справочник «ОКЕИ»)» справочника «Вид коммунальной услуги». + + + + + + + + Объем потерь. Значение указывается в единицах измерения в соответствии с полем «Единица измерения (ссылка на справочник «ОКЕИ»)» справочника «Вид коммунальной услуги» + + + + + + + + + + Ссылка на НСИ "Вид теплоносителя" (реестровый номер 41) + + + + + + + + + + Сведения об участках сети + + + + + + Наименование участка + + + + + + + + + + Диаметр(мм) + + + + + + + + + + + Протяженность(км) + + + + + + + + + + + Нуждается в замене(км) + + + + + + + + + + + Износ(%) + + + + + Ссылка на НСИ "Уровень давления газопровода" (реестровый номер 36 ) + + + + + Ссылка на НСИ "Уровень напряжения" (реестровый номер 45 ) + + + + + + + + Число аварий на 100 км сетей + + + + + + + + + + Ссылки на источники/приемники + + + + + + Cсылка на источник Идентификатор ОКИ в ГИС ЖКХ + + + + + Идентификатор ОКИ в ГИС ЖКХ + + + + + + + + + + + + Дополнительная информация + + + + + Документы, подтверждающие соответствие требованиям энергетической эффективности + + + + + + + + + РСО + + + + + + Идентификатор РСО + + + + + Наименование РСО + + + + + + + + На балансе муниципального образования + + + + + + + Текстовое поле 500 + + + + + + + + + + + + + + + текстовое поле 255 + + + + + + + + + + + + + + Номер месяца + + + + + + + + + + + + + + + + + + + + + + + + + + + + + короткое текстовое поле 140 + + + + + + + + Уникальный код объекта инфраструктуры + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-service-async.wsdl new file mode 100644 index 0000000..4e4d44e --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-service-async.wsdl @@ -0,0 +1,216 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_ПИЖФ_ИПП. Импорт плана проверок. + + + + + + ВИ_ПИЖФ_ЭПП. Экспорт плана проверок. + + + + + + ВИ_ПИЖФ_ИП. Импорт проверок. + + + + + + ВИ_ПИЖФ_ЭП. Экспорт проверок. + + + + + + + + + + + + ВИ_ПИЖФ_ЭСП. Экспорт статуса размещения проверок из ЕРП + + + + + + + + + ВИ_ПИЖФ_ИПП. Импорт плана проверок. + + + + + + + + + + + + + + + ВИ_ПИЖФ_ЭПП. Экспорт плана проверок. + + + + + + + + + + + + + + + ВИ_ПИЖФ_ИП. Импорт проверок. + + + + + + + + + + + + + + + ВИ_ПИЖФ_ЭП. Экспорт проверок. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_ПИЖФ_ЭСП. Экспорт статуса размещения проверок из ЕРП + + + + + + + + + + + + + + + + Асинхронный сервис работы с планами проверок и проверками + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-types.xsd new file mode 100644 index 0000000..5bee890 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/inspection/hcs-inspection-types.xsd @@ -0,0 +1,3639 @@ + + + + + + + + + + Год с ограничениями от 1992 до 2030 + + + + + + + + + Дата с ограничениями от 01.01.1992 до 31.12.2030 + + + + + + + + + Дата и время с ограничениями от 00:00 01.01.1992 до 23:59:59 31.12.2030 + + + + + + + + + Статус плана проверок. + + + + + Подписан. + + + + + + + Статус версии плановой проверки. + + + + + Опубликована. + + + + + + + Статус плановой проверки. + + + + + Запланирована. + + + + + Отменена. + + + + + + + + + Статус версии проверки. + + + + + Опубликована. + + + + + + + Статус проверки. + + + + + Выполняется. + + + + + + Завершена. + + + + + Отменена. + + + + + + + + Cтатус размещения проверки в ЕРП + + + + + + + + + + + Статус предписания. + + + + + Не отменено (не отозвано). + + + + + Отменено (отозвано). + + + + + + + + + Статус протокола. + + + + + Не отменен. + + + + + Отменен. + + + + + + + + + Строка не более 30 символов. + + + + + + + + Строка не более 64 символов. + + + + + + + + Строка не более 50 символов. + + + + + + + + Строка не более 255 символов. + + + + + + + + Строка не более 256 символов. + + + + + + + + Строка не более 1024 символов. + + + + + + + + Строка не более 2000 символов. + + + + + + + + Строка не более 2048 символов. + + + + + + + + Строка не более 4000 символов. + + + + + + + + Строка не более 6000 символов. + + + + + + + + Число временных единиц. + + + + + + + + + Порядковый номер. + + + + + + + + Реестровый номер функции органа жилищного надзора в системе «Федеральный реестр государственных и муниципальных услуг»* + + + + + + + + Идентификатор контролирующего органа в системе «Федеральный реестр государственных и муниципальных услуг»* + + + + + + + + + Сведения о физическом лице. + + + + + Фамилия. + + + + + Имя. + + + + + Отчество. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + Сведения о физическом лице. (экспорт) + + + + + Фамилия. + + + + + Имя. + + + + + Отчество. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + Сведения о субъекте проверки для плановой проверки в плане + + + + + Юридическое лицо. + + + + + + + + Место фактического осуществления деятельности. + + + + + Субъект малого предпринимательства + + + + + + + + + + Индивидуальный предприниматель. + + + + + + + + Место фактического осуществления деятельности. + + + + + Субъект малого предпринимательства + + + + + + + + + + + + Сведения о субъекте проверки для плановой проверки в реестре + + + + + Юридическое лицо. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + Индивидуальный предприниматель. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + + + Сведения о субъекте проверки для внеплановой проверки в реестре + + + + + Юридическое лицо. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + Индивидуальный предприниматель. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + Гражданин. + + + + + + + Сведения о субъекте проверки для внеплановой проверки в реестре (экспорт) + + + + + Юридическое лицо. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + Индивидуальный предприниматель. + + + + + + + + Субъект малого предпринимательства + + + + + Место фактического осуществления деятельности. + + + + + Другие физические лица, в отношении которых проводится проверка + + + + + + + + + + Гражданин. + + + + + + + Основные реквизиты плана проверок.(импорт) + + + + + Год плана. + + + + + Признак подписания плана проверок для публикации в ГИС ЖКХ. + + + + + + Не должен быть зарегистрирован в Едином реестре проверок. + + + + + + Должен быть зарегистрирован в Едином реестре проверок. + + + + + Регистрационный номер плана в Едином реестре проверок + + + + + + + + + + + + + + + Плановая проверка (пункт плана проверок) + + + + + Номер проверки в плане + + + + + + + + + + Учетный номер проверки в Едином реестре проверок. Обязательно заполняется, если план должен быть зарегистрирован в Еlдином реестре проверок + + + + + + + + + + Дата присвоения учетного номера проверки. Обязательно заполняется, если план должен быть зарегистрирован в Едином реестре проверок + + + + + Информация об органе контроля + + + + + + Реестровый номер функции органа жилищного надзора в системе «Федеральный реестр государственных и муниципальных услуг» + + + + + ФИО и должность лиц, уполномоченных на проведение проверки + + + + + ФИО и должность экспертов, привлекаемых к проведению проверки + + + + + + + + Субъект проверки. + + + + + Вид осуществления контрольной деятельности. НСИ + + + + + Описание проверки + + + + + + Цель проведения проверки. + + + + + Основание проведения проверки. НСИ "Основание проведения проверки" (реестровый номер 68). + + + + + Дополнительная информация об основаниях проведения проверки. + + + + + Дата окончания последней проверки. + + + + + Месяц начала проверки + + + + + Год начала проверки + + + + + Срок проведения плановой проверки. Должно быть обязательно заполнено хотя бы одно из полей tns:WorkDays или tns:WorkHours + + + + + + рабочих дней. + + + + + + + + + + рабочих часов. + + + + + + + + + + + + + Форма проведеня проверки. НСИ "Форма проведения проверки" (реестровый номер 71). + + + + + Орган государственного надзора (контроля) и/или орган муниципального контроля, с которым проверка проводится совместно. + + + + + Информация о согласовании проведения проверки с органами прокуратуры + + + + + + + + + + Плановая проверка (пункт плана проверок) - экспорт + + + + + Номер проверки в плане + + + + + + + + + + Учетный номер проверки в едином реестре проверок + + + + + + + + + + Дата присвоения учетного номера проверки + + + + + Субъект проверки. + + + + + Информация об органе контроля + + + + + + Реестровый номер функции органа жилищного надзора в системе «Федеральный реестр государственных и муниципальных услуг» + + + + + ФИО и должность лиц, уполномоченных на проведение проверки + + + + + ФИО и должность экспертов, привлекаемых к проведению проверки + + + + + + + + Вид осуществления контрольной деятельности. НСИ + + + + + Описание проверки + + + + + + Цель проведения проверки. + + + + + Основание проведения проверки. НСИ "Основание проведения проверки" (реестровый номер 68). + + + + + Дополнительная информация об основаниях проведения проверки. + + + + + Дата окончания последней проверки. + + + + + Месяц начала проверки + + + + + Год начала проверки + + + + + Срок проведения плановой проверки + + + + + + рабочих дней + + + + + + + + + + рабочих часов (для МСП и МКП) + + + + + + + + + + + + + Форма проведеня проверки. НСИ "Форма проведения проверки" (реестровый номер 71). + + + + + Орган государственного надзора (контроля) и/или орган муниципального контроля, с которым проверка проводится совместно. + + + + + Информация о согласовании проведения проверки с органами прокуратуры + + + + + + + + + + Сведения об изменении проверки (импорт) + + + + + Причина изменения (НСИ 271) + + + + + Номер решения об изменении (обязательно, если «Причина изменения» = «Решение суда» или «Решение уполномоченного органа / вышестоящей организации») + + + + + Дата изменения проверки + + + + + Организация, принявшая решение + + + + + Дополнительная информация + + + + + Прикрепленные файлы + + + + + Электронные документы с открепленной (detached) подписью + + + + + + + Сведения об изменении проверки + + + + + Причина изменения (НСИ 271) + + + + + Номер решения об изменении (обязательно, если «Причина изменения» = «Решение суда» или «Решение уполномоченного органа / вышестоящей организации») + + + + + Дата изменения проверки + + + + + Организация, принявшая решение + + + + + Дополнительная информация + + + + + Прикрепленные файлы + + + + + Электронные документы с открепленной (detached) подписью + + + + + + + Сведения о мероприятии. + + + + + Номер. + + + + + Мероприятие. + + + + + Дополнительная информация. + + + + + + + Место проведения проверки. + + + + + Порядковый номер. + + + + + Тип адреса + +Обязательно к заполнению, если заполнен tns:FIASHouseGuid. + +НСИ "Типы адресов объекта" + + + + + Тип объекта + +Обязательно к заполнению, если заполнен tns:FIASHouseGuid. + +НСИ "Тип объекта проведения ФГИС ЕРП" + + + + + Адрес дома. + + + + + Дополнительная информция. + + + + + + + Результат проверки. + + + + + Вид документа результата проверки. НСИ "Вид документа по результатам проверки" (реестровый номер 64). + + + + + Тип сведений о результатах. + +НСИ "Тип сведений о результатах ФГИС ЕРП". + + + + + Номер документа результата проверки. + + + + + Дата и время составления документа результата проверки. + + + + + Результат проверки. + + + + Нарушений не выявлено. + + + + + + Выявлены нарушения + + + + + Информация о выявленных нарушениях + + + + + + Характер нарушения + + + + + Несоответствие поданных сведений о начале осуществления предпринимательской деятельности + + + + + Положение нарушенного правового акта + + + + + Другие несоответствия поданных сведений + + + + + Список лиц, допустивших нарушение + + + + + + Орган, в который направлены материалы о выявленных нарушениях + + + + + Идентификатор органа, в который направлены материалы о выявленных нарушениях. + +Заполняется, если организация зарегистрирована в Системе + + + + + + Дата направления материалов о выявленных нарушениях в органы государственной власти + + + + + Перечень примененных мер обеспечения производства по делу об административном правонарушении + + + + + Информация о привлечении проверяемых лиц к административной ответственности + + + + + Информация о приостановлении или об аннулировании документов, имеющих разрешительный характер + + + + + Информация об обжаловании решений органа контроля + + + + + + + + + + Дата и время начала проведения проверки. + + + + + Дата окончания проведения проверки. + + + + + Продолжительность проведения проверки. Должно быть обязательно заполнено хотя бы одно из полей tns:Days или tns:Hours + + + + + + Продолжительность проведения проверки, дней + + + + + Продолжительность проведения проверки,часов Обязательно для заполнения , если Вид проверки = внеплановая И указан признак ShouldBeRegistered + + + + + + + + Место проведения проверки + + + + + Тип должностных лиц, уполномоченных на проведение. + +НСИ "Тип уполномоченного лица на проведение проверки ФГИС ЕРП" + + + + + ФИО лиц, проводивших проверку + + + + + Должность лиц, проводивших проверку + + + + + Представители субъекта проверки отсутствовали при проведении проверки + + + + + Тип представителя субъекта проверки. + +НСИ "Тип представителя организации ФГИС ЕРП" + +Обязательно к заполнению, если tns:AbsentRepresentatives не присылается + + + + + ФИО представителей субъекта проверки, присутствовавших при проведении проверки. + +Обязательно к заполнению, если tns:AbsentRepresentatives не присылается + + + + + Должность представителей субъекта проверки, присутствовавших при проведении проверки. + +Обязательно к заполнению, если tns:AbsentRepresentatives не присылается + + + + + Тип адреса места составления акта о проведении проверки. + +НСИ "Типы адресов объекта" + + + + + Место составления документа результата проверки + + + + + Дополнительная информация о результате проверки. + + + + + + + Результат проверки для экспорта + + + + + Вид документа результата проверки. НСИ "Вид документа по результатам проверки" (реестровый номер 64). + + + + + Тип сведений о результатах. + +НСИ "Тип сведений о результатах ФГИС ЕРП". + + + + + Номер документа результата проверки. + + + + + Дата и время составления документа результата проверки. + + + + + Результат проверки. + + + + Нарушений не выявлено. + + + + + + Выявлены нарушения + + + + + Информация о выявленных нарушениях + + + + + + Характер нарушения + + + + + Несоответствие поданных сведений о начале осуществления предпринимательской деятельности + + + + + Положение нарушенного правового акта + + + + + Другие несоответствия поданных сведений + + + + + Список лиц, допустивших нарушение + + + + + Дата направления материалов о выявленных нарушениях в органы государственной власти + + + + + Наименование органа, в который направлены материалы о выявленных нарушениях + + + + + Идентификатор органа, в который направлены материалы о выявленных нарушениях. +Заполняется, если организация зарегистрирована в Системе + + + + + Перечень примененных мер обеспечения производства по делу об административном правонарушении + + + + + Информация о привлечении проверяемых лиц к административной ответственности + + + + + Информация о приостановлении или об аннулировании документов, имеющих разрешительный характер + + + + + Информация об обжаловании решений органа контроля + + + + + + + + + + Дата и время начала проведения проверки. + + + + + Дата окончания проведения проверки. + + + + + Продолжительность проведения проверки + + + + + + Продолжительность проведения проверки, дней + + + + + Продолжительность проведения проверки,часов + + + + + + + + Место проведения проверки + + + + + Тип должностных лиц, уполномоченных на проведение. + +НСИ "Тип представителя организации ФГИС ЕРП" + + + + + ФИО лиц, проводивших проверку + + + + + Должность лиц, проводивших проверку + + + + + Представители субъекта проверки отсутствовали при проведении проверки + + + + + Тип представителя субъекта проверки. + +НСИ "Тип уполномоченного лица на проведение проверки ФГИС ЕРП" + + + + + ФИО представителей субъекта проверки, присутствовавших при проведении проверки + + + + + Должность представителей субъекта проверки, присутствовавших при проведении проверки + + + + + Тип адреса места составления акта о проведении проверки. + +НСИ "Типа адреса в инспектировании" + + + + + Место составления документа результата проверки + + + + + Дополнительная информация о результате проверки. + + + + + + + Предписание. + + + + + Номер документа. + + + + + Дата документа. + + + + + Срок исполнения требований + + + + + Адрес дома. + + + + + Краткая информация. + + + + + Сведения об исполнении True - исполнено, False - не исполнено + + + + + Фактическая дата исполнения требований. Обязательно для заполнения, если IsFulfiledPrecept = True + + + + + + Вложение. + + + + + Электронный документ с открепленной (detached) подписью + + + + + + + + Предписание (экспорт) + + + + + Номер документа. + + + + + Дата документа. + + + + + Срок исполнения требований + + + + + Адрес дома. + + + + + Краткая информация. + + + + + Сведения об исполнении True - исполнено, False - не исполнено + + + + + Фактическая дата исполнения требований + + + + + + Вложение. + + + + + Электронный документ с открепленной (detached) подписью + + + + + + + + Протокол об административном правонарушении. + + + + + Номер протокола. + + + + + Дата составления протокола. + + + + + Краткая информация. + + + + + Сведения об исполнении True - исполнено, False - не исполнено + + + + + Материалы по делу об административном правонарушении переданы в суд + + + + + + + Наименование суда + + + + + Дата +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - дата регистрации. +*В случае направления материалов почтовым отправлением - дата отправки. +*В случае направления материалов с сопроводительным письмом - дата данного письма. + + + + + Номер +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - присвоенный входящий номер. +*В случае направления материалов почтовым отправлением - номер отправления либо реестровый номер отправителя. +*В случае направления материалов с сопроводительным письмом - исходящий номер данного письма. + + + + + + + + Фактическая дата исполнения + + + + + + Вложение. + + + + + Электронный документ проверки с открепленной (detached) подписью + + + + + + + + Протокол об административном правонарушении. (экспорт) + + + + + Номер протокола. + + + + + Дата составления протокола. + + + + + Краткая информация. + + + + + Сведения об исполнении True - исполнено, False - не исполнено + + + + + Материалы по делу об административном правонарушении переданы в суд + + + + + + Наименование суда + + + + + Дата +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - дата регистрации. +*В случае направления материалов почтовым отправлением - дата отправки. +*В случае направления материалов с сопроводительным письмом - дата данного письма. + + + + + Номер +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - присвоенный входящий номер. +*В случае направления материалов почтовым отправлением - номер отправления либо реестровый номер отправителя. +*В случае направления материалов с сопроводительным письмом - исходящий номер данного письма. + + + + + + + + Фактическая дата исполнения + + + + + + Вложение. + + + + + Электронный документ проверки с открепленной (detached) подписью + + + + + + + + Протокол. Добавить сведения о передаче материалов по делу об административном правонарушении в суд. + + + + + Наименование суда + + + + + Дата +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - дата регистрации. +*В случае направления материалов почтовым отправлением - дата отправки. +*В случае направления материалов с сопроводительным письмом - дата данного письма. + + + + + Номер +*В случае передачи материалов по делу об административном правонарушении в канцелярию суда - присвоенный входящий номер. +*В случае направления материалов почтовым отправлением - номер отправления либо реестровый номер отправителя. +*В случае направления материалов с сопроводительным письмом - исходящий номер данного письма. + + + + + + + Сведения об отмене (импорт) + + + + + Причина отмены (НСИ 271) + + + + + Дата отмены + + + + + Номер решения об отмене. + + + + + + + + + + Организация, принявшая решение + + + + + Дополнительная информация + + + + + Документы по отмене. Поле является обязательным, если причина отмены = Решение суда + + + + + Электронные документы по отмене с открепленной (detached) подписью + + + + + + + Сведения об отмене + + + + + Причина отмены (НСИ 271) + + + + + Дата отмены + + + + + Номер решения об отмене. + + + + + + + + + + Организация, принявшая решение + + + + + Дополнительная информация + + + + + Документы по отмене. + + + + + Электронные документы по отмене с открепленной (detached) подписью + + + + + + + Cведения об исполнении предписания + + + + + Фактическая дата исполнения требований + + + + + + + Cведения об исполнении протокола + + + + + Фактическая дата исполнения + + + + + + + Сведения о результатах проверки + + + + + Информация о результате проверки. + + + + + + Сведения о результате проверки. + + + + + + Другие документы по итогам проверки. + + + + + Электронный документ с открепленной (detached) подписью + + + + + + + + + Информация об ознакомлении с результатами проверки + + + + + + Не ознакомлен + + + + + Отказ от ознакомления + + + + ФИО должностного лица, отказавшегося от ознакомления с актом проверки + + + + + + Ознакомлен + + + + Дата ознакомления + + + + + Наличие подписи + + + + + ФИО должностного лица, ознакомившегося с актом проверки + + + + + + + + + + + Сведения о результатах проверки для экспорта + + + + + Информация о результате проверки. + + + + + + Сведения о результате проверки. + + + + + + Другие документы по итогам проверки. + + + + + Электронные документы проверки с открепленной (detached) подписью + + + + + + + + + Информация об ознакомлении с результатами проверки + + + + + + Не ознакомлен + + + + + Отказ от ознакомления + + + + ФИО должностного лица, отказавшегося от ознакомления с актом проверки + + + + + + Ознакомлен + + + + Дата ознакомления + + + + + Наличие подписи + + + + + ФИО должностного лица, ознакомившегося с актом проверки + + + + + + + + + + + Информация о регистрации в ЕРП + + + + + Не должен быть зарегистрирован в Едином реестре проверок. + + + + + + Должен быть зарегистрирован в Едином реестре проверок. + + + + + Регистрационный номер плана в едином реестре проверок + + + + + + + + + + + + + + Проверка. + + + + + Общая информация о проверке + + + + + + + Проверка не должна быть зарегистрирована в Едином реестре проверок. + + + + + + Проверка должна быть зарегистрирована в Едином реестре проверок. + + + + + Учетный номер проверки в Едином реестре проверок. + + + + + + + + + + Дата присвоения учетного номера проверки + + + + + Опубликовать в открытой части ЕРП? + +(Выполняется публикация проверки в открытой части ЕРП) +Публикация в ЕРП доступна для следующих сценариев: +1. Создание информации о проверке +2. Изменение информации о проверке + +Если не заполнено при первичном размещении, то в открытой части ЕРП проверка не будет размещена. + +Если указано "true" при первичном размещении или при изменении, то проверка будет размещена в открытой части ЕРП. + +Если значение не заполнено при изменении (ранее было указано "true"), то проверка снимается с публикации в ЕРП. + + + + + + + Вид проверки, информация о субъекте проверки + + + + + + Плановая проверка. + + + + + + Субъект проверки (ЮЛ, ИП). + + + + + + + + Внеплановая проверка. + + + + + + Основание регистрации проверки в ФГИС "ЕРП". НСИ (реестровый номер 167). Обязательно заполняется, если для проверки прислано ShouldBeRegistered + + + + + Субъект проверки (ЮЛ, ИП, Гражданин). + + + + + + + + + + + Вид осуществления контрольной деятельности. НСИ + + + + + Форма проведения проверки. НСИ "Форма проведения проверки" (реестровый номер 71). + + + + + Номер распоряжения (приказа). Обязательно для заполнения, если Вид проверки = «Внеплановая» и присылается tns:ShouldBeRegistered + + + + + Дата утверждения распоряжения (приказа). Обязательно для заполнения, если Вид проверки = «Внеплановая» и присылается tns:ShouldBeRegistered + + + + + + + + Информация об органе контроля + + + + + + Реестровый номер функции органа жилищного надзора в системе «Федеральный реестр государственных и муниципальных услуг» + + + + + Идентификатор контролирующего органа в системе «Федеральный реестр государственных и муниципальных услуг». Доступно и обязательно для заполнения, только если для проверки присылается ShouldBeRegistered + + + + + + + + + + ФИО и должность лиц, уполномоченных на проведение проверки + + + + + + Тип лица, уполномоченного на проведение проверки. + +НСИ "Тип уполномоченного лица на проведение проверки ФГИС ЕРП" + + + + + Фамилия, имя, отчество + + + + + Должность + + + + + + + + ФИО и должность экспертов, привлекаемых к проведению проверки + + + + + + + + Информация об уведомлении + + + + + + Уведомление не требуется + + + + + Уведомление требуется, не отправлено + + + + + Уведомление требуется, отправлено + + + + Дата уведомления + + + + + Способ уведомления о проведении проверки + + + + + + + + + Сведения о проверке + + + + + + Основание проведения проверки. НСИ "Основание проведения проверки" (реестровый номер 68). + + + + + Предписание, на основании которого проводится проверка. Доступно для заполнения, только при следующих условиях: В качестве "Основание проведения проверки" указано одно из следующих: - "Истечение срока исполнения юридическим лицом, индивидуальным предпринимателем ранее выданного предписания об устранении выявленного нарушения обязательных требований и (или) требований, установленных муниципальными правовыми актами"; - "Истечение срока исполнения лицензиатом ранее выданного лицензирующим органом предписания об устранении выявленного нарушения лицензионных требований" +- "Истечение срока исполнения физическим лицом ранее выданного предписания об устранении выявленного нарушения обязательных требований и (или) требований, установленных правовыми актами" +- "Наличие ходатайства лицензиата о проведении лицензирующим органом внеплановой выездной проверки в целях установления факта досрочного исполнения предписания лицензирующего органа" ИЛИ для "Предмет проверки" указано одно из следующих: +- "Выполнение предписаний органов государственного контроля (надзора), органов муниципального контроля"; +- "Принимаемые лицензиатом меры по исполнению предписаний об устранении выявленных нарушений лицензионных требований" + + + + + + Идентификатор предписания в ГИС ЖКХ + + + + + + + + Связанная проверка. + + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + + + + Цель проведения проверки с реквизитами документов основания. + + + + + Дополнительная информация об основаниих проведения проверки. + + + + + Задачи проведения проверки. + + + + + Предмет проверки. НСИ "Предмет проверки" (реестровый номер 69). + + + + + Срок проведения проверки с (включительно) - дата начала проведения проверки. + + + + + Срок проведения проверки по (включительно) - дата окончания проведения проверки. +Обязательно для заполнения для внеплановой проверки, субъектом которой является ЮЛ или ИП. + + + + + Срок проведения проверки. Должно быть обязательно заполнено хотя бы одно из полей tns:WorkDays или tns:WorkHours, если субъектом проверки является ЮЛ или ИП. + + + + + + Рабочих дней. Продолжительность проведения проверки, дней + + + + + + + + Рабочих часов (для МСП и МКП). + + + + + + + + + + + Орган государственного надзора (контроля) и/или орган муниципального контроля, с которым проверка проводится совместно. + + + + + Информация о согласовании проведения проверки с органами прокуратуры Обязательно для заполнения, если у проверки в BaseURIRegistration (Основание регистрации проверки в ФГИС "ЕРП") = "Заявление КО" + + + + + Дополнительная информация о проверке. + + + + + Причины невозможности проведения проверки + + + + + + + + Информация о мероприятиях + + + + + + Мероприятие проверки. + + + + + Место проведения проверки. + + + + + + + + Сведения о результатах проверки + + + + + Документы проверки + + + + + Электронные документы проверки с открепленной (detached) подписью + + + + + + + Проверка (экспорт) + + + + + Общая информация о проверке + + + + + + + Проверка не должна быть зарегистрирована в Едином реестре проверок. + + + + + + Проверка должна быть зарегистрирована в Едином реестре проверок. + + + + + Учетный номер проверки в едином реестре проверок + + + + + + + + + + Дата присвоения учетного номера проверки + + + + + Опубликовать в открытой части ЕРП? + + + + + + + Вид проверки, информация о субъекте проверки + + + + + + Плановая проверка. + + + + + + Субъект проверки (ЮЛ, ИП). + + + + + + + + Внеплановая проверка. + + + + + + Основание регистрации проверки в ФГИС "ЕРП". НСИ (реестровый номер 167). + + + + + Субъект проверки (ЮЛ, ИП, Гражданин). + + + + + + + + + + + Вид осуществления контрольной деятельности. НСИ + + + + + Форма проведения проверки. НСИ "Форма проведения проверки" (реестровый номер 71). + + + + + Номер распоряжения (приказа). + + + + + Дата утверждения распоряжения (приказа). + + + + + + + + Информация об органе контроля + + + + + + Реестровый номер функции органа жилищного надзора в системе «Федеральный реестр государственных и муниципальных услуг» + + + + + Идентификатор контролирующего органа в системе «Федеральный реестр государственных и муниципальных услуг». + + + + + + + + + + ФИО и должность лиц, уполномоченных на проведение проверки + + + + + + Тип лица, уполномоченного на проведение проверки. + +НСИ "Тип уполномоченного лица на проведение проверки ФГИС ЕРП" + + + + + Фамилия, имя, отчество + + + + + Должность + + + + + + + + ФИО и должность экспертов, привлекаемых к проведению проверки + + + + + + + + Информация об уведомлении + + + + + + Уведомление не требуется + + + + + Уведомление требуется, не отправлено + + + + + Уведомление требуется, отправлено + + + + Дата уведомления + + + + + Способ уведомления о проведении проверки + + + + + + + + + Сведения о проверке + + + + + + Основание проведения проверки. НСИ "Основание проведения проверки" (реестровый номер 68). + + + + + Цель проведения проверки с реквизитами документов основания. + + + + + Дополнительная информация об основаниих проведения проверки. + + + + + Задачи проведения проверки. + + + + + Предмет проверки. НСИ "Предмет проверки" (реестровый номер 69). + + + + + Предписание, на основании которого проводится проверка + + + + + + Идентификатор предписания в ГИС ЖКХ + + + + + + + + Связанная проверка + + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + + + + Срок проведения проверки с (включительно) - дата начала проведения проверки. + + + + + Срок проведения проверки по (включительно) - дата окончания проведения проверки. + + + + + Срок проведения проверки. + + + + + + Рабочих дней. + + + + + + + + Рабочих часов (для МСП и МКП). + + + + + + + + + + + Орган государственного надзора (контроля) и/или орган муниципального контроля, с которым проверка проводится совместно. + + + + + Информация о согласовании проведения проверки с органами прокуратуры + + + + + Дополнительная информация о проверке. + + + + + Причины невозможности проведения проверки + + + + + + + + Информация о мероприятиях + + + + + + Мероприятие проверки. + + + + + Место проведения проверки. + + + + + + + + Сведения о результатах проверки + + + + + + + + Информация об отмене результата + + + + + + + + + + Информация об изменении провери + + + + + + + + + + Информция об отмене проверки. + + + + + Документы проверки + + + + + Электронные документы проверки с открепленной (detached) подписью + + + + + + + Информация о согласовании проведения проверки с органами прокуратуры + + + + + Нет информации о согласовании + + + + + + + Согласована + + + + + Отказ в согласовании + + + + + + + Тип документа о согласовании проведения проверки. + +Обязательно к заполнению, если заполнен Agreed. + +НСИ "Тип документа о согласовании проведения проверки" + + + + + Тип основания в отказе проведения проверки. + +Обязательно к заполнению, если заполнен Rejected. + +НСИ "Тип основания в отказе проведения проверки ФГИС ЕРП". + + + + + Номер приказа о согласовании (отказе) в проведении проверки + + + + + Дата приказа о согласовании (отказе) в проведении проверки + + + + + Дата вынесения решения о согласовании (отказе) в проведении проверки + + + + + Место вынесения решения о согласовании (отказе) в проведении проверки + + + + + Должность подписанта + + + + + ФИО подписанта + + + + + + + + + Информация о согласовании проведения проверки с органами прокуратуры (экспорт) + + + + + Нет информации о согласовании + + + + + + + Согласована + + + + + Отказ в согласовании + + + + + + + Тип документа о согласовании проведения проверки. + +Обязательно к заполнению, если заполнен Agreed. + +НСИ "Тип документа о согласовании проведения проверки" + + + + + Тип основания в отказе проведения проверки. + +Обязательно к заполнению, если заполнен Rejected. + +НСИ "Тип основания в отказе проведения проверки". + + + + + Номер приказа о согласовании (отказе) в проведении проверки + + + + + Дата приказа о согласовании (отказе) в проведении проверки + + + + + Дата вынесения решения о согласовании (отказе) в проведении проверки + + + + + Место вынесения решения о согласовании (отказе) в проведении проверки + + + + + Должность подписанта + + + + + ФИО подписанта + + + + + + + + + + Запрос на импорт плана проверок. + + + + + + + + Импорт плана проверок и плановых проверок + + + + + + + + + + Идентификатор плана проверок в ГИС ЖКХ. + + + + + Добавляемый план проверок. + + + + + + Действия с плановыми проверками в плане проверок + + + + + + + + Идентификатор плановой проверки в ГИС ЖКХ. + + + + + + + + Создание / изменение плановой проверки + + + + + Информация об изменении плановой провери (обязательно заполняется только при изменении плановой проверки в подписанном плане). + + + + + + Отмена плановой проверки. + + + + + Аннулирование плановой проверки. + + + + + + + + Проверка уникальности корневого идентификатора плановой проверки в рамках запроса + + + + + + + + + + + + + + + + Проверка уникальности транспортного гуида в рамках запроса + + + + + + + Проверка уникальности идентификатора плана проверок в рамках запроса + + + + + + + + + Запрос на экспорт планов проверок. + + + + + + + + Начальный год (включительно). Если не заполнено, то без ограничения начального года. + + + + + Конечный год (включительно). Если не заполнено, то без ограничения конечного года. + + + + + + + + + + + Возвращаемый план проверок. + + + + + Идентификатор плана проверок. + + + + + Реестровый номер плана проверок. + + + + + Статус плана проверок: +Signed - Подписан + + + + + План проверок. + + + + + + + + Год плана. + + + + + + + + + + Плановая проверка. + + + + + + Корневой идентификатор плановой проверки. + + + + + Реестровый номер плановой проверки. + + + + + Статус плановой проверки. +Допустимые значения: +Planned - Запланировна +Cancelled - Отменена +Finished - Завершена +Annulled - Аннулирована + + + + + Статус версии плановой проверки. +Active - Действующая + + + + + Плановая проверка. + + + + + + + + Информация об изменении плановой провери + + + + + Информация об отмене проверки. + + + + + + + + + + + + + + + + Запрос на импорт проверок. + + + + + + + + Импорт проверки + + + + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + + Отправить в ЕРП. (Выполняется отправка в ЕРП всех ранее не размещенных в ЕРП сведений о проверке и её результате) Отправка в ЕРП доступна для следующих сценариев: 1. Добавление проверки 2. Изменение проверки 3. Добавление результата проверки 4. Отмена результата проверки 5. Изменение результата проверки 6. Создание предписания 7. Исполнение предписания 8. Удаление предписания Для остальных сценариев отправка в ЕРП не осуществляется, значение признака будет проигнорировано Системой. + + + + + + + + Проверка. Не заполняется при импорте предписаний и протоколов к существующей проверке + + + + + Добавление сведений о результатах проверки. Заполняется, если сведения о самой проверке не изменяются + + + + + + Информация об изменении проверки. + + + + + Предписание + + + + + + + + Идентификатор предписания в ГИС ЖКХ. Заполняется только при отмене или исполнении предписания + + + + + + + Создание предписания + + + + + Отмена (отзыв) предписания + + + + + Сведения об исполнении предписания + + + + + Удаление предписания + + + + + + + + Проверка уникальности гуида предписания в рамках запроса + + + + + + + + Протокол + + + + + + + + Идентификатор протокола в ГИС ЖКХ. Заполняется: +*при отмене/исполнении протокола; +*при добавлении/ изменении/ удаления сведений о передаче материалов по делу об административном правонарушении в суд. + + + + + + + Создание протокола + + + + + Протокол. Добавить сведения о передаче материалов по делу об административном правонарушении в суд. + + + + + Протокол. Удалить сведения о передаче материалов по делу об административном правонарушении в суд. + + + + + Отмена протокола + + + + + Сведения об исполнении протокола + + + + + Удаление протокола + + + + + + + + Проверка уникальности гуида протокола в рамках запроса + + + + + + + + + Отмена проверки. + + + + + Аннулирование проверки. + + + + + Информация об отмене результата. + + + + + Аннулировать результат проверки. + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора проверки в рамках запроса + + + + + + + + + Запрос на экспорт проверок. + +Доступны версии 11.2.0.1, 13.1.1.2 и 13.1.9.1 + + + + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + Реестровый номер проверки. + + + + + + Начало периода даты начала проведения проверки (включительно). + + + + + Конец периода даты начала проведения проверки (включительно). + + + + + + + + + + + + Экспортируемая проверка. + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + Реестровый номер проверки. + + + + + Статус проверки: Planned - Запланировна Assigned - Назначена +Cancelled - Отменена +Finished - Завершена +Annulled - Аннулирована + + + + + Статус версии проверки +Active - Действующая + + + + + У проверки установлен признак "Аннулирован результат" + + + + + Проверка. + + + + + Предписание. + + + + + + Идентификатор предписания в ГИС ЖКХ. + + + + + Статус предписания + + + + + Реквизиты предписания. + + + + + Сведения об отмене предписания. + + + + + + + + Протокол. + + + + + + Идентификатор протокола в ГИС ЖКХ. + + + + + Статус протокола. + + + + + Реквизиты протокола. + + + + + Сведения об отмене протокола. + + + + + + + + + + + Экспорт статуса размещения проверки в ЕРП + + + + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + Учетный номер проверки в ЕРП. + + + + + + + + + + + Статус размещения проверки в ЕРП + + + + + Идентификатор проверки в ГИС ЖКХ. + + + + + + Проверка не должна быть зарегистрирована в Едином реестре проверок. + + + + + + Проверка должна быть зарегистрирована в Едином реестре проверок. + + + + + Учетный номер проверки. + + + + + Дата присвоения учетного номера проверки + + + + + Статус размещения проверки в ЕРП: Placed - Размещена NotPlaced - Не размещена Sent - Отправлена NotSent - Не отправлена + + + + + + + + + + + + + Учетный номер проверки получен из ЕРП. Факт подтверждения ГИС ЖКХ наличия успешно размещенной проверки в ЕРП с указанным учетным номером + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + Статус размещения проверки в ЕРП + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-account-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-account-base.xsd new file mode 100644 index 0000000..b5eb12b --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-account-base.xsd @@ -0,0 +1,83 @@ + + + + + + + + Идентификатор лицевого счета + + + + + Номер лицевого счета/Иной идентификатор плательщика + + + + + + + + + + + + Основание для обязательств по оплате + + + + + Номер договора + + + + + Дата заключения договора + + + + + Срок окончания действия договора + + + + + + + Единый лицевой счет + + + + + + + + + + Расчетный счет + + + + + + + + + + Счет + + + + + + + + Идентификатор жилищно-коммунальной услуги + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-base.xsd new file mode 100644 index 0000000..03a4c36 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-base.xsd @@ -0,0 +1,868 @@ + + + + + + + Строка не более 2000 символов. + + + + + + + + Строка не более 1500 символов. + + + + + + + + Строка не более 300 символов. + + + + + + + + Скалярный тип. Строка не более 255 символов. + + + + + + + + + Скалярный тип. Строка не более 100 символов. + + + + + + + + Скалярный тип. Строка не более 250 символов. + + + + + + + + Скалярный тип. Строка не более 500 символов. + + + + + + + + Строка не более 60 символов. + + + + + + + + Текстовое поле 2000 + + + + + + + + Непустая строка + + + + + + + + + + Базовый тип бизнес-сообщения с подписью + + + + + + + + + Заголовок запроса + + + + + + + + + Идентификатор поставщика данных + + + + + Идентификатор зарегистрированной организации + + + + + Информация о физическом лице + + + + + + Идентификатор физического лица, зарегистрированного в ГИС ЖКХ + + + + + + СНИЛС + + + + + + + + + + Документ, удостоверяющий личность + + + + + + Вид документа, удостоверяющего личность (НСИ №95) + + + + + + Код записи справочника + + + + + + + + + + + Идентификатор записи в соответствующем справочнике ГИС ЖКХ + + + + + Значение + + + + + + + + + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + + + + + + + + + Используется подпись Оператора ИС + + + + + Сведения об иной ИС, с использованием которой была сформирована информация (589/944/,п.164). Только для запросов размещения информации. + + + + + + + + + + Заголовок запроса + + + + + + + + + + + + + + Заголовок ответа + + + + + + + + + + Базовый тип ответа на запрос создания, редактирования, удаления + + + + + + Транспортный идентификатор, определенный постащиком информации + + + + + Идентификатор объекта в ГИС ЖКХ + + + + + + + + Идентификатор объекта в ГИС ЖКХ + + + + + Дата модификации + + + + + Уникальный номер + + + + + + + + + + Базовый тип заголовка + + + + + Дата отправки пакета + + + + + Идентификатор сообщения + + + + + + + Вложение + + + + + + Идентификатор сохраненного вложения + + + + + + + + Вложение + + + + + Наименование вложения + + + + + + + + + + + Описание вложения + + + + + + + + + + + + Хэш-тег вложения по алгоритму ГОСТ в binhex. + +Элемент обязателен в запросах импорта + + + + + + + + + + + + Вложение + + + + + Наименование вложения + + + + + + + + + + + Описание вложения + + + + + + + + + + + + Хэш-тег вложения по алгоритму ГОСТ в binhex + + + + + + + + + + + + Базовый тип, описывающий вложение с открепленными (detached) подписями. В сервисах ГИС ЖКХ, использущих тип SignedAttachmentType, может быть наложено ограничение на максимальное количесво элементов в блоке Signature (см. контроль INT002039). + + + + + Вложение + + + + + Открепленная (detached) подпись + + + + + + + Элемент Fault (для параметра Fault в операции) + + + + Базовый тип для fault-ошибки + + + + + + + + + + + Описание ошибок контролей или бизнес-процесса. Элемент не заполянется. Оставлен для совместимости + + + + + + Базовый тип ошибки контроля или бизнес-процесса + + + + + Код ошибки + + + + + Описание ошибки + + + + + StackTrace в случае возникновения исключения + + + + + + + Версия элемента, начиная с которой поддерживается совместимость + + + + + + Возврат квитанции приема сообщения + + + + + + Квитанция + + + + + + Идентификатор сообщения, присвоенный ГИС ЖКХ + + + + + Идентификатор сообщения, присвоенный поставщиком + + + + + + + + + + + Запрос статуса отправленного сообщения + + + + + + Идентификатор сообщения, присвоенный ГИС ЖКХ + + + + + + + + Запрос списка обработанных сообщений + + + + + + Массив идентификаторов сообщений, присвоенных ГИС ЖКХ + + + + + + + + Ответ на запрос списка обработанных сообщений + + + + + + + + Список идентификаторов сообщений, присвоенный ГИС ЖКХ + + + + + + + + + + Базовый тип ответа на запрос статуса + + + + + + + Статус обработки + + + + + Идентификатор сообщения, присвоенный ГИС ЖКХ + + + + + + + + + Результат выполнения C_UD + + + + + Идентификатор создаваемой/изменяемой сущности + + + + + Транспортный идентификатор + + + + + + Операция выполнена успешно + + + + Уникальный реестровый номер + + + + + Дата модификации + + + + + + Описание ошибки + + + + + + + + + + + + + Статус обработки сообщения в асинхронном обмене (1- получено; 2 - в обработке; 3- обработано) + + + + + + + + + + + Транспортный идентификатор + + + + + GUID-тип. + + + + + + + + Дата модификации объекта + + + + + Тип, описывающий год + + + + + + + + Тип, описывающий месяц + + + + + + + + + Месяц + + + + + Год + + + + + + + + + + + Определенный месяц определенного года + + + + + + + + + Временной период (обе даты обязательны) + + + + + Начало периода + + + + + Конец периода + + + + + + + Открытый временной период (даты необязательны) + + + + + Начало периода + + + + + Конец периода + + + + + + + Тип объема + + + + + + + + + + Ссылка на субъект РФ (ФИАС) + + + + + Код региона (ФИАС) + + + + + + + + + + Полное наименование + + + + + + + + + + + + Ссылка на ОКТМО + + + + + Код по ОКТМО + + + + + + + + + + + Полное наименование + + + + + + + + + + + + + + + + + Код ОКЕИ + + + + + + Идентификатор зарегистрированной организации + + + + + + Базовый тип документа ОЧ + + + + + Наименование документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата принятия документа органом власти + + + + + Вложение + + + + + + + Сведения об иной ИС, с использованием которой была сформирована информация (589/944/,п.164) + + + + + + Наименование ИС + + + + + Наименование Оператора ИС + + + + + + + + Код по ОКТМО + + + + + + + + + Код по ОКТМО + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-bills-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-bills-base.xsd new file mode 100644 index 0000000..e090955 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-bills-base.xsd @@ -0,0 +1,94 @@ + + + + + + + Сумма + + + + + + + + + + Неотрицательная сумма + + + + + + + + + + Сумма + + + + + + + + + Неотрицательная маленькая сумма + + + + + + + + + + + Маленькая сумма + + + + + + + + + + Неотрицательная сумма + + + + + + + + + + + Сумма в копейках + + + + + + Номер платежного документа, по которому внесена плата, присвоенный такому документу исполнителем в целях осуществления расчетов по внесению платы + + + + + + + + + + + + Идентификатор платежного документа + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-individual-registry-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-individual-registry-base.xsd new file mode 100644 index 0000000..76244dc --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-individual-registry-base.xsd @@ -0,0 +1,158 @@ + + + + + + + + Удостоверение личности + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата выдачи документа + + + + + + + + Физическое лицо + + + + + + + + + + + + + + + + + + СНИЛС + + + + + + + + + + + Фамилия + + + + + + + + + + + Имя + + + + + + + + + + + Отчество + + + + + + + + + + + ФИО + + + + + + + + + + ФИО + + + + + + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + Дата рождения + + + + + Место рождения + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-metering-device-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-metering-device-base.xsd new file mode 100644 index 0000000..2bc1ea6 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-metering-device-base.xsd @@ -0,0 +1,160 @@ + + + + + + + + Идентификатор ПУ + + + + + + Показание ПУ. Значение (15 до запятой, 7 после) + + + + + + + + Коммунальный ресурс и показание ПУ для однотарифного ПУ. Используется при импорте показаний поверки и фиксации показаний ПУ при его замене, а также, как базовый класс для других типов + + + + + Коммунальный ресурс (тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (НСИ 2) + + + + + Значение + + + + + + + Данные однотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ. Используется при экспорте данных ПУ + + + + + + + Кем внесено + + + + + Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином + + + + + + + + + Данные однотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ, время внесения в Систему. Используется при экспорте показаний ПУ + + + + + + + Дата и время внесения в Систему + + + + + + + + + Показания ПУ электрической энергии. Используется при импорте показаний поверки и фиксации показаний ПУ при его замене, а также, как базовый класс для других типов + + + + + Значение по тарифу T1 + + + + + Значение по тарифу T2 + + + + + Значение по тарифу T3 + + + + + + + Данные многотарифного ПУ: коммунальный ресурс, последние полученные показания в единицах измерения ПУ, источник данных о показаниях ПУ. Используется при экспорте данных ПУ + + + + + + + Кем внесено + + + + + Идентификатор организации, которая ввела показания в Систему. Не заполняется, если показания были введены гражданином + + + + + + + + + Данные многотарифного ПУ: коммунальный ресурс, последнее полученное показание в единицах измерения ПУ, источник данных о показаниях ПУ, время внесения в Систему. Используется при экспорте показаний ПУ + + + + + + + Дата и время внесения в Систему + + + + + + + + + Объемы потребленных ресурсов по ПУ (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) + + + + + Коммунальный ресурс (электроэнергия, тепловая энергия, газ, горячая вода, холодная вода, сточные бытовые воды) (НСИ 2) + + + + + Объем по тарифу T1 + + + + + Объем по тарифу T2 + + + + + Объем по тарифу T3 + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-nsi-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-nsi-base.xsd new file mode 100644 index 0000000..7063a0c --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-nsi-base.xsd @@ -0,0 +1,428 @@ + + + + + + + + + + + + + Ссылка на справочник + + + + + Код записи справочника + + + + + Идентификатор записи в соответствующем справочнике ГИС ЖКХ + + + + + Значение + + + + + + + + + + + + Скалярный тип. Наименование справочника. Строка не более 200 символов. + + + + + + + + Скалярный тип. Реестровый номер справочника. Код не более 10 символов. + + + + + + + + Составной тип. Наименование, дата и время последнего изменения справочника. + + + + + Реестровый номер справочника. + + + + + Наименование справочника. + + + + + Дата и время последнего изменения справочника. + + + + + + + Перечень справочников с датой последнего изменения каждого из них. + + + + + Дата и время формирования перечня справочников. + + + + + Наименование, дата и время последнего изменения справочника. + + + + + + + + Данные справочника. + + + + + Реестровый номер справочника. + + + + + Дата и время формирования данных справочника. + + + + + Элемент справочника верхнего уровня. + + + + + + + Составной тип. Элемент справочника. + + + + + Код элемента справочника, уникальный в пределах справочника. + + + + + Глобально-уникальный идентификатор элемента справочника. + + + + + + Дата и время последнего изменения элемента справочника (в том числе создания). + + + + + + Дата начала действия значения + + + + + Дата окончания действия значения + + + + + + + Признак актуальности элемента справочника. + + + + + Наименование и значение поля для элемента справочника. + + + + + Дочерний элемент. + + + + + + + Составной тип. Наименование и значение поля для элемента справочника. Абстрактный тип. + + + + + Наименование поля элемента справочника. + + + + + + + Составной тип. Наименование и значение поля типа "Строка" для элемента справочника. + + + + + + + Значение поля элемента справочника типа "Строка". + + + + + + + + + Составной тип. Наименование и значение поля типа "Да/Нет" для элемента справочника. + + + + + + + Значение поля элемента справочника типа "Да/Нет". + + + + + + + + + Составной тип. Наименование и значение поля типа "Вещественное" для элемента справочника. + + + + + + + Значение поля элемента справочника типа "Вещественное". + + + + + + + + + Составной тип. Наименование и значение поля типа "Дата" для элемента справочника. + + + + + + + Значение поля элемента справочника типа "Дата". + + + + + + + + + Составной тип. Наименование и значение поля типа "Целое число" для элемента справочника. + + + + + + + Значение поля элемента справочника типа "Целое число". + + + + + + + + + Составной тип. Наименование и значение поля типа "Перечислимый" для элемента справочника. + + + + + + + Запись элемента справочника типа "Перечислимый". + + + + + + Код поля элемента справочника типа "Перечислимый". + + + + + Значение поля элемента справочника типа "Перечислимый". + + + + + + + + + + + + Составной тип. Наименование и значение поля типа "Ссылка на справочник" для элемента справочника. + + + + + + + Ссылка на справочник. + + + + + + Реестровый номер справочника. + + + + + + + + + + + + + Составной тип. Наименование и значение поля типа "Ссылка на элемент внутреннего справочника" для элемента справочника. + + + + + + + Ссылка на элемент внутреннего справочника. + + + + + + Реестровый номер справочника. + + + + + Ссылка на элемент справочника. + + + + + + + + + + + + Составной тип. Наименование и значение поля типа "Ссылка на элемент справочника ОКЕИ" для элемента справочника. + + + + + + + Код единицы измерения по справочнику ОКЕИ. + + + + + + + + + Составной тип. Наименование и значение поля типа "Ссылка на элемент справочника ФИАС" для элемента справочника. + + + + + + + Ссылка на элемент справочника ФИАС. + + + + + + Идентификационный код позиции в справочнике ФИАС. + + + + + Глобально-уникальный идентификатор адресного объекта в справочнике ФИАС. + + + + + + + + + + + + Составной тип. Наименование и значение поля "Вложение" + + + + + + + Документ + + + + + + + + + Скалярный тип. Наименование поля элемента справочника. Строка не более 200 символов. + + + + + + + + Группа справочника: +NSI - (по умолчанию) общесистемный +NSIRAO - ОЖФ + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-base.xsd new file mode 100644 index 0000000..ae7ce74 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-base.xsd @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + КПП + + + + + + + + + + + + + ОГРН + + + + + + + + + + ОГРНИП + + + + + + + + + + ОКОПФ + + + + + + + + + + + ОКОГУ + + + + + + + + + + Телефон + + + + + + + + + + + + + + + + + + + + + + + БИК + + + + + + + + БИК + + + + + + ИНН + + + + + НЗА (Номер записи об аккредитации) + + + + + + + + НЗА (Номер записи об аккредитации) + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-registry-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-registry-base.xsd new file mode 100644 index 0000000..16908de --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-organizations-registry-base.xsd @@ -0,0 +1,266 @@ + + + + + + + + + + Полное наименование + + + + + + + + + + + Фирменное наименование + + + + + Юридическое лицо + + + + + + + + + Дата государственной регистрации + + + + + + + + Адрес регистрации + + + + + Адрес регистрации (Глобальный уникальный идентификатор дома по ФИАС) + + + + + Дата прекращения деятельности + + + + + + + ОП (Обособленное подразделение) + + + + + Полное наименование + + + + + + + + + + + Сокращенное наименование + + + + + + + + + + + + + + + Адрес регистрации + + + + + + + + + + + Адрес регистрации (Глобальный уникальный идентификатор дома по ФИАС) + + + + + Дата прекращения деятельности + + + + + Источник информации + + + + + + + от + + + + + + + + + + + ФПИЮЛ (Филиал или представительство иностранного юридического лица) + + + + + + + + + + Адрес места нахождения(жительства)_текст + + + + + Адрес места нахождения(жительства)_ФИАС + + + + + Дата внесения записи в реестр аккредитованных + + + + + Дата прекращения действия аккредитации + + + + + Страна регистрации иностранного ЮЛ (Справочник ОКСМ, альфа-2) + + + + + + + + + + + + + Индивидуальный предприниматель + + + + + Фамилия + + + + + Имя + + + + + Отчество + + + + + Пол (M- мужской, F-женский) + + + + + + + + + + + + + ОГРН + + + + + Дата государственной регистрации + + + + + + + + Организация в реестре организаций + + + + + + + + + + Версия организации в реестре организаций + + + + + + + + + + Организация и версия организации в реестре организаций + + + + + + + + + Идентификатор корневой сущности организации в реестре организаций + + + + + Идентификатор версии записи в реестре организаций + + + + + Сокращенное наименование + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-payments-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-payments-base.xsd new file mode 100644 index 0000000..5ea4e12 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-payments-base.xsd @@ -0,0 +1,1239 @@ + + + + + + + + + + + + + + Извещение о принятии к исполнению распоряжения + + + + + Сведения о потребителе + + + + + + Уникальный идентификатор плательщика + + + + + + + + + + + Наименование плательщика + + + + + + + + + + + + + + Сведения об исполнителе + + + + + + + + Исполнитель-ИП + + + + + Исполнитель-ЮЛ + + + + + + + Наименование + + + + + + + + + + + + + + Наименование ИП одной строкой + + + + + + + + + + + + Сведения о платежных реквизитах + + + + + + + + Общие сведения о распоряжении + + + + + + Уникальный идентификатор распоряжения для нужд квитирования, включающий более мягкие огранчиения UI/Excel до 11.8.0 (тип) + + + + + Дата + + + + + Номер распоряжения + + + + + + + + + + + Сумма оплаты (в копейках) + + + + + Назначение платежа + + + + + + + + + + + Признак онлайн-оплаты + + + + + Произвольный комментарий + + + + + + + + + + + + + + Номер платежного документа, по которому внесена плата, присвоенный такому документу исполнителем в целях осуществления расчетов по внесению платы + + + + + + + + + + + + + + + + + Адрес помещения и реквизиты потребителя + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Номер жилого помещения + + + + + + + + + + + Номер комнаты жилого помещения + + + + + + + + + + + + Номер нежилого помещения + + + + + + + + + + + + Номер жилого блока + + + + + + + + + + + Номер комнаты жилого блока + + + + + + + + + + + + Номер нежилого блока + + + + + + + + + + + + + Физлицо, не являющееся индивидуальным предпринимателем + + + + + Индивидуальный предприниматель или юридическое лицо + + + + + + + + + Жилищно-коммунальная услуга + + + + + + + + + + Номер лицевого счета/Иной идентификатор плательщика + + + + + + + + + + + + + + + + + + + Извещение об аннулировании извещения о принятии распоряжения к исполнению + + + + + Уникальный идентификатор распоряжения для нужд квитирования, включающий более мягкие огранчиения UI/Excel до 11.8.0 (тип) + + + + + Дата аннулирования + + + + + Комментарий + + + + + + + + + + + + + + Запрос на квитирование + + + + + + + Поиск среди извещений указанной кредитной организации + + + + + + + + + + + + Cквитировано с платежным документом + + + + + + + Вид квитируемой услуги из платежного поручения + + + + Вид ЖУ (справочник "Классификатор видов работ (услуг)") + + + + + Вид ГКУ (справочник "Главная коммунальная услуга") + + + + + Вид ДУ (справочник "Вид дополнительной услуги") + + + + + Вид неустойки и судебных расходов. НСИ 329 "Неустойки и судебные расходы": +- Пени +- Штрафы +- Государственные пошлины +- Судебные издержки. + + + + + Вид коммунальной услуги. НСИ 3 + + + + + + Сумма квитирования (в копейках) + + + + + + + + + + + + Сведения о платежных реквизитах + + + + + + + БИК банка получателя + + + + + Номер расчетного счета + + + + + + + + + + + Идентификатор платежных реквизитов в платежном документе + + + + + + + + Периода расчета начисления услуги по капитальному ремонту (только для ПД с типом "текущий" с указанием КР на год) + + + + + + Год расчетного периода + + + + + Месяц расчетного периода + + + + + + + + + + + Квитирование невозможно + + + + + + + Причина, по которой отсутствует возможность сопоставления + + + + + + + + + + + + + + + Период просрочки, с которым выполняется квитирование (только для квитирования с долговым ПД) + + + + + + + + + + + + + Запрос на квитирование для экспорта + + + + + + + Cквитировано с платежным документом + + + + + + + Вид квитируемой услуги из платежного поручения + + + + Вид ЖУ (справочник "Вид жилищной услуги") + + + + + Вид ГКУ (справочник "Главная коммунальная услуга") + + + + + Вид ДУ (справочник "Вид дополнительной услуги") + + + + + Вид неустойки и судебных расходов. НСИ 329 "Неустойки и судебные расходы": +- Пени +- Штрафы +- Государственные пошлины +- Судебные издержки. + + + + + Вид коммунальной услуги. НСИ 3 + + + + + + Сумма квитирования (в копейках) + + + + + + + + + + + + Период просрочки, с которым выполняется квитирование (только для квитирования с долговым ПД) + + + + + + + + + + + Периода расчета начисления услуги по капитальному ремонту (только для ПД с типом "текущий" с указанием КР на год) + + + + + + Год расчетного периода + + + + + Месяц расчетного периода + + + + + + + + + + + Квитирование невозможно + + + + + + + Причина, по которой отсутствует возможность сопоставления + + + + + + + + + + + + + + + + Уникальный идентификатор распоряжения, сформированный через интеграцию + + + + + + + + + + Уникальный идентификатор распоряжения для нужд квитирования, включающий более мягкие огранчиения UI/Excel до 11.8.0 + + + + + + + + + + + Уникальный идентификатор распоряжения для нужд квитирования, включающий более мягкие огранчиения UI/Excel до 11.8.0 (тип) + + + + + + + + + Уникальный идентификатор счета, в уплату которого поступил платеж. +В случае отсутствия указывается 0. + + + + + + + + + + + + Извещение о принятии к исполнению распоряжения + + + + + Сведения о потребителе + + + + + + Уникальный идентификатор плательщика + + + + + + + + + + + Наименование плательщика + + + + + + + + + + + + + + Сведения об исполнителе жилищно-коммунальной услуги + + + + + + + + + Исполнитель-ИП + + + + + Исполнитель-ЮЛ + + + + + + + Наименование + + + + + + + + + + + + + + Наименование ИП одной строкой + + + + + + + + + + + + + Сведения о платежных реквизитах + + + + + + + + + + + + + Общие сведения о распоряжении + + + + + + Уникальный номер платежа (идентификатор операции) + + + + + Дата + + + + + Номер распоряжения + + + + + + + + + + + Сумма оплаты (в копейках) + + + + + + + + + + + + Назначение платежа + + + + + + + + + + + Признак онлайн-оплаты + + + + + Произвольный комментарий + + + + + + + + + + + + + + + + + + + + + Адрес помещения и реквизиты потребителя + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Номер жилого помещения + + + + + + + + + + + Номер комнаты жилого помещения или жилого дома + + + + + + + + + + + + Номер нежилого помещения + + + + + + + + + + + + Номер жилого блока + + + + + + + + + + + Номер комнаты жилого блока + + + + + + + + + + + + Номер нежилого блока + + + + + + + + + + + + + Физлицо, не являющееся индивидуальным предпринимателем + + + + + Индивидуальный предприниматель или юридическое лицо + + + + + + + + + Жилищно-коммунальная услуга + + + + + + + + + + + + + + + + + + + Извещение о принятии к исполнению распоряжения + + + + + Общие сведения о распоряжении + + + + + + Уникальный номер платежа (идентификатор операции) + + + + + Дата + + + + + Сумма оплаты (в копейках) + + + + + + + + + + + + Признак онлайн-оплаты + + + + + Месяц и год + + + + + + + + + + + + + + GUID жилищно-коммунальной услуги + + + + + + + + GUID платежного документа + + + + + + + Идентификатор платежных реквизитов в платежном документе + + + + + + + + + + Платежные реквизиты + + + + + Сведения о платежных реквизитах организации + + + + + ИНН получателя платежа + + + + + КПП получателя платежа + + + + + Наименование банка получателя платежа + + + + + + + + + + + Наименование получателя + + + + + + + + + + + БИК банка получателя + + + + + Номер расчетного счета + + + + + + + + + + Корр. счет банка получателя + + + + + Код из Классификатора доходов в бюджет + + + + + + + + + + + Код из Общероссийского классификатора территорий муниципальных образований + + + + + Номер лицевого счета, открытый в органах Федерального казначейства (финансовых органах) + + + + + + + + + + + + + + Сведения о платежных реквизитах организации + + + + + ИНН получателя платежа + + + + + КПП получателя платежа + + + + + Наименование банка получателя платежа + + + + + + + + + + + Наименование получателя + + + + + + + + + + + БИК банка получателя + + + + + Номер расчетного счета + + + + + + + + + + Корр. счет банка получателя + + + + + Платежные реквизиты для платежей капитального ремонта + + + + + Код из Классификатора доходов в бюджет + + + + + + + + + + + Код из Общероссийского классификатора территорий муниципальных образований + + + + + + Номер лицевого счета, открытый в органах Федерального казначейства (финансовых органах) + + + + + + + + + + + + + Ключ поиска платежных реквизитов организации в ГИС ЖКХ + + + + + БИК банка получателя + + + + + Номер расчетного счета + + + + + + + + + + + + Идентификатор платежных реквизитов ЮЛ/ИП + + + + + Идентификатор извещения о принятии к исполнению распоряжения + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-premises-base.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-premises-base.xsd new file mode 100644 index 0000000..f9b19f9 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/hcs-premises-base.xsd @@ -0,0 +1,74 @@ + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Тип уникального номера дома + + + + + + + + Тип уникального номера помещения + + + + + + + + Тип уникального номера комнаты + + + + + + + + Площадь жилого помещения (7 до запятой, 2 после) + + + + + + + + + + Площадь территории/здания + + + + + + + + + + Площадь помещения + + + + + + + + + + Площадь помещения (для экспорта данных) + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/xmldsig-core-schema.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/xmldsig-core-schema.xsd new file mode 100644 index 0000000..dd5254b --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/lib/xmldsig-core-schema.xsd @@ -0,0 +1,309 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-service-async.wsdl new file mode 100644 index 0000000..4235f09 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-service-async.wsdl @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт сведений из реестра лицензий (старый формат) + + + + + + Экспорт сведений из реестра дисквалифицированных лиц + + + + + + Экспорт сведений из реестра лицензий (по реестровой модели) + + + + + + Импорт реестровых записей + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис управления экспортом лицензий и дисквалифицированных лиц + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-types.xsd new file mode 100644 index 0000000..624cd53 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/licenses/hcs-licenses-types.xsd @@ -0,0 +1,2882 @@ + + + + + + + + + + + + + Экспорт информации о лицензиях на управление многоквартирными домами (Реестр лицензий субъекта РФ). Доступны версии: 10.0.1.1, 14.3.0.2 + + + + + + + + Номер лицензии + + + + + Лицензиат + + + + + + + ОГРН + + + + + ОГРНИП + + + + + + Код субьекта + + + + + + + + + + + + + + Результат экспорта информации о лицензиях на управление многоквартирными домами + + + + + + + Идентификатор лицензии в системе + + + + + Версия лицензии + + + + + Номер лицензии по ЕРУЛ. Актуально только для версий, начиная с 14.3.0.2 + + + + + Временный номер лицензии Актуально только для версий, начиная с 14.3.0.2 + + + + + Актуально только для версий, начиная с 14.3.0.2 + + + + Способ подачи заявления о предоставлении лицензии + + + + + Номер заявления на предоставление лицензии + + + + + + + + + + Дата заявления на предоставление лицензии + + + + + + + + + + Результат экспорта сведений из реестра лицензий (старый формат) + + + + + + + + Результат запроса на экспорт сведений из реестра лицензий (старый формат) + + + + + + + + + + + + + Экспорт информации о лицензиях из реестровой модели лицензий +Доступны версии: 14.3.0.2, 14.4.0.1 + + + + + + + + Корневой идентификатор лицензии + + + + + Номер лицензии по ЕРУЛ + + + + + Номер лицензии по ГИС ЖКХ + + + + + Лицензиат + + + + + + + ОГРН + + + + + ОГРНИП + + + + + + Код региона (ФИАС) + + + + + + + + + + + + + + + + + + + Результат экспорта информации о лицензиях из реестровой модели лицензий + + + + + + + Корневой идентификатор лицензии в системе + + + + + Статус размещения лицензии (изменений в лицензии) в ЕСИА + + + + + + + + + Результат экспорта сведений из реестра лицензий (по реестровой модели) + + + + + + + + Результат запроса на экспорт сведений из реестра лицензий (по реестровой модели) + + + + + + + + + + + + + Экспорт сведений о дисквалифицированных лицах +Доступные версии: 10.0.1.1, 15.4.0.1 + + + + + + + + Информация о дисквалифицированном лице + + + + + + ФИО + + + + + Дата рождения + + + + + Место рождения + + + + + Номер лицензии в ГИС ЖКХ + + + + + Лицензиат + + + + + + ОГРН + + + + + ОГРНИП + + + + + + + + Номер лицензии в ЕРУЛ + + + + + Временный номер лицензии + + + + + + + + + + + + + + Результат экспорта сведений из реестра дисквалифицированных лиц + + + + + + + + Результат запроса на экспорт сведений из реестра дисквалифицированных лиц + + + + + + + + + + + + + Импорт информации о реестровой записи + + + + + + + + + + + Корневой идентификатор лицензии, в которой выполняется работа с реетсровой записью + + + + + Идентификатор записи, исправляемой текущей записью + + + + + + + + Информация о заверении приказа о предоставлении лицензии или приказа о заверении размещаемой реестровой записи + + + + + + Размещение новой лицензии или внесение изменений в лицензию + + + + + Продление срока действия лицензии + + + + + Объединение лицензий + + + + + Прекращение срока действия лицензии + + + + + Аннулирование лицензии + + + + + Деактуализация реестровой записи или лицензии. +Для деактуализации лицензии необходимо деактуализировать запись о предоставлении такой лицензии. + + + + + Отмена прекращения действия/аннулирования лицензии + + + + + Включение дома в лицензию + + + + + Исключение дома из лицензии + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + + + + + Лицензия + + + + + Номер лицензии + + + + + Дата регистрации лицензии + + + + + Статус лицензии: + A - ACTIVE - включена в реестр, действующая + F - FINISHED - включена в реестр, действие прекращено в зависимости от даты окончания действия лицензии + C - CANCELED - аннулирована + R - REJECTED - отменена в зависимости от основания + I - INACTIVE - не включена в реестр, не действующая + + + + + + + + + + + + + + Наименование лицензирующего органа + + + + + + + + + + Адрес осуществления лицензируемого вида деятельности (код по ФИАС) + + + + + Лицензируемый вид деятельности с указанием выполняемых работ, оказываемых услуг, составляющих лицензируемый вид деятельности + + + + + Дополнительная информация + + + + + Информация о лицензиате + + + + + Документы лицензионного дела + + + + + + + + Дата вступления документа в силу + + + + + Статус документа: + A - ACTIVE - Действующий + C - CANCELED - Отменен + P - PROJECT - +Проект + + + + + + + + + + + + + + + + + Информация о домах + + + + + + + Изменения в лицензии + + + + + + Идентификатор лицензии в системе + + + + + Версия лицензии + + + + + Номер лицензии + + + + + Дата регистрации лицензии + + + + + + Статус лицензии: + A - ACTIVE - включена в реестр, действующая + F - FINISHED - включена в реестр, действие прекращено в зависимости от даты окончания действия лицензии + C - CANCELED - аннулирована + R - REJECTED - отменена в зависимости от основания + + + + + + + + + + + + + + + + + Наименование лицензирующего органа + + + + + + + + + + Адрес осуществления лицензируемого вида деятельности (код по ФИАС) + + + + + Адрес осуществления лицензируемого вида деятельности + + + + + Лицензируемый вид деятельности с указанием выполняемых работ, оказываемых услуг, составляющих лицензируемый вид деятельности + + + + + Дополнительная информация + + + + + Документы лицензионного дела + + + + + + + + Дата вступления документа в силу + + + + + Статус документа: + A - ACTIVE - Действующий + C - CANCELED - Отменен + + + + + + + + + + + + + + + + Информация о домах + + + + + + + Информация о лицензиате + + + + + Юридическое лицо + + + + + + + + + + ИП + + + + + + + + + + + + Документы лицензионного дела + + + + + Реквизиты размещаемого документа + + + + + + Тип документа + + + + + Дата включения в реестр + + + + + Наименование организации, принявшей решение + + + + + + + + + + Наименование документа + + + + + Номер документа + + + + + Статус документа: + A - ACTIVE - Действующиий + C - CANCELED - Отменен + P - PROJECT - +Проект + + + + + + + + + + + + + + + Реквизиты документа, являющегося основанием для размещения информации + + + + + + Основание размещения (Тип электронного документа) + + + + + Наименование организации, принявшей решение + + + + + Наименование документа + + + + + Номер документа + + + + + Дата документа + + + + + Дата вступления в силу + + + + + Дополнительная информация + + + + + + + + + + Информация о доме + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Адрес дома + + + + + Информация о договоре управления + + + + + + Идентификатор ДУ в ГИС ЖКХ + + + + + Номер договора из ДУ по дому + + + + + + + + + + + Дата заключения договора из ДУ по дому + + + + + Управляющая организация из ДУ + + + + + Дата вступления в силу из ДУ + + + + + Планируемая дата окончания из ДУ + + + + + Срок действия (рассчитывается автоматически) + + + + + + Месяц + + + + + + + + + + год/лет + + + + + + + + + + + + + + Дата начала осуществления полномочий из ДУ + + + + + Дата окончания осуществления полномочий из ДУ + + + + + + Дата расторжения из ДУ + + + + + + + + + + Сведение о дисквалифицированном лице + + + + + Информация о дисквалифицированном лице + + + + + + ФИО + + + + + Дата рождения + + + + + Место рождения + + + + + Должность + + + + + + + + Информация об организации, в которой работало дисквалифицированное лицо + + + + + + + Юридическое лицо + + + + + + + + + + ИП + + + + + + + + + + + Номер лицензии в ГИС ЖКХ + + + + + Дата регистрации лицензии + + + + + Орган государственного жилищного надзора + + + + + Номер лицензии в ЕРУЛ + + + + + Временный номер лицензии + + + + + + + + Судебное решение о дисквалификации (Информация о дисквалификации) + + + + + + Код основание дисквалификации + + + + + Судебный орган + + + + + Наименование документа - решение суда + + + + + Номер документа + + + + + Дата судебного документа + + + + + Дисквалифицирован с (Дата вступления в силу решения суда) + + + + + Длительность дисквалификации + + + + + + Лет (от 0 до 99 включительно) + + + + + + + + + + + Месяцев (от 0 до 11 включительно) + + + + + + + + + + + Дней (от 0 до 30 включительно) + + + + + + + + + + + + + + Дисквалифицирован по (Плановая дата исключения сведений из реестра) + + + + + Дополнительная информация + + + + + + + + + + + Полная информация о лицензии + + + + + Общая информация о лицензии + + + + + Информация о реестровых записях, добавленных в лицензию + + + + + Информация о домах, добавленных в лицензию + + + + + + + Общая инфомрация о лицензии + + + + + Номер лицензии по ЕРУЛ + + + + + Дата присвоения номера по ЕРУЛ + + + + + Временный номер лицензии + + + + + Дата присвоения временного номера + + + + + Номер лицензии по ГИС ЖКХ + + + + + Дата регистрации лицензии + + + + + Статус лицензии: + Active - включена в реестр, действующая + Expired - Истек срок действия + Canceled - аннулирована + Terminated - Прекращено действие лицензии + Deactualized - Лицензия деактуализирована + Project - Проект (получение номера в ЕРУЛ) + + + + + Дата начала действия лицензии + + + + + Дата окончания действия лицензии + + + + + Лицензирующий орган + + + + + + + + + + Субъект РФ, на который выдана лицензия + + + + + + Адрес осуществления лицензируемого вида деятельности. Код дома по ФИАС + + + + + Адрес осуществления лицензируемого вида деятельности. Код адресного элемента по ФИАС. Заполняется в случае когда адрес указан не до дома. + + + + + + Дополнительная информация + + + + + Информация о лицензиате + + + + + + + + Номер телефона лицензиата + + + + + Адрес электронной почты лицензиата + + + + + + + + + + Номер приказа о предоставлении лицензии + + + + + Дата приказа о предоставлении лицензии + + + + + Номер приказа о внесении изменений в лицензию (последнее изменение) + + + + + Дата приказа о внесении изменений в лицензию (последнее изменение) + + + + + Номер приказа о продлении лицнезии (последнее продление) + + + + + Дата приказа о продлении лицнезии (последнее продление) + + + + + + + Полная информация о реестровой записи + + + + + Общая информация о реестровой записи + + + + + + Параметры записи о предоставлении лицензии или о внесении изменений в лицензию + + + + + Параметры записи о продлении лицензии + + + + + Параметры записи о прекращении или об аннулировании лицензии + + + + + Параметры записи о вклчюении дома + + + + + Параметры записи об исключении дома + + + + + Параметры записи о деактуализации + + + + + Параметры записи об объединении + + + + + Параметры записи о внесении изменений в лицензию лицензиатом + + + + + + Телефон лицензиата + + + + + Адрес электронной почты лицензиата + + + + + + + + Параметры иной записи + + + + + + Информация об отправке в ЕРУЛ + + + + + Информация об отправке в ФНС + + + + + + + Информация для импорта общих сведений о реестровой записи + + + + + Основание внесения реестровой записи. Заполняется значением из справочника №370 "Основания внесения реестровых записей + + + + + Номер приказа о заверении реестровой записи + + + + + + + + + + Дата приказа о заверени реестровой записи + + + + + Дополнительная информация + + + + + + + + + + + Документ, заверяющий реестровую запись + + + + + + + + + + Документ, заверяющий реестровую запись с электронной подписью + + + + + + + Сопроводительные документы + + + + + Сопроводительные документы с электронной подписью + + + + + + + + Общая информация о реестровой записи + + + + + Номер реестровой записи + + + + + Тип реестровой записи (НСИ 215) + + + + + Идентификатор реестровой записи + + + + + Статус реестровой записи +PUBLISHED - Реестровая запись размещена +PUBLISHED_WITHOUT_ERUL_NUMBER - Реестровая запись размещена, но номер из ЕРУЛ еще не получен + + + + + Актуальность реестровой записи + + + + + Дата и время размещения реестровой записи + + + + + Организация, внесшая реестровую запись + + + + + + + + + + Сотрудник, внесший реестровую запись + + + + + + + + + + Основание внесения реестровой записи НСИ 216 + + + + + Идентификатор записи, исправляемой текущей записью + + + + + Дополнительная информация + + + + + + Номер приказа о заверении реестровой записи + + + + + Дата приказа о заверении реестровой записи + + + + + + Не отправлять реестровую запись в единый реестру учета лицензий + + + + + Не отправлять реестровую запись в ФНС (ЕГРЮЛ/ЕГРИП) + + + + + + Документ, заверяющий реестровую запись + + + + + Документ, заверяющий реестровую запись с электронной подписью + + + + + + + Сопроводительные документы + + + + + Сопроводительные документы с электронной подписью + + + + + + + + Расширенный тип ответа на результат импорта + + + + + + + + + + + + + Расширенный тип ответа на результат импорта + + + + + + + Реестровая запись, созданная вместе с импортируемой + + + + + + Корневой идентификатор лицензии + + + + + Идентификатор созданной реестровой записи + + + + + + + + + + + + Параметры для импорта записи о предоставлении или о внесении изменений в лицензию + + + + + Номер лицензии по ЕРУЛ + + + + + Номер лицензии по ГИС ЖКХ + + + + + Дата начала действия лицензии + + + + + Дата окончания действия лицензии + + + + + + Способ подачи заявления о предоставлении лицензии + + + + + Номер заявления на предоставление лицензии + + + + + + + + + + Дата заявления на предоставление лицензии + + + + + + Адрес осуществления лицензируемого вида деятельности. + + + + Адрес осуществления лицензируемого вида деятельности. Глобальный уникальный идентификатор дома по ФИАС. Заполняется, если не указан идентификатор адресного объекта + + + + + Адрес осуществления лицензируемого вида деятельности. Глобальный уникальный идентификатор адреса по ФИАС. Заполняется, если необходимо указать адрес не до дома. + + + + + + Информация о лицензиате + + + + + + + + Документ, удостоверяющий личность. Заполняется только для лицензиата-ИП + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата выдачи документа + + + + + Кем выдан документ + + + + + + + + Дата государственной регистрации + + + + + Адрес места нахождения/Адрес места жительства + + + + Адрес места нахождения/Адрес места жительства. Глобальный уникальный идентификатор дома по ФИАС + + + + + Адрес места нахождения/Адрес места жительства. Глобальный уникальный идентификатор адреса по ФИАС. Заполняется, если необходимо указать адрес не до дома. + + + + + + Номер телефона лицензиата + + + + + Адрес электронной почты лицензиата + + + + + Информация о проведении оценки соответствия лицензиата + + + + + + + + + + Дата проведения оценки соответствия лицензиата + + + + + + + + + + ФИО должностного лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + Должность лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + Не отправлять реестровую запись в единый реестру цчета лицензий + + + + + Не отправлять реестровую в ЕГРЮЛ/ЕГРИП + + + + + + + Параметры записи о предоставлении или о внесении изменений в лицнезию + + + + + Номер лицензии по ЕРУЛ + + + + + Временный номер лицензии + + + + + Дата присвоения временного номера + + + + + Номер лицензии по ГИС ЖКХ + + + + + Дата регистрации лицензии + + + + + Дата начала действия лицензии + + + + + Дата окончания действия лицензии + + + + + Лицензирующий орган + + + + + + + + + + + Адрес осуществления лицензируемого вида деятельности. Код дома по ФИАС + + + + + Адрес осуществления лицензируемого вида деятельности. Код адресного элемента по ФИАС. Заполняется в случае когда адрес указан не до дома. + + + + + + Лицензируемый вид деятельности с указанием выполняемых работ, оказываемых услуг, составляющих лицензируемый вид деятельности + + + + + Информация о лицензиате + + + + + + + + Телефон лицензиата + + + + + Адрес электронной почты лицензиата + + + + + Информация о проведении оценки соответствия лицензиата + + + + + + + + + + Дата проведения оценки соответствия лицензиата + + + + + Документ, удостоверяющий личность. Заполняется только для лицензиата-ИП + + + + + + Документ, удостоверяющий личность (НСИ 95) + + + + + Серия документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата выдачи документа + + + + + Кем выдан документ + + + + + + + + Адрес места жительства для ИП + + + + + + Адрес места жительства для ИП (Глобальный уникальный идентификатор дома по ФИАС) + + + + + Адрес места жительства для ИП (Глобальный уникальный идентификатор дома по ФИАС) + + + + + + + + + + + ФИО должностного лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + Должность лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + + + Параметры для импорта записи о продлении + + + + + Новая дата окончания действия лицензии + + + + + ФИО должностного лица, подписавшего приказ о продлении лицензии + + + + + Должность лица, подписавшего приказ о продлении лицензии + + + + + Не отправлять реестровую запись в единый реестру цчета лицензий + + + + + Не отправлять реестровую в ЕГРЮЛ/ЕГРИП + + + + + + + Параметры записи о продлении + + + + + Дата окончания действия лицензии + + + + + ФИО должностного лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + Должность лица, подписавшего приказ о предоставлении/изменении лицензии + + + + + + + Параметры для импорта записи о прекращении действия лицензии + + + + + Дата прекращения действия лицензии + + + + + Основание изменения статуса лицензии (заполяется значением справочника НСИ Вид основания для выполнения размещения информации в реестре лицензий + + + + + Документ о прекращении действия лицензии + + + + + Дата вступления в силу документа о прекращении действия лицензии + + + + + Не отправлять реестровую запись в единый реестру цчета лицензий + + + + + Не отправлять реестровую в ЕГРЮЛ/ЕГРИП + + + + + + + Параметры для импорта записи об анулировании действия лицензии + + + + + Дата аннулирования лицензии + + + + + Основание изменения статус алицензии (заполяется значением справочника НСИ Вид основания для выполнения размещения информации в реестре лицензий + + + + + Организация,принявшая реешение об аннулировании лицензии + + + + + + + + + + Наименование документа об аннулировании лицензии + + + + + + + + + + Номер документа об аннулировании лицензии + + + + + + + + + + Дата принятия документа об аннулировании лицензии + + + + + Дата вступления в силу документа об аннулировании лицензии + + + + + Не отправлять реестровую запись в единый реестру цчета лицензий + + + + + Не отправлять реестровую в ЕГРЮЛ/ЕГРИП + + + + + + + Параметры записи о прекращении действия/аннулировании лицензии + + + + + Дата прекращения действия/аннулирования лицензии + + + + + Документ о прекращении действия/аннулировании лицензии + + + + + Дата вступления в силу документа о прекращении действия/аннулировании лицензии +При внесении сведений об аннулировании лицензии обязательно к заполнению + + + + + + + Параметры для импорта записи о включении дома в лицензию + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Дата включения дома в лицензию + + + + + Признак обозначает необходимость аннулировать периодны управления домами другими организациями, позже включаемого периода, при наличии таких периодов. + +1) Если таких периодов нет, то признак не влияет на внесение информации. +2) Если такие периоды есть и признак выставлен, то информация об управлении другими организациями, позже даты InclusionDate будет аннулирована. +3) Если периоды есть и признак не выставлен, то при размещении сведений о включении дома будет автоматически добавлена информация об окончании периода управления и исключении дома из лицензии с датой на 1 день меньше ближайшего периода управления другой организацией. + + + + + + + Параметры записи о включении дома в лицензию + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Адрес дома + + + + + Дата включения дома в лицензию + + + + + + + Праметры для иморпта записи об исключении дома из лицензии + + + + + Идентификатор реестровой записи о включении дома, которая была исключена из лицензии. Не заполняется при исправлении технической ошибки в записи об исключении дома + + + + + Дата исключения дома из лицензии + + + + + Основание исключения. Заполняется значением справочника "Вид основания для выполнения размещения инфомрации в реестре лицензий" + + + + + Документ об исключении дома + + + + + + + Праметры записи об исключении дома из лицензии + + + + + Идентификатор реестровой записи о включении дома, которая была исключена из лицензии + + + + + Дата исключения дома из лицензии + + + + + Основание исключения НСИ 11 + + + + + Документ об исключении дома + + + + + + + Параметры для импорта записи о деактуализации + + + + + Идентификатор реестровой записи, для которой выполнялась деактуализация. Не заполняется при исправлении технической ошибки в записи о деактуализации. + + + + + Причина аннулирования дома в лицензии. Обязательно заполняется при деактуализации записи о включеии дома. При деактуализации записей других типов не заполняется. + + + + + Признак используется при выполнении отмены деактуализации записи о включении дома или отмены деактуализации лицензии. В указанных операциях Будет выполнена попытка включить в лицензию дома, которые были аннулированы. При выполнении других операций признак не будет влиять на размещение информации. + +Признак обозначает необходимость аннулировать периодны управления домами другими организациями, позже включаемого периода, при наличии таких периодов. + +1) Если таких периодов нет, то признак не влияет на внесение информации. +2) Если такие периоды есть и признак выставлен, то информация об управлении другими организациями, позже даты InclusionDate будет аннулирована. +3) Если периоды есть и признак не выставлен, то при размещении сведений о включении дома будет автоматически добавлена информация об окончании периода управления и исключении дома из лицензии с датой на 1 день меньше ближайшего периода управления другой организацией. + + + + + + + Параметры для импорта отмены прекращения действия/аннулирования лицензии + + + + + Основание изменения статуса лицензии (заполяется значением справочника НСИ Вид основания для выполнения размещения информации в реестре лицензий + + + + + Документ об отмене прекращения действия/аннулирования лицензии + + + + + Дата вступления в силу документа об отмене прекращения действия/аннулирования лицензии + + + + + Не отправлять реестровую запись в единый реестру цчета лицензий + + + + + Не отправлять реестровую в ЕГРЮЛ/ЕГРИП + + + + + + + Параметры записи о деактуализации + + + + + Идентификатор реестровой записи, для которой выполнялась деактуализация + + + + + Дата деактуализации записи + + + + + Документ об отмене прекращения действия/аннулирования лицензии + + + + + Дата вступления в силу документа об отмене прекращения действия/аннулирования лицензии + + + + + + + Параметры для импорта записи об объединении + + + + + Идентификаторы лицензий, с которыми выполнялось объединение + + + + + + + Параметры записи об объединении + + + + + Идентификаторы лицензий, с которыми выполнялось объединение + + + + + + + Краткая информация о лицензии + + + + + Корневой идентификатор лицензии, с которой выполнено объединение + + + + + Номер лицензии по ЕРУЛ + + + + + Номер лицензии по ГИС ЖКХ + + + + + + + Информация о домах в лицензии + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Адрес дома + + + + + Статус дома в лицензии: +INCLUDED - Включен в лицензию +EXCLUDED - Исключен из лицензии + + + + + Дата включения дома в лицензию + + + + + Дата исключения дома + + + + + Идентификатор записи о включении + + + + + Идентификатор записи об исключении + + + + + + + Информация о документе + + + + + Организация,принявшая решение + + + + + + + + + + Тип документа + + + + + + + + + + Номер документа + + + + + + + + + + Дата документа + + + + + + + Параметры иных документов + + + + + Тип документа НСИ 63 + + + + + Основание внесения документа НСИ 11 + + + + + Документ + + + + + + + Статусы лицензии + + + + + Действующая + + + + + Истек срок действия + + + + + Лицензия аннулирована + + + + + Действие прекращено + + + + + Лицензия деактуализирована + + + + + Проект + + + + + + + Статусы реестровой записи + + + + + Размещена + + + + + Размещена без полученного номера из ЕРУЛ + + + + + + + Статусы домов в лицензии + + + + + Включен + + + + + Исключен + + + + + + + Способы подачи заявления + + + + + С использованием ЕПГУ + + + + + На бумажном носителе + + + + + С использованием ВИС + + + + + В форме электронного документа + + + + + Заказным почтовым отправлением + + + + + + + Номер по ЕРУЛ + + + + + + + + Временный номер лицензии + + + + + + + + Номер по ГИС ЖКХ + + + + + + + + Причина аннулирования + + + + + + + + + ФИО должностного лица + + + + + + + + + Должность должностного лица + + + + + + + + + Номер телефона лицензиата + + + + + + + + + Адрес электронной почты лицензиата + + + + + + + + + Номер приказа + + + + + + + + + Адрес дома (текстовое представление) + + + + + + + + + Номер реестровой записи + + + + + + + + Информация по отправлению в ЕРУЛ + + + + + Статус размещения в ЕРУЛ + + + + + Дата и время последнего обновления статуса + + + + + Код ошибки ЕРУЛ + + + + + + + + + + + Текст ошибки ЕРУЛ + + + + + + + + + + + Отказ от отправки в ЕРУЛ + + + + + + + Статус отправки информации в ЕРУЛ + + + + + Не размещено в ЕРУЛ + + + + + Не отправлено + + + + + В процессе оформления в ЕРУЛ + + + + + Отправлено в ЕРУЛ + + + + + Размещено в ЕРУЛ + + + + + Не требуется отправка в ЕРУЛ + + + + + + + Информация по отправлению в ФНС + + + + + Статус размещения в ФНС + + + + + Дата и время последнего обновления статуса + + + + + Код ошибки ФНС + + + + + + + + + + + Текст ошибки ФНС + + + + + + + + + + + Отказ от отправки в ФНС + + + + + + + Статус отправки информации в ФНС + + + + + Не отправлено + + + + + Планируется к отправке + + + + + Планируется к исключению + + + + + Отправлено + + + + + Отправлено для исключения + + + + + Размещено + + + + + Исключено + + + + + Не размещено + + + + + Не исключено + + + + + + + Cтатус отправки информации в ЕСИА + + + + + Запрос отправлен + + + + + + + + + Информация по отправлению в ЕСИА + + + + + Статус отправки информации в ЕСИА + + + + + Дата и время изменения статуса + + + + + + Код ошибки ЕСИА + + + + + + + + + + Текст ошибки ЕСИА + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-service-async.wsdl new file mode 100644 index 0000000..88b1eed --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-service-async.wsdl @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт сведений о гражданах, получающих субсидии + + + + + + Импорт сведений о гражданах, получающих компенсации расходов + + + + + + Экспорт перечня отдельных категорий граждан, имеющих право на получение компенсации расходов + + + + + + Экспорт сведений о гражданах, получающих субсидии + + + + + + Экспорт сведений о гражданах, получающих компенсации расходов + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-types.xsd new file mode 100644 index 0000000..b905bf3 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/msp/hcs-msp-types.xsd @@ -0,0 +1,1359 @@ + + + + + + + + + + + Денежная сумма (с любым знаком) + + + + + + + + + Положительная денежная сумма + + + + + + + + Неотрицательная денежная сумма + + + + + + + + Расходы на оплату жилого помещения и коммунальных услуг, подлежащие компенсации. ColdWater - Холодное водоснабжение, HotWater - Горячее водоснабжение, Sewerage - Отведение сточных вод, Electricity - Электроснабжение, Gas - Газоснабжение, SolidFuel - Твердое топливо, LiquidGas - Газ в баллонах, Heating - Отопление, Waste - Обращение с твердыми коммунальными отходами, Maintenance - Содержание жилого помещения, Repairs - Взносы на капитальный ремонт, Rent - Наем жилого помещения, CollectiveHotWater - Горячая вода на содержание общего имущества, CollectiveColdWater - Холодная вода на содержание общего имущества, CollectiveElectricity - Электрическая энергия на содержание общего имущества, CollectiveSewerage - Отведение сточных вод на содержание общего имущества + + + + + + + + + + + + + + + + + + + + + + + Физическое лицо + + + + + + + + + + + Пол (Male- мужской, Female-женский) + + + + + + + + + + + + + + + + + Скалярный тип. Строка не более 36 символов. + + + + + + + + Скалярный тип. Строка не более 256 символов. + + + + + + + + Скалярный тип. Строка не более 256 символов. + + + + + + + + Скалярный тип. Строка не более 256 символов. + + + + + + + + Решение + + + + + Номер решения + + + + + Дата решения + + + + + Тип решения (НСИ 301) + + + + + Основание решения (НСИ 302). Под основанием понимается (в зависимости от типа решения): +- Основание приостановления +- Основание возобновления +- Основание прекращения. Обязательно для заполнения для всех типов решений, кроме решений о предоставлении. Для решений о предоставлении поле не заполняется + + + + + Дата события. Под датой события понимается (в зависимости от типа решения): +- Дата приостановления +- Дата возобновления +- Дата прекращения +Обязательно для заполнения для всех типов решений, кроме решений о предоставлении. Для решений о предоставлении поле не заполняется + + + + + Файлы решения + + + + + + + Выплата гражданину, получающему субсидии/компенсации расходов + + + + + Тип выплаты. Требуется указать одно из двух возможных значений: Payment - выплата гражданину, Refund - возврат гражданином излишне полученной суммы + + + + + + + + + + + Дата выплаты + + + + + Сумма выплаты, руб. + + + + + + + Тип для экcпорта информации о выплате + + + + + + + Идентификатор информации о выплате + + + + + + + + + + Статус размещения объекта. Возможные значения: Published - Размещено в ГИС ЖКХ, Canceled - Аннулировано, Draft - Проект + + + + + + + + + + + Граждане, получающие субсидии + + + + Общие сведения о гражданине, получающем субсидии + + + + + + + Адрес жилого помещения, по которому предоставляется субсидия. Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры + + + + + Номер комнаты + + + + + Тип регистрации в жилом помещении. Требуется указать одно из двух значений: Permanent - по месту жительства, Temporary - по месту пребывания + + + + + + + + + + + Дата начала предоставления субсидии + + + + + Дата окончания предоставления субсидии + + + + + Решения. При импорте обязательно должно быть хотя бы одно решение о предоставлении + + + + + + + + + Расчеты и перерасчеты для гражданина, получающего субсидии + + + + + Период, за который выполнен расчет субсидии + + + + + Дата расчета + + + + + Количество членов семьи, на которых распространяется предоставление субсидии + + + + + + + + + + Размер фактических расходов, руб. + + + + + Размер субсидии, руб. + + + + + Размер перерасчета за прошлые периоды, руб. + + + + + Размер предоставляемой субсидии, руб. + + + + + + + Расчеты и перерасчеты для гражданина, получающего субсидии + + + + + + + Идентификатор информации о расчетах и перерасчетах + + + + + + + + + + Экспортирумые сведения о гражданине, получающем субсидии + + + + + Общие сведения + + + + + + + + Идентификатор информации о гражданине, получающем субсидии + + + + + + + + + + + Расчеты и перерасчеты + + + + + Выплаты + + + + + + + + + + + Граждане, получающие компенсации расходов + + + + Общие сведения о гражданине, получающем компенсации расходов + + + + + + + Адрес жилого помещения, по которому предоставляется компенсация расходов. Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры + + + + + Номер комнаты + + + + + Тип регистрации в жилом помещении. Требуется указать одно из двух значений: Permanent - по месту жительства, Temporary - по месту пребывания + + + + + + + + + + + Категории. При импорте должна быть указана хотя бы одна категория + + + + + + + + + Решения. При импорте обязательно должно быть хотя бы одно решение о предоставлении + + + + + + + + + Категория гражданина, получающего компенсации расходов + + + + + Идентификатор отдельной категории гражданин + + + + + Период предоставления компенсации по данной категории С + + + + + Период предоставления компенсации по данной категории ПО + + + + + Расходы на оплату жилого помещения и коммунальных услуг, подлежащие компенсации. Поле обязательно для заполнения, если порядок расчета компенсации расходов в указанной категории - от фактических расходов на оплату жилищно-коммунальных услуг + + + + + + + Расчеты и перерасчеты для гражданина, получающего компенсации расходов + + + + + Дата начала периода, за который выполнен расчет компенсации + + + + + Дата окончания периода, за который выполнен расчет компенсации + + + + + Дата расчета + + + + + Размер компенсационной выплаты, руб. + + + + + Расчет компенсации расходов + + + + Расчет компенсации от фактических расходов на оплату жилищно-коммунальных услуг + + + + + Расчет компенсации по стандартам стоимости жилищно-коммунальных услуг + + + + + Расчет компенсации в виде фиксированного размера денежной выплаты + + + + + + + + Расходы на оплату жилого помещения и коммунальных услуг и их компенсация + + + + + Расходы на оплату жилого помещения и коммунальных услуг, подлежащие компенсации + + + + + Количество членов семьи, на которых распространяется предоставление компенсации расходов + + + + + + + + + + Размер платы, руб. + + + + + Размер компенсации расходов, руб. + + + + + Размер перерасчета компенсации расходов за прошлые периоды, руб. + + + + + + + Расчет компенсации по стандартам стоимости жилищно-коммунальных услуг + + + + + Количество членов семьи, на которых распространяется предоставление компенсации расходов + + + + + + + + + + Размер платы, руб. + + + + + Размер компенсации расходов, руб. + + + + + Размер перерасчета компенсации расходов за прошлые периоды, руб. + + + + + + + Расчет компенсации в виде фиксированного размера денежной выплаты + + + + + Количество членов семьи, на которых распространяется предоставление компенсации расходов + + + + + + + + + + Размер платы, руб. + + + + + Размер компенсации расходов, руб. + + + + + Размер перерасчета компенсации расходов за прошлые периоды, руб. + + + + + + + Расчеты и перерасчеты для гражданина, получающего компенсации расходов + + + + + + + Идентификатор информации о расчетах и перерасчетах гражданина в ГИС ЖКХ + + + + + + + + + + Экспортируемые сведения о гражданине, получающем компансации расходов + + + + + Общие сведения + + + + + + + + Идентификатор информации о гражданине в ГИС ЖКХ + + + + + + + + + + + Расчеты и перерасчеты + + + + + Выплаты + + + + + + Импорт сведений о гражданах, получающих субсидии + + + + Запрос импорта сведений о гражданах, получающих субсидии. Импорт расчетов и выплат по гражданам, получающим субсидии + + + + + + + + Импорт сведений о гражданах, получающих субсидии. Импорт расчетов и выплат по гражданам, получающим субсидии + + + + + + Идентификатор информации о гражданине в ГИС ЖКХ. Заполняется при изменении ранее загруженных общих сведений о гражданине, а также при импорте информации о расчетах и выплатах + + + + + Ветка для загрузки общей информации о гражданине, получающем субсидии (добавление,изменение и аннулирование информации о гражданине) + + + + Транспортный идентификатор для выполнения операции с информацией о гражданине + + + + + + Добавить/Изменить общую информацию о гражданах, получающих субсидии. При изменении необходимо присылать всю информацию о гражданине в актуальном состоянии. + + + + + Аннулировать информацию о гражданине, получающем субсидии + + + + + + + Ветка для загрузки расчетов и перерасчетов по гражданину, получающему субсидии (добавление,изменение и аннулирование информации о расчетах и перерасчетах) + + + + + + Транспортный идентификатор для выполнения операции с информацией о расчетах и перерасчетах + + + + + Идентификатор информации о расчетах и перерасчетах гражданина в ГИС ЖКХ + + + + + + Добавить/Изменить информацию о расчетах и перерасчетах + + + + + Аннулировать информацию + + + + + + + + + Ветка для загрузки выплат по гражданину, получающему субсидии (добавление,изменение и аннулирование информации о выплатах) + + + + + + Транспортный идентификатор для выполнения операции с информацией о выплатах гражданину + + + + + Идентификатор информации о выплатах гражданину в ГИС ЖКХ + + + + + + Добавить/Изменить информацию о выплатах + + + + + Аннулировать информацию о выплатах + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт сведений о гражданах, получающих компенсации расходов + + + + Запрос импорта сведений о гражданах, получающих компенсации расходов. Импорт расчетов и выплат по гражданам, получающим компенсации расходов + + + + + + + + Импорт сведений о гражданах, получающих компенсации расходов. Импорт расчетов и выплат по гражданам, получающим компенсации расходов + + + + + + Идентификатор информации о гражданине в ГИС ЖКХ. Заполняется при изменении ранее загруженных общих сведений о гражданине, а также при импорте информации о расчетах и выплатах + + + + + Ветка для загрузки общей информации о гражданине, получающем компенсации расходов (добавление,изменение и аннулирование информации о гражданине) + + + + Транспортный идентификатор для выполнения операции с информацией о гражданине + + + + + + Добавить/Изменить общую информацию о гражданах, получающих компенсации расходов. При изменении необходимо присылать всю информацию о гражданине в актуальном состоянии. + + + + + Аннулировать информацию о гражданине, получающем компенсации расходов + + + + + + + Ветка для загрузки расчетов и перерасчетов по гражданину, получающему компенсации расходов (добавление,изменение и аннулирование информации о расчетах и перерасчетах) + + + + + + Транспортный идентификатор для выполнения операции с информацией о расчетах и перерасчетах + + + + + Идентификатор информации о расчетах и перерасчетах гражданина в ГИС ЖКХ + + + + + + Добавить/Изменить информацию о расчетах и перерасчетах + + + + + + + + + Аннулировать информацию + + + + + + + + + Ветка для загрузки выплат по гражданину, получающему компенсации расходов (добавление,изменение и аннулирование информации о выплатах) + + + + + + Транспортный идентификатор для выполнения операции с информацией о выплатах гражданину + + + + + Идентификатор информации о выплатах гражданину в ГИС ЖКХ + + + + + + Добавить/Изменить информацию о выплатах + + + + + Аннулировать информацию о выплатах + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт перечня отдельных категорий граждан, имеющих право на получение компенсации расходов + + + + Запрос на экспорт перечня отдельных категорий граждан + +Доступен экспорт версии 11.0.0.1 и 13.1.2.1 + + + + + + + + Дата начала предоставления компенсации расходов + + + + + Дата окончания предоставления компенсации расходов + + + + + + + + + + + Нормативный правовой акт + + + + + Номер документа + + + + + Дата принятия документа органом власти + + + + + Наименование документа + + + + + Файлы + + + + + + + Экспортируемые сведения об отдельной категории граждан + + + + + Идентификатор отдельной категории граждан + + + + + Дата начала предоставления компенсаций расходов + + + + + Дата окончания предоставления компенсаций расходов + + + + + Территория предоставления компенсации расходов + + + + + + Субъект РФ + + + + + Муниципальное образование + + + + + + + + Наименование отдельной категории граждан + + + + + Ссылка на справочник НСИ 154 "Отдельные категории граждан, имеющие право на получение компенсаций расходов" + + + + + Бюджет, за счет которого осуществляются выплаты. Возможные значения: Federal - Федеральный, Regional - Региональный, Municipal - Муниципальный + + + + + + + + + + + + Срок перечисления компенсации + + + + + Перечень документов, необходимых для получения компенсации + + + + + Основания для отказа в предоставлении компенсации + + + + + Основания для приостановления предоставления компенсации + + + + + Основания для прекращения предоставления компенсации + + + + + Основания для возобновления предоставления компенсации + + + + + Основания для перерасчета компенсации + + + + + Основания возврата излишне полученной суммы компенсации + + + + + Нормативные правовые акты + + + + + Порядок расчета компенсации расходов + + + + В виде фиксированного размера денежной выплаты + + + + Фиксированный размер денежной выплаты, руб. + + + + + Дата установления фиксированного размера + + + + + Примечание + + + + + + По стандартам стоимости жилищно-коммунальных услуг + + + + Описание порядка расчета + + + + + + От фактических расходов на оплату жилищно-коммунальных услуг + + + + + + Расходы на оплату жилого помещения и коммунальных услуг, подлежащие компенсации + + + + + Тип жилищного фонда. PrivateHousing - Частный, MunicipalHousing - Муниципальный, StateHousing - Государственный + + + + + + + + + + + + Жилое помещение приватизировано + + + + + Норматив для начисления компенсации. Код из справочника "Ограничение объема предоставляемой компенсации расходов" (НСИ) + + + + + Распространяется на всех членов семьи? + + + + + Размер, предоставляемой компенсации + + + + + + + + + + + + + Дата начала предоставления компенсации + + + + + Дата окончания предоставления компенсации + + + + + Примечание + + + + + + + + + + Экспорт сведений о гражданах, получающих субсидии + + + + Запрос на экспорт сведений о гражданах, получающих субсидии + + + + + + + + Выгружать аннулированные сведения? + + + + + + Идентификатор информации о гражданине в ГИС ЖКХ + + + + + + Дата начала предоставления субсидии + + + + + Дата окончания предоставления субсидии + + + + + + + + + Сдвиг относительно первого элемента (первый элемент имеет позицию 0) + + + + + + + + + + Количество строк с информацией о гражданах, которые необходимо экспортировать + + + + + + + + + + + + + + Экспорт сведений о гражданах, получающих компенсации расходов + + + + Запрос на экспорт сведений о гражданах, получающих компенсации расходов + + + + + + + + Выгружать аннулированные сведения? + + + + + + Идентификатор информации о гражданине в ГИС ЖКХ + + + + + + Идентификатор отдельной категории гражданин + + + + + Дата начала предоставления компенсации расходов + + + + + Дата окончания предоставления компенсации расходов + + + + + + + + + Сдвиг относительно первого элемента (первый элемент имеет позицию 0) + + + + + + + + + + Количество строк с информацией о гражданах, которые необходимо экспортировать + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + Результат импорта + + + + + Информация об отдельной категории граждан + + + + + + Информация о гражданах, получающих субсидии + + + + + Информация о гражданах, получающих компенсации расходов + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-service-async.wsdl new file mode 100644 index 0000000..77e5498 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-service-async.wsdl @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_НСИ_ППС. Получить перечень общесистемных справочников с указанием даты последнего изменения каждого из них. + + + + + + ВИ_НСИ_ПДС. Получить данные общесистемного справочника. + + + + + + ВИ_НСИ_ПДС_ПОСТР. Получить данные общесистемного справочника. + + + + + + + + + + + + + + ВИ_НСИ_ППС. Получить перечень справочников с указанием даты последнего изменения каждого из них. + + + + + + + + + + + + + + + ВИ_НСИ_ПДС. Получить данные справочника. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис экспорта общих справочников подсистемы НСИ + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-types.xsd new file mode 100644 index 0000000..845ae06 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi-common/hcs-nsi-common-types.xsd @@ -0,0 +1,126 @@ + + + + + + + + Запрос получения перечня общесистмного справочников. + + + + + + + + + + + + + + + + Запрос на получение данных общесистмного справочника. + + + + + + + + Реестровый номер справочника. + + + + + + Дата и время, измененные после которой элементы справочника должны быть возвращены в ответе. Если не указана, возвращаются все элементы справочника. + + + + + + + + + + + + Запрос на получение данных общесистмного справочника. + + + + + + + + Реестровый номер справочника. + + + + + + Страница выборки. Возвращается по 1000 элементов. + + + + + + + + + + Дата и время, измененные после которой элементы справочника должны быть возвращены в ответе. Если не указана, возвращаются все элементы справочника. + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + Количество записей в справочнике + + + + + Количество страниц + + + + + Номер текущей страницы + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-service-async.wsdl new file mode 100644 index 0000000..5c8de4a --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-service-async.wsdl @@ -0,0 +1,294 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_1. Импортировать данные справочника 1 "Дополнительные услуги". + + + + + + ВИ_НСИ_ИДС_51. Импортировать данные справочника 51 "Коммунальные услуги". + + + + + + ВИ_НСИ_ИДС_59. Импортировать данные справочника 59 "Работы и услуги организации". + + + + + + ВИ_НСИ_ИДС_272. Импортировать данные справочника 272 "Система коммунальной инфраструктуры". + + + + + + + + + + + Экспортировать данные справочников поставщика информации + + + + + + Экспортировать данные справочников поставщика информации постранично + + + + + + ВИ_НСИ_ИДС_219. Импортировать данные справочника 219 "Вид работ капитального ремонта". + + + + + + ВИ_НСИ_ИДС_302. Импортировать данные справочника 302 "Основание принятия решения о мерах социальной поддержки гражданина" + + + + + + Импортировать данные справочника 337 "Коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме" + + + + + + + + + ВИ_НСИ_ИДС_1. Импортировать данные справочника 1 "Дополнительные услуги". + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_51. Импортировать данные справочника 51 "Коммунальные услуги". + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_59. Импортировать данные справочника 59 "Работы и услуги организации". + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_272. Импортировать данные справочника 272 "Система коммунальной инфраструктуры". + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_219. Импортировать данные справочника 219 "Вид работ капитального ремонта". + + + + + + + + + + + + + + + ВИ_НСИ_ИДС_302. Импортировать данные справочника 302 "Основание принятия решения о мерах социальной поддержки гражданина" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис экспорта общих справочников подсистемы НСИ + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-types.xsd new file mode 100644 index 0000000..6c65140 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/nsi/hcs-nsi-types.xsd @@ -0,0 +1,864 @@ + + + + + + + + Запрос на импорт данных справочника 1 "Дополнительные услуги". + + + + + + + + Создание/изменение вида дополнительной услуги. + + + + + + + + Идентификатор существующего элемента справочника + + + + + + Наименование вида дополнительной услуги. + + + + + + Единица измерения из справочника ОКЕИ. + + + + + (параметр более не поддерживается) +Другая единица измерения. + + + + + + + + + + + + + + Восстановление вида дополнительной услуги. + + + + + + + Идентификатор ранее существовавшего элемента справочника. + + + + + + + + Удаление вида дополнительной услуги. + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + + Запрос на импорт данных справочника 51 "Коммунальные услуги". + + + + + + + + Уровень 2. Создание/изменение главной коммунальной услуги. + + + + + + + + Идентификатор существующего элемента справочника. + + + + + + Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3). + + + + + (не используется) Признак "Услуга предоставляется на общедомовые нужды" + + + + + (не используется) Признак "Самостоятельное производство коммунальной услуги" + + + + + Наименование главной коммунальной услуги. + + + + + Ссылка на НСИ "Вид коммунального ресурса" (реестровый номер 2) + + + + + (не используется) +Единница измерения из справочника ОКЕИ. + + + + + + Порядок сортировки. + + + + + + + + + + + Порядок сортировки не задан + + + + + + + + + Уровень 2. Восстановление главной коммунальной услуги (ветки). + + + + + + + Идентификатор ранее существовавшего элемента справочника. + + + + + Признак восстановления всех дочерних элементов. + + + + + + + + Уровень 2. Удаление главной коммунальной услуги (ветки). + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + + Запрос на импорт данных справочника 337 "Коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме". + + + + + + + + + Для записей 2-го уровня иерархии сссылка на родитльскую запись. Поскольку записи 1-го уровня иерархии добавляются всем поставщикам и их неввозможно изменить/удалить, ссылка ннх представлена реестровым номером записи из справочника "Вид коммунального ресурса" (см описание ParentCode). В ответе на запрос вместе с указанным TransportGuid возвращается GUID записи. + + + + + + Код родительской записи верхнего уровня. Может быть: +1 - Холодная вода +2 - Горячая вода +3 - Электрическая энергия +8 - Сточные воды + + + + + + + + + + + + + + Создание/изменение главного коммунального ресурса (ветки) + + + + + + + + + + + + + Восстановление главного коммунального ресурса (ветки). + + + + + + + Идентификатор ранее существовавшего элемента справочника. + + + + + + + + Удаление главного коммунального ресурса (ветки). + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + + Тип позиции справочника 337 "Коммунальные ресурсы, потребляемые при использовании и содержании общего имущества в многоквартирном доме". + + + + + + Идентификатор существующего элемента справочника 2-го уровня иерархии и ниже + + + + + Наименование главного коммунального ресурса. + + + + + Вид коммунального ресурса (НСИ №2 "Вид коммунального ресурса"). + + + + + (не используется) +Единница измерения из справочника ОКЕИ. + + + + + + Порядок сортировки. + + + + + + + + + + + Порядок сортировки не задан + + + + + + + + + Запрос на импорт данных справочника 59 "Работы и услуги организации". + + + + + + + + Создание/изменение элемента справочника работ и услуг + + + + + Восстановление элемент (ветки) справочника работ и услуг организации. + + + + + + + Идентификатор ранее существовавшего элемента справочника. + + + + + Признак восстановления всех дочерних элементов. + + + + + + + + Удаление элемента (ветки) справочника работ и услуг организации. + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + Элемент справочника работ и услуг организации. + + + + + + + + Идентификатор существующего элемента справочника. + + + + + Добавить в запись кодом 0 - "Работы (услуги), скопированные из справочника другой организации", запрещенной для редактирования. + + + + + + + Название работы/услуги. + + + + + Ссылка на НСИ "Вид работ" (реестровый номер 56). + + + + + Ссылка на НСИ "Обязательные работы, обеспечивающие надлежащее содержание МКД" (реестровый номер 67). + + + + + + Единница измерения из справочника ОКЕИ. + + + + + Элемент не рекомендуется использовать. Вместо него следует использовать элемент base:OKEI + + + + + + Дочерний элемент + + + + + + + + Запрос на импорт данных справочника 219 "Вид работ капитального ремонта". + + + + + + + + Создание/изменение элемента справочника виды работ капитального ремонта + + + + + Восстановление элемента справочника виды работ капитального ремонта + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + Удаление элемента справочника виды работ капитального ремонта + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + Элемент справочника виды работ капитального ремонта. + + + + + + + Идентификатор существующего элемента справочника. + + + + + + Наименование вида работ + + + + + Ссылка на НСИ "Группа работ" (реестровый номер 218). + + + + + + + + Запрос на импорт данных справочника 272 "Система коммунальной инфраструктуры" + + + + + + + + Создание/изменение элемента справочника коммунальной инфраструктуры + + + + + Восстановление элемента справочника коммунальной инфраструктуры + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + Удаление элемента справочника коммунальной инфраструктуры + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + Элемент справочника "Система коммунальной инфраструктуры" + + + + + + + Идентификатор существующего элемента справочника. + + + + + + Наименование системы + + + + + Ссылка на НСИ 42 +Вид системы коммунальной инфраструктуры + + + + + + + + Запрос на импорт данных справочника 302 "Основание принятия решения о мерах социальной поддержки гражданина". + Зание принятия решения о мерах социальной поддержки гражданина". + + + + + + + + Создание/изменение элемента справочника оснований принятия решений + + + + + Восстановление элемента справочника оснований принятия решений + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + Удаление элемента справочника оснований принятия решений + + + + + + + Идентификатор существующего элемента справочника. + + + + + + + + + + + + + + + + + + + + + + Элемент справочника оснований принятия решений. + + + + + + + Идентификатор существующего элемента справочника. + + + + + + Наименование основания принятия решения + + + + + Ссылка на НСИ "Тип решения о мерах социальной поддержки гражданина" (реестровый номер 301) + + + + + Применяется для субсидий + + + + + Применяется для компенсации расходов + + + + + + + + Запрос на получение данных справочника поставщика + + + + + + + + Реестровый номер справочника. + + + + + + + + + + + + + + + + Дата и время, измененные после которой элементы справочника должны быть возвращены в ответе. Если не указана, возвращаются все элементы справочника. + + + + + + + + + + + + Запрос на получение данных справочника поставщика постранично + + + + + + + + Реестровый номер справочника. + + + + + + + + + + + + + + + Страница выборки. Возвращается по 1000 элементов. + + + + + + + + + + Дата и время, измененные после которой элементы справочника должны быть возвращены в ответе. Если не указана, возвращаются все элементы справочника. + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + Количество записей в справочнике + + + + + Количество страниц + + + + + Номер текущей страницы + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-service-async.wsdl new file mode 100644 index 0000000..9d5ddd4 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-service-async.wsdl @@ -0,0 +1,181 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + экспорт сведений о поставщиках данных + + + + + + + + + + + Экспорт сведений об объектах из заявок на делегирование прав + + + + + + Экспорт сведений о территориях из заявок на делегирование прав + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-types.xsd new file mode 100644 index 0000000..2cb7c2e --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry-common/hcs-organizations-registry-common-types.xsd @@ -0,0 +1,599 @@ + + + + + + + + + + + Экспорт сведений из реестра организаций + + + + + + + + Критерий поиска организаций. + + + + + + + Поиск по реквизитам. + + + + + + + + + + + + + Идентификатор зарегистрированной организации + + + + + + Поиск среди организаций, имеющих личных кабинет + + + + + + + + Время последнего изменения (от) + + + + + + + + + + + Результат экспорта сведений из реестра организаций + + + + + + Версия организации в реестре организаций + + + + + + + Дата последнего изменения + + + + + Признак актуальности записи + + + + + + Юридическое лицо + + + + + Обособленное подразделение + + + + + + + + Статус версии + + + + + + + + Информация о головной организации + + + + + + + + + + + + + + + Индивидуальный предприниматель + + + + + ФПИЮЛ (Филиал или представительство иностранного юридического лица) + + + + + + Статус: +(P)UBLISHED - опубликована в одном из документов в рамках раскрытия + + + + + + + + + + + + + + Полномочие организации (НСИ №20) + + + + + Зарегистрирована в ГИС ЖКХ + + + + + + + + Экспорт сведений о поставщиках информации ИС. В качестве поискового параметра используется Идентификатор ИС из RequestHeader + + + + + + + + Выгрузить только активных поставщиков данных + + + + + + + + + + + Результат экспорта сведений о поставщиках информации ИС + + + + + Идентификатор поставщика данных + + + + + Статус связи: 1 - активен, 0- отключен + + + + + + + + + Экспорт сведений о делегированных правах + + + + + + + + ИД заявки + + + + + + Страница выборки. Возвращается по 100 элементов. + + + + + + + + + + Статус заявки: +Created – Создана +Accepted – Принята +Declined - Отклонена +Revoked - Отозвана +Annuled - Аннулирована +Closed - Закрыта +Preset– Предзаполнена +Waiting_approval - На утверждении + + + + + + + + + + + + Результат экспорта сведений о делегированных правах + + + + + Информация о головной организации (для обособленных подразделений) + + + + + + + Заявка на доступ + + + + + + + Экспорт сведений об объектах из заявок на делегирование прав + + + + + + + + ИД делегированного права. +Можно получить в результате выполнения exportDelegatedAccess + + + + + Страница выборки. Возвращается по 1000 элементов. + + + + + + + + + + + + + + + + Экспорт сведений о территориях из заявок на делегирование прав + + + + + + + + ИД делегированного права. +Можно получить в результате выполнения exportDelegatedAccess + + + + + Страница выборки. Возвращается по 1000 элементов. + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + + Признак того, что выгружены не все данные. Необходимо выполнить еще один запрос, увеличив Page на 1. + + + + + + + + + + + + Заявка на предоставление доступа + + + + + ИД заявки + + + + + Тип заявки + + + + + Дата подачи + + + + + Дата начала + + + + + Дата окончания + + + + + Статус заявки: +Created – Создана +Accepted – Принята +Declined - Отклонена +Revoked - Отозвана +Annuled - Аннулирована +Closed - Закрыта +Preset– Предзаполнена +Waiting_approval - На утверждении + + + + + Дата статуса + + + + + Причина статуса + + + + + + + + + + Делегированное право доступа + + + + + + ИД делегированного права + + + + + Территориальная принадлежность + + + + + + Для всех территорий + + + + + если = "true", то по виду информации имеется список территорий, по которым предоставлен доступ. Для получения списка можно воспользоваться запросом exportTerritoryDelegatedAccess + + + + + + + + Объекты доступа + + + + + + Для всех объектов + + + + + если = "true", то по виду информации имеется список объектов, по которым предоставлен доступ. Для получения списка можно воспользоваться запросом exportObjectsDelegatedAccess + + + + + + + + Признак актуальности + + + + + Код из справочника 291 - "Виды информации" + + + + + + + + + + Тип заявки на предоставление доступа + + + + + Для оператора информационной системы + + + + + + Для расчетного центра + + + + + + + Статус заявки на предоставление доступа + + + + + Создана + + + + + Принята + + + + + + Отозвана + + + + + + + + + + + + + + + + + Сведения об объектах из заявок на делегирование прав + + + + + ИД делегированного права. +Можно получить в результате выполнения exportDelegatedAccess + + + + + + Объект доступа + + + + + + Перечень объектов + + + + + Тип объекта + + + + + + + + + + + + + Для всех объектов + + + + + + + + Сведения о территориях из заявок на делегирование прав + + + + + ИД делегированного права. +Можно получить в результате выполнения exportDelegatedAccess + + + + + + Перечень территорий действия + + + + + Перечень субъектов РФ, на которых дейсвтуют права. (Ссылка на справочник Субъекты РФ). НСИ 237 + + + + + Для всех территорий + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-service-async.wsdl new file mode 100644 index 0000000..9746dcf --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-service-async.wsdl @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + импорт сведений о филиале или представительстве иностранного юридического лица + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-types.xsd new file mode 100644 index 0000000..4a61890 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/organizations-registry/hcs-organizations-registry-types.xsd @@ -0,0 +1,238 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт сведений о филиале или представительстве иностранного юридического лица + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + Импорт ОП + + + + + Создание обособленного подразделения + + + + + + + + Идентификатор головной организации версии записи в реестре организаций + + + + + + + + + + Внесение изменений в обособленное подразделение + + + + + + + Полное наименование + + + + + + + + + + + + + Адрес регистрации + + + + + Адрес регистрации (Глобальный уникальный идентификатор дома по ФИАС) + + + + + Дата прекращения деятельности + + + + + Источник информации + + + + + + + от + + + + + + + + + + + + + + Импорт ФПИЮЛ + + + + + Создание филиала или представительства иностранного юридического лица + + + + + Изменение филиала или представительства иностранного юридического лица + + + + + + + Полное наименование + + + + + + + + + + + Сокращенное наименование + + + + + + + + + + + + + Адрес места нахождения(жительства)_текст + + + + + Адрес места нахождения(жительства)_ФИАС + + + + + Дата внесения записи в реестр аккредитованных + + + + + Дата прекращения действия аккредитации + + + + + Страна регистрации иностранного ЮЛ (Справочник ОКСМ, альфа-2) + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-service-async.wsdl new file mode 100644 index 0000000..fda4443 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-service-async.wsdl @@ -0,0 +1,101 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт о сведений о перерывах в предоставлении коммунальных услуг + + + + + + Получить статус обработки запроса + + + + + + Экспорт сведений о перерывах в предоставлении коммунальных услуг + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-types.xsd new file mode 100644 index 0000000..110cde9 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/outage-report/hcs-outage-report-types.xsd @@ -0,0 +1,737 @@ + + + + + + + + + Запрос на импорт о сведений о перерывах в предоставлении коммунальных услуг + + + + + + + + Сведения о перерывах в предоставлении коммунальных услуг + + + + + + + + Размещение сведений о перерывах в предоставлении коммунальных услуг + + + + + + Cведения о перерыве в предоставлении коммунальных услуг + + + + + Список объектов жилого фонда, по которым планируется перерыв в предоставлении коммунальных услуг + + + + + + + + + + + + + Редактирование сведений о перерывах в предоставлении коммунальных услуг + + + + + + Уникальный идентификатор сведений о перерыве в предоставлении коммунальных услуг + + + + + Cведения о перерыве в предоставлении коммунальных услуг + + + + + Список объектов жилого фонда, по которым планируется перерыв в предоставлении коммунальных услуг + + + + + + + + + + + + + Аннулирование сведений о перерывах в предоставлении коммунальных услуг + + + + + + Уникальный идентификатор сведений о перерыве в предоставлении коммунальных услуг + + + + + Причина аннулирования сведений о перерыве в предоставлении коммунальных услуг + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + Результат импорта сведений о перерывах в предоставлении коммунальных услуг + + + + + Результат экспорта сведений о перерывах в предоставлении коммунальных услуг + + + + + + + + + + + + Тип данных, описывающий сведения о перерыве в предоставлении коммунальных услуг + + + + + Вид перерыва. Указываются значения из справочника №361 "Вид перерыва в предоставлении коммунальных услуг". В текущей реализации сервиса, должен быть указан вид перерыва 1 = "Плановый". + + + + + Тип перерыва. Возможные значения: +PAUSE - Перерыв в предоставлении коммунальной услуги; +LIMITATION - Ограничение в предоставлении коммунальной услуги; +SUSPENSION - Приостановление предоставления коммунальной услуги. + + + + + + Список кодов вида коммунальной услуги + + + + + + Код вида коммунальной услуги. Возможные значения: +1 - Холодное водоснабжение; +2 - Горячее водоснабжение; +3 - Отведение сточных вод; +4 – Электроснабжение; +5 – Газоснабжение; +6 – Отопление; +7 – Обращение с твердыми коммунальными отходами. + + + + + + + + + Дата и время начала перерыва + + + + + Дата и время окончания перерыва + + + + + Причина перерыва. Указываются значения из справочника №360 "Причины перерывов в предоставлении коммунальных услуг", для которых в атрибуте «Вид перерыва» указано значение «Плановый» + + + + + Текст причины перерыва. Обязательно заполнен, если в атрибуте "Причина перерыва" указано значение 3 "Иная" + + + + + + + + + + + Дополнительная информация + + + + + + + + + + + + + Тип данных, описывающий код вид коммунальной услуги. Возможные значения: + 1 - Холодное водоснабжение; + 2 - Горячее водоснабжение; + 3 - Отведение сточных вод; + 4 – Электроснабжение; + 5 – Газоснабжение; + 6 – Отопление; + 7 – Обращение с твердыми коммунальными отходами. + + + + + + + + + + + + + + + Тип данных, описывающий тип перерыва. Возможные значения: +PAUSE - Перерыв в предоставлении коммунальной услуги; +LIMITATION - Ограничение в предоставлении коммунальной услуги; +SUSPENSION - Приостановление предоставления коммунальной услуги. + + + + + + + + + + + Тип данных, описывающий статус информации о перерыве. Возможные значения: + PUBLISHED - Информация размещена; + CANCELLED - Информация аннулирована. + + + + + + + + + + Тип данных, описывающий объекты жилого фонда, по которым планируется перерыв в предоставлении коммунальных услуг + + + + + Дома, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ + + + + + Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Помещения/блоки, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Комнаты, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + + + Запрос на экспорт сведений о перерывах в предоставлении коммунальных услуг + + + + + + + + Критерии экспорта сведений о перерывах в предоставлении коммунальных услуг + + + + + Идентификатор, используемый для экспорта 2-го и последующих блоков данных. + +Если в элементе exportOutageReportRequest указаны условия отбора по атрибутам запроса, то экспорт осуществляется блоками по 1000 записей в каждом блоке (последний блок может содержать меньшее число записей). +Элемент NextPageExportRequestGUID не указывается для экспорта первого блока данных. Для экспорта каждого следующего блока данных в элементе NextPageExportRequestGUID должно указываться значение элемента tns:getStateResult/tns:ExportOutageReport/tns:ExportOutageReportGUID, полученное при экспорте предыдущего блока данных + + + + + + + + + + + Тип данных, описывающий сведения о перерыве в предоставлении коммунальных услуг при экспорте + + + + + Уникальный идентификатор сведений о перерыве в предоставлении коммунальных услуг + + + + + Вид перерыва. Содержит значения из справочника №361 "Вид перерыва в предоставлении коммунальных услуг" + + + + + Тип перерыва. Возможные значения: +PAUSE - Перерыв в предоставлении коммунальной услуги; +LIMITATION - Ограничение в предоставлении коммунальной услуги; +SUSPENSION - Приостановление предоставления коммунальной услуги. + + + + + + Список кодов вида коммунальной услуги + + + + + + Код вида коммунальной услуги. Возможные значения: +1 - Холодное водоснабжение; +2 - Горячее водоснабжение; +3 - Отведение сточных вод; +4 – Электроснабжение; +5 – Газоснабжение; +6 – Отопление; +7 – Обращение с твердыми коммунальными отходами. + + + + + + + + + Дата и время начала перерыва + + + + + Дата и время окончания перерыва + + + + + Причина перерыва. Указываются значения из справочника №360 "Причины перерывов в предоставлении коммунальных услуг", для которых в атрибуте «Вид перерыва» указано значение «Плановый» + + + + + Текст причины перерыва. Обязательно заполнен, если в атрибуте "Причина перерыва" указано значение 3 "Иная" + + + + + + + + + + + Дополнительная информация + + + + + + + + + + + Статус сведений о перерыве. Возможные значения: +PUBLISHED – Информация размещена; +CANCELLED - Информация аннулирована. + + + + + + Дата размещения сведений о перерыве + + + + + Дата аннулирования сведений о перерыве + + + + + Причина аннулирования сведений о перерыве + + + + + + + + + + + + + Результат экспорта информации о перерыве в предоставлении коммунальных услуг + + + + + + + + Результат выполнения запроса на экспорт информации об управляющих организациях + + + + + + + + + + + + Тип данных, описывающий результат экспорта сведений о перерыве в предоставлении коммунальных услуг + + + + + Сведения о перерыве в предоставлении коммунальных услуг + + + + + + Идентификатор сведений о перерыве в предоставлении коммунальных услуг следующей 1000 записей + + + + + Последняя страница экспорта + + + + + + + + Тип данных, описывающий экспортируемые сведения о перерыве в предоставлении коммунальных услуг + + + + + Cведения о перерыве в предоставлении коммунальных услуг + + + + + Список объектов жилого фонда, по которым планируется перерыв в предоставлении коммунальных услуг + + + + + + + Тип данных, описывающий критерии экспорта сведений о перерывах в предоставлении коммунальных услуг + + + + + Период перерыва в предоставлении коммунальных услуг + + + + + Период размещения сведений о перерывах в предоставлении коммунальных услуг + + + + + Список типов перерыва + + + + + + Тип перерыва. Возможные значения: +PAUSE - Перерыв в предоставлении коммунальной услуги; +LIMITATION - Ограничение в предоставлении коммунальной услуги; +SUSPENSION - Приостановление предоставления коммунальной услуги. + + + + + + + + + Список статусов сведений о перерывах в предоставлении коммунальных услуг + + + + + + Статус сведений о перерыве. Возможные значения: +PUBLISHED – Информация размещена; +CANCELLED - Информация аннулирована. + + + + + + + + Список кодов вида коммунальной услуги + + + + + + Код вида коммунальной услуги. Возможные значения: +1 - Холодное водоснабжение; +2 - Горячее водоснабжение; +3 - Отведение сточных вод; +4 – Электроснабжение; +5 – Газоснабжение; +6 – Отопление; +7 – Обращение с твердыми коммунальными отходами. + + + + + + + + + Список причин перерыва + + + + + + Причина перерыва. Указываются значения из справочника №360 "Причины перерывов в предоставлении коммунальных услуг", для которых в атрибуте «Вид перерыва» указано значение «Плановый» + + + + + + + + Объект жилого фонда, по которому планируется перерыв в предоставлении коммунальных услуг + + + + + + + Тип данных, описывающий объекты жилого фонда, по которым планируется перерыв в предоставлении коммунальных услуг в запросе на экспорт + + + + + Дома, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ + + + + + Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Помещения/блоки, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Комнаты, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + + + Тип данных, описывающий объекты жилого фонда, по которому планируется перерыв в предоставлении коммунальных услуг в результате экспорта + + + + + Дома, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ + + + + + Идентификатор дома в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Помещения/блоки, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор помещения/блока в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + Комнаты, по которым планируется перерыв в +предоставлении коммунальных услуг + + + + + + Идентификатор комнаты в реестре объектов жилищного фонда ГИС ЖКХ + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-service-async.wsdl new file mode 100644 index 0000000..ff67fa3 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-service-async.wsdl @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_ОПЛАТА_ИЗВ. Передать перечень документов "Извещение о принятии к исполнению распоряжения" + + + + + + ВИ_ ОПЛАТА_ИЗВАН. Импорт документов "Извещение об аннулировании извещения о принятии к исполнению распоряжения" + + + + + + Получить статус обработки запроса + + + + + + + + + + + Импорт пакета документов «Извещение о принятии к исполнению распоряжения», размещаемых исполнителем + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-types.xsd new file mode 100644 index 0000000..93d7b57 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/payment/hcs-payment-types.xsd @@ -0,0 +1,800 @@ + + + + + + + + + + + + + Пакет извещений о принятии к исполнению распоряжений (СД_ИОПЛАТА_ИЗВ_ЗАП) + + + + + + + + Извещения о принятии к исполнению распоряжений + + + + + + + + + + + + + + Извещения о принятии к исполнению распоряжений (указание реквизитов платежа по п.139 приказа №589/944 от 28.12.2015) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Пакет извещений об аннулировании извещений о принятии к распоряжения к исполнению (СД_ИОПЛАТА_ИЗВАН_ЗАП) + + + + + + + + + + + + + + + + + + + + + + + + Запрос экспорта реквизитов и сведений о платежных документах. + +Доступны версии: 11.0.1.1, 12.2.0.1 и 13.1.0.1 + + + + + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + Номер жилого помещения + + + + + + + + + + + Номер комнаты жилого помещения + + + + + + + + + + + + + Номер жилого блока + + + + + + + + + + + Номер комнаты жилого блока + + + + + + + + + + + + Номер нежилого помещения + + + + + + + + + + + Номер нежилого блока + + + + + + + + + + + + + + + + + + + + + Сведения о потребителе, необходимые для получения информации о сумме начислений/задолженности + + + + + + + Юридическое лицо + + + + + + + + + + + + + + + + + + + + + Импорт пакета документов «Извещение о принятии к исполнению распоряжения», размещаемых исполнителем + + + + + + + + Извещение о принятии к исполнению распоряжения, размещаемое исполнителем + + + + + + + + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + Ответ на запрос экспорта реквизитов и сведений о платежных документах + + + + + + Сведения о начислении (для поиска по номерам лицевых счетов и адресу) + + + + + + + + + + + + + + + + + + + + + Потребитель-физическое лицо, в том числе индивидуальный предприниматель + + + + + + + + + + Назначение платежа + + + + + + + + + + + Наименование услуги (работы), оказываемой (выполняемой) исполнителем, штрафной санкции + + + + + + + + + + + Сведения о платежном документе + + + + + + + + + + + + Платежный документ + + + + + + + + GUID платежного документа + + + + + + + + Реквизиты и свойства платежного документа + + + + + Сведения о потребителе + + + + + + + Потребитель-индивидуальный предприниматель + + + + + + + + + + Потребитель-юридическое лицо + + + + + + Наименование + + + + + + + + + + + + + + + + + Адрес помещения + + + + + + Субъект РФ + + + + + Район + + + + + + + + + + + Город + + + + + + + + + + + Населенный пункт + + + + + + + + + + + Улица + + + + + + + + + + + Номер дома + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер корпуса + + + + + + + + + + + Номер строения + + + + + + + + + + + Номер жилого помещения + + + + + + + + + + + Номер комнаты жилого помещения + + + + + + + + + + + Неформализованное описание адреса + + + + + + + + + + + Номер жилого блока + + + + + + + + + + + Номер комнаты жилого блока + + + + + + + + + + + Номер нежилого блока + + + + + + + + + + + + + + + + + Cведения об исполнителе + + + + + + + + Исполнитель-ИП + + + + + Исполнитель-ЮЛ + + + + + + + Наименование + + + + + + + + + + + + + + + Сведения о платежных реквизитах + + + + + + + + Идентификатор платежных реквизитов организации + + + + + Сумма к оплате за расчетный период по получателю платежа (в копейках) + + + + + + + + + + Задолженность за предыдущие периоды/Аванс на начало расчетного периода (учтены платежи, поступившие до 25 числа включительно) по получателю платежа (в копейках) + + + + + Итого к оплате c учетом задолженности/переплаты по получателю платежа (в копейках) + + + + + + + + + + + + Почтовый адрес + + + + + + + + + + + + + + Сумма к оплате за расчетный период по всему платежному документу (в копейках) + + + + + + + + Задолженность (в копейках) + + + + + Итого к оплате c учетом задолженности/переплаты по всему платежному документу (в копейках) + + + + + + + + + + + Сведния об ИЖКУ (при отсутствии начислений) + + + + + + + + + GUID жилищно-коммунальной услуги + + + + + Cведения об исполнителе + + + + + + + + Исполнитель-ИП + + + + + Исполнитель-ЮЛ + + + + + + + Наименование + + + + + + + + + + + + + + + Сведения о платежных реквизитах организации + + + + + + + + Идентификатор платежных реквизитов организации + + + + + + + + + + Почтовый адрес + + + + + + + + + + + + + + + + + + + + Извещение о принятии к исполнению распоряжения, размещаемое исполнителем + + + + + Дата внесения платы (в случае отсутствия: дата поступления средств) + + + + + Период, за который вносится плата + + + + + + + + + + + + + + + Сумма + + + + + + + + + + Признак онлайн-оплаты + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-service-async.wsdl new file mode 100644 index 0000000..7546257 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-service-async.wsdl @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт постановлений и процессуальных документов + + + + + + Экспорт постановлений и процессуальных документов + + + + + + + + + + + + + + + + + + + + + + + Импорт постановлений и процессуальных документов + + + + + + + + + + + + + + + Экспорт постановлений и процессуальных документов + + + + + + + + + + + + + + + + Асинхронный сервис работы с административными правонарушениями + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-types.xsd new file mode 100644 index 0000000..dafd317 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rap/hcs-rap-types.xsd @@ -0,0 +1,978 @@ + + + + + + + + + + + + Дата, с ограничениями от 01.01.1992 до 31.12.2030 + + + + + + + + + Размер штрафа + + + + + + + + + + + Статус постановления в ГИС ЖКХ + + + + + + + + + + + Данные постановления + + + + + Правонарушитель + + + + + + Юридическое лицо / Индивидуальный предприниматель + + + + Организация + + + + + Должностное лицо + + + + + + + + Должность + + + + + + + + + + + + + + + Регулируемые виды деятельности по поставке ресурсов (НСИ 270) (поле доступно и обязательно для заполнения только для организации пользователя с функцией ФСТ или "ОИВ субъекта РФ по регулированию тарифов") + + + + + + Физическое лицо + + + + + + + + Результат рассмотрения дела об административном правонарушении + + + + + + Вид результата по делу об административном правонарушении (НСИ-227) + + + + + Постановление + + + + + Вид административного наказания (НСИ-225). Обязательно для заполнения, если в tns:ResultKind указано «Назначение административного наказания». + +Для Организаций: +-Административный штраф; +-Предупреждение; +-Административное приостановление деятельности. + +Для физических лиц: +-Административный штраф; +-Предупреждение; +-Дисквалификация. + + + + + Орган, которым вынесено решение по делу об административном правонарушении (НСИ 332) + + + + + Название органа, принявшего решение о применении мер административного воздействия. НЕ заполняется, если в tns:TakingDecisionAuthority указано значение "Организация, разместившая постановление" + + + + + + + + + + + Должность лица, принявшего документ о применении административного воздействия + + + + + + + + + + Предмет нарушения (НСИ-229) + + + + + Дата привлечения к административной ответственности + + + + + Размер штрафа (доступно при указании вида административного наказания "Административный штраф"; иначе - не заполняется) + + + + + Дата уплаты штрафа (может заполняться только, если в поле в tns:Executed указано true (Исполнено) И в поле PunishmentKind указан "Административный штраф" И поле Fine заполнено) + + + + + Срок дисквалификации (доступен и обязателен, если Вид административного наказания = "Дисквалификация") + + + + + + Месяцев + + + + + + + + + + + Лет + + + + + + + + + + + + + + Срок приостановления деятельности (доступен и обязателен, если Вид административного наказания = "Административное приостановление деятельности") + + + + + + Месяцев + + + + + + + + + + + Лет + + + + + + + + + + + + + + Краткое описание нарушения + + + + + Меры, принятые для устранения нарушений + + + + + Информация об исполнении (true - Исполнено; false - Не исполнено; при незаполнении устанавливается значение по умолчанию - Не заполнено) + + + + + + + + + + Вложение + + + + + Наименование вложения + + + + + + + + + + Описание вложения + + + + + + + + + + + + + Идентификатор сохраненного вложения + + + + + + + + Хэш-тег вложения по алгоритму ГОСТ в binhex + + + + + + + + + + + + Процессуальный документ + + + + + Вид процессуального документа (НСИ-226). + +Должен соответствовать категории процессуального документа (НСИ-228). + + + + + Имя документа + + + + + + + + + + Номер процессуального документа + + + + + + + + + + Дата процессуального документа + + + + + Информация об исполнении (true - Исполнено; false - Не исполнено; при незаполнении устанавливается значение по умолчанию - Не заполнено) + + + + + Документ-вложение + + + + + + + Причина изменения постановления + + + + + Основание внесения изменений в информацию (НСИ-271) + + + + + Документ-основание для внесения изменений вида: Судебные, Изменение (необязательно, если основание - «В связи с ошибкой ввода» или «По другому основанию»; иначе - обязательно) + + + + + Краткое описание изменений сведений (необязательно только, если основание внесения изменений - «В связи с ошибкой ввода»; иначе - обязательно) + + + + + + + Причина отмены постановления + + + + + Основание внесения изменений или отмены информации (НСИ-271) + + + + + Документ-основание для отмены + + + + + Краткое описание отмены сведений + + + + + + + + + + + + Физическое лицо + + + + + Фамилия + + + + + + + + + + + Имя + + + + + + + + + + + Отчество + + + + + + + + + + + + + Экспортируемое постановление и процессуальные документы + + + + + Идентификатор постановления в ГИС ЖКХ + + + + + Реестровый номер постановления + + + + + Организация, рассмотревшая дело + + + + + + + + + + Данные постановления + + + + + Процессуальные документы + + + + + + + + Идентификатор процессуального документа + + + + + + + + + + Статус в ГИС ЖКХ +Допустимые значения: +Published- размещено в ГИС ЖКХ. Cancelled-отменено Annulled-аннулировано + + + + + Причина последнего изменнения постановления + + + + + Причина отмены постановления + + + + + + + Экспорт данных постановления + + + + + Правонарушитель + + + + + + Юридическое лицо / Индивидуальный предприниматель + + + + Организация + + + + + Данные официального лица + + + + + + + + Должность + + + + + + + + + + Регулируемые виды деятельности по поставке ресурсов (НСИ 270) (заполняется только ФАС или "ОИВ субъекта РФ по регулированию тарифов") + + + + + + Физическое лицо + + + + + + + + Результат рассмотрения дела об административном правонарушении + + + + + + Вид результата по делу об административном правонарушении (НСИ-227) + + + + + Постановление + + + + + Вид административного наказания (НСИ-225) + + + + + Орган, которым вынесено решение по делу об административном правонарушении + + + + + Название органа, принявшего решение о применении мер административного воздействия. + + + + + + + + + + + Должность лица, принявшего документ о применении административного воздействия + + + + + Размер штрафа + + + + + Дата уплаты штрафа + + + + + Срок дисквалификации + + + + + + Месяцев + + + + + + + + + + + Лет + + + + + + + + + + + + + + Срок приостановления деятельности + + + + + + Месяцев + + + + + + + + + + + Лет + + + + + + + + + + + + + + Предмет нарушения (НСИ-229) + + + + + Дата привлечения к административной ответственности + + + + + Краткое описание нарушения + + + + + Меры, принятые для устранения нарушений + + + + + Информация об исполнении (true - Исполнено; falce - Не исполнено; при незаполнении устанавливается значение по умолчанию - Не заполнено) + + + + + + + + + + Процессуальный документ (экспорт) + + + + + Вид процессуального документа (НСИ-226). + + + + + Имя документа + + + + + Номер процессуального документа + + + + + Дата процессуального документа + + + + + Информация об исполнении (true - Исполнено; false - Не исполнено; при незаполнении устанавливается значение по умолчанию - Не заполнено) + + + + + Документ-вложение + + + + + + + Причина изменения постановления (экспорт) + + + + + Основание внесения изменений в информацию (НСИ-271) + + + + + Документ-основание для внесения изменений + + + + + Краткое описание изменений сведений + + + + + + + Причина отмены постановления (экспорт) + + + + + Основание внесения изменений или отмены информации (НСИ-271) + + + + + Документ-основание для отмены + + + + + Краткое описание отмены сведений + + + + + + + + Импорт постановлений и процессуальных документов + + + + + + + + Постановления и процессуальные документы + + + + + + + Транспортный идентификатор для выполнения операций с постановлением + + + + + Идентификатор постановления в ГИС ЖКХ + + + + + + + + Создание, изменение постановления + + + + + + Данные постановления + + + + + + + + + + + + + Причина изменения сведений (не заполняется для операций "добавление постановления" и "добавление процессуального документа") + + + + + Другие процессуальные документы. Доступны для указания виды документов: Постановление, Протокол, Подтверждение принятых мер, Другой документ + + + + + + + Транспортный идентификатор для выполнения операции с процессуальным документом + + + + + Идентификатор процессуального документа в ГИС ЖКХ (обязателен при изменении/удалении существующего документа) + + + + + + + Добавление / изменение процессуального документа + + + + + Удаление процессуального документа + + + + + + + + Проверка уникальности идентификатора документа в рамках запроса + + + + + + + + + Отмена постановления + + + + + + Причина отмены сведений + + + + + + + + Аннулирование постановления + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора постановления в рамках запроса + + + + + + + + + Запрос экспорта постановлений и процессуальных документов. + + + + + + + + Идентификатор постановления в ГИС ЖКХ + + + + + + Дата привлечения к административной ответственности С + + + + + Дата привлечения к административной ответственности ПО + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + Экспортируемые постановления и процессуальные документы + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-service-async.wsdl new file mode 100644 index 0000000..f80867d --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-service-async.wsdl @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт информации об управляющей организации в реестр управляющих организаций и решений об определении управляющих организаций + + + + + + Импорт информации о решении об определении управляющей организации в реестр управляющих организаций и решений об определении управляющих организаций + + + + + + Получить статус обработки запроса + + + + + + Экспорт информации об управляющих организациях из реестра управляющих организаций и решений об определении управляющих организаций + + + + + + Экспорт информации о решении об определении управляющей организации из реестра управляющих организаций и решений об определении управляющих организаций + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-types.xsd new file mode 100644 index 0000000..6a9b79b --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/rvuo/hcs-rvuo-types.xsd @@ -0,0 +1,991 @@ + + + + + + + + + + Тип данных, описывающий состояние организации. Возможные значения: Excluded - Исключена; Included - Включена. + + + + + + + + + Тип данных, описывающий статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена. + + + + + + + + + Тип данных, описывающий статус размещаемой информации в результатах экспорта. Возможные значения: Project - Проект; Placed - Размещена; Annulled - Аннулирована. + + + + + + + + + + Тип данных, описывающий блок информации для документа. Возможные значения: IncludedInfo - Информация о включении; AdditionalInfo - Дополнительна информация; ExcludedInfo - Информация об исключении. + + + + + + + + + + Тип данных, описывающий блок информации для документа. Возможные значения: DecisionInfo - Информация о решении; AdditionalInfo - Дополнительна информация; ServicesInfo - Перечень работ и услуг. + + + + + + + + + + Тип данных, описывающий документ прилагаемый к информации об управляющей организации + + + + + Прикрепленный файл + + + + + Тип блока информации для документа. Возможные значения: IncludedInfo - Информация о включении; AdditionalInfo - Дополнительна информация; ExcludedInfo - Информация об исключении. + + + + + + + Тип данных, описывающий документ в запросе на импорт информации о решении об определении управляющей организации + + + + + Прикрепленный файл + + + + + Тип блока информации для документа. Возможные значения: DecisionInfo - Информация о решении; AdditionalInfo - Дополнительна информация; ServicesInfo - Перечень работ и услуг. + + + + + + + Тип данных, описывающий реквизиты организации + + + + + + ОГРН + + + + + ОГРНИП + + + + + + ИНН + + + + + КПП + + + + + + + Тип данных, описывающий дом в решении + + + + + Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ + + + + + Период управления + + + + + + + + Тип данных, описывающий решение об определении управляющей организации + + + + + Номер решения + + + + + Дата решения + + + + + Размер платы за содержание + + + + + + + + + + Дополнительная информация + + + + + + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена. + + + + + + + Тип данных, описывающий решение об определении управляющей организации в результатах экспорта + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + Уникальный идентификатор управляющей организации + + + + + Номер решения + + + + + Дата решения + + + + + Размер платы за содержание + + + + + + + + + + Дополнительная информация + + + + + + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена; Annulled - Аннулирована. + + + + + Дата и время размещения + + + + + Причина аннулирования + + + + + Дом в решении об определении управляющей организации + + + + + + + Результат экспорта информации о решении об определении управляющей организации + + + + + + + + Результат выполнения запроса на Результат экспорта информации о решении об определении управляющей организации + + + + + + + + + + + + Результат выполнения запроса на Результат экспорта информации о решении об определении управляющей организации + + + + + + + Идентификатор решения об определении управляющей организации для экспорта следующей 1000 решении об определении управляющей организации + + + + + Последняя страница экспорта + + + + + + + + + Тип данных, описывающий управляющую организацию + + + + + Код ОКТМО + + + + + Основание включения + + + + + + Тип основания. Ссылка на НСИ "Вид основания для включения в перечень УО" (реестровый номер 204) + + + + + Номер заявления/протокола + + + + + Дата заявления/протокола + + + + + Дата включения сведений + + + + + Порядковый номер + + + + + + + + + + + + + + Информация об исключении + + + + + + Причина исключения. Ссылка на НСИ "Вид основания для исключения из перечня УО" (реестровый номер 205) + + + + + Дата исключения + + + + + + + + Дополнительная информация + + + + + + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена. + + + + + + + Тип данных, описывающий управляющую организацию в результатах экспорта + + + + + Уникальный идентификатор управляющей организации + + + + + Код ОКТМО + + + + + Основание включения + + + + + + Тип основания. Ссылка на НСИ "Вид основания для включения в перечень УО" (реестровый номер 204) + + + + + Номер заявления/протокола + + + + + + + + + + Дата заявления/протокола + + + + + Дата включения сведений + + + + + Порядковый номер + + + + + + + + + + + + + + Информация об исключении + + + + + + Причина исключения. Ссылка на НСИ "Вид основания для исключения из перечня УО" (реестровый номер 205) + + + + + Дата исключения + + + + + + + + Дополнительная информация + + + + + + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена; Annulled - Аннулирована. + + + + + Дата и время размещения + + + + + Причина аннулирования + + + + + + + Результат экспорта информации об управляющих организациях + + + + + + + + Результат выполнения запроса на экспорт информации об управляющих организациях + + + + + + + + + + + + Результат экспорта информации об управляющих организациях + + + + + + + Идентификатор управляющей организации для экспорта следующей 1000 управляющих организаций + + + + + Последняя страница экспорта + + + + + + + + + Запрос на импорт информации о решении об определении управляющей организации + + + + + + + + Решение об определении управляющей организации + + + + + + + + Размещение решения об определении управляющей организации + + + + + + Уникальный идентификатор управляющей организации + + + + + Информация о решения об определении управляющей организации + + + + + Документ прилагаемый к информации о решения об определении управляющей организации + + + + + Дом в решении об определении управляющей организации + + + + + + + + Редактирование решения об определении управляющей организации + + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + Информация о решения об определении управляющей организации + + + + + Документ прилагаемый к информации о решения об определении управляющей организации + + + + + Дом в решении об определении управляющей организации + + + + + + + + Аннулирование решения об определении управляющей организации + + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + Причина аннулирования управляющей организации + + + + + + + + Удаление решения об определении управляющей организации + + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + + + + Изменение решения об определении управляющей организации в статусе "Проект" на статус "Размещена" + + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о решении об определении управляющей организации + + + + + + + + Уникальный идентификатор решения об определении управляющей организации + + + + + Уникальный идентификатор управляющей организации + + + + + Реквизиты управляющей организации + + + + + Номер решения + + + + + Код ОКТМО + + + + + + Глобальный уникальный идентификатор дома по ФИАС/Идентификационный код дома в ГИС ЖКХ + + + + + Неформализованное описание адреса + + + + + + + + + + + + + Дата принятия решения. Используется для поиска решений по дате принятия. Значение содержит одну дату. В результирующую выборку попадут решения, у которых дата принятия входит в диапазон с 00:00:00 до 23:59:59 часов даты, указанной в элементе + + + + + Период принятия решения. Используется для поиска решений по дате принятия. Значение содержит временной период + + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена; Annulled - Аннулирована. + + + + + Период управления + + + + + Период создания сведений + + + + + Период размещения сведений + + + + + Идентификатор, используемый для экспорта 2-го и последующих блоков данных. + +Если в элементе exportDecisionRequest указаны условия отбора по атрибутам запроса, то экспорт запросов осуществляется блоками по 1000 запросов в каждом блоке (последний блок может содержать меньшее число запросов). + +Для экспорта первого блока данных элемент не указывается. Для экспорта каждого следующего блока данных в элементе должно указываться значение элемента getStateResult/ exportDecisionResult/ ExportDecisionGUID, полученное при экспорте предыдущего блока данных + + + + + + + + + + + + Запрос на импорт информации об управляющей организации + + + + + + + + Управляющая организация + + + + + + + + Размещение управляющей организации + + + + + + Реквизиты управляющей организации + + + + + Информация об управляющей организации + + + + + Документ прилагаемый к информации об управляющей организации + + + + + + + + Редактирование управляющей организации + + + + + + Уникальный идентификатор управляющей организации + + + + + Информация об управляющей организации + + + + + Документ прилагаемый к информации об управляющей организации + + + + + + + + Аннулирование управляющей организации + + + + + + Уникальный идентификатор управляющей организации + + + + + Причина аннулирования управляющей организации + + + + + + + + Удаление управляющей организации + + + + + + Уникальный идентификатор управляющей организации + + + + + + + + Изменение управляющей организации в статусе "Проект" на статус "Размещена" + + + + + + Уникальный идентификатор управляющей организации + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации об управляющих организациях + + + + + + + + Уникальный идентификатор управляющей организации + + + + + Основание включения сведений. Ссылка на НСИ "Вид основания для включения в перечень УО" (реестровый номер 204) + + + + + Реквизиты управляющей организации + + + + + Код ОКТМО + + + + + Состояние организации. Возможные значения: Excluded - Исключена; Included - Включена. + + + + + Статус размещаемой информации. Возможные значения: Project - Проект; Placed - Размещена; Annulled - Аннулирована. + + + + + Период создания сведений + + + + + Период включения сведений + + + + + Период исключения сведений + + + + + Период размещения сведений + + + + + Идентификатор, используемый для экспорта 2-го и последующих блоков данных. + +Если в элементе exportManagingOrganizationRequest указаны условия отбора по атрибутам запроса, то экспорт запросов осуществляется блоками по 1000 запросов в каждом блоке (последний блок может содержать меньшее число запросов). + +Для экспорта первого блока данных элемент не указывается. Для экспорта каждого следующего блока данных в элементе должно указываться значение элемента getStateResult/ exportManagingOrganizationResult/ ExportOrgGUID, полученное при экспорте предыдущего блока данных + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + Результат импорта + + + + + Результат экспорта информации об управляющих организациях + + + + + Результат экспорта информации о решении об определении управляющей организации + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-service-async.wsdl new file mode 100644 index 0000000..9cefe2b --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-service-async.wsdl @@ -0,0 +1,287 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВИ_ИПОЧ_УК_ТФ_ЭКСП. экспорт тарифов ЖКУ + + + + + + ВИ_ИПФР_ПЕР_ЭКСП. экспорт основных сведений по перечню работ + + + + + + ВИ_ИПФР_ПЕР_ИМП. импорт основных сведений по перечню работ + + + + + + ВИ_ИПФР_ПЛАН_ИМП. импорт актуальных планов по перечню работ/услуг + + + + + + ВИ_ИПФР_ПЛАН_ЭКСП. экспорт актуальных планов по перечню работ/услуг + + + + + + ВИ_ИПФР_ВЫП_ИМП. импорт сведений о выполненных работах и услугах + + + + + + ВИ_ИПФР_ВЫП_ЭКСП. экспорт сведений о выполненных работах и услугах + + + + + + Импорт сведений об оценке качества + + + + + + Экспорт сведений об оценке качества + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-types.xsd new file mode 100644 index 0000000..ff9599c --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/services/hcs-services-types.xsd @@ -0,0 +1,1621 @@ + + + + + + + + + Импорт перечня работ и услуг на период + + + + + + + + Перечень утвержден + + + + + + + + + Работа/услуга перечня + + + + + + + + + + + + + + + + + + + + + + + + + + + Идентификатор отмененного перечня + + + + + + + Идентификатор перечня + + + + + + + + Идентификатор аннулированного перечня + + + + + + + Идентификатор перечня + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + Экспорт автоматически формируемого черновика с перечнем работ и услуг поставщика данных + + + + + + + + + Период "с" + + + + + + + + + + + Период "с" + + + + + + + + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + Идентификатор перечня + + + + + + + + + + + Результат экспорта автоматически формируемого черновика с перечнем работ и услуг поставщика данных + + + + + Перечень работ/услуг + + + + + + + + + Статус: +(A)PPROVED - Утверждён +(C)ANCELLED - Отменён +(AN)NULLED - Аннулирован + + + + + Работа/услуга перечня + + + + + + + + Идентификатор работы/услуги перечня + + + + + + + + + + + + + + + + + Импорт актуальных планов по перечню работ/услуг + + + + + + + + Актуальный план по перечню работ/услуг + + + + + + + + + + + + + + + Экспорт плана работ/услуг + + + + + + + + + + + Идентификатор перечня + + + + + Год в рамках периода перечня + + + + + + + + + + + + + + Результат экспорта плана работ/услуг + + + + + План работ/услуг + + + + + + Идентификатор перечня работ/услуг + + + + + Год в рамках периода перечня + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + + + + Ссылка на период отчётности о выполненных работах + + + + + Год и месяц отчетного периода + + + + + + + + + + + План по работе/услуге + + + + + + Идентификатор работы/услуги перечня + + + + + + Ссылка на работу (услугу) в справочнике видов работ и услуг для организации (НСИ 59) + + + + + Ссылка на вид работы (услуги) в справочнике видов работ и услуг (НСИ 56) + + + + + Порядковый номер строки в перечне + + + + + + + Даты начала работ по плану + + + + + Количество работ + + + + + + + + + + + + + + + + + Импорт сведений о выполненных работах и услугах + + + + + + + + Перечень выполненных работ за отчетный период + + + + + + + + + + + + + + + Экспорт сведений о выполненных работах и услугах + + + + + + + + Ссылка на период отчётности о выполненных работах + + + + + + + + + + + Результат экспорта сведений о выполненных работах и услугах + + + + + + + + Импорт сведений об оценке и качестве выполненных работ и оказанных услуг + + + + + + + + Оценка качества + + + + + + + + Размещение и изменение информации об оценке качества + + + + + + Ссылка на период отчётности о выполненных работах/услугах + + + + + Работы, включенные в оценку качества за период + + + + + + Ссылка на работу (услугу) в справочнике видов работ и услуг для организации (НСИ 59) + + + + + + + + + + Ссылка на вид работы (услуги) в справочнике видов работ и услуг (НСИ 56) + + + + + Количество дней, в течение которых выполнялась (оказывалась) работа (услуга) ненадлежащего качества. +Элемент доступен и обязателен для заполнения, если по данной работе имеется акт нарушения качества. + + + + + + + + + + + Стоимость в составе ежемесячной платы за содержание и ремонт жилого помещения (рублей) + + + + + + + + + + + + Акт нарушения качества или превышения установленной продолжительности перерыва в оказании услуги или выполнении работы/Акт выполненных работ + + + + + + Добавление нового акта + + + + + Идентификатор акта. Заполняется при указании акта, размещенного в Системе. + + + + + + + + + + + + + + Аннулирование информации об оценке качества + + + + + + Ссылка на период отчётности о выполненных работах/услугах + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт сведений об оценке и качестве выполненных работ и оказанных услуг + + + + + + + + Ссылка на период отчётности о выполненных работах + + + + + + + + + + + Тип данных, описывающий оценку качества в результатах экспорта + + + + + Ссылка на период отчётности о выполненных работах + + + + + Выполненные работы, оказанные услуги, для котрых размещена информация об оцеке качества + + + + + + Выполненная работа, оказанная услуга + + + + + Ссылка на вид работы (услуги) в справочнике видов работ и услуг (НСИ 56) + + + + + Количество дней, в течение которых выполнялась (оказывалась) работа (услуга) ненадлежащего качества. +Элемент доступен и обязателен для заполнения, если по данной работе имеется акт нарушения качества. + + + + + + + + + + + Стоимость в составе ежемесячной платы за содержание и ремонт жилого помещения (рублей) + + + + + + + + + + + + Количество календарных дней в месяце + + + + + + + + + + + Размер уменьшения платы за содержание и ремонт жилого помещения (рублей) + + + + + + + + + + + + + + + + + + Экспорт тарифов ЖКУ + + + + + + + + Вид жилищно-коммунальной услуги +(M)unicipal - Коммунальные услуги +(O)verhaul - Капитальный ремонт +(S)ocial hiring - Социальный наем +(R)epair and maintenance - Содержание и ремонт жилого помещения +(C)ommunal resourses - коммунальные ресурсы + + + + + + + + + + + + + + + + + + + + + + + + + + Муниципальные образования + + + + + Субъект РФ + + + + + + Период, на который установлены тарифы + + + + Дата окончания действия тарифа + + + + + Дата начала действия тарифа + + + + + + Экспортируются только опубликованные документы. + + + + + + + + + + + Результат экспорта тарифов ЖКУ + + + + + + + Идентификатор документа тарифа в ГИС ЖКХ + + + + + Дата создания документа в ГИС ЖКХ + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + + + + + + + + + + + + + + Основные сведения по перечню работ/услуг + + + + + Идентификатор перечня + + + + + Глобальный уникальный идентификатор дома по ФИАС + + + + + Период "с" + + + + + + + + + + + Период "по" + + + + + + + + + + + Идентификатор договора управления ГИС ЖКХ + + + + + + + Работа/услуга в перечне + + + + + + + Цена + + + + + Объём + + + + + Количество + + + + + Общая стоимость + + + + + + Работа/Услуга исключена из перечня + + + + + + Ссылка на работу/услугу организации (НСИ 59) + + + + + Номер строки в перечне работ и услуг + + + + + + + + + + + + + План по перечню работ/услуг + + + + + Идентификатор перечня работ/услуг + + + + + + План по работе/услуге + + + + + + Идентификатор работы/услуги перечня + + + + + + + + Даты начала работ по плану + + + + + + Количество работ + + + + + + + + + + + + + + Базовый тип для запланированной или выполненной работы за месяц + + + + + Количество работ + + + + + Даты начала работ + + + + + + + Базовый тип выполненной работы + + + + + Фото выполненной работы/услуги + + + + + Количество выполненных работ (если не было указано в плане или изменилось) + + + + + Данные элементы не будут обработаны, поскольку возможность размещения данной информации в разделе фиксации выполненных работ закрыта. Элементы оставлены в схеме для обеспечения совместимости интеграционного взаимодействия. + + + + Описание работы в новом приложенном акте + + + + + Описание работы в ранее загруженном акте + + + + + + Фактическая цена (если не была указана в плане или изменилась). + + + + + Фактический объём (если не был указан в плане или изменился) + + + + + Фактическая стоимость выполненных работ (если не была указана в плане или изменилась) + + + + + + + Базовый тип выполненной работы для экспорта + + + + + Фото выполненной работы/услуги + + + + + Количество выполненных работ + + + + + Описание работы в акте + + + + + Фактическая цена + + + + + Фактический объём + + + + + Фактическая стоимость выполненных работ + + + + + + + Выполненная работа за период + + + + + Ссылка на период отчётности о выполненных работах/услугах + + + + + Выполненная плановая работа/услуга + + + + + + + + Идентификатор работы/услуги перечня + + + + + Количество работ по плану + + + + + + + + + + Выполненная внеплановая работа/услуга + + + + + + + + + Аварийные работы (tns:UnplannedWork/workType/Code=3) + + + + + + Ссылка на объект аварии (НСИ №57) + + + + + Причина аварии + + + + + Вид КУ (НСИ 3) для объектов аварии: +- Объект инженерной инфраструктуры +- Объект коммунальной инфраструктуры + + + + + + + + + + + + + + + По ограничениям поставки (tns:UnplannedWork/workType/Code=5) + + + + + + Вид КУ (НСИ 3) + + + + + Поставщик коммунального ресурса + + + + + + + + + + + + + + + + Комментарий + + + + + Ссылка на работу (услугу) в справочнике видов работ и услуг для организации (НСИ 59) + + + + + Ссылка на вид работы (услуги) в справочнике видов работ и услуг (НСИ 56) + + + + + + + + + + + + + + + + + + + + + + + + Выполненная работа за период (для экспорта, без TransportGUID) + + + + + Ссылка на период отчётности о выполненных работах/услугах + + + + + Выполненная плановая работа/услуга + + + + + + + + Идентификатор работы/услуги перечня + + + + + Количество работ по плану + + + + + + + + + + Выполненная внеплановая работа/услуга + + + + + + + + + Аварийные работы (tns:UnplannedWork/workType/Code=3) + + + + + + Ссылка на объект аварии (НСИ №57) + + + + + Причина аварии + + + + + Вид КУ (НСИ 3) для объектов аварии: +- Объект инженерной инфраструктуры +- Объект коммунальной инфраструктуры + + + + + + + + + + + + + + + По ограничениям поставки (tns:UnplannedWork/workType/Code=5) + + + + + + Вид КУ (НСИ 3) + + + + + Поставщик коммунального ресурса + + + + + + + + + + + + + + + + Комментарий + + + + + Ссылка на работу (услугу) в справочнике видов работ и услуг для организации (НСИ 59) + + + + + Ссылка на вид работы (услуги) в справочнике видов работ и услуг (НСИ 56) + + + + + + + + + + Акт + + + + + + + + Дата + + + + + Номер + + + + + + + + + + + Номер договора + + + + + + + + + + + Идентификатор акта + + + + + + + + + + + + Статус: +(A)PPROVED - Утверждён +(C)ANCELLED - Отменён + + + + + + + + + + + + Тип для цены работ/услуг + + + + + + + + + + Тип для объема работ/услуг + + + + + + + + + Тип для количества работ/услуг в перечне + + + + + + + + Тип для количества работ/услуг за месяц + + + + + + + + Тип для стоимости работ/услуг + + + + + + + + + + Документ. Тарифы ЖКУ + + + + + + + Дата начала действия тарифа + + + + + Дата окончания действия тарифа + + + + + Отмяеняет прежний документ (ссылка на документ) + + + + + Документ всегда приходит в статусе "Опубликован" и публикуется на Портале. Экспортируются только опубликованные документы. + + + + + Субъект РФ + + + + + Тариф на + + + + Вид ЖКУ = "Коммунальные услуги" +Доступно организациям с полномочием: +- Орган государственной власти субъекта РФ в сфере ЖКХ +- Орган местного самоуправления в сфере ЖКХ +- Управляющая организация + + + + + + + Вид коммунальной услуги (НСИ №3) + + + + + Муниципальное образование + + + + + Идентификатор РСО + + + + + Система коммунальной инфраструктуры (СКИ) + + + + + + Наименование СКИ + + + + + + + + + + + + + + + + + +Вид ЖКУ = "Коммунальные ресурсы" +Доступно организациям с полномочием: +- Орган исполнительной власти субъекта РФ в области регулирования тарифов +- Федеральная антимонопольная служба (Федеральная служба по тарифам) +- Ресурсоснабжающая организация + + + + + + Вид коммунального ресурса (НСИ №2) + + + + + + + + Уточненное наименование коммунального ресурса + + + + + + + + + + + + + + + + + + + +Вид ЖКУ = "Капитальный ремонт" +Доступно организациям с полномочиями: +- Орган государственной власти субъекта РФ в сфере ЖКХ + + + + + Доступно организациям с полномочиями: +- Орган государственной власти субъекта РФ в сфере ЖКХ + + + + Муниципальные образования + + + + + Вид жилищно-коммунальной услуги +(S)ocial hiring - Социальный наем +(R)epair and maintenance - Содержание и ремонт жилого помещения + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Тип данных, описывающий реквизитов акта + + + + + Тип акта. +Возможные значения: (C)ompleted works - Акт выполненных работ; +(Q)uality violation - Акт нарушения качества. + + + + + + + + + + + + Номер акта + + + + + Дата заключения + + + + + Дата начала отчетного периода. +Элемент обязательно заполняется для акта выполненных работ. + + + + + Дата окончания отчетного периода. +Элемент обязательно заполняется для акта выполненных работ. + + + + + Файл акта + + + + + + + Тип данных, описывающий реквизиты акта в результатах экспорте + + + + + Идентификатор акта + + + + + Тип акта. +Возможные значения: (C)ompleted works - Акт выполненных работ; +(Q)uality violation - Акт нарушения качества. + + + + + + + + + Номер акта + + + + + Дата заключения + + + + + Дата начала отчетного периода. +Элемент обязательно заполняется для акта выполненных работ. + + + + + Дата окончания отчетного периода. +Элемент обязательно заполняется для акта выполненных работ. + + + + + Файл акта + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-service-async.wsdl new file mode 100644 index 0000000..e1b1c5a --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-service-async.wsdl @@ -0,0 +1,341 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт информации о социальных нормах потребления электрической энергии + + + + + + Экспорт информации о социальных нормах потребления электрической энергии + + + + + + Импорт информации о размерах платы за содержание жилого помещения + + + + + + Экспорт информации о размерах платы за содержание жилого помещения + + + + + + Импорт информации о тарифах на оплату коммунальных ресурсов + + + + + + Экспорт информации о тарифах на оплату коммунальных ресурсов + + + + + + Импорт информации о минимальных размерах взносов на капитальный ремонт + + + + + + Экспорт информации о минимальных размерах взносов на капитальный ремонт + + + + + + Импорт информации о размерах платы за пользование жилым помещением + + + + + + Экспорт информации о размерах платы за пользование жилым помещением + + + + + + Экспорт списка критериев дифференциации + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сервис Ведение тарифов + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-types.xsd new file mode 100644 index 0000000..5883a87 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tariff/hcs-tariff-types.xsd @@ -0,0 +1,2081 @@ + + + + + + + + Строка от 1 до 255 символов, содержащая по крайней мере один символ, отличный от пробельного + + + + + + + + + + Строка от 1 до 500 символов, содержащая по крайней мере один символ, отличный от пробельного + + + + + + + + + + Строка от 1 до 1000 символов, содержащая по крайней мере один символ, отличный от пробельного + + + + + + + + + + Строка от 1 до 2000 символов, содержащая по крайней мере один символ, отличный от пробельного + + + + + + + + + + Строка от 1 до 4000 символов, содержащая по крайней мере один символ, отличный от пробельного + + + + + + + + + + Статус объекта. Published - размещено в ГИС ЖКХ, Canceled - аннулированная информация + + + + + Размещено в ГИС ЖКХ + + + + + Аннулированная информация + + + + + + + Дата в диапазоне от 01.01.1901 до 01.01.3000 + + + + + + + + + + Критерий дифференциации перечислимого типа (значение из справочника) + + + + + + + + Критерий дифференциации перечислимого типа (выбор из справочника ФИАС) + + + + + + Критерий дифференциации перечислимого типа (выбор из справочника ОКТМО) + + + + + + + + Критерий дифференциации типа даты + + + + + + Критерий дифференциации типа год + + + + + + Критерий дифференциации типа вещественное число + + + + + + + + + + + Критерий дифференциации типа целое число + + + + + + + + Критерий дифференциации логического типа + + + + + + Критерий дифференциации строкового типа + + + + + + Критерий дифференциации многострокового типа + + + + + Наименование критерия + + + + + Значение + + + + + + + Критерии дифференциации тарифов + + + + + Код критерия дифференциации (см. метод exportTariffDifferentiation) + + + + + + + Range-диапазон значений, ExcludingRange-исключая диапазон значений + + + + + + + + + + + Значение критерия дифференциации перечислимого типа + + + + + + Значение критерия дифференциации типа даты, целое число, вещественное число + + + + С операторами равно/больше/не более/меньше/не менее + + + + Equal-равно, More-больше, NotMore-не более, Less-меньше, NotLess-не меньше + + + + + + + + + + + + + + + Значение критерия дифференциации типа даты + + + + + Значение критерия дифференциации типа год + + + + + Значение критерия дифференциации типа целое число + + + + + Значение критерия дифференциации типа вещественное число + + + + + + + С операторами диапазон значений/исключая диапазон значений + + + + Range-диапазон значений, ExcludingRange-исключая диапазон значений + + + + + + + + + + + + + Значение критерия дифференциации типа даты C + + + + + Значение критерия дифференциации типа даты ПО + + + + + + + Значение критерия дифференциации типа год C + + + + + Значение критерия дифференциации типа год ПО + + + + + + + Значение критерия дифференциации типа целое число С + + + + + Значение критерия дифференциации типа целое число ПО + + + + + + + Значение критерия дифференциации типа вещественное число С + + + + + Значение критерия дифференциации типа вещественное число ПО + + + + + + + + + Значение критерия дифференциации строкового типа + + + + + Значение критерия дифференциации логического типа + + + + + Значение критерия дифференциации многострочного типа + + + + + Значение критерия дифференциации перечислимого типа (выбор из справочника ФИАС) + + + + + Значение критерия дифференциации перечислимого типа (выбор из справочника ОКТМО) + + + + + + + + + Величина тарифа + + + + + + + + + + + Значение коэффициента + + + + + + + + + + + Код единицы измерения электрической энергии + + + + + Ватт-час + + + + + Киловатт-час + + + + + + + Коэффициент тарифа + + + + + Значение коэффициента + + + + + Описание коэффициента + + + + + + + Нормативный правовой акт + + + + + Номер документа + + + + + Дата принятия документа органом власти + + + + + + + Тариф (общий тип) + + + + + Наименование + + + + + Идентификатор утверждающего нормативного правового акта в ГИС ЖКХ + + + + + Территория, на которой применяется + + + + + Дата начала действия + + + + + Дата окончания действия + + + + + + + Экспортируемые сведения о тарифе + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + + Тариф на оплату коммунальных ресурсов + + + + + Размер платы за содержание жилого помещения + + + + + Минимальный размер взноса на капитальный ремонт + + + + + Социальная норма потребления электрической энергии + + + + + Размер платы за пользование жилым помещением + + + + + + + + + Тариф на оплату коммунальных ресурсов + + + + + + + НСИ 268 (Вид тарифа) + + + + + Описание дифференцированной цены тарифа. При импорте необходимо присылать все цены тарифа в их актуальном состоянии + + + + + Организации, осуществляющие регулируемые виды деятельности в соответствующей сфере + + + + Для всех организаций, осуществляющих деятельность на указанной территории + + + + + Регулируемая организация + + + + + + Идентификаторы тарифов - компонентов составного тарифа + + + + + + + + + Дифференцированная цена тарифа на оплату коммунальных ресурсов + + + + + Идентификатор дифференцированной цены тарифа (заполняется только при изменении ранее добавленной цены) + + + + + НСИ 262 (Состав тарифа) - компонент/ставка + + + + + Описание + + + + + Величина тарифа (ставки тарифа) + + + + + Единицы измерения (руб./единицу измерения) + + + + + Критерии дифференциации цены тарифа + + + + Критерии дифференциации не установлены + + + + + Критерии дифференциации + + + + + + + + + Размер платы за содержание жилого помещения + + + + + + + НСИ 307 (Установленный размер применяется) + + + + + Величина (руб./кв.метр). Если не заполнено, то размер платы установлен в разрезе работ (услуг) + + + + + Критерии дифференциации размера платы + + + + Критерии дифференциации не установлены + + + + + Критерии дифференциации + + + + + + Коэффициенты тарифа + + + + Коэффициенты тарифа не установлены + + + + + Коэффициент тарифа + + + + + + Работы (услуги) по содержанию жилого помещения + + + + Без детализации по видам работ (услуг) + + + + + НСИ 13 (Классификатор видов работ (услуг)) + + + + + + + + Величина, руб. + + + + + + + + + + + + + + + + + + + + + + + Минимальный размер взноса на капитальный ремонт + + + + + + + Величина (руб./кв.метр) + + + + + Критерии дифференциации минимального размера взноса на капитальный ремонт + + + + Критерии дифференциации не установлены + + + + + Критерии дифференциации + + + + + + Коэффициенты тарифа + + + + Коэффициенты тарифа не установлены + + + + + Коэффициент тарифа + + + + + + + + + + + Социальная норма потребления электрической энергии + + + + + + + Величина + + + + + Код единицы измерения. Доступные значения 245 – Киловатт-час, 243 Ватт-час + + + + + Критерии дифференциации социальной нормы потребления электрической энергии + + + + Критерии дифференциации социальной нормы потребления электрической энергии + + + + + + + + + + + + + + + + + + Критерии дифференциации социальной нормы потребления электрической энергии не установлены + + + + + + Коэффициенты тарифа + + + + Коэффициент тарифа + + + + + Коэффициенты тарифа не установлены + + + + + + + + + + + Размер платы за пользование жилым помещением + + + + + + + Величина (руб./кв.метр) + + + + + Критерии дифференциации размера платы + + + + Критерии дифференциации + + + + + + + + + + + + + + + + + + Критерии дифференциации не установлены + + + + + + Коэффициенты тарифа + + + + Коэффициент тарифа + + + + + Коэффициенты тарифа не установлены + + + + + + + + + + + Тип значения критерия дифференциации + + + + + Перечислимый + + + + + FIAS-перечислимый (выбор из справочника ФИАС) + + + + + Дата + + + + + Год + + + + + Вещественное число + + + + + Целое число + + + + + Логическое значение + + + + + Строка + + + + + Многострочный + + + + + OKTMO-перечислимый (выбор из справочника ОКТМО) + + + + + + + Тип тарифа + + + + + Тариф на оплату коммунальных ресурсов + + + + + Размер платы за содержание жилого помещения + + + + + Минимальный размер взноса на капитальный ремонт + + + + + Социальная норма потребления электрической энергии + + + + + Размер платы за пользование жилым помещением + + + + + + + Экспортируемые сведения о критерии дифференциации + + + + + Код критерия дифференциации. + + + + + Наименование критерия дифференциации. + + + + + Тип значения критерия дифференциации. + + + + + Тип тарифа, для которого применяется критерий дифференциации (MunicipalResourceTariff - тариф на оплату коммунальных ресурсов, ResidentialPremisesMaintenance - размер платы за содержание жилого помещения, CapitalRepairTariff - минимальный размер взноса на капитальный ремонт, SocialNorm - социальная норма потребления электрической энергии, ResidentialPremisesUsage - размер платы за пользование жилым помещением. + + + + + Сведения о виде тарифа из справочника НСИ 125 (Вид тарифа). Заполняется только для тарифов на коммунальные ресурсы. Содержит сведения о виде тарифа на коммунальные ресурсы, для которого может быть применен критерий дифференциации. + + + + + Информация о справочнике для критерия перечислимого типа. + + + + + + + + + + + + + + true - справочником предусмотрено несколько значений; false - справочником предусмотрено одно значение (при формировании запросов на импорт сведений о тарифах, для критериев перечислимого типа предоставляется возможность указать несколько значений). + + + + + + + + Запрос на импорт информации о социальных нормах потребления электрической энергии + + + + + + + + Импортируемая информации о социальной норме потребления электрической энергии + + + + + + Транспортный идентификатор для выполнения операции с социальной норме потребления электрической энергии + + + + + Идентификатор социальной нормы потребления электрической энергии, заполняется при изменении и аннулировании информации о социальной норме потребления электрической энергии + + + + + + Создать/изменить информацию о социальной норме потребления электрической энергии. При изменении информации о социальной норме потребления электрической энергии необходимо указывать все актуальные сведения. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Аннулировать информацию о социальной норме потребления электрической энергии + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о социальных нормах потребления электрической энергии + + + + + + + + Идентификатор тарифа + + + + + + Территория, на которой применяется + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + Экспортировать только размещенную информацию + + + + + + + + + + + + + Запрос на импорт информации о размерах платы за содержание жилого помещения + + + + + + + + Импортируемая информация о размерах платы за содержание жилого помещения + + + + + + Транспортный идентификатор для выполнения операции с информацией о размерах платы за содержание жилого помещения + + + + + Идентификатор тарифа, заполняется при изменении и аннулировании информации о размерах платы за содержание жилого помещения + + + + + + Создать/изменить информацию о размерах платы за содержание жилого помещения. При изменении информации о размерах платы за содержание жилого помещения необходимо указать все актуальные сведения. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Аннулировать информацию о размерах платы за содержание жилого помещения + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о размерах платы за содержание жилого помещения + + + + + + + + Идентификатор тарифа + + + + + + Территория, на которой применяется + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + Экспортировать только размещенную информацию + + + + + + + + + + + + + Запрос на импорт информации о тарифах на оплату коммунальных ресурсов + + + + + + + + Импортируемая информация о тарифах на оплату коммунальных ресурсов + + + + + + Транспортный идентификатор для выполнения операции с информацией о тарифах на оплату коммунальных ресурсов + + + + + Идентификатор тарифа, заполняется при изменении и аннулировании информации о тарифах на оплату коммунальных ресурсов + + + + + + Создать/изменить информацию о тарифах на оплату коммунальных ресурсов. При изменении информации о тарифах на оплату коммунальных ресурсов необходимо указать все актуальные сведения. + + + + + + + + + + + + + + + + + Аннулировать информацию о тарифах на оплату коммунальных ресурсов + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о тарифах на оплату коммунальных ресурсов + + + + + + + + Идентификатор тарифа + + + + + + Территория, на которой применяется + + + + + Регулируемая организация + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + Экспортировать только размещенную информацию + + + + + + + + + + + + + Запрос на импорт информации о минимальных размерах взносов на капитальный ремонт + + + + + + + + Импортируемая информация о минимальных размерах взносов на капитальный ремонт + + + + + + Транспортный идентификатор для выполнения операции с информацией о минимальных размерах взносов на капитальный ремонт + + + + + Идентификатор тарифа, заполняется при изменении и аннулировании информации о минимальных размерах взносов на капитальный ремонт + + + + + + Создать/изменить информацию о минимальных размерах взносов на капитальный ремонт. При изменении информации о минимальных размерах взносов на капитальный ремонт необходимо указать все актуальные сведения. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Аннулировать информацию о минимальных размерах взносов на капитальный ремонт + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о минимальных размерах взносов на капитальный ремонт + + + + + + + + Идентификатор тарифа + + + + + + Территория, на которой применяется + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + Экспортировать только размещенную информацию + + + + + + + + + + + + + Запрос на импорт информации о размерах платы за пользование жилым помещением + + + + + + + + Импортируемая информация о размерах платы за пользование жилым помещением + + + + + + Транспортный идентификатор для выполнения операции с информацией о размерах платы за пользование жилым помещением + + + + + Идентификатор тарифа, заполняется при изменении и аннулировании информации о размерах платы за пользование жилым помещением + + + + + + Создать/изменить информацию о размерах платы за пользование жилым помещением. При изменении информации о размерах платы за пользование жилым помещением необходимо указать все актуальные сведения. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Аннулировать информацию о размерах платы за пользование жилым помещением + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос на экспорт информации о размерах платы за пользование жилым помещением + + + + + + + + Идентификатор тарифа + + + + + + Территория, на которой применяется + + + + + + Дата вступления в силу С + + + + + Дата вступления в силу ПО + + + + + + Экспортировать только размещенную информацию + + + + + + + + + + + + + Запрос на экспорт списка критериев дифференциации + + + + + + + + Код записи + + + + + + + + + + + Ответ на запрос экспорта списка критериев дифференциации + + + + + + + + + Экспортируемые сведения о видах критериев дифференциации + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + Результат импорта + + + + + Результат экспорта видов критериев дифференциации + + + + + + Экспортируемые сведения о видах критериев дифференциации + + + + + + + + Результат экспорта информации о социальных нормах потребления электрической энергии + + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + Экспортируемые сведения о социальных нормах потребления электрической энергии + + + + + + + + Результат экспорта информации о размере платы за содержание жилого помещения + + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + Экспортируемые сведения о размерах плат за содержание жилого помещения + + + + + + + + Результат экспорта информации о тарифах на оплату коммунальных ресурсов + + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + Экспортируемые сведения о тарифах на оплату коммунальных ресурсов + + + + + + + + Результат экспорта информации о размере взноса на капитальный ремонт + + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + Экспортируемые сведения о минимальных размерах взносов на капитальный ремонт + + + + + + + + Результат экспорта информации о размере платы за пользование жилым помещением + + + + + + Идентификатор тарифа + + + + + Статус информации о тарифе + + + + + Причина аннулирования + + + + + Экспортируемые сведения о размерах плат за пользование жилым помещением + + + + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-service-async.wsdl new file mode 100644 index 0000000..462d71b --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-service-async.wsdl @@ -0,0 +1,324 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Экспорт заявления на определение организации для технологического присоединения + + + + + + Экспорт заявления на предоставление технических условий подключения + + + + + + Экспорт заявления на предоставление информации о возможности подключения + + + + + + Экспорт заявления на заключение договора о подключении + + + + + + Экспорт заявления на получение акта по договору о подключении + + + + + + Импорт информации об изменении статуса заявления на определение организации для технологического присоединения + + + + + + Импорт информации об изменении статуса заявления на предоставление технических условий подключения + + + + + + Импорт информации об изменении статуса заявления на предоставление информации о возможности подключения + + + + + + Импорт информации об изменении статуса заявления на заключение договора о подключении + + + + + + Импорт информации об изменении статуса заявления на получение акта по договору + + + + + + + + + + + + + + Экспорт заявления на определение организации для технологического присоединения + + + + + + + + + + + + + + + Экспорт заявления на предоставление технических условий подключения + + + + + + + + + + + + + + + Экспорт заявления на предоставление информации о возможности подключения + + + + + + + + + + + + + + + Экспорт заявления на заключение договора о подключении + + + + + + + + + + + + + + + Экспорт заявления на получение акта по договору о подключении + + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на определение организации для технологического присоединения + + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на предоставление технических условий подключения + + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на предоставление информации о возможности подключения + + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на заключение договора о подключении + + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на получение акта по договору + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Асинхронный сервис работы с заявлениями по технологическому присоединению + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-types.xsd new file mode 100644 index 0000000..4e25921 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/tech-conn/hcs-tech-conn-types.xsd @@ -0,0 +1,4148 @@ + + + + + + + + + + + Запрос на экспорт заявлений на определение организации для технологического присоединения + + + + + + + + + + + + Результат экспорта заявлений на определение организации для технологического присоединения + + + + + + + + Результат запроса на экспорт заявлений на определение организации для технологического присоединения + + + + + + + + + + + + + Запрос на экспорт заявлений на предоставление технических условий подключения + + + + + + + + + + + + Результат экспорта заявлений на предоставление технических условий подключения + + + + + + + + Результат запроса на экспорт заявлений на предоставление технических условий подключения + + + + + + + + + + + + + Запрос на экспорт заявлений на предоставление информации о возможности подключения к сетям теплоснабжения + + + + + + + + + + + + Результат экспорта заявлений на предоставление информации о возможности подключения к сетям теплоснабжения + + + + + + + + Результат запроса на экспорт заявлений на предоставление информации о возможности подключения к сетям теплоснабжения + + + + + + + + + + + + + Запрос на экспорт заявлений на заключение договоров о подключении + + + + + + + + Идентификатор заявления в ГИС ЖКХ + + + + + Номер заявления в ГИС ЖКХ + + + + + Дата регистрации заявления в ГИС ЖКХ + + + + Дата регистрации заявления - с (включительно) + + + + + Дата регистрации заявления - по (включительно) + + + + + + Дата последней активности заявителя + + + + + + + + + + + Результат экспорта заявлений на заключение договоров о подключении + + + + + + + + Результат запроса на экспорт заявлений на заключение договоров о подключении + + + + + + + + + + + + + Запрос на экспорт заявлений на получение актов по договорам + + + + + + + + Идентификатор заявления в ГИС ЖКХ + + + + + Номер заявления в ГИС ЖКХ + + + + + Дата регистрации заявления в ГИС ЖКХ + + + + Дата регистрации заявления - с (включительно) + + + + + Дата регистрации заявления - по (включительно) + + + + + + Дата последней активности заявителя + + + + + + + + + + + Результат экспорта заявлений на получение актов по договорам + + + + + + + + Результат запроса на экспорт заявлений на получение актов по договорам + + + + + + + + + + + + + + Импорт информации об изменении статуса заявления на определение организации для технологического присоединения + + + + + + + + Импорт сведений о работе с заявлением + + + + + + + + Уникальный идентификатор заявления в ГИС ЖКХ + + + + + + + Сведения о назначенном исполнителе + + + + + + Фамилия И.О. назначенного исполнителя + + + + + + + + Сведения о взятии заявления в работу исполнителем + + + + + Ответ по заявлению на определение организации для технологического присоединения + + + + + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности идентификатора заявления в рамках запроса + + + + + + + + + Импорт информации об изменении статуса заявления на предоставление технических условий подключения + + + + + + + + Импорт сведений о работе с заявлением + + + + + + + + Уникальный идентификатор заявления в ГИС ЖКХ + + + + + + + Сведения о назначенном исполнителе + + + + + + Фамилия И.О. назначенного исполнителя + + + + + + + + Сведения о взятии заявления в работу исполнителем + + + + + Ответ по заявлению на предоставление технических условий подключения + + + + + + + + + + + + + + + + + + Проверка уникальности идентификатора заявления в рамках запроса + + + + + + + + + Импорт информации об изменении статуса заявления на предоставление технических условий подключения + + + + + + + + Импорт сведений о работе с заявлением + + + + + + + + Уникальный идентификатор заявления в ГИС ЖКХ + + + + + + + Сведения о назначенном исполнителе + + + + + + Фамилия И.О. назначенного исполнителя + + + + + + + + Сведения о взятии заявления в работу исполнителем + + + + + Ответ по заявлению на предоставление технических условий подключения + + + + + + + + + + + + + + + + + + Проверка уникальности идентификатора заявления в рамках запроса + + + + + + + + + Импорт информации об изменении статуса заявления на заключение договора о подключении + + + + + + + + Импорт сведений о работе с заявлением + + + + + + + + Уникальный корневой идентификатор заявления в ГИС ЖКХ + + + + + + + Сведения о назначенном исполнителе + + + + + + Фамилия И.О. назначенного исполнителя + + + + + + + + Сведения о взятии заявления в работу исполнителем + + + + + Комплектность подтверждена + + + + + Заявка некомплектна + + + + + Отказать в подключении + + + + + Отсутствует возможность подключения + + + + + Необходимо согласование со смежной организацией + + + + + Установление размера платы в индивидуальном порядке + + + + + Включение в инвестиционную программу + + + + + Подтвердить отказ от подключения + + + + + Аннулировать заявление + + + + + Сообщить об отказе включения в инвестпрограмму + + + + + Отправить договор заявителю + + + + + Подтвердить подписание договора + + + + + Сообщить о проведении приемочных работ по договору + + + + + Отправить акт о готовности заявителю + + + + + Подтвердить подписание акта о готовности + + + + + Отказать в выдаче акта о готовности + + + + + Отправить акт о подключении заявителю + + + + + + + + Акт о подключении ранее был подписан вне системы + + + + + + + + + + Подтвердить подписание акта о подключении + + + + + Отказать в выдаче акта о подключении + + + + + Продлить срок рассмотрения заявления + + + + + Завершить оказание услуги + + + + + Отправить договор на повторное подписание заявителю + + + + + Отправить акт о готовности на повторное подписание заявителю + + + + + Отправить акт о подключении на повторное подписание заявителю + + + + + + + + + + + + + + + + + + Проверка уникальности идентификатора заявления в рамках запроса + + + + + + + + + Импорт информации об изменении статуса заявления на получение акта по договору о подключении + + + + + + + + Импорт сведений о работе с заявлением + + + + + + + + Уникальный идентификатор заявления в ГИС ЖКХ + + + + + + + Сведения о назначенном исполнителе + + + + + + Фамилия И.О. назначенного исполнителя + + + + + + + + Сведения о взятии заявления в работу исполнителем + + + + + Отказать в выдаче акта + + + + + Договор не найден + + + + + Сообщить о проведении приемочных работ + + + + + Отправить акт заявителю + + + + + Подтвердить подписание акта + + + + + Отправить акт на повторное подписание заявителю + + + + + + + + + + + + + + + + + + Проверка уникальности идентификатора заявления в рамках запроса + + + + + + + + + Результат обработки запроса + + + + + + + + + Резульат запроса на импорт + + + + + Результат запроса на экспорт заявлений на определение организации для технологического присоединения + + + + + Результат запроса на экспорт заявлений на предоставление технических условий подключения + + + + + Результат запроса на экспорт заявлений на предоставление информации о возможности подключения + + + + + Результат запроса на экспорт заявлений заключение договора о подключении + + + + + Результат запроса на экспорт заявлений на получение актов по договорам + + + + + + + + + + + + + Составной тип. Запрос на экспорт заявления в рамках технологического присоединения + + + + + + + Идентификатор заявления в ГИС ЖКХ + + + + + Номер заявления в ГИС ЖКХ + + + + + Дата регистрации заявления в ГИС ЖКХ + + + + Дата регистрации заявления - с (включительно) + + + + + Дата регистрации заявления - по (включительно) + + + + + + + + + + Составной тип. Экспорт заявления на определение организации для технологического присоединения + + + + + Общие сведения о заявлении + + + + + + + + Статус заявления + + + + + + + + + + Вид сети для технологического присоединения. Значение из справочника "Виды сетей для технологического присоединения" + + + + + + Вид сети для технологического присоединения. Справочник "Виды сетей для технологического присоединения" + + + + + Подключаемый ресурс. Справочник "Вид ресурсов или услуг, доступный для подключения" в ЕСНСИ + + + + + + + + Сведения о заявителе + + + + + Категория заявителя. Справочник "Лица, которым доступна возможность отправки заявления по подключению объектов капитального строительства к централизованным системам" ЕСНСИ + + + + + Сведения о представителе заявителя + + + + + Информация об адресе подключаемого объекта + + + + + Сведения о земельном участке + + + + + + + + Вид разрешенного использования земельного участка. Справочник "Вид разрешенного использования земельного участка" ЕСНСИ + + + + + + + + + + Сведения об объекте недвижимости + + + + + + + + Правоустанавливающий или правоудостоверяющий документ на подключаемый объект + + + + + Правоустанавливающий или правоудостоверяющий документ на подключаемый объект с открепленной (detached) подписью + + + + + + + + + + Документы, приложенные к заявлению + + + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок с открепленной (detached) подписью + + + + + + + Документ, содеражащий сведения о границах земельного участка + + + + + Документ, содеражащий сведения о границах земельного участка с открепленной (detached) подписью + + + + + + + + + + + Составной тип. Экспорт заявления на предоставление технических условий подключения + + + + + Общие сведения о заявлении + + + + + + + + Статус заявления + + + + + + + + + + Категория заявителя. Справочник "Лица, которым доступна возможность отправки заявления по подключению объектов капитального строительства к централизованным системам" ЕСНСИ + + + + + Вид сети для технологического присоединения. Значение из справочника "Виды сетей для технологического присоединения" + + + + + + Вид сети для технологического присоединения. Справочник "Виды сетей для технологического присоединения" + + + + + Подключаемый ресурс. Справочник "Вид ресурсов или услуг, доступный для подключения" в ЕСНСИ + + + + + + + + Основание обращения. + Для заявлений по теплоснабжению - справочник "Основание обращения за услугой по выдаче технических условий подключения и договора о подключении к системам теплоснабжения" ЕСНСИ + Для заявлений по водоснабению и водоотведению - справочник "Основание обращения за услугой по выдаче технических условий подключения к системам водоснабжения и (или) водоотведения" ЕСНСИ + + + + + Заполняется если заявитель = Лицо, с которым заключен договор о комплексном развитии территории + + + + Номер договора о комплексном развитии территории + + + + + Дата заключения договора о комплексном развитии территории + + + + + + + Номер решения о предварительном согласовании предоставления земельного участка + + + + + Дата решения о предварительном согласовании предоставления земельного участка + + + + + + Сведения о заявителе + + + + + Сведения о представителе заявителя + + + + + Информация об адресе подключаемого объекта + + + + + Сведения о земельном участке + + + + + + + + Вид разрешенного использования земельного участка. Справочник "Вид разрешенного использования земельного участка" ЕСНСИ + + + + + Предельное количество этажей + + + + + Предельная высота здания/сооружения + + + + + + + + + + Сведения об объекте недвижимости + + + + + + + + Правоустанавливающий или правоудостоверяющий документ на подключаемый объект + + + + + Правоустанавливающий или правоудостоверяющий документ на подключаемый объект с открепленной (detached) подписью + + + + + + + Планируемый срок ввода в эксплуатацию объекта + + + + + Планируемая дата согласования уведомления об окончании строительства + + + + + + Планируемый срок завершения строительства объекта + + + + + + + + + + + Технические характеристики подключаемого объекта + + + + + + Для заявлений по водоснабжению и (или) водоотведению + + + + Подключаемая мощность (нагрузка) по водоснабжени и (или) водоотведению + + + + + Текущая подключеная мощность (нагрузка) по водоснабжени и (или) водоотведению + + + + + + Для заявлений по теплоснабжению + + + + Подключаемая мощность (нагрузка) по теплоснабжению + + + + + Сведения о теплопотреблении + + + + + Сведения о теплоносителе + + + + + Категория надежности. Справочник "Категория надежности теплоснабжения подключаемого объекта" ЕСНСИ + + + + + + + + + Документы, приложенные к заявлению + + + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок с открепленной (detached) подписью + + + + + + + Документ, содеражащий сведения о границах земельного участка + + + + + Документ, содеражащий сведения о границах земельного участка с открепленной (detached) подписью + + + + + + + Копия договора на подготовку проектной документации на подключаемый объект + + + + + Копия договора на подготовку проектной документации на подключаемый объект c открепленной (detached) подписью + + + + + + + Градостроительный план земельного участка + + + + + Градостроительный план земельного участка c открепленной (detached) подписью + + + + + + + + + + + Составной тип. Экспорт заявления на предоставление информации о возможности подключения к сетям теплоснабжения + + + + + Общие сведения о заявлении + + + + + + + + Статус заявления + + + + + + + + + + Категория заявителя. Справочник "Лица, которым доступна возможность отправки заявления по подключению объектов капитального строительства к централизованным системам" ЕСНСИ + + + + + Вид сети для технологического присоединения. Значение из справочника "Виды сетей для технологического присоединения" + + + + + + Вид сети для технологического присоединения. Справочник "Виды сетей для технологического присоединения" + + + + + + + + Основание обращения. Cправочник "Основание обращения за услугой по выдаче технических условий подключения и договора о подключении к системам теплоснабжения" ЕСНСИ + + + + + Сведения о заявителе + + + + + Сведения о представителе заявителя + + + + + Информация об адресе подключаемого объекта + + + + + Сведения о земельном участке + + + + + + + + Вид разрешенного использования земельного участка. Справочник "Вид разрешенного использования земельного участка" ЕСНСИ + + + + + + + + + + Сведения об объекте недвижимости + + + + + + + + Срок, в течение которого заявитель обратится в сетевую организацию за заключением договора о подключении + + + + + + + + + + Технические характеристики подключаемого объекта + + + + + + Подключаемая мощность (нагрузка) по теплоснабжению + + + + + Сведения о теплопотреблении + + + + + Сведения о теплоносителе + + + + + + + + Документы, приложенные к заявлению + + + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок с открепленной (detached) подписью + + + + + + + Документ, содеражащий сведения о границах земельного участка + + + + + Документ, содеражащий сведения о границах земельного участка с открепленной (detached) подписью + + + + + + + + + + + Составной тип. Экспорт заявления на заключение договора о подключении + + + + + Заявление на заключение договора о подключении + + + + + Договор о подключении + + + + + Акт по договору + + + + + История взаимодействия + + + + + + Сообщение в рамках взаимодействия с заявителем + + + + + + + + + + Составной тип. Экспорт заявления на получение акта по договору + + + + + Заявление на получение акта по договору + + + + + Акт по договору + + + + + История взаимодействия + + + + + + Сообщение в рамках взаимодействия с заявителем + + + + + + + + + + Составной тип. Общие сведения о заявлении + + + + + Уникальный идентификатор заявления в ГИС ЖКХ + + + + + Регистрационны номер заявления в ГИС ЖКХ + + + + + Дата регистрации заявления в ГИС ЖКХ + + + + + Заполняется, если заявление было получено из ЕПГУ + + + + Номер заявления на ЕПГУ + + + + + Дата заявления на ЕПГУ + + + + + Сведения о статусе отправки ответа на ЕПГУ + + + + + + Статус отправки ответа + + + + + + + + + + + + + Дата отправки + + + + + + + + + Информация об исполнителе по заявлению + + + + + + Фамилия И.О. исполнителя по заявлению + + + + + + + + Дата истечения срока отправки ответа по заявлению. В зависимости от статуса заявления ответ может ожидаться как от сетевой организации, так и от заявителя + + + + + + + Составной тип: Экспрот данных акта по договору + + + + + Корневой идентификатор акта + + + + + Вид акта + + + + + Статус акта + + + + + Версия акта + + + + + + Идентификатор версии акта + + + + + Порядковый номер версии + + + + + Дата версии + + + + + Актуальная версия + + + + + Номер акта + + + + + Дата акта + + + + + Файл акта, подписанный со стороны исполнителя + + + + + Сообщение заявителю + + + + + + + Файлы, содержащие замечания к акту + + + + + Сообщение от заявителя + + + + + + + Файлы подписанного заявителем акта + + + + + Дата подписания акта + + + + + + + + + + + + Составной тип: Экспорт данных заявления на получение акта по договору + + + + + Общие сведения о заявлении + + + + + + + + Статус заявления + + + + + + + + + + Вид сети для технологического присоединения. Справочник "Виды сетей для технологического присоединения" + + + + + Категория заявителя. Справочник "Лица, которым доступна возможность отправки заявления по подключению объектов капитального строительства к централизованным системам" ЕСНСИ + + + + + Сведения о заявителе + + + + + Информация об адресе подключаемого объекта + + + + + Сведения о представителе заявителя + + + + + Номер договора о подключении + + + + + Дата договора о подключении + + + + + Вид запрашиваемого акта + + + + + Документы, приложенные к заявлению + + + + + + Документы о полной оплате услуг по договору + + + + + + + + Версионный идентификатор заявления на заключение договора о подключении. Заполняется, если в текущем заявлении указана ссылка на заявление, в рамках которого был заключен договор + + + + + + + Составной тип: Экспорт данных заявления на заключение договора о подключении + + + + + Общие сведения о заявлении + + + + + + + + Статус заявления + + + + + + + + + + Версия заявления + + + + + + Уникальный идентификатор версии заявления в ГИС ЖКХ + + + + + Номер версии + + + + + Дата версии + + + + + Актуальная версия + + + + + Сведения о видах сетей и подключаемых ресурсах + + + + + + Вид сети для технологического присоединения. Справочник "Виды сетей для технологического присоединения" + + + + + Подключаемый ресурс. Справочник "Вид ресурсов или услуг, доступный для подключения" в ЕСНСИ + + + + + + + + Основание обращения (вид работ). + +Для заявлений по водоснабжению и (или) водоотведению - справочник "Основание для заключения договора о подключении к системам водоснабжения и водоотведения" ЕСНСИ + +Для заявлений по теплоснабжению - справочник "Основание обращения за услугой по выдаче технических условий подключения и договора о подключении к системам теплоснабжения" ЕСНСИ + + + + + Категория заявителя. Справочник "Лица, которым доступна возможность отправки заявления по подключению объектов капитального строительства к централизованным системам" ЕСНСИ + + + + + Сведения о заявителе + + + + + + + Сведения о статусе документов, ранеее предоставляемых в сетевую организацию в процессе обращения за услугой в отношении подключаемого объекта, указанного в текущем заявлении + + + + Срок действия ранее предоставляемого учредительного документа не истек, и сведения, содержащиеся в документе, не изменились + + + + + Срок действия ранее предоставляемого документа, удостоверяющего личность заявителя, не истек, и сведения, содержащиеся в документе, не изменились + + + + + + + + + + Информация об адресе подключаемого объекта + + + + + + Сведения о заявлении, с которым ранее обращался заявитель, и заявление было аннулировано. + + + + Номер заявления на заключение договора о подключении + + + + + Дата регистрации заявления на заключение договора о подключении + + + + + Идентификатор заявления на заключение договора о подключении в ГИС ЖКХ + + + + + + Сведения о ранее полученных технических условиях подключения + + + + Номер технических условий подключения + + + + + Дата технических условий подключения + + + + + Идентификатор заявления на предоставление технических условий подключения в ГИС ЖКХ + + + + + + Сведения о ранее полученной информации о возможности подключения + + + + Номер информации о возможности подключения + + + + + Дата информации о возможности подключения + + + + + Идентификатор заявления на предоставление информации о возможности подключения в ГИС ЖКХ + + + + + + + Сведения о представителе заявителя + + + + + + + Сведения о статусе документов, ранеее предоставляемых в сетевую организацию в процессе обращения за услугой в отношении подключаемого объекта, указанного в текущем заявлении + + + + Срок действия ранее предоставляемого документа, подтверждающего полномочия представителя, не истек, и сведения, содержащиеся в документе, не изменились + + + + + + + + + + Сведения о земельном участке + + + + + + + + Вид разрешенного использования земельного участка. Справочник "Вид разрешенного использования земельного участка" ЕСНСИ + + + + + Площадь земельного участка (кв.м.) + + + + + Предельное количество этажей + + + + + Предельная высота здания/сооружения (м.) + + + + + + + + + + Сведения об объекте недвижимости + + + + + + + + Правоустанавливающий или правоудостоверяющий документ на подключаемый объект + + + + + Срок действия ранее предоставляемых правоустанавливающих документов на объект не истек, и сведения, содержащиеся в документах, не изменились + + + + + + Может быть заполнено при подключении к системам водоснабжения и (или) водоотведения + + + + + Планируемый срок ввода в эксплуатацию объекта + + + + + Планируемая дата согласования уведомления об окончании строительства + + + + + + Планируемый срок завершения строительства объекта + + + + + + Планируемая дата подключения объекта к системе теплоснабжения + + + + + + Количество этажей + + + + + Высота здания/строение/сооружения (м) + + + + + Строительный объем (куб.м) + + + + + Площадь (кв.м) + + + + + + + + + + Технические характеристики подключаемого объекта + + + + + + Для заявлений по водоснабжению и (или) водоотведению + + + + Подключаемая мощность (нагрузка) по водоснабжени и (или) водоотведению + + + + + Текущая подключеная мощность (нагрузка) по водоснабжени и (или) водоотведению + + + + + + Для заявлений по теплоснабжению + + + + Подключаемая мощность (нагрузка) по теплоснабжению + + + + + Текущая мощность (нагрузка) по теплоснабжению + + + + + Текущая мощность (нагрузка) по теплоснабжению + + + + + Сведения о теплоносителе + + + + + Сведения о параметрах возвращаемого теплоносителя + + + + + Сведения о теплопотреблении + + + + + Сведения о расположения узла учета тепловой энергии и теплоносителей и контроля их качества + + + + + Категория надежности. Справочник "Категория надежности теплоснабжения подключаемого объекта" ЕСНСИ + + + + + Дополнительные требования к надежности теплоснабжения + + + + + Сведения о наличии и возможности использования собственных источников тепловой энергии + + + + + Температурный график (предполагаемый) + + + + + + + + + Документы, приложенные к заявлению + + + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок + + + + Правоустанавливающий или правоудостоверяющий документ на земельный участок + + + + + Срок действия ранее предоставляемых правоустанавливающих документов на земельный участок не истек, и сведения, содержащиеся в документах, не изменились + + + + + + Документы о комплексном развитии территории + + + + Копия договора о комплексном развитии территории + + + + + Проект планировки территории комплексного развития + + + + + Комплексная схема инженерного обеспечения территории комплексного развития + + + + + + Топографическая карта земельного участка + + + + Топографическая карта земельного участка + + + + + Срок действия ранее предоставляемой топографической карты не истек, и сведения, содержащиеся в документе, не изменились + + + + + + Ситуационный план расположения объекта с привязкой к территории населенного пункта + + + + + Документы, актуальные только для водоснабжение и (или) водоотведения + + + + Схема расположения земельного участка или земельных участков на кадастровом плане территории, градостроительном плане земельного участка + + + + + ГПЗУ + + + + Градостроительный план земельного участка + + + + + Срок действия ранее предоставляемого градостроительного плана земельного участка не истек, и сведения, содержащиеся в документе, не изменились + + + + + + Сведения о расположении средств измерений и приборов учета горячей воды, холодной воды и сточных вод + + + + + Информация о площади и характеристике покрытия земельного участка, с которого осуществляется (будет осуществляться) сброс поверхностных сточных вод в централизованную ливневую систему водоотведения, в том числе неорганизованный сброс поверхностных сточных вод + + + + + Файлы с информацией об использовании альтернативных источников водоснабжения и способов водоотведения + + + + Файлы с информацией о наличии иных источников водоснабжения, кроме централизованных систем горячего и холодного водоснабжения с указанием объемов горячей и холодной воды, получаемой из таких иных источников водоснабжения + + + + + Информация о наличии и возможности использования собственной нецентрализованной системы горячего водоснабжения (с указанием мощности и режима работы) + + + + + Информация о наличии и возможности использования иных способов отведения сточных вод + + + + + + Информация о балансах потребления + + + + Баланс водопотребления и водоотведения подключаемого объекта в период использования максимальной величины мощности (нагрузки) + + + + + Баланс потребления горячей воды подключаемого объекта (с указанием целей использования горячей воды) + + + + + + Документы по территории + + + + Проект планировки территории + + + + + Проект межевания территории + + + + + + Документы для проведения водоснабжающей организацией работ на земельном участке заявителя + + + + План организации рельефа (вертикальная планировка) земельного участка + + + + + Планово-высотное положение проектируемого канализационного колодца + + + + + План колодца, подвального помещения (техподполья) или иного помещения (иных помещений) + + + + + + + Результаты инженерных изысканий + + + + + Ссылка на заключение в ЕГРЗ, содержащее результаты инженерных изысканий + + + + + + + Документы, актуальные только для теплоснабжения + + + + Действующие банковские реквизиты + + + + + Разрешение на строительство + + + + + + + + + + + + + + Составной тип: Экспрот данных договора о подключении + + + + + Корневой идентификатор договора + + + + + Статус договора + + + + + Версия договора + + + + + + Идентификатор версии договора + + + + + Порядковый номер версии + + + + + Дата версии + + + + + Актуальная версия + + + + + Номер договора + + + + + Дата договора + + + + + Файл договора, подписанный со стороны исполнителя + + + + + Сообщение заявителю + + + + + + + Протокол разногласий к текущей редакции договора + + + + + Сообщение от заявителя + + + + + + + Файлы подписанного заявителем договора + + + + + Дата подписания договора + + + + + + + + + + + + Составной тип: Сведения о сообщении в рамках взаимодействия с заявителем + + + + + Дата и время отправки/получения информации + + + + + Автор сообщения + + + + Автор сообщения - заявитель + + + + + Автор сообщения - исполнитель + + + + + + Заголовок сообщения + + + + + Описание сообщения + + + + + Текст сообщения + + + + + Прикрепленные к сообщению файлы + + + + + + + + Составной тип. Отправка ответа по заявлению на определение организации для технологического присоединения + + + + + Ответ по виду централизованной сети + + + + + + Вид централизованной сети для подключения. Справочник "Вид сетей для технологического присоедиенения" + + + + + + Подключение возможно + + + + Сведения о сетевой организации + + + + + + + + + Сведения о сбытовой (ресурсоснабжающей организации) + + + + + + + + + Дополнительная информация + + + + + Прикладываемый документ + + + + + + Подключение невозможно + + + + Кратколе описание причины невозможности подключения объекта к централизованной сети + + + + + Документ, содержащий описание причины невозможности подключения объекта к централизованной сети + + + + + + + + + + + + + + + + + + + + Составной тип. Отправка ответа по заявлению на предоставление технических условий подключения + + + + + + Документы, содержащие технические условия подключения + + + + + Документы, содержащие мотивированный отказ в выдаче технических условий подключения + + + + + + Текстовое описание ответа (также включается в сообщение для заявителя на ЕПГУ) + + + + + + + Составной тип. Отправка ответа по заявлению на предоставление информации о возможности подключения к сетям теплоснабжения + + + + + + Документы, содержащие информацию о возможности подключения + + + + + Документы, содержащие мотивированный отказ в выдаче информации о возможности подключения + + + + + + Текстовое описание ответа (также включается в сообщение для заявителя на ЕПГУ) + + + + + + + Составной тип. Ответ заявителю - универсальный набор сведений + + + + + Сообщение заявителю + + + + + Прикрепленный файл + + + + + + Новый срок исполнения + + + + + Срок увеличен на. +Определяется от текущей даты + + + + Количество дней + + + + + + + + + + + Тип дней для увеличения срока + + + + + + + + + Составной тип. Сведения о новой версии акта для отправки заявителю + + + + + Номер акта + + + + + Дата акта + + + + + Файл акта, подписанный со стороны исполнителя + + + + + Сообщение заявителю + + + + + + + Составной тип. Сведения о новой версии договора для отправки заявителю + + + + + Номер договора + + + + + Дата договора + + + + + Файл договора, подписанный со стороны исполнителя + + + + + Сообщение заявителю + + + + + + + + Составной тип: Адрес + + + + + Глобальный идентификатор адресного объекта ФИАС + + + + + + Глобальный идентификатор дома ФИАС + + + + + Номер квартиры/помещения + + + + + + + + Составной тип. Сведения о заявителе + + + + + + + Физичечское лицо + + + + + + + Дата рождения + + + + + Пол + + + + + Место рождения + + + + + + + + + + + ИНН + + + + + СНИЛС + + + + + Адрес регистрации по месту жительства + + + + + Почтовый адрес + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + Индивидуальный предприниматель + + + + + + + ИНН + + + + + ОГРНИП + + + + + Адрес регистрации по месту жительства + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + + Сведения о документе, удостоверяющем личность заявителя + + + + + + + + + + Документ, удостоверяющий личность заявителя + + + + + Документ, удостоверяющий личность заявителя, с открепленной (detached) подписью + + + + + + + + Юридическое лицо + + + + + + Полное наименование + + + + + Сокращенное наименование + + + + + ИНН + + + + + ОГРН + + + + + КПП + + + + + Адрес регистрации + + + + + Почтовый адрес + + + + + Контактный адрес электронной почты + + + + + Контактный телефон + + + + + Сведения о контактном лице организации + + + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + + + + Иностранное юридическое лицо + + + + + + Полное наименование + + + + + Сокращенное наименование + + + + + Организационно-правовая форма. Справочник "ОКОПФ" ЕСНСИ + + + + + Номер записи об аккредитации + + + + + ИНН + + + + + КПП + + + + + Адрес места нахождения филиала на территории РФ + + + + + + + + + Учредительный документ + + + + + Учредительный документ с открепленной (detached) подписью + + + + + + + + Составной тип. Прикрепленный к заявлению документ + + + + + Документ без открепленной (detached) подписи + + + + + Документ c открепленной (detached) подписью + + + + + + + Составной тип. Элемент справочника в ЕСНСИ + + + + + Код записи справочника + + + + + Наименование записи справочника + + + + + + + Составной тип. Общие сведения об объекте недвижимости + + + + + Наименование подключаемого объекта + + + + + Назначение подключаемого объекта. Справочник "Назначение подключаемого объекта" ЕСНСИ + + + + + Иное назначение подключаемого объекта + + + + + Объект относится к ИЖС + + + + + Статус объекта + + + + + + Кадастровый номер объекта + + + + + Условный номер объекта + + + + + + Права на подключаемый объект зарегистрированы в Росреестре + + + + + + + Составной тип. Сведния о теплоносителе + + + + + Наименование вида теплоносителя + + + + + Давление вида теплоносителя (МПа) + + + + + + + + + + + Температура вида теплоносителя + + + + + + + Составной тип. Информация о режиме теплопотребления объекта + + + + + Режим теплопотребления. Справочник "Режим теплопотребления подключаемого объекта" ЕСНСИ + + + + + Свой вариант режима теплопотребления + + + + + + + Составной тип. Общие сведения о земельном участке + + + + + + Кадастровый номер земельного участка + + + + + Условный номер земельного участка + + + + + + Права на земельный участок зарегистрированы в Росреестре + + + + + + + Составной тип. Сведения об адресе подключаемого объекта + + + + + Сведения об адресе из ФИАС + + + + + Дополнительная информация об адресе подключаемого объекта + + + + + + + Составной тип. Организация в ответе по заявлению на определенеи организации для технологического присоединения + + + + + Сведения об организации + + + + + + + + Краткое наименование + + + + + Адрес места нахождения + + + + + + + + + Ресурсы, доступные к подключению. Справочник "Вид ресурсов или услуг, доступный для подключения" ЕСНСИ + + + + + + + Группа атрибутов. ФИО физического лица + + + + + Фамилия + + + + + Имя + + + + + Отчество + + + + + + + Составной тип. Сведения о нагрузке по теплоснабжению + + + + + Горячее водоснабжение - средняя, ГКал/час + + + + + Горячее водоснабжение - максимальная, ГКал/час + + + + + Теплоснабжение, ГКал/час + + + + + Вентиляция, ГКал/час + + + + + Кондиционирование, ГКал/час + + + + + Прочая, ГКал/час + + + + + + + Составной тип. Сведения о температурном графике + + + + + Горячее водоснабжение - средняя, ГКал/час + + + + + Горячее водоснабжение - максимальная, ГКал/час + + + + + Теплоснабжение, ГКал/час + + + + + Вентиляция, ГКал/час + + + + + Кондиционирование, ГКал/час + + + + + Прочая, ГКал/час + + + + + + + Группа атрибутов. Основной документ, удостоверяющие личность. Подходит для любых юр. действий + + + + + Вид документа. Справочник "Вид документа, удостоверяющего личность" ЕСНСИ + + + + + Серия документ + + + + + Номер документа + + + + + Дата выдачи документа + + + + + Кем выдан + + + + + Код подразделения + + + + + + + Составной тип. Сведения о представителе заявителя + + + + + + + + Физичечское лицо + + + + + + + Дата рождения + + + + + Пол + + + + + Адрес регистрации по месту жительства + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + Индивидуальный предприниматель + + + + + + + Дата рождения + + + + + Пол + + + + + Адрес регистрации по месту жительства + + + + + Почтовый адрес + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + + Сведения о документе, удостоверяющем личность заявителя + + + + + + + + + + + Юридическое лицо + + + + + + Полное наименование + + + + + Сокращенное наименование + + + + + ИНН + + + + + ОГРН + + + + + КПП + + + + + Организационно правовая форма. Справочник "ОКОПФ" ЕСНСИ + + + + + Адрес регистрации + + + + + Почтовый адрес + + + + + Сведения о контактном лице организации + + + + + + + Контактный телефон + + + + + Контактный адрес электронной почты + + + + + + + + + + + + Документ, подтверждающий полномочия представителя + + + + + Документ, подтверждающий полномочия представителя, с открепленной (detached) подписью + + + + + + + Составной тип. Сведения о нагрузке по водоснабжению и водоотведению + + + + + Нагрузка по горячему водоснабжению + + + + + + Потребление - ГКал/час + + + + + Потребление - л/с + + + + + Потребление - куб.м/час + + + + + + + + Нагрузка по холодному водоснабжению + + + + + + Потребление - л/с + + + + + Потребление - куб.м/час + + + + + Потребление - куб.м/сутки + + + + + + Потребление холодной воды на нужды внутреннего пожаротушения - л/с + + + + + Потребление холодной воды на нужды наружного пожаротушения - л/с + + + + + Потребление холодной воды на нужды автоматического пожаротушения - л/с + + + + + Количество пожарных кранов - шт. + + + + + + + + + Нагрузка по водоотведению + + + + + + Потребление - л/с + + + + + Потребление - куб.м/час + + + + + Потребление - куб.м/сутки + + + + + + + + + + + Скалярный тип. Статус заявления на получение акта по договору + + + + + Отклонено + + + + + Зарегистрировано + + + + + В работе + + + + + Отказ в выдаче акта + + + + + Договор отсутствует + + + + + Проведение приемочных работ + + + + + Подписание акта о готовности + + + + + Услуга завершена + + + + + + + Скалярный тип. Вид акта по договору о подключении + + + + + Акт о готовности + + + + + Акт о подключении + + + + + + + Скалярный тип. Статус акта по договору + + + + + Проект + + + + + Согласование с заявителем + + + + + Акт подписан вне системы + + + + + Получены замечания + + + + + Отказ от подписания + + + + + Подписан заявителем + + + + + Подписание подтверждено + + + + + + + Скалярный тип. Статус заявления на заключение договора о подключении + + + + + Отклонено + + + + + Зарегистрировано + + + + + В работе + + + + + Доукомплектование заявления + + + + + Отказано в подключении + + + + + В работе (проверка технической возможности) + + + + + Выбор способа осуществления технической возможности подключения + + + + + Получен ответ о выборе способа подключения + + + + + Установление платы в индивидуальном порядке + + + + + Включение в инвестиционную программу + + + + + Отказано во включении в инвестиционную программу + + + + + Заявитель отказался от подключения + + + + + Согласование со смежной организацией + + + + + Заключение договора + + + + + Отказ от подписания договора (услуга завершена) + + + + + Выполняются работы по договору + + + + + Запрос акта о готовности + + + + + Ведутся приемочные работы по договору + + + + + Подписание акта о готовности + + + + + Запрос акта о подключении + + + + + Подписание акта о подключении + + + + + Услуга завершена + + + + + Аннулировано + + + + + + + Скалярный тип. Статус договора о подключении + + + + + Проект + + + + + Согласование с заявителем + + + + + Получен протокол разногласий + + + + + Отказ от подписания + + + + + Подписан заявителем + + + + + Подписание подтверждено + + + + + + + Скалярный тип. Высота здания/сооружения в метрах + + + + + + + + + Скалярный тип. Строительный объем в куб. метрах + + + + + + + + + Скалярный тип. Кадастровый номер + + + + + + + + + Скалярный тип. Тип дней + + + + + Календарный + + + + + Рабочий + + + + + + + Скалярный тип. Дробное число 10 символов + + + + + + + + + Скалярный тип. Адрес электронной почты + + + + + + + + + Скалярный тип. Предельное количество этажей + + + + + + + + + Скалярный тип. Пол + + + + + Мужской + + + + + Женский + + + + + + + Скалярный тип. Статус объекта + + + + + + + + + + + Скалярный тип. Статус заявления на определение организации для технологического присоединения + + + + + Зарегистрировано + + + + + В работе + + + + + В работе (добавлен ответ) + + + + + Отправлен ответ + + + + + + + Скалярный тип. Условный номер + + + + + + Скалярный тип. Номер телефона в РФ, в десятизначном формате + + + + + + + + + Скалярный тип. СНИЛС + + + + + + + + + Скалярный тип. Площадь в кв. метрах + + + + + + + + + Скалярный тип. Строка 7 символов + + + + + + + + + Скалярный тип. Строка 10 символов + + + + + + + + + Скалярный тип. Строка 20 символов + + + + + + + + + Скалярный тип. Строка 25 символов + + + + + + + + + Скалярный тип. Строка 50 символов + + + + + + + + + Скалярный тип. Строка 100 символов + + + + + + + + + Скалярный тип. Строка 200 символов + + + + + + + + + Скалярный тип. Строка 255 символов + + + + + + + + + Скалярный тип. Строка 500 символов + + + + + + + + + Скалярный тип. Строка 2000 символов + + + + + + + + + Скалярный тип. Строка 4000 символов + + + + + + + + + Скалярный тип. Русский текст, длиной до 200 символов, цифры не допускаются + + + + + + + + + + Скалярный тип. Статус заявления на предоставление технических условий подключения + + + + + Зарегистрировано + + + + + В работе + + + + + В работе (добавлен ответ) + + + + + Отправлен ответ + + + + + + + Скалярный тип. Объем потребляемой нагрузки - дробное число, 10 символов + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-service-async.wsdl new file mode 100644 index 0000000..24b9eb1 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-service-async.wsdl @@ -0,0 +1,136 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Результат обработки асинхронного вызова + + + + + + Импорт документов закона/нормативно-правового акта регионального уровня + + + + + + Импорт документов закона/нормативно-правового акта уровня муниципальных образований + + + + + + Экспорт документов + + + + + + + + + + + + + + + + + + + + + + + Импорт документов закона/нормативно-правового акта регионального уровня + + + + + + + + + + + + + + + Импорт документов закона/нормативно-правового акта уровня муниципальных образований + + + + + + + + + + + + + + + Экспорт документов + + + + + + + + + + + + + + + + Асинхронный сервис Управление контентом + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-types.xsd new file mode 100644 index 0000000..130ca38 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/uk/hcs-uk-types.xsd @@ -0,0 +1,538 @@ + + + + + + + + + Базовый тип документа + + + + + Наименование документа + + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата принятия документа органом власти + + + + + Вложение + + + + + Вид документа. (Ссылка на справочник "Вид закона и нормативного акта"). НСИ 324 + + + + + + + Базовый тип документа для экспорта + + + + + Наименование документа + + + + + + + + + + + Номер документа + + + + + + + + + + + Дата принятия документа органом власти + + + + + Вложение + + + + + Вид документа. (Ссылка на справочник "Вид закона и нормативного акта"). НСИ 324 + + + + + + + Документ закона/нормативно-правового акта уровня муниципальных образований + + + + + + + Действие документа на определенном муниципальном образовании РФ. Для опеарции импорта документов поле должно быть заполнено кодом ОКТМО из полномочий ОМС + + + + + + + + + Документ закона/нормативно-правового акта уровня муниципальных образований для операции экспорта + + + + + + + Действие документа на определенном муниципальном образовании РФ. Для опеарции импорта документов поле должно быть заполнено кодом ОКТМО из полномочий ОМС + + + + + + + + + Документ закона/нормативно-правового акта регионального уровня + + + + + + + Действие документа на определенном субъекте РФ. Для опеарции импорта документов поле должно быть заполнено кодом субъекта из пономочий ОГВ. (Ссылка на справочник Субъекты РФ). НСИ 237 + + + + + Действие документа на определенном муниципальном образовании РФ. Для опеарции импорта документов должны быть указаны муниципальные образования, входящие в территорию действий полномочий ОГВ + + + + + + + + + Документ закона/нормативно-правового акта регионального уровня для операции экспорта + + + + + + + Действие документа на определенном субъекте РФ. Для опеарции импорта документов поле должно быть заполнено кодом субъекта из пономочий ОГВ. (Ссылка на справочник Субъекты РФ). НСИ 237 + + + + + Действие документа на определенном муниципальном образовании РФ. Для опеарции импорта документов должны быть указаны муниципальные образования, входящие в территорию действий полномочий ОГВ + + + + + + + + + Документ закона/нормативно-правового акта федерального уровня + + + + + + + Аудитория документа + + + + + + Отображать документ на главной странице портала + + + + + Отображать документ для получателей услуг + + + + + Отображать документ для поставщиков услуг + + + + + Отображать документ для органов власти + + + + + Отображать по умолчанию при поиске законов и нормативных актов + + + + + + + + + Дествие документа на всей территории РФ + + + + + Действие документа на определенных субъектах РФ + + + + + + + + + + Документ закона/нормативно-правового акта федерального уровня для операции экспорта + + + + + + + Аудитория документа + + + + + + Отображать документ на главной странице портала + + + + + Отображать документ для получателей услуг + + + + + Отображать документ для поставщиков услуг + + + + + Отображать документ для органов власти + + + + + Отображать по умолчанию при поиске законов и нормативных актов + + + + + + + + + Дествие документа на всей территории РФ + + + + + Действие документа на определенных субъектах РФ + + + + + + + + + + Экспортируемый документ + + + + + Идентификатор документа в системе ГИС ЖКХ + + + + + + Реквизиты документа закона/нормативно провавого акта федерального уровня + + + + + Реквизиты документа закона/нормативно провавого акта регионального уровня + + + + + Реквизиты документа закона/нормативно провавого акта уровня муниципальных образований + + + + + + + + Идентификатор документа + + + + + + Запрос импорта документа закона/нормативно-правового акта регионального уровня + + + + + + + + Документ + + + + + + + + Добавление/Изменеие документа + + + + + + + + + + + + + + Аннулирование документа + + + + + + + Причина аннулировани + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос импорта закона/нормативно-правового акта уровня муниципальных образований + + + + + + + + Документ + + + + + + + + Добавление/изменение документа + + + + + + + + + + + + + + Аннулирование документа + + + + + + + Причина аннулировани + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Запрос экспорта документа + + + + + + + + + + Сфера действия документа "Федеральный уровень" + + + + + Сфера действия документа "Региональный уровень". Действие документа на определенном субъекте РФ. (Ссылка на справочник Субъекты РФ). НСИ 237 + + + + + Сфера действия документа "Муниципальный уровень". Действие документа на определенном муниципальном образовании + + + + + + + Дата начала периода принятия документа органом власти + + + + + Дата окончания периода принятия документа органов власти + + + + + + Вид документа. (Ссылка на справочник "Вид закона и нормативного акта"). НСИ 324 + + + + + + Идентификатор документа в системе ГИС ЖКХ + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + + Результат импорта + + + + + Экспортируемый документ + + + + + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-service-async.wsdl b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-service-async.wsdl new file mode 100644 index 0000000..1554109 --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-service-async.wsdl @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Импорт информаци об объеме и качестве КР и КУ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Сервис управления сведениями об объеме и качестве коммунальных услуг и коммунальных ресурсов (асинхронный) + + + + + diff --git a/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-types.xsd b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-types.xsd new file mode 100644 index 0000000..f33884d --- /dev/null +++ b/Hcs.ClientNet/HcsWsdlSources/wsdl_xsd_v.15.7.0.1/volume-quality/hcs-volume-quality-types.xsd @@ -0,0 +1,1241 @@ + + + + + + + + + + + + + + + Простой тип. Строка не более 1000 символов. + + + + + + + + Простой тип. Вид основания (DRSO - ДРСО, DTKO - Договор ТКО, ManagementContract - Договор управления, Charter - Устав) + + + + + + + + + + + Номер помещения, комнаты (тип) + + + + + + + + + Статус периода регистрации (Draft - Проект, Placed - Информация размещена, Annulled - Информация аннулирована) + + + + + + + + + + Тип для показателей качества КУ (дни) + + + + + + + + + + + Тип для показателя качества КУ (число) + + + + + + + + + + + Значение показателя качества КР + + + + + + + + + + Значение объема КР + + + + + + + + + + Простой тип. Вид основания (DRSO - ДРСО, ManagementContract - Договор управления, Charter - Устав) + + + + + + + + + + Составной тип. Основание + + + + + Вид основания + + + + + Идентификатор договора-основания + + + + + + + Составной тип. Объект жилищного фонда + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) + + + + + Номер блока (указывается в случае жилого дома блокированной застройки) + + + + + Номер комнаты (указывается в случае квартиры коммунального заселения) + + + + + + + Простой тип. Причина аннулирования + + + + + + + + Статус размещения объекта (Published - Размещено в ГИС ЖКХ, Canceled - Аннулировано) + + + + + + + + + + + + Составной тип. Основание + + + + + Вид основания + + + + + Идентификатор договора-основания + + + + + + + Показатель качества КР + + + + + + + Число + + + + + + Начало диапазона + + + + + Конец диапазона + + + + + + + + + Значение соответствует + + + + + + + Объект жилищного фонда в основании + + + + + Адрес дома +Глобальный уникальный идентификатор дома по ФИАС + + + + + Номер квартиры (помещения) + + + + + Номер блока (указывается в случае жилого дома блокированной застройки) + + + + + Номер комнаты (указывается в случае квартиры коммунального заселения) + + + + + + + Иной показатель качества КР + + + + + Наименование показателя + + + + + Значение показателя качества. Для основания с типом "ДТКО" обязательно для заполнения. Для основания с типом "ДРСО" доступно и обязательно, если присылается tns:IsSignedAct + + + + + + + Период регистрации + + + + + Объем ресурса "Электрическая энергия" + + + + + Вид прибора учета по количеству тарифов. Ссылка на НСИ "Вид прибора учета по количеству тарифов" (реестровый номер 4) + + + + + + + Обязательно для заполнения, если Вид ПУ = "Двухтарифный" или "Трехтарифный" + + + + + Обязательно для заполнения, если Вид ПУ = "Трехтарифный" + + + + + + + + + Объем ресурса + + + + + Значение объема + + + + + + + + Тип для информации о показателях качества КР + + + + + Объект жилищного фонда + + + + + + + + Помещение/блок или комната не из договора (основания). Присылается, если импортируется помещение/блок или комната, отсутствующее в указанном основании + + + + + + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) Заполняется только для основания с типом "ДРСО" + + + + + + + + + + Тарифицируемый ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239). Заполняется только для основания с типом "ДРСО" + + + + + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда. Доступно для заполнения только для основания с типом "ДРСО" + + + + + + Справочный показатель качества КР. Ссылка на НСИ "Показатели качества коммунальных ресурсов" (реестровый номер 276). Заполняется только основания с типом "ДРСО" + + + + + + + + Значение показателя качества. Заполняется, только если присылается tns:IsSignedAct + + + + + + + + + + Иной показатель качества КР + + + + + + + + + + + + + Тип для информации о показателях качества КУ + + + + + Объект жилищного фонда + + + + + + + + Помещение/блок или комната не из договора (основания). Присылается, если импортируется помещение/блок или комната, отсутствующее в указанном основании + + + + + + + + + + Показатели качества КУ + + + + Показатели качества КУ "Холодное водоснабжение" + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + Соответствие (несоответствие) состава и свойств холодной воды требованиям законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Количество дней предоставления услуги холодного водоснабжения при несоответствии состава и свойств холодной воды требованиям законодательства Российской Федерации о техническом регулировании в расчетном периоде суммарно в течение расчетного месяца. + + + + + + + + + + + + Продолжительность предоставления холодного водоснабжения в часах суммарно в течение расчетного периода при давлении, отличающемся от установленного до 25 процентов. + +Не указывается для объекта жилищного фонда, для которого в договоре ресурсоснабжения установлен признак «Отсутствуют присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения». В остальных случаях обязательно + + + + + Количество дней предоставления холодного водоснабжения суммарно в течение расчетного периода при давлении, отличающемся от установленного более чем на 25 процентов. + +Не указывается для объекта жилищного фонда, для которого в договоре ресурсоснабжения установлен признак «Отсутствуют присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения». В остальных случаях обязательно + + + + + + + + Отсутствие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + + + Показатели качества КУ "Горячее водоснабжение" + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + Соответствие (несоответствие) температуры горячей воды требованиям законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Информация о продолжительности предоставления услуги горячего водоснабжения при отклонении температуры горячей воды от установленной законодательством Российской Федерации о техническом регулировании (в часах суммарно в течение расчетного периода). Необходимо заполнить хотя бы одно из указанных полей + + + + + + + + + Продолжительность предоставления горячего водоснабжения при температуре ниже 40°С в часах суммарно в течение расчетного периода + + + + + Объем горячей воды, поставленной при температуре ниже 40°С суммарно в течение расчетного периода + + + + + Соответствие (несоответствие) состава и свойств горячей воды требованиям законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Количество дней предоставления услуги горячего водоснабжения при несоответствии состава и свойств горячей воды требованиям законодательства Российской Федерации о техническом регулировании в расчетном периоде суммарно в течение расчетного периода + + + + + + + + + Продолжительность предоставления услуги горячего водоснабжения в часах суммарно в течение расчетного периода при давлении, отличающемся от установленного до 25 процентов. + +Не указывается для объекта жилищного фонда, для которого в договоре ресурсоснабжения установлен признак «Отсутствуют присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения». В остальных случаях обязательно + + + + + Количество дней предоставления услуги горячего водоснабжения суммарно в течение расчетного периода при давлении, отличающемся от установленного более чем на 25 процентов. + +Не указывается для объекта жилищного фонда, для которого в договоре ресурсоснабжения установлен признак «Отсутствуют присоединения сетей объекта жилищного фонда к централизованной системе водоснабжения». В остальных случаях обязательно + + + + + + + + Отсутствие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + + + Показатели качества КУ "Электроснабжение" + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + Соответствие (несоответствие) напряжения и частоты электрического тока требованиям законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Продолжительность снабжения электрической энергией, несоответствующей требованиям законодательства Российской Федерации о техническом регулировании, в часах суммарно в течение расчетного периода + + + + + + + + + + + + Отсутствие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + + + Показатели качества КУ "Газоснабжение" + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + Соответствие (несоответствие) свойств подаваемого газа требованиям законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Количество дней предоставления услуги газоснабжения при несоответствии свойств подаваемого газа требованиям законодательства Российской Федерации о техническом регулировании в расчетном периоде, суммарно в течение расчетного периода + + + + + + + + + Продолжительность предоставления услуги газоснабжения в часах суммарно в течение расчетного периода при давлении, отличающемся от установленного до 25 процентов + + + + + Количество дней предоставления услуги газоснабжения суммарно в течение расчетного периода при давлении, отличающемся от установленного более чем на 25 процентов + + + + + + + + Отсутствие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + + + Показатели качества КУ "Отопление" + + + + + + Наличие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + Соответствие (несоответствие) обеспечения нормативной температуры воздуха в помещениях многоквартирных домов, жилых домов в соответствии с требованиями законодательства Российской Федерации о техническом регулировании + + + + + + Соответствует + + + + + + Не соответствует + + + + + Продолжительность отопления при отклонении температуры воздуха в помещениях многоквартирных домов, жилых домах в часах суммарно за расчетный период. Необходимо заполнить хотя бы одно из указанных полей: tns:TemperatureExcess, tns:TemperatureDecline. + + + + + + Превышение нормативной температуры воздуха в помещениях многоквартирных домов, жилых домах сверх допустимого уровня + + + + + Снижение нормативной температуры воздуха в помещениях многоквартирных домов, жилых домах сверх допустимого уровня + + + + + + + + Количество часов отклонения температуры воздуха в помещениях многоквартирных домов, жилых домах в часах суммарно за расчетный период + + + + + + + + + Количество дней предоставления услуги отопления суммарно в течение расчетного периода при давлении, отличающемся от установленного более чем на 25 процентов + + + + + + + + Отсутствие подписанного акта проверки предоставления коммунальных услуг для данного объекта жилищного фонда + + + + + + + + + + + Тип для информации об объеме КР + + + + + ОЖФ + + + + + + + + + + Вид КУ. Ссылка на НСИ "Вид коммунальной услуги" (реестровый номер 3) + + + + + + + + + + + Тарифицируемый ресурс. Ссылка на НСИ "Тарифицируемый ресурс" (реестровый номер 239). Заполняется, если в основании указан ДРСО + + + + + + + + + + Вид коммунального ресурса. Ссылка на НСИ "Вид коммунального ресурса" (реестровый номер 2). Заполняется, если в основании указан ДУ (устав) + + + + + + + Объем ресурса. Указывается для всех ресурсов, кроме "Электрическая энергия" + + + + + Объем ресурса "Электрическая энергия" + + + + + + + + Продолжительность предоставления КУ "Горячее водоснабжение" при отклонении температуры воды + + + + + При отклонении температуры на 3°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 3°С + + + + + + + + При отклонении температуры на 6°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 6°С + + + + + + + + При отклонении температуры на 9°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 9°С + + + + + + + + При отклонении температуры на 12°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 12°С + + + + + + + + При отклонении температуры на 15°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 15°С + + + + + + + + При отклонении температуры на 18°С + + + + + + Продолжительность предоставления услуги горячей воды при отклонении температуры на 18°С + + + + + + + + + + + Импорт информации об объеме и качестве КР и КУ + + + + + + + + Информация об объеме и качестве КР и КУ + + + + + + + Основание + + + + + + + + + + Период регистрации (месяц и год) + + + + + + Добавление/изменение периода регистрации + + + + + + + + Показатели качестве КР. Заполняется, только если в основании указан договор ресурсоснабжения или договор ТКО + + + + + + + + + + + + + + Показатели качества КУ. Заполняется только если в основании указан договор ресурсоснабжения или договор управления (устав) + + + + + + + + + + + + + + Объем КР. Заполняется только если в основании информации об объеме и качестве КУ указан договор ресурсоснабжения или договор управления (устав) + + + + + + + + + + + + + + + + + + + Размещение периода регистрации + + + + + Аннулирование периода регистрации + + + + + + Причина аннулирования + + + + + + + + + + + + + Удаление проекта периода регистрации + + + + + Удаление информации об объекте жилищного фонда из периода регистрации + + + + + + ОЖФ + + + + + + + + Помещение/блок или комната не из договора (основания). + + + + + + + + + + + + + + + + + + + + + + + Проверка уникальности транспортного идентификатора в рамках запроса + + + + + + + Проверка уникальности корневого идентификатора договора в рамках запроса + + + + + + + + + Простой тип. Вид перерыва (IntervalInProviding - Перерыв в предоставлении коммунальной услуги, RestrictionInProviding - Ограничение в предоставлении коммунальной услуги, SuspensionOfProviding - Приостановление предоставления коммунальной услуги) + + + + + + + + + + Составной тип. Информация о перерывах + + + + + Дата и время начала перерыва + + + + + Дата и время окончания перерыва + + + + + Вид коммунальной услуги. Код для интеграции 3 + + + + + Вид тарифицируемого ресурса. Код для интеграции 239. Не заполняется только, если «Вид коммунальной услуги» = «Обращение с твердыми коммунальными отходами». Для остальных видов КУ поле обязательно для заполнения. + + + + + Причина перерыва + + + + + + + + + + Объект жилищного фонда + + + + + + + + Помещение/блок или комната не из договора (основания). Присылается, если импортируется помещение/блок или комната, отсутствующее в указанном основании + + + + + + + + + + + Импорт информации о перерыве + + + + Запрос импорта информации о перерывах + + + + + + + + Импорт сведений о перерывах + + + + + + Основание + + + + + Идентификатор информации о перерыве в ГИС ЖКХ. Заполняется при изменении ранее загруженных сведений о перерывах + + + + + Транспортный идентификатор для выполнения операции с информацией о перерывах + + + + + + Добавить/Изменить общую информацию о перерывах. При изменении необходимо присылать всю информацию о перерыве в актуальном состоянии. + + + + + Аннулировать информацию о перерыве + + + + + + Причина аннулирования + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Возврат статуса отправленного сообщения + + + + + + + + Результат импорта + + + + + + + + + + diff --git a/Hcs.ClientNet/Microsoft/Xades/AllDataObjectsTimeStampCollection.cs b/Hcs.ClientNet/Microsoft/Xades/AllDataObjectsTimeStampCollection.cs new file mode 100644 index 0000000..a0ef4cb --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/AllDataObjectsTimeStampCollection.cs @@ -0,0 +1,62 @@ +// AllDataObjectsTimeStampCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class AllDataObjectsTimeStampCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new TimeStamp this[int index] + { + get + { + return (TimeStamp)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public TimeStamp Add(TimeStamp objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public TimeStamp Add() + { + return this.Add(new TimeStamp("AllDataObjectsTimeStamp")); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLIdentifier.cs b/Hcs.ClientNet/Microsoft/Xades/CRLIdentifier.cs new file mode 100644 index 0000000..7107030 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLIdentifier.cs @@ -0,0 +1,222 @@ +// CRLIdentifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class includes the issuer (Issuer element), the time when the CRL + /// was issued (IssueTime element) and optionally the number of the CRL + /// (Number element). + /// The Identifier element can be dropped if the CRL could be inferred from + /// other information. Its URI attribute could serve to indicate where the + /// identified CRL is archived. + /// + public class CRLIdentifier + { + #region Private variables + private string uriAttribute; + private string issuer; + private DateTime issueTime; + private long number; + #endregion + + #region Public properties + /// + /// The optional URI attribute could serve to indicate where the OCSP + /// response identified is archived + /// + public string UriAttribute + { + get + { + return this.uriAttribute; + } + set + { + this.uriAttribute = value; + } + } + + /// + /// Issuer of the CRL + /// + public string Issuer + { + get + { + return this.issuer; + } + set + { + this.issuer = value; + } + } + + /// + /// Date of issue of the CRL + /// + public DateTime IssueTime + { + get + { + return this.issueTime; + } + set + { + this.issueTime = value; + } + } + + /// + /// Optional number of the CRL + /// + public long Number + { + get + { + return this.number; + } + set + { + this.number = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CRLIdentifier() + { + this.issueTime = DateTime.MinValue; + this.number = long.MinValue; //Impossible value + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.uriAttribute)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.issuer)) + { + retVal = true; + } + + if (this.issueTime != DateTime.MinValue) + { + retVal = true; + } + + if (this.number != long.MinValue) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("URI")) + { + this.uriAttribute = xmlElement.GetAttribute("URI"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:Issuer", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.issuer = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:IssueTime", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.issueTime = XmlConvert.ToDateTime(xmlNodeList.Item(0).InnerText, XmlDateTimeSerializationMode.Local); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:Number", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.number = long.Parse(xmlNodeList.Item(0).InnerText); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CRLIdentifier", XadesSignedXml.XadesNamespaceUri); + + retVal.SetAttribute("URI", this.uriAttribute); + + if (!String.IsNullOrEmpty(this.issuer)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Issuer", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.issuer; + retVal.AppendChild(bufferXmlElement); + } + + if (this.issueTime != DateTime.MinValue) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "IssueTime", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = Convert.ToString(this.issueTime.ToString("s")); + retVal.AppendChild(bufferXmlElement); + } + + if (this.number != long.MinValue) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Number", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.number.ToString(); + retVal.AppendChild(bufferXmlElement); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLRef.cs b/Hcs.ClientNet/Microsoft/Xades/CRLRef.cs new file mode 100644 index 0000000..9ec2a86 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLRef.cs @@ -0,0 +1,165 @@ +// CRLRef.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains information about a Certificate Revocation List (CRL) + /// + public class CRLRef + { + #region Private variables + private DigestAlgAndValueType digestAlgAndValue; + private CRLIdentifier crlIdentifier; + #endregion + + #region Public properties + /// + /// The digest of the entire DER encoded + /// + public DigestAlgAndValueType CertDigest + { + get + { + return this.digestAlgAndValue; + } + set + { + this.digestAlgAndValue = value; + } + } + + /// + /// CRLIdentifier is a set of data including the issuer, the time when + /// the CRL was issued and optionally the number of the CRL. + /// The Identifier element can be dropped if the CRL could be inferred + /// from other information. + /// + public CRLIdentifier CRLIdentifier + { + get + { + return this.crlIdentifier; + } + set + { + this.crlIdentifier = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CRLRef() + { + this.digestAlgAndValue = new DigestAlgAndValueType("DigestAlgAndValue"); + this.crlIdentifier = new CRLIdentifier(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.digestAlgAndValue != null && this.digestAlgAndValue.HasChanged()) + { + retVal = true; + } + + if (this.crlIdentifier != null && this.crlIdentifier.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:DigestAlgAndValue", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("DigestAlgAndValue missing"); + } + this.digestAlgAndValue = new DigestAlgAndValueType("DigestAlgAndValue"); + this.digestAlgAndValue.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:CRLIdentifier", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + this.crlIdentifier = null; + } + else + { + this.crlIdentifier = new CRLIdentifier(); + this.crlIdentifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CRLRef", XadesSignedXml.XadesNamespaceUri); + + if (this.digestAlgAndValue != null && this.digestAlgAndValue.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.digestAlgAndValue.GetXml(), true)); + } + else + { + throw new CryptographicException("DigestAlgAndValue element missing in CRLRef"); + } + + if (this.crlIdentifier != null && this.crlIdentifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.crlIdentifier.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLRefCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CRLRefCollection.cs new file mode 100644 index 0000000..ad98c51 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLRefCollection.cs @@ -0,0 +1,62 @@ +// CRLRefCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CRLRefCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new CRLRef this[int index] + { + get + { + return (CRLRef)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public CRLRef Add(CRLRef objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public CRLRef Add() + { + return this.Add(new CRLRef()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLRefs.cs b/Hcs.ClientNet/Microsoft/Xades/CRLRefs.cs new file mode 100644 index 0000000..68e5bd6 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLRefs.cs @@ -0,0 +1,146 @@ +// CRLRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// Class that contains a collection of CRL references + /// + public class CRLRefs + { + #region Private variables + private CRLRefCollection crlRefCollection; + #endregion + + #region Public properties + /// + /// Collection of + /// + public CRLRefCollection CRLRefCollection + { + get + { + return this.crlRefCollection; + } + set + { + this.crlRefCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CRLRefs() + { + this.crlRefCollection = new CRLRefCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.crlRefCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + CRLRef newCRLRef; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.crlRefCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:CRLRef", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCRLRef = new CRLRef(); + newCRLRef.LoadXml(iterationXmlElement); + this.crlRefCollection.Add(newCRLRef); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CRLRefs", XadesSignedXml.XadesNamespaceUri); + + if (this.crlRefCollection.Count > 0) + { + foreach (CRLRef crlRef in this.crlRefCollection) + { + if (crlRef.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(crlRef.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLValue.cs b/Hcs.ClientNet/Microsoft/Xades/CRLValue.cs new file mode 100644 index 0000000..49c13b9 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLValue.cs @@ -0,0 +1,33 @@ +// CRLValue.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +namespace Microsoft.Xades +{ + /// + /// This class consist of a sequence of at least one Certificate Revocation + /// List. Each EncapsulatedCRLValue will contain the base64 encoding of a + /// DER-encoded X509 CRL. + /// + public class CRLValue : EncapsulatedPKIData + { + #region Constructors + /// + /// Default constructor + /// + public CRLValue() + { + this.TagName = "EncapsulatedCRLValue"; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLValueCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CRLValueCollection.cs new file mode 100644 index 0000000..8617d9a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLValueCollection.cs @@ -0,0 +1,62 @@ +// CRLValueCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CRLValueCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new CRLValue this[int index] + { + get + { + return (CRLValue)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public CRLValue Add(CRLValue objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public CRLValue Add() + { + return this.Add(new CRLValue()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CRLValues.cs b/Hcs.ClientNet/Microsoft/Xades/CRLValues.cs new file mode 100644 index 0000000..bf69d43 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CRLValues.cs @@ -0,0 +1,146 @@ +// CRLValues.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of CRL values + /// + public class CRLValues + { + #region Private variables + private CRLValueCollection crlValueCollection; + #endregion + + #region Public properties + /// + /// Collection of CRLValues + /// + public CRLValueCollection CRLValueCollection + { + get + { + return this.crlValueCollection; + } + set + { + this.crlValueCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CRLValues() + { + this.crlValueCollection = new CRLValueCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.crlValueCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + CRLValue newCRLValue; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.crlValueCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:EncapsulatedCRLValue", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCRLValue = new CRLValue(); + newCRLValue.LoadXml(iterationXmlElement); + this.crlValueCollection.Add(newCRLValue); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CRLValues", XadesSignedXml.XadesNamespaceUri); + + if (this.crlValueCollection.Count > 0) + { + foreach (CRLValue crlValue in this.crlValueCollection) + { + if (crlValue.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(crlValue.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/Cert.cs b/Hcs.ClientNet/Microsoft/Xades/Cert.cs new file mode 100644 index 0000000..a7dd057 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/Cert.cs @@ -0,0 +1,162 @@ +// Cert.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains certificate identification information + /// + public class Cert + { + #region Private variables + private DigestAlgAndValueType certDigest; + private IssuerSerial issuerSerial; + #endregion + + #region Public properties + /// + /// The element CertDigest contains the digest of one of the + /// certificates referenced in the sequence + /// + public DigestAlgAndValueType CertDigest + { + get + { + return this.certDigest; + } + set + { + this.certDigest = value; + } + } + + /// + /// The element IssuerSerial contains the identifier of one of the + /// certificates referenced in the sequence. Should the + /// X509IssuerSerial element appear in the signature to denote the same + /// certificate, its value MUST be consistent with the corresponding + /// IssuerSerial element. + /// + public IssuerSerial IssuerSerial + { + get + { + return this.issuerSerial; + } + set + { + this.issuerSerial = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public Cert() + { + this.certDigest = new DigestAlgAndValueType("CertDigest"); + this.issuerSerial = new IssuerSerial(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.certDigest != null && this.certDigest.HasChanged()) + { + retVal = true; + } + + if (this.issuerSerial != null && this.issuerSerial.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:CertDigest", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("CertDigest missing"); + } + this.certDigest = new DigestAlgAndValueType("CertDigest"); + this.certDigest.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:IssuerSerial", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("IssuerSerial missing"); + } + this.issuerSerial = new IssuerSerial(); + this.issuerSerial.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "Cert", XadesSignedXml.XadesNamespaceUri); + + if (this.certDigest != null && this.certDigest.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.certDigest.GetXml(), true)); + } + + if (this.issuerSerial != null && this.issuerSerial.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.issuerSerial.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CertCollection.cs new file mode 100644 index 0000000..7738e3c --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertCollection.cs @@ -0,0 +1,62 @@ +// CertCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CertCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new Cert this[int index] + { + get + { + return (Cert)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public Cert Add(Cert objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public Cert Add() + { + return this.Add(new Cert()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertRefs.cs b/Hcs.ClientNet/Microsoft/Xades/CertRefs.cs new file mode 100644 index 0000000..b8d75cd --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertRefs.cs @@ -0,0 +1,146 @@ +// CertRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The CertRefs element contains a collection of Cert elements + /// + public class CertRefs + { + #region Private variables + private CertCollection certCollection; + #endregion + + #region Public properties + /// + /// Collection of Certs + /// + public CertCollection CertCollection + { + get + { + return this.certCollection; + } + set + { + this.certCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CertRefs() + { + this.certCollection = new CertCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.certCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + Cert newCert; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.certCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:Cert", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCert = new Cert(); + newCert.LoadXml(iterationXmlElement); + this.certCollection.Add(newCert); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("CertRefs", XadesSignedXml.XadesNamespaceUri); + + if (this.certCollection.Count > 0) + { + foreach (Cert cert in this.certCollection) + { + if (cert.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(cert.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertificateValues.cs b/Hcs.ClientNet/Microsoft/Xades/CertificateValues.cs new file mode 100644 index 0000000..cafc924 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertificateValues.cs @@ -0,0 +1,246 @@ +// CertificateValues.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The CertificateValues element contains the full set of certificates + /// that have been used to validate the electronic signature, including the + /// signer's certificate. However, it is not necessary to include one of + /// those certificates into this property, if the certificate is already + /// present in the ds:KeyInfo element of the signature. + /// In fact, both the signer certificate (referenced in the mandatory + /// SigningCertificate property element) and all certificates referenced in + /// the CompleteCertificateRefs property element must be present either in + /// the ds:KeyInfo element of the signature or in the CertificateValues + /// property element. + /// + public class CertificateValues + { + #region Private variables + private string id; + private EncapsulatedX509CertificateCollection encapsulatedX509CertificateCollection; + private OtherCertificateCollection otherCertificateCollection; + #endregion + + #region Public properties + + /// + /// Optional Id of the certificate values element + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// A collection of encapsulated X509 certificates + /// + public EncapsulatedX509CertificateCollection EncapsulatedX509CertificateCollection + { + get + { + return this.encapsulatedX509CertificateCollection; + } + set + { + this.encapsulatedX509CertificateCollection = value; + } + } + + /// + /// Collection of other certificates + /// + public OtherCertificateCollection OtherCertificateCollection + { + get + { + return this.otherCertificateCollection; + } + set + { + this.otherCertificateCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CertificateValues() + { + this.encapsulatedX509CertificateCollection = new EncapsulatedX509CertificateCollection(); + this.otherCertificateCollection = new OtherCertificateCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.id != null && this.id != "") + { + retVal = true; + } + if (this.encapsulatedX509CertificateCollection.Count > 0) + { + retVal = true; + } + if (this.otherCertificateCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + EncapsulatedX509Certificate newEncapsulatedX509Certificate; + OtherCertificate newOtherCertificate; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xades", XadesSignedXml.XadesNamespaceUri); + + this.encapsulatedX509CertificateCollection.Clear(); + this.otherCertificateCollection.Clear(); + + xmlNodeList = xmlElement.SelectNodes("xades:EncapsulatedX509Certificate", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newEncapsulatedX509Certificate = new EncapsulatedX509Certificate(); + newEncapsulatedX509Certificate.LoadXml(iterationXmlElement); + this.encapsulatedX509CertificateCollection.Add(newEncapsulatedX509Certificate); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + xmlNodeList = xmlElement.SelectNodes("xades:OtherCertificate", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newOtherCertificate = new OtherCertificate(); + newOtherCertificate.LoadXml(iterationXmlElement); + this.otherCertificateCollection.Add(newOtherCertificate); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CertificateValues", XadesSignedXml.XadesNamespaceUri); + if (this.id != null && this.id != "") + { + retVal.SetAttribute("Id", this.id); + } + + if (this.encapsulatedX509CertificateCollection.Count > 0) + { + foreach (EncapsulatedX509Certificate encapsulatedX509Certificate in this.encapsulatedX509CertificateCollection) + { + if (encapsulatedX509Certificate.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(encapsulatedX509Certificate.GetXml(), true)); + } + } + } + if (this.otherCertificateCollection.Count > 0) + { + foreach (OtherCertificate otherCertificate in this.otherCertificateCollection) + { + if (otherCertificate.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(otherCertificate.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertifiedRole.cs b/Hcs.ClientNet/Microsoft/Xades/CertifiedRole.cs new file mode 100644 index 0000000..58e0023 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertifiedRole.cs @@ -0,0 +1,32 @@ +// CertifiedRole.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +namespace Microsoft.Xades +{ + /// + /// The CertifiedRoles element contains one or more wrapped attribute + /// certificates for the signer + /// + public class CertifiedRole : EncapsulatedPKIData + { + #region Constructors + /// + /// Default constructor + /// + public CertifiedRole() + { + this.TagName = "CertifiedRole"; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertifiedRoleCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CertifiedRoleCollection.cs new file mode 100644 index 0000000..cc632c1 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertifiedRoleCollection.cs @@ -0,0 +1,62 @@ +// CertifiedRoleCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CertifiedRoleCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new CertifiedRole this[int index] + { + get + { + return (CertifiedRole)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public CertifiedRole Add(CertifiedRole objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public CertifiedRole Add() + { + return this.Add(new CertifiedRole()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CertifiedRoles.cs b/Hcs.ClientNet/Microsoft/Xades/CertifiedRoles.cs new file mode 100644 index 0000000..c8bbe82 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CertifiedRoles.cs @@ -0,0 +1,147 @@ +// CertifiedRoles.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The CertifiedRoles element contains one or more wrapped attribute + /// certificates for the signer + /// + public class CertifiedRoles + { + #region Private variables + private CertifiedRoleCollection certifiedRoleCollection; + #endregion + + #region Public properties + /// + /// Collection of certified roles + /// + public CertifiedRoleCollection CertifiedRoleCollection + { + get + { + return this.certifiedRoleCollection; + } + set + { + this.certifiedRoleCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CertifiedRoles() + { + this.certifiedRoleCollection = new CertifiedRoleCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.certifiedRoleCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + EncapsulatedPKIData newCertifiedRole; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.certifiedRoleCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:CertifiedRole", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCertifiedRole = new EncapsulatedPKIData("CertifiedRole"); + newCertifiedRole.LoadXml(iterationXmlElement); + this.certifiedRoleCollection.Add(newCertifiedRole); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CertifiedRoles", XadesSignedXml.XadesNamespaceUri); + + if (this.certifiedRoleCollection.Count > 0) + { + foreach (EncapsulatedPKIData certifiedRole in this.certifiedRoleCollection) + { + if (certifiedRole.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(certifiedRole.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ClaimedRole.cs b/Hcs.ClientNet/Microsoft/Xades/ClaimedRole.cs new file mode 100644 index 0000000..e7075bd --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ClaimedRole.cs @@ -0,0 +1,101 @@ +// ClaimedRole.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a roles claimed by the signer but not it is not a + /// certified role + /// + public class ClaimedRole + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents a claimed role + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public ClaimedRole() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "ClaimedRole", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ClaimedRoleCollection.cs b/Hcs.ClientNet/Microsoft/Xades/ClaimedRoleCollection.cs new file mode 100644 index 0000000..b4db18c --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ClaimedRoleCollection.cs @@ -0,0 +1,62 @@ +// ClaimedRoleCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class ClaimedRoleCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new ClaimedRole this[int index] + { + get + { + return (ClaimedRole)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public ClaimedRole Add(ClaimedRole objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public ClaimedRole Add() + { + return this.Add(new ClaimedRole()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ClaimedRoles.cs b/Hcs.ClientNet/Microsoft/Xades/ClaimedRoles.cs new file mode 100644 index 0000000..c58c2e9 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ClaimedRoles.cs @@ -0,0 +1,150 @@ +// ClaimedRoles.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The ClaimedRoles element contains a sequence of roles claimed by + /// the signer but not certified. Additional contents types may be + /// defined on a domain application basis and be part of this element. + /// The namespaces given to the corresponding XML schemas will allow + /// their unambiguous identification in the case these roles use XML. + /// + public class ClaimedRoles + { + #region Private variables + private ClaimedRoleCollection claimedRoleCollection; + #endregion + + #region Public properties + /// + /// Collection of claimed roles + /// + public ClaimedRoleCollection ClaimedRoleCollection + { + get + { + return this.claimedRoleCollection; + } + set + { + this.claimedRoleCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public ClaimedRoles() + { + this.claimedRoleCollection = new ClaimedRoleCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.claimedRoleCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + ClaimedRole newClaimedRole; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.claimedRoleCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:ClaimedRole", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newClaimedRole = new ClaimedRole(); + newClaimedRole.LoadXml(iterationXmlElement); + this.claimedRoleCollection.Add(newClaimedRole); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "ClaimedRoles", XadesSignedXml.XadesNamespaceUri); + + if (this.claimedRoleCollection.Count > 0) + { + foreach (ClaimedRole claimedRole in this.claimedRoleCollection) + { + if (claimedRole.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(claimedRole.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndication.cs b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndication.cs new file mode 100644 index 0000000..68555a9 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndication.cs @@ -0,0 +1,283 @@ +// CommitmentTypeIndication.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The commitment type can be indicated in the electronic signature + /// by either explicitly using a commitment type indication in the + /// electronic signature or implicitly or explicitly from the semantics + /// of the signed data object. + /// If the indicated commitment type is explicit by means of a commitment + /// type indication in the electronic signature, acceptance of a verified + /// signature implies acceptance of the semantics of that commitment type. + /// The semantics of explicit commitment types indications shall be + /// specified either as part of the signature policy or may be registered + /// for generic use across multiple policies. + /// + public class CommitmentTypeIndication + { + #region Private variables + private ObjectIdentifier commitmentTypeId; + private ObjectReferenceCollection objectReferenceCollection; + private bool allSignedDataObjects; + private CommitmentTypeQualifiers commitmentTypeQualifiers; + #endregion + + #region Public properties + /// + /// The CommitmentTypeId element univocally identifies the type of commitment made by the signer. + /// A number of commitments have been already identified and assigned corresponding OIDs. + /// + public ObjectIdentifier CommitmentTypeId + { + get + { + return this.commitmentTypeId; + } + set + { + this.commitmentTypeId = value; + } + } + + /// + /// Collection of object references + /// + public ObjectReferenceCollection ObjectReferenceCollection + { + get + { + return this.objectReferenceCollection; + } + set + { + this.objectReferenceCollection = value; + if (this.objectReferenceCollection != null) + { + if (this.objectReferenceCollection.Count > 0) + { + this.allSignedDataObjects = false; + } + } + } + } + + /// + /// If all the signed data objects share the same commitment, the + /// AllSignedDataObjects empty element MUST be present + /// + public bool AllSignedDataObjects + { + get + { + return this.allSignedDataObjects; + } + set + { + this.allSignedDataObjects = value; + if (this.allSignedDataObjects) + { + this.objectReferenceCollection.Clear(); + } + } + } + + /// + /// The CommitmentTypeQualifiers element provides means to include additional + /// qualifying information on the commitment made by the signer + /// + public CommitmentTypeQualifiers CommitmentTypeQualifiers + { + get + { + return this.commitmentTypeQualifiers; + } + set + { + this.commitmentTypeQualifiers = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CommitmentTypeIndication() + { + this.commitmentTypeId = new ObjectIdentifier("CommitmentTypeId"); + this.objectReferenceCollection = new ObjectReferenceCollection(); + this.allSignedDataObjects = true; + this.commitmentTypeQualifiers = new CommitmentTypeQualifiers(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.commitmentTypeId != null && this.commitmentTypeId.HasChanged()) + { + retVal = true; + } + + if (this.objectReferenceCollection.Count > 0) + { + retVal = true; + } + + if (this.commitmentTypeQualifiers != null && this.commitmentTypeQualifiers.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + ObjectReference newObjectReference; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:CommitmentTypeId", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + this.commitmentTypeId = null; + throw new CryptographicException("CommitmentTypeId missing"); + } + else + { + this.commitmentTypeId = new ObjectIdentifier("CommitmentTypeId"); + this.commitmentTypeId.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:ObjectReference", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.objectReferenceCollection.Clear(); + this.allSignedDataObjects = false; + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newObjectReference = new ObjectReference(); + newObjectReference.LoadXml(iterationXmlElement); + this.objectReferenceCollection.Add(newObjectReference); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + } + else + { + this.objectReferenceCollection.Clear(); + this.allSignedDataObjects = true; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CommitmentTypeQualifiers", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.commitmentTypeQualifiers = new CommitmentTypeQualifiers(); + this.commitmentTypeQualifiers.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CommitmentTypeIndication", XadesSignedXml.XadesNamespaceUri); + + if (this.commitmentTypeId != null && this.commitmentTypeId.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.commitmentTypeId.GetXml(), true)); + } + else + { + throw new CryptographicException("CommitmentTypeId element missing"); + } + + if (this.allSignedDataObjects) + { //Add emty element as required + bufferXmlElement = creationXmlDocument.CreateElement("xades", "AllSignedDataObjects", XadesSignedXml.XadesNamespaceUri); + retVal.AppendChild(bufferXmlElement); + } + else + { + if (this.objectReferenceCollection.Count > 0) + { + foreach (ObjectReference objectReference in this.objectReferenceCollection) + { + if (objectReference.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(objectReference.GetXml(), true)); + } + } + } + } + + if (this.commitmentTypeQualifiers != null && this.commitmentTypeQualifiers.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.commitmentTypeQualifiers.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndicationCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndicationCollection.cs new file mode 100644 index 0000000..f2f24ce --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeIndicationCollection.cs @@ -0,0 +1,62 @@ +// ACommitmentTypeIndicationCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CommitmentTypeIndicationCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new CommitmentTypeIndication this[int index] + { + get + { + return (CommitmentTypeIndication)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public CommitmentTypeIndication Add(CommitmentTypeIndication objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public CommitmentTypeIndication Add() + { + return this.Add(new CommitmentTypeIndication()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifier.cs b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifier.cs new file mode 100644 index 0000000..bbbb07b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifier.cs @@ -0,0 +1,101 @@ +// CommitmentTypeQualifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The CommitmentTypeQualifiers element provides means to include + /// additional qualifying information on the commitment made by the signer + /// + public class CommitmentTypeQualifier + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents a commitment type qualifier + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CommitmentTypeQualifier() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CommitmentTypeQualifier", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifierCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifierCollection.cs new file mode 100644 index 0000000..053656b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifierCollection.cs @@ -0,0 +1,62 @@ +// CommitmentTypeQualifierCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CommitmentTypeQualifierCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new CommitmentTypeQualifier this[int index] + { + get + { + return (CommitmentTypeQualifier)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public CommitmentTypeQualifier Add(CommitmentTypeQualifier objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public CommitmentTypeQualifier Add() + { + return this.Add(new CommitmentTypeQualifier()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifiers.cs b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifiers.cs new file mode 100644 index 0000000..6690039 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CommitmentTypeQualifiers.cs @@ -0,0 +1,147 @@ +// CommitmentTypeQualifers.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The CommitmentTypeQualifier element provides means to include + /// additional qualifying information on the commitment made by the signer + /// + public class CommitmentTypeQualifiers + { + #region Private variables + private CommitmentTypeQualifierCollection commitmentTypeQualifierCollection; + #endregion + + #region Public properties + /// + /// Collection of commitment type qualifiers + /// + public CommitmentTypeQualifierCollection CommitmentTypeQualifierCollection + { + get + { + return this.commitmentTypeQualifierCollection; + } + set + { + this.commitmentTypeQualifierCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CommitmentTypeQualifiers() + { + this.commitmentTypeQualifierCollection = new CommitmentTypeQualifierCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.commitmentTypeQualifierCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + CommitmentTypeQualifier newCommitmentTypeQualifier; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.commitmentTypeQualifierCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:CommitmentTypeQualifier", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCommitmentTypeQualifier = new CommitmentTypeQualifier(); + newCommitmentTypeQualifier.LoadXml(iterationXmlElement); + this.commitmentTypeQualifierCollection.Add(newCommitmentTypeQualifier); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CommitmentTypeQualifiers", XadesSignedXml.XadesNamespaceUri); + + if (this.commitmentTypeQualifierCollection.Count > 0) + { + foreach (CommitmentTypeQualifier commitmentTypeQualifier in this.commitmentTypeQualifierCollection) + { + if (commitmentTypeQualifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(commitmentTypeQualifier.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CompleteCertificateRefs.cs b/Hcs.ClientNet/Microsoft/Xades/CompleteCertificateRefs.cs new file mode 100644 index 0000000..1142932 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CompleteCertificateRefs.cs @@ -0,0 +1,157 @@ +// CompleteCertificateRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This clause defines the XML element containing the sequence of + /// references to the full set of CA certificates that have been used + /// to validate the electronic signature up to (but not including) the + /// signer's certificate. This is an unsigned property that qualifies + /// the signature. + /// An XML electronic signature aligned with the XAdES standard may + /// contain at most one CompleteCertificateRefs element. + /// + public class CompleteCertificateRefs + { + #region Private variables + private string id; + private CertRefs certRefs; + #endregion + + #region Public properties + /// + /// The optional Id attribute can be used to make a reference to the CompleteCertificateRefs element + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// The CertRefs element contains a sequence of Cert elements, incorporating the + /// digest of each certificate and optionally the issuer and serial number identifier + /// + public CertRefs CertRefs + { + get + { + return this.certRefs; + } + set + { + this.certRefs = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CompleteCertificateRefs() + { + this.certRefs = new CertRefs(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + if (this.certRefs != null && this.certRefs.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:CertRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.certRefs = new CertRefs(); + this.certRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CompleteCertificateRefs", XadesSignedXml.XadesNamespaceUri); + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + + if (this.certRefs != null && this.certRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.certRefs.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CompleteRevocationRefs.cs b/Hcs.ClientNet/Microsoft/Xades/CompleteRevocationRefs.cs new file mode 100644 index 0000000..3ddae76 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CompleteRevocationRefs.cs @@ -0,0 +1,216 @@ +// CompleteRevocationRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This clause defines the XML element containing a full set of + /// references to the revocation data that have been used in the + /// validation of the signer and CA certificates. + /// This is an unsigned property that qualifies the signature. + /// The XML electronic signature aligned with the present document + /// MAY contain at most one CompleteRevocationRefs element. + /// + public class CompleteRevocationRefs + { + #region Private variables + private string id; + private CRLRefs crlRefs; + private OCSPRefs ocspRefs; + private OtherRefs otherRefs; + #endregion + + #region Public properties + /// + /// The optional Id attribute can be used to make a reference to the CompleteRevocationRefs element + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// Sequences of references to CRLs + /// + public CRLRefs CRLRefs + { + get + { + return this.crlRefs; + } + set + { + this.crlRefs = value; + } + } + + /// + /// Sequences of references to OCSP responses + /// + public OCSPRefs OCSPRefs + { + get + { + return this.ocspRefs; + } + set + { + this.ocspRefs = value; + } + } + + /// + /// Other references to alternative forms of revocation data + /// + public OtherRefs OtherRefs + { + get + { + return this.otherRefs; + } + set + { + this.otherRefs = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public CompleteRevocationRefs() + { + this.crlRefs = new CRLRefs(); + this.ocspRefs = new OCSPRefs(); + this.otherRefs = new OtherRefs(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + if (this.crlRefs != null && this.crlRefs.HasChanged()) + { + retVal = true; + } + if (this.ocspRefs != null && this.ocspRefs.HasChanged()) + { + retVal = true; + } + if (this.otherRefs != null && this.otherRefs.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:CRLRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.crlRefs = new CRLRefs(); + this.crlRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + xmlNodeList = xmlElement.SelectNodes("xsd:OCSPRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.ocspRefs = new OCSPRefs(); + this.ocspRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + xmlNodeList = xmlElement.SelectNodes("xsd:OtherRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.otherRefs = new OtherRefs(); + this.otherRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "CompleteRevocationRefs", XadesSignedXml.XadesNamespaceUri); + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + if (this.crlRefs != null && this.crlRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.crlRefs.GetXml(), true)); + } + if (this.ocspRefs != null && this.ocspRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.ocspRefs.GetXml(), true)); + } + if (this.otherRefs != null && this.otherRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.otherRefs.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/CounterSignatureCollection.cs b/Hcs.ClientNet/Microsoft/Xades/CounterSignatureCollection.cs new file mode 100644 index 0000000..c50f87c --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/CounterSignatureCollection.cs @@ -0,0 +1,62 @@ +// CounterSignatureCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class CounterSignatureCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new XadesSignedXml this[int index] + { + get + { + return (XadesSignedXml)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public XadesSignedXml Add(XadesSignedXml objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public XadesSignedXml Add() + { + return this.Add(new XadesSignedXml()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DataObjectFormat.cs b/Hcs.ClientNet/Microsoft/Xades/DataObjectFormat.cs new file mode 100644 index 0000000..37bb78b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DataObjectFormat.cs @@ -0,0 +1,270 @@ +// DataIbjectFormat.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The DataObjectFormat element provides information that describes the + /// format of the signed data object. This element must be present when it + /// is mandatory to present the signed data object to human users on + /// verification. + /// This is a signed property that qualifies one specific signed data + /// object. In consequence, a XAdES signature may contain more than one + /// DataObjectFormat elements, each one qualifying one signed data object. + /// + public class DataObjectFormat + { + #region Private variables + private string objectReferenceAttribute; + private string description; + private ObjectIdentifier objectIdentifier; + private string mimeType; + private string encoding; + #endregion + + #region Public properties + /// + /// The mandatory ObjectReference attribute refers to the Reference element + /// of the signature corresponding with the data object qualified by this + /// property + /// + public string ObjectReferenceAttribute + { + get + { + return this.objectReferenceAttribute; + } + set + { + this.objectReferenceAttribute = value; + } + } + + /// + /// Textual information related to the signed data object + /// + public string Description + { + get + { + return this.description; + } + set + { + this.description = value; + } + } + + /// + /// An identifier indicating the type of the signed data object + /// + public ObjectIdentifier ObjectIdentifier + { + get + { + return this.objectIdentifier; + } + set + { + this.objectIdentifier = value; + } + } + + /// + /// An indication of the MIME type of the signed data object + /// + public string MimeType + { + get + { + return this.mimeType; + } + set + { + this.mimeType = value; + } + } + + /// + /// An indication of the encoding format of the signed data object + /// + public string Encoding + { + get + { + return this.encoding; + } + set + { + this.encoding = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public DataObjectFormat() + { + this.objectIdentifier = new ObjectIdentifier("ObjectIdentifier"); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.objectReferenceAttribute)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.description)) + { + retVal = true; + } + + if (this.objectIdentifier != null && this.objectIdentifier.HasChanged()) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.mimeType)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.encoding)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + if (xmlElement.HasAttribute("ObjectReference")) + { + this.objectReferenceAttribute = xmlElement.GetAttribute("ObjectReference"); + } + else + { + this.objectReferenceAttribute = ""; + throw new CryptographicException("ObjectReference attribute missing"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:Description", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.description = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:ObjectIdentifier", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.objectIdentifier = new ObjectIdentifier("ObjectIdentifier"); + this.objectIdentifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:MimeType", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.mimeType = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:Encoding", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.encoding = xmlNodeList.Item(0).InnerText; + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "DataObjectFormat", XadesSignedXml.XadesNamespaceUri); + + if ((this.objectReferenceAttribute != null) && ((this.objectReferenceAttribute != ""))) + { + retVal.SetAttribute("ObjectReference", this.objectReferenceAttribute); + } + else + { + throw new CryptographicException("Attribute ObjectReference missing"); + } + + if (!String.IsNullOrEmpty(this.description)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Description", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.description; + retVal.AppendChild(bufferXmlElement); + } + + if (this.objectIdentifier != null && this.objectIdentifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.objectIdentifier.GetXml(), true)); + } + + if (!String.IsNullOrEmpty(this.mimeType)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "MimeType", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.mimeType; + retVal.AppendChild(bufferXmlElement); + } + + if (!String.IsNullOrEmpty(this.encoding)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Encoding", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.encoding; + retVal.AppendChild(bufferXmlElement); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DataObjectFormatCollection.cs b/Hcs.ClientNet/Microsoft/Xades/DataObjectFormatCollection.cs new file mode 100644 index 0000000..a9b378d --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DataObjectFormatCollection.cs @@ -0,0 +1,62 @@ +// DataObjectFormatCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class DataObjectFormatCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new DataObjectFormat this[int index] + { + get + { + return (DataObjectFormat)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public DataObjectFormat Add(DataObjectFormat objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public DataObjectFormat Add() + { + return this.Add(new DataObjectFormat()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DigestAlgAndValueType.cs b/Hcs.ClientNet/Microsoft/Xades/DigestAlgAndValueType.cs new file mode 100644 index 0000000..dc6f56a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DigestAlgAndValueType.cs @@ -0,0 +1,192 @@ +// DigestAlgAndValueType.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class indicates the algortithm used to calculate the digest and + /// the digest value itself + /// + public class DigestAlgAndValueType + { + #region Private variables + private string tagName; + private DigestMethod digestMethod; + private byte[] digestValue; + #endregion + + #region Public properties + /// + /// The name of the element when serializing + /// + public string TagName + { + get + { + return this.tagName; + } + set + { + this.tagName = value; + } + } + + /// + /// Indicates the digest algorithm + /// + public DigestMethod DigestMethod + { + get + { + return this.digestMethod; + } + set + { + this.digestMethod = value; + } + } + + /// + /// Contains the value of the digest + /// + public byte[] DigestValue + { + get + { + return this.digestValue; + } + set + { + this.digestValue = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public DigestAlgAndValueType() + { + this.digestMethod = new DigestMethod(); + this.digestValue = null; + } + + /// + /// Constructor with TagName + /// + /// Name of the tag when serializing with GetXml + public DigestAlgAndValueType(string tagName) : this() + { + this.tagName = tagName; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.digestMethod != null && this.digestMethod.HasChanged()) + { + retVal = true; + } + + if (this.digestValue != null && this.digestValue.Length > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + + xmlNodeList = xmlElement.SelectNodes("ds:DigestMethod", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("DigestMethod missing"); + } + this.digestMethod = new DigestMethod(); + this.digestMethod.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("ds:DigestValue", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("DigestValue missing"); + } + this.digestValue = Convert.FromBase64String(xmlNodeList.Item(0).InnerText); + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", this.tagName, XadesSignedXml.XadesNamespaceUri); + + if (this.digestMethod != null && this.digestMethod.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.digestMethod.GetXml(), true)); + } + else + { + throw new CryptographicException("DigestMethod element missing in DigestAlgAndValueType"); + } + + if (this.digestValue != null && this.digestValue.Length > 0) + { + bufferXmlElement = creationXmlDocument.CreateElement("ds", "DigestValue", SignedXml.XmlDsigNamespaceUrl); + bufferXmlElement.InnerText = Convert.ToBase64String(this.digestValue); + retVal.AppendChild(bufferXmlElement); + } + else + { + throw new CryptographicException("DigestValue element missing in DigestAlgAndValueType"); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DigestMethod.cs b/Hcs.ClientNet/Microsoft/Xades/DigestMethod.cs new file mode 100644 index 0000000..f790004 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DigestMethod.cs @@ -0,0 +1,104 @@ +// DigestMethod.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// DigestMethod indicates the digest algorithm + /// + public class DigestMethod + { + #region Private variables + private string algorithm; + #endregion + + #region Public properties + /// + /// Contains the digest algorithm + /// + public string Algorithm + { + get + { + return this.algorithm; + } + set + { + this.algorithm = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public DigestMethod() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.algorithm)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + this.algorithm = xmlElement.GetAttribute("Algorithm"); + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("ds", "DigestMethod", SignedXml.XmlDsigNamespaceUrl); + + retVal.SetAttribute("Algorithm", this.algorithm); + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DocumentationReference.cs b/Hcs.ClientNet/Microsoft/Xades/DocumentationReference.cs new file mode 100644 index 0000000..029a019 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DocumentationReference.cs @@ -0,0 +1,103 @@ +// DocumentationReference.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// DocumentationReference points to further explanatory documentation + /// of the object identifier + /// + public class DocumentationReference + { + #region Private variables + private string documentationReferenceUri; + #endregion + + #region Public properties + /// + /// Pointer to further explanatory documentation of the object identifier + /// + public string DocumentationReferenceUri + { + get + { + return this.documentationReferenceUri; + } + set + { + this.documentationReferenceUri = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public DocumentationReference() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.documentationReferenceUri)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + this.documentationReferenceUri = xmlElement.InnerText; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "DocumentationReference", XadesSignedXml.XadesNamespaceUri); + retVal.InnerText = this.documentationReferenceUri; + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DocumentationReferenceCollection.cs b/Hcs.ClientNet/Microsoft/Xades/DocumentationReferenceCollection.cs new file mode 100644 index 0000000..30133a8 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DocumentationReferenceCollection.cs @@ -0,0 +1,62 @@ +// DocumentationReferenceCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class DocumentationReferenceCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new DocumentationReference this[int index] + { + get + { + return (DocumentationReference)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public DocumentationReference Add(DocumentationReference objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public DocumentationReference Add() + { + return this.Add(new DocumentationReference()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/DocumentationReferences.cs b/Hcs.ClientNet/Microsoft/Xades/DocumentationReferences.cs new file mode 100644 index 0000000..3c81c29 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/DocumentationReferences.cs @@ -0,0 +1,146 @@ +// DocumentationReferences.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of DocumentationReferences + /// + public class DocumentationReferences + { + #region Private variables + private DocumentationReferenceCollection documentationReferenceCollection; + #endregion + + #region Public properties + /// + /// Collection of documentation references + /// + public DocumentationReferenceCollection DocumentationReferenceCollection + { + get + { + return this.documentationReferenceCollection; + } + set + { + this.documentationReferenceCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public DocumentationReferences() + { + this.documentationReferenceCollection = new DocumentationReferenceCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.documentationReferenceCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + DocumentationReference newDocumentationReference; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.documentationReferenceCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:DocumentationReference", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newDocumentationReference = new DocumentationReference(); + newDocumentationReference.LoadXml(iterationXmlElement); + this.documentationReferenceCollection.Add(newDocumentationReference); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "DocumentationReferences", XadesSignedXml.XadesNamespaceUri); + + if (this.documentationReferenceCollection.Count > 0) + { + foreach (DocumentationReference documentationReference in this.documentationReferenceCollection) + { + if (documentationReference.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(documentationReference.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/EncapsulatedPKIData.cs b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedPKIData.cs new file mode 100644 index 0000000..aca917b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedPKIData.cs @@ -0,0 +1,171 @@ +// EncapsulatedPKIData.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// EncapsulatedPKIData is used to incorporate a piece of PKI data + /// into an XML structure whereas the PKI data is encoded using an ASN.1 + /// encoding mechanism. Examples of such PKI data that are widely used at + /// the time include X509 certificates and revocation lists, OCSP responses, + /// attribute certificates and time-stamps. + /// + public class EncapsulatedPKIData + { + #region Private variables + private string tagName; + private string id; + private byte[] pkiData; + #endregion + + #region Public properties + /// + /// The name of the element when serializing + /// + public string TagName + { + get + { + return this.tagName; + } + set + { + this.tagName = value; + } + } + + /// + /// The optional ID attribute can be used to make a reference to an element + /// of this data type. + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// Base64 encoded content of this data type + /// + public byte[] PkiData + { + get + { + return this.pkiData; + } + set + { + this.pkiData = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public EncapsulatedPKIData() + { + } + + /// + /// Constructor with TagName + /// + /// Name of the tag when serializing with GetXml + public EncapsulatedPKIData(string tagName) + { + this.tagName = tagName; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + + if (this.pkiData != null && this.pkiData.Length > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + this.pkiData = Convert.FromBase64String(xmlElement.InnerText); + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", this.tagName, XadesSignedXml.XadesNamespaceUri); + + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + + if (this.pkiData != null && this.pkiData.Length > 0) + { + retVal.InnerText = Convert.ToBase64String(this.pkiData); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509Certificate.cs b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509Certificate.cs new file mode 100644 index 0000000..8bc6b11 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509Certificate.cs @@ -0,0 +1,32 @@ +// EncapsulatedX509Certificate.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +namespace Microsoft.Xades +{ + /// + /// The EncapsulatedX509Certificate element is able to contain the + /// base64 encoding of a DER-encoded X.509 certificate + /// + public class EncapsulatedX509Certificate : EncapsulatedPKIData + { + #region Constructors + /// + /// Default constructor + /// + public EncapsulatedX509Certificate() + { + this.TagName = "EncapsulatedX509Certificate"; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509CertificateCollection.cs b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509CertificateCollection.cs new file mode 100644 index 0000000..bcca90d --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/EncapsulatedX509CertificateCollection.cs @@ -0,0 +1,62 @@ +// EncapsulatedX509CertificateCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class EncapsulatedX509CertificateCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new EncapsulatedX509Certificate this[int index] + { + get + { + return (EncapsulatedX509Certificate)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public EncapsulatedX509Certificate Add(EncapsulatedX509Certificate objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public EncapsulatedX509Certificate Add() + { + return this.Add(new EncapsulatedX509Certificate()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/HashDataInfo.cs b/Hcs.ClientNet/Microsoft/Xades/HashDataInfo.cs new file mode 100644 index 0000000..f13db2a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/HashDataInfo.cs @@ -0,0 +1,156 @@ +// HashDataInfo.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The HashDataInfo class contains a uri attribute referencing a data object + /// and a ds:Transforms element indicating the transformations to make to this + /// data object. + /// The sequence of HashDataInfo elements will be used to produce the input of + /// the hash computation process whose result will be included in the + /// timestamp request to be sent to the TSA. + /// + public class HashDataInfo + { + #region Private variables + private string uriAttribute; + private Transforms transforms; + #endregion + + #region Public properties + /// + /// Uri referencing a data object + /// + public string UriAttribute + { + get + { + return this.uriAttribute; + } + set + { + this.uriAttribute = value; + } + } + + /// + /// Transformations to make to this data object + /// + public Transforms Transforms + { + get + { + return this.transforms; + } + set + { + this.transforms = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public HashDataInfo() + { + this.transforms = new Transforms(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.uriAttribute)) + { + retVal = true; + } + + if (this.transforms != null && this.transforms.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("uri")) + { + this.uriAttribute = xmlElement.GetAttribute("uri"); + } + else + { + this.uriAttribute = ""; + throw new CryptographicException("uri attribute missing"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:Transforms", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.transforms = new Transforms(); + this.transforms.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "HashDataInfo", XadesSignedXml.XadesNamespaceUri); + + retVal.SetAttribute("uri", this.uriAttribute); + + if (this.transforms != null && this.transforms.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.transforms.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/HashDataInfoCollection.cs b/Hcs.ClientNet/Microsoft/Xades/HashDataInfoCollection.cs new file mode 100644 index 0000000..9e79bbb --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/HashDataInfoCollection.cs @@ -0,0 +1,62 @@ +// HashDataInfoCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class HashDataInfoCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new HashDataInfo this[int index] + { + get + { + return (HashDataInfo)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public HashDataInfo Add(HashDataInfo objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public HashDataInfo Add() + { + return this.Add(new HashDataInfo()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/Identifier.cs b/Hcs.ClientNet/Microsoft/Xades/Identifier.cs new file mode 100644 index 0000000..17895bc --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/Identifier.cs @@ -0,0 +1,162 @@ +// Identifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// Possible values for Qualifier + /// + public enum KnownQualifier + { + /// + /// Value has not been set + /// + Uninitalized, + /// + /// OID encoded as Uniform Resource Identifier (URI) + /// + OIDAsURI, + /// + /// OID encoded as Uniform Resource Name (URN) + /// + OIDAsURN + } + + /// + /// The Identifier element contains a permanent identifier. Once assigned the + /// identifier can never be re-assigned again. It supports both the mechanism + /// that is used to identify objects in ASN.1 and the mechanism that is + /// usually used to identify objects in an XML environment. + /// + public class Identifier + { + #region Private variables + private KnownQualifier qualifier; + private string identifierUri; + #endregion + + #region Public properties + /// + /// The optional Qualifier attribute can be used to provide a hint about the + /// applied encoding (values OIDAsURN or OIDAsURI) + /// + public KnownQualifier Qualifier + { + get + { + return this.qualifier; + } + set + { + this.qualifier = value; + } + } + + /// + /// Identification of the XML environment object + /// + public string IdentifierUri + { + get + { + return this.identifierUri; + } + set + { + this.identifierUri = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public Identifier() + { + this.qualifier = KnownQualifier.Uninitalized; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.qualifier != KnownQualifier.Uninitalized) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.identifierUri)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + if (xmlElement.HasAttribute("Qualifier")) + { + this.qualifier = (KnownQualifier)KnownQualifier.Parse(typeof(KnownQualifier), xmlElement.GetAttribute("Qualifier"), true); + } + else + { + this.qualifier = KnownQualifier.Uninitalized; + } + + this.identifierUri = xmlElement.InnerText; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "Identifier", XadesSignedXml.XadesNamespaceUri); + + if (this.qualifier != KnownQualifier.Uninitalized) + { + retVal.SetAttribute("Qualifier", this.qualifier.ToString()); + } + + retVal.InnerText = this.identifierUri; + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/IndividualDataObjectsTimeStampCollection.cs b/Hcs.ClientNet/Microsoft/Xades/IndividualDataObjectsTimeStampCollection.cs new file mode 100644 index 0000000..9971d51 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/IndividualDataObjectsTimeStampCollection.cs @@ -0,0 +1,63 @@ +// individualDataObjectsTimeStampCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class IndividualDataObjectsTimeStampCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new TimeStamp this[int index] + { + get + { + return (TimeStamp)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public TimeStamp Add(TimeStamp objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// Name of the tag when serializing into XML using GetXml() + /// The newly created object that has been added to collection + public TimeStamp Add(string tagName) + { + return this.Add(new TimeStamp(tagName)); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/IssuerSerial.cs b/Hcs.ClientNet/Microsoft/Xades/IssuerSerial.cs new file mode 100644 index 0000000..f82013a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/IssuerSerial.cs @@ -0,0 +1,152 @@ +// IssuerSerial.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The element IssuerSerial contains the identifier of one of the + /// certificates referenced in the sequence + /// + public class IssuerSerial + { + #region Private variables + private string x509IssuerName; + private string x509SerialNumber; + #endregion + + #region Public properties + /// + /// Name of the X509 certificate issuer + /// + public string X509IssuerName + { + get + { + return this.x509IssuerName; + } + set + { + this.x509IssuerName = value; + } + } + + /// + /// Serial number of the X509 certificate + /// + public string X509SerialNumber + { + get + { + return this.x509SerialNumber; + } + set + { + this.x509SerialNumber = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public IssuerSerial() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.x509IssuerName)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.x509SerialNumber)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + + xmlNodeList = xmlElement.SelectNodes("ds:X509IssuerName", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("X509IssuerName missing"); + } + this.x509IssuerName = xmlNodeList.Item(0).InnerText; + + xmlNodeList = xmlElement.SelectNodes("ds:X509SerialNumber", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("X509SerialNumber missing"); + } + this.x509SerialNumber = xmlNodeList.Item(0).InnerText; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "IssuerSerial", XadesSignedXml.XadesNamespaceUri); + + bufferXmlElement = creationXmlDocument.CreateElement("ds", "X509IssuerName", SignedXml.XmlDsigNamespaceUrl); + bufferXmlElement.InnerText = this.x509IssuerName; + retVal.AppendChild(bufferXmlElement); + + bufferXmlElement = creationXmlDocument.CreateElement("ds", "X509SerialNumber", SignedXml.XmlDsigNamespaceUrl); + bufferXmlElement.InnerText = this.x509SerialNumber; + retVal.AppendChild(bufferXmlElement); + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/NoticeNumberCollection.cs b/Hcs.ClientNet/Microsoft/Xades/NoticeNumberCollection.cs new file mode 100644 index 0000000..990cfe8 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/NoticeNumberCollection.cs @@ -0,0 +1,62 @@ +// NoticeNumberCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class NoticeNumberCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new int this[int index] + { + get + { + return (int)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public int Add(int objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public int Add() + { + return this.Add(new int()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/NoticeNumbers.cs b/Hcs.ClientNet/Microsoft/Xades/NoticeNumbers.cs new file mode 100644 index 0000000..f7d181b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/NoticeNumbers.cs @@ -0,0 +1,147 @@ +// NoticeNumbers.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains identifying numbers for a group of textual statements + /// so that the XAdES based application can get the explicit notices from a + /// notices file + /// + public class NoticeNumbers + { + #region Private variables + private NoticeNumberCollection noticeNumberCollection; + #endregion + + #region Public properties + /// + /// Collection of notice numbers + /// + public NoticeNumberCollection NoticeNumberCollection + { + get + { + return this.noticeNumberCollection; + } + set + { + this.noticeNumberCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public NoticeNumbers() + { + this.noticeNumberCollection = new NoticeNumberCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.noticeNumberCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + int newNoticeNumber; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.noticeNumberCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:int", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newNoticeNumber = int.Parse(iterationXmlElement.InnerText); + this.noticeNumberCollection.Add(newNoticeNumber); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement bufferXmlElement; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "NoticeNumbers", XadesSignedXml.XadesNamespaceUri); + + if (this.noticeNumberCollection.Count > 0) + { + foreach (int noticeNumber in this.noticeNumberCollection) + { + bufferXmlElement = creationXmlDocument.CreateElement("int", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = noticeNumber.ToString(); + retVal.AppendChild(bufferXmlElement); + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/NoticeRef.cs b/Hcs.ClientNet/Microsoft/Xades/NoticeRef.cs new file mode 100644 index 0000000..db56c2a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/NoticeRef.cs @@ -0,0 +1,161 @@ +// NoticeRef.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The NoticeRef element names an organization and identifies by + /// numbers a group of textual statements prepared by that organization, + /// so that the application could get the explicit notices from a notices file + /// + public class NoticeRef + { + #region Private variables + private string organization; + private NoticeNumbers noticeNumbers; + #endregion + + #region Public properties + /// + /// Organization issuing the signature policy + /// + public string Organization + { + get + { + return this.organization; + } + set + { + this.organization = value; + } + } + + /// + /// Numerical identification of textual statements prepared by the organization, + /// so that the application can get the explicit notices from a notices file + /// + public NoticeNumbers NoticeNumbers + { + get + { + return this.noticeNumbers; + } + set + { + this.noticeNumbers = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public NoticeRef() + { + this.noticeNumbers = new NoticeNumbers(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.organization)) + { + retVal = true; + } + + if (this.noticeNumbers != null && this.noticeNumbers.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:Organization", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("Organization missing"); + } + this.organization = xmlNodeList.Item(0).InnerText; + + xmlNodeList = xmlElement.SelectNodes("xsd:NoticeNumbers", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("NoticeNumbers missing"); + } + this.noticeNumbers = new NoticeNumbers(); + this.noticeNumbers.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement bufferXmlElement; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "NoticeRef", XadesSignedXml.XadesNamespaceUri); + + if (this.organization == null) + { + throw new CryptographicException("Organization can't be null"); + } + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Organization", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.organization; + retVal.AppendChild(bufferXmlElement); + + if (this.noticeNumbers == null) + { + throw new CryptographicException("NoticeNumbers can't be null"); + } + retVal.AppendChild(creationXmlDocument.ImportNode(this.noticeNumbers.GetXml(), true)); + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPIdentifier.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPIdentifier.cs new file mode 100644 index 0000000..8d96262 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPIdentifier.cs @@ -0,0 +1,186 @@ +// OCSPIdentifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class includes the name of the server that has produced the + /// referenced response (ResponderID element) and the time indication in + /// the "ProducedAt" field of the referenced response (ProducedAt element). + /// The optional URI attribute could serve to indicate where the OCSP + /// response identified is archived. + /// + public class OCSPIdentifier + { + #region Private variables + private string uriAttribute; + private string responderID; + private DateTime producedAt; + #endregion + + #region Public properties + /// + /// The optional URI attribute could serve to indicate where the OCSP + /// response is archived + /// + public string UriAttribute + { + get + { + return this.uriAttribute; + } + set + { + this.uriAttribute = value; + } + } + + /// + /// The ID of the server that has produced the referenced response + /// + public string ResponderID + { + get + { + return this.responderID; + } + set + { + this.responderID = value; + } + } + + /// + /// Time indication in the referenced response + /// + public DateTime ProducedAt + { + get + { + return this.producedAt; + } + set + { + this.producedAt = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OCSPIdentifier() + { + this.producedAt = DateTime.MinValue; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.uriAttribute)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.responderID)) + { + retVal = true; + } + + if (this.producedAt != DateTime.MinValue) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("URI")) + { + this.uriAttribute = xmlElement.GetAttribute("URI"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:ResponderID", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.responderID = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:ProducedAt", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.producedAt = XmlConvert.ToDateTime(xmlNodeList.Item(0).InnerText, XmlDateTimeSerializationMode.Local); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OCSPIdentifier", XadesSignedXml.XadesNamespaceUri); + + retVal.SetAttribute("URI", this.uriAttribute); + + if (!String.IsNullOrEmpty(this.responderID)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "ResponderID", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.responderID; + retVal.AppendChild(bufferXmlElement); + } + + if (this.producedAt != DateTime.MinValue) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "ProducedAt", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = Convert.ToString(this.producedAt.ToString("s")); + retVal.AppendChild(bufferXmlElement); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPRef.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPRef.cs new file mode 100644 index 0000000..30f1e3d --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPRef.cs @@ -0,0 +1,164 @@ +// OCSPRef.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class identifies one OCSP response + /// + public class OCSPRef + { + #region Private variables + private OCSPIdentifier ocspIdentifier; + private DigestAlgAndValueType digestAlgAndValue; + #endregion + + #region Public properties + /// + /// Identification of one OCSP response + /// + public OCSPIdentifier OCSPIdentifier + { + get + { + return this.ocspIdentifier; + } + set + { + this.ocspIdentifier = value; + } + } + + /// + /// The digest computed on the DER encoded OCSP response, since it may be + /// needed to differentiate between two OCSP responses by the same server + /// with their "ProducedAt" fields within the same second + /// + public DigestAlgAndValueType CertDigest + { + get + { + return this.digestAlgAndValue; + } + set + { + this.digestAlgAndValue = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OCSPRef() + { + this.ocspIdentifier = new OCSPIdentifier(); + this.digestAlgAndValue = new DigestAlgAndValueType("DigestAlgAndValue"); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.ocspIdentifier != null && this.ocspIdentifier.HasChanged()) + { + retVal = true; + } + + if (this.digestAlgAndValue != null && this.digestAlgAndValue.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:OCSPIdentifier", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("OCSPIdentifier missing"); + } + this.ocspIdentifier = new OCSPIdentifier(); + this.ocspIdentifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:DigestAlgAndValue", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + this.digestAlgAndValue = null; + } + else + { + this.digestAlgAndValue = new DigestAlgAndValueType("DigestAlgAndValue"); + this.digestAlgAndValue.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OCSPRef", XadesSignedXml.XadesNamespaceUri); + + if (this.ocspIdentifier != null && this.ocspIdentifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.ocspIdentifier.GetXml(), true)); + } + else + { + throw new CryptographicException("OCSPIdentifier element missing in OCSPRef"); + } + + if (this.digestAlgAndValue != null && this.digestAlgAndValue.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.digestAlgAndValue.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPRefCollection.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPRefCollection.cs new file mode 100644 index 0000000..fe48865 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPRefCollection.cs @@ -0,0 +1,62 @@ +// OCSPRefCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class OCSPRefCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new OCSPRef this[int index] + { + get + { + return (OCSPRef)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public OCSPRef Add(OCSPRef objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public OCSPRef Add() + { + return this.Add(new OCSPRef()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPRefs.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPRefs.cs new file mode 100644 index 0000000..4961159 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPRefs.cs @@ -0,0 +1,146 @@ +// OCSPRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of OCSPRefs + /// + public class OCSPRefs + { + #region Private variables + private OCSPRefCollection ocspRefCollection; + #endregion + + #region Public properties + /// + /// Collection of OCSP refs + /// + public OCSPRefCollection OCSPRefCollection + { + get + { + return this.ocspRefCollection; + } + set + { + this.ocspRefCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OCSPRefs() + { + this.ocspRefCollection = new OCSPRefCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.ocspRefCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + OCSPRef newOCSPRef; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.ocspRefCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:OCSPRef", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newOCSPRef = new OCSPRef(); + newOCSPRef.LoadXml(iterationXmlElement); + this.ocspRefCollection.Add(newOCSPRef); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OCSPRefs", XadesSignedXml.XadesNamespaceUri); + + if (this.ocspRefCollection.Count > 0) + { + foreach (OCSPRef ocspRef in this.ocspRefCollection) + { + if (ocspRef.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(ocspRef.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPValue.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPValue.cs new file mode 100644 index 0000000..3df0d98 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPValue.cs @@ -0,0 +1,33 @@ +// OCSPValue.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +namespace Microsoft.Xades +{ + /// + /// This class consist of a sequence of at least one OCSP Response. The + /// EncapsulatedOCSPValue element contains the base64 encoding of a + /// DER-encoded OCSP Response + /// + public class OCSPValue : EncapsulatedPKIData + { + #region Constructors + /// + /// Default constructor + /// + public OCSPValue() + { + this.TagName = "EncapsulatedOCSPValue"; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPValueCollection.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPValueCollection.cs new file mode 100644 index 0000000..10271dc --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPValueCollection.cs @@ -0,0 +1,62 @@ +// OCSPValueCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class OCSPValueCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new OCSPValue this[int index] + { + get + { + return (OCSPValue)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public OCSPValue Add(OCSPValue objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public OCSPValue Add() + { + return this.Add(new OCSPValue()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OCSPValues.cs b/Hcs.ClientNet/Microsoft/Xades/OCSPValues.cs new file mode 100644 index 0000000..e95aac8 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OCSPValues.cs @@ -0,0 +1,146 @@ +// OCSPValues.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of OCSPValues + /// + public class OCSPValues + { + #region Private variables + private OCSPValueCollection ocspValueCollection; + #endregion + + #region Public properties + /// + /// Collection of OCSP values + /// + public OCSPValueCollection OCSPValueCollection + { + get + { + return this.ocspValueCollection; + } + set + { + this.ocspValueCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OCSPValues() + { + this.ocspValueCollection = new OCSPValueCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.ocspValueCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + OCSPValue newOCSPValue; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.ocspValueCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:OCSPValue", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newOCSPValue = new OCSPValue(); + newOCSPValue.LoadXml(iterationXmlElement); + this.ocspValueCollection.Add(newOCSPValue); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OCSPValues", XadesSignedXml.XadesNamespaceUri); + + if (this.ocspValueCollection.Count > 0) + { + foreach (OCSPValue ocspValue in this.ocspValueCollection) + { + if (ocspValue.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(ocspValue.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ObjectIdentifier.cs b/Hcs.ClientNet/Microsoft/Xades/ObjectIdentifier.cs new file mode 100644 index 0000000..671d026 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ObjectIdentifier.cs @@ -0,0 +1,221 @@ +// ObjectIdentifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// ObjectIdentifier allows the specification of an unique and permanent + /// object of an object and some additional information about the nature of + /// the data object + /// + public class ObjectIdentifier + { + #region Private variables + private string tagName; + private Identifier identifier; + private string description; + private DocumentationReferences documentationReferences; + #endregion + + #region Public properties + /// + /// The name of the element when serializing + /// + public string TagName + { + get + { + return this.tagName; + } + set + { + this.tagName = value; + } + } + + /// + /// Specification of an unique and permanent identifier + /// + public Identifier Identifier + { + get + { + return this.identifier; + } + set + { + this.identifier = value; + } + } + + /// + /// Textual description of the nature of the data object + /// + public string Description + { + get + { + return this.description; + } + set + { + this.description = value; + } + } + + /// + /// References to documents where additional information about the + /// nature of the data object can be found + /// + public DocumentationReferences DocumentationReferences + { + get + { + return this.documentationReferences; + } + set + { + this.documentationReferences = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public ObjectIdentifier() + { + this.identifier = new Identifier(); + this.documentationReferences = new DocumentationReferences(); + } + + /// + /// Constructor with TagName + /// + /// Name of the tag when serializing with GetXml + public ObjectIdentifier(string tagName) : this() + { + this.tagName = tagName; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.identifier != null && this.identifier.HasChanged()) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.description)) + { + retVal = true; + } + + if (this.documentationReferences != null && this.documentationReferences.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:Identifier", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("Identifier missing"); + } + this.identifier = new Identifier(); + this.identifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:Description", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.description = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:DocumentationReferences", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.documentationReferences = new DocumentationReferences(); + this.documentationReferences.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", this.tagName, XadesSignedXml.XadesNamespaceUri); + + if (this.identifier != null && this.identifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.identifier.GetXml(), true)); + } + else + { + throw new CryptographicException("Identifier element missing in OjectIdentifier"); + } + + if (!String.IsNullOrEmpty(this.description)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "Description", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.description; + retVal.AppendChild(bufferXmlElement); + } + + if (this.documentationReferences != null && this.documentationReferences.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.documentationReferences.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ObjectReference.cs b/Hcs.ClientNet/Microsoft/Xades/ObjectReference.cs new file mode 100644 index 0000000..79cf91a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ObjectReference.cs @@ -0,0 +1,107 @@ +// ObjectReference.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class refers to one ds:Reference element of the ds:SignedInfo + /// corresponding with one data object qualified by this property. + /// If some but not all the signed data objects share the same commitment, + /// one ObjectReference element must appear for each one of them. + /// However, if all the signed data objects share the same commitment, + /// the AllSignedDataObjects empty element must be present. + /// + public class ObjectReference + { + #region Private variables + private string objectReferenceUri; + #endregion + + #region Public properties + /// + /// Uri of the object reference + /// + public string ObjectReferenceUri + { + get + { + return this.objectReferenceUri; + } + set + { + this.objectReferenceUri = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public ObjectReference() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.objectReferenceUri != null && this.objectReferenceUri != "") + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + this.objectReferenceUri = xmlElement.InnerText; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "ObjectReference", XadesSignedXml.XadesNamespaceUri); + retVal.InnerText = this.objectReferenceUri; + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/ObjectReferenceCollection.cs b/Hcs.ClientNet/Microsoft/Xades/ObjectReferenceCollection.cs new file mode 100644 index 0000000..f15b900 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/ObjectReferenceCollection.cs @@ -0,0 +1,62 @@ +// ObjectReferenceCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class ObjectReferenceCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new ObjectReference this[int index] + { + get + { + return (ObjectReference)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public ObjectReference Add(ObjectReference objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public ObjectReference Add() + { + return this.Add(new ObjectReference()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherCertificate.cs b/Hcs.ClientNet/Microsoft/Xades/OtherCertificate.cs new file mode 100644 index 0000000..83cb2a4 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherCertificate.cs @@ -0,0 +1,102 @@ +// OtherCertificate.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The OtherCertificate element is a placeholder for potential future + /// new formats of certificates + /// + public class OtherCertificate : ArrayList + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents any certificate + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OtherCertificate() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OtherCertificate", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherCertificateCollection.cs b/Hcs.ClientNet/Microsoft/Xades/OtherCertificateCollection.cs new file mode 100644 index 0000000..066c81d --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherCertificateCollection.cs @@ -0,0 +1,62 @@ +// OtherCertificateCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class OtherCertificateCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new OtherCertificate this[int index] + { + get + { + return (OtherCertificate)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public OtherCertificate Add(OtherCertificate objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public OtherCertificate Add() + { + return this.Add(new OtherCertificate()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherRef.cs b/Hcs.ClientNet/Microsoft/Xades/OtherRef.cs new file mode 100644 index 0000000..d8dc0c0 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherRef.cs @@ -0,0 +1,100 @@ +// OtherRef.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// Alternative forms of validation data can be included in this class + /// + public class OtherRef + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents any other type of ref + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OtherRef() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OtherRef", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherRefCollection.cs b/Hcs.ClientNet/Microsoft/Xades/OtherRefCollection.cs new file mode 100644 index 0000000..8875344 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherRefCollection.cs @@ -0,0 +1,62 @@ +// OtherRefCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class OtherRefCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new OtherRef this[int index] + { + get + { + return (OtherRef)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public OtherRef Add(OtherRef objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public OtherRef Add() + { + return this.Add(new OtherRef()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherRefs.cs b/Hcs.ClientNet/Microsoft/Xades/OtherRefs.cs new file mode 100644 index 0000000..daf7e86 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherRefs.cs @@ -0,0 +1,146 @@ +// OtherRefs.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of OtherRefs + /// + public class OtherRefs + { + #region Private variables + private OtherRefCollection otherRefCollection; + #endregion + + #region Public properties + /// + /// Collection of other refs + /// + public OtherRefCollection OtherRefCollection + { + get + { + return this.otherRefCollection; + } + set + { + this.otherRefCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OtherRefs() + { + this.otherRefCollection = new OtherRefCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.otherRefCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + OtherRef newOtherRef; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.otherRefCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:OtherRef", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newOtherRef = new OtherRef(); + newOtherRef.LoadXml(iterationXmlElement); + this.otherRefCollection.Add(newOtherRef); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OtherRefs", XadesSignedXml.XadesNamespaceUri); + + if (this.otherRefCollection.Count > 0) + { + foreach (OtherRef otherRef in this.otherRefCollection) + { + if (otherRef.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(otherRef.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherValue.cs b/Hcs.ClientNet/Microsoft/Xades/OtherValue.cs new file mode 100644 index 0000000..04a0ceb --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherValue.cs @@ -0,0 +1,100 @@ +// OtherValue.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class provides a placeholder for other revocation information + /// + public class OtherValue + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents any other value + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OtherValue() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OtherValue", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherValueCollection.cs b/Hcs.ClientNet/Microsoft/Xades/OtherValueCollection.cs new file mode 100644 index 0000000..9b66b75 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherValueCollection.cs @@ -0,0 +1,62 @@ +// OtherValueCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class OtherValueCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new OtherValue this[int index] + { + get + { + return (OtherValue)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public OtherValue Add(OtherValue objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public OtherValue Add() + { + return this.Add(new OtherValue()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/OtherValues.cs b/Hcs.ClientNet/Microsoft/Xades/OtherValues.cs new file mode 100644 index 0000000..68ba59f --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/OtherValues.cs @@ -0,0 +1,146 @@ +// OtherValues.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of OtherValues + /// + public class OtherValues + { + #region Private variables + private OtherValueCollection otherValueCollection; + #endregion + + #region Public properties + /// + /// Collection of other values + /// + public OtherValueCollection OtherValueCollection + { + get + { + return this.otherValueCollection; + } + set + { + this.otherValueCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public OtherValues() + { + this.otherValueCollection = new OtherValueCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.otherValueCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + OtherValue newOtherValue; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.otherValueCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:OtherValue", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newOtherValue = new OtherValue(); + newOtherValue.LoadXml(iterationXmlElement); + this.otherValueCollection.Add(newOtherValue); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "OtherValues", XadesSignedXml.XadesNamespaceUri); + + if (this.otherValueCollection.Count > 0) + { + foreach (OtherValue otherValue in this.otherValueCollection) + { + if (otherValue.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(otherValue.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/QualifyingProperties.cs b/Hcs.ClientNet/Microsoft/Xades/QualifyingProperties.cs new file mode 100644 index 0000000..a4d1a55 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/QualifyingProperties.cs @@ -0,0 +1,237 @@ +// QualifiyngProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The QualifyingProperties element acts as a container element for + /// all the qualifying information that should be added to an XML + /// signature + /// + public class QualifyingProperties + { + #region Private variables + private string id; + private string target; + private SignedProperties signedProperties; + private UnsignedProperties unsignedProperties; + #endregion + + #region Public properties + /// + /// The optional Id attribute can be used to make a reference to the + /// QualifyingProperties container + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// The mandatory Target attribute refers to the XML signature with which the + /// qualifying properties are associated + /// + public string Target + { + get + { + return this.target; + } + set + { + this.target = value; + } + } + + /// + /// The SignedProperties element contains a number of properties that are + /// collectively signed by the XMLDSIG signature + /// + public SignedProperties SignedProperties + { + get + { + return this.signedProperties; + } + set + { + this.signedProperties = value; + } + } + + /// + /// The UnsignedProperties element contains a number of properties that are + /// not signed by the XMLDSIG signature + /// + public UnsignedProperties UnsignedProperties + { + get + { + return this.unsignedProperties; + } + set + { + this.unsignedProperties = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public QualifyingProperties() + { + this.signedProperties = new SignedProperties(); + this.unsignedProperties = new UnsignedProperties(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.target)) + { + retVal = true; + } + + if (this.signedProperties != null && this.signedProperties.HasChanged()) + { + retVal = true; + } + + if (this.unsignedProperties != null && this.unsignedProperties.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + /// Element containing parent signature (needed if there are counter signatures) + public void LoadXml(XmlElement xmlElement, XmlElement counterSignedXmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + if (xmlElement.HasAttribute("Target")) + { + this.target = xmlElement.GetAttribute("Target"); + } + else + { + this.target = ""; + throw new CryptographicException("Target attribute missing"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SignedProperties", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SignedProperties missing"); + } + this.signedProperties = new SignedProperties(); + this.signedProperties.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:UnsignedProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.unsignedProperties = new UnsignedProperties(); + this.unsignedProperties.LoadXml((XmlElement)xmlNodeList.Item(0), counterSignedXmlElement); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "QualifyingProperties", XadesSignedXml.XadesNamespaceUri); + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + + if (!String.IsNullOrEmpty(this.target)) + { + retVal.SetAttribute("Target", this.target); + } + else + { + throw new CryptographicException("QualifyingProperties Target attribute has no value"); + } + + var xmlAttribute = retVal.OwnerDocument.CreateAttribute("xmlns", "xades141", "http://www.w3.org/2000/xmlns/"); + xmlAttribute.Value = "http://uri.etsi.org/01903/v1.4.1#"; + retVal.Attributes.Append(xmlAttribute); + + if (this.signedProperties != null && this.signedProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signedProperties.GetXml(), true)); + } + if (this.unsignedProperties != null && this.unsignedProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.unsignedProperties.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/RevocationValues.cs b/Hcs.ClientNet/Microsoft/Xades/RevocationValues.cs new file mode 100644 index 0000000..6d23289 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/RevocationValues.cs @@ -0,0 +1,217 @@ +// RevocationValues.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The RevocationValues element is used to hold the values of the + /// revocation information which are to be shipped with the XML signature + /// in case of an XML Advanced Electronic Signature with Extended + /// Validation Data (XAdES-X-Long). This is a unsigned property that + /// qualifies the signature. An XML electronic signature aligned with the + /// present document MAY contain at most one RevocationValues element. + /// + public class RevocationValues + { + #region Private variables + private string id; + private CRLValues crlValues; + private OCSPValues ocspValues; + private OtherValues otherValues; + #endregion + + #region Public properties + /// + /// Optional Id for the XML element + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// Certificate Revocation Lists + /// + public CRLValues CRLValues + { + get + { + return this.crlValues; + } + set + { + this.crlValues = value; + } + } + + /// + /// Responses from an online certificate status server + /// + public OCSPValues OCSPValues + { + get + { + return this.ocspValues; + } + set + { + this.ocspValues = value; + } + } + + /// + /// Placeholder for other revocation information is provided for future + /// use + /// + public OtherValues OtherValues + { + get + { + return this.otherValues; + } + set + { + this.otherValues = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public RevocationValues() + { + this.crlValues = new CRLValues(); + this.ocspValues = new OCSPValues(); + this.otherValues = new OtherValues(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + if (this.crlValues != null && this.crlValues.HasChanged()) + { + retVal = true; + } + if (this.ocspValues != null && this.ocspValues.HasChanged()) + { + retVal = true; + } + if (this.otherValues != null && this.otherValues.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:CRLValues", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.crlValues = new CRLValues(); + this.crlValues.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + xmlNodeList = xmlElement.SelectNodes("xsd:OCSPValues", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.ocspValues = new OCSPValues(); + this.ocspValues.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + xmlNodeList = xmlElement.SelectNodes("xsd:OtherValues", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.otherValues = new OtherValues(); + this.otherValues.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "RevocationValues", XadesSignedXml.XadesNamespaceUri); + if (this.id != null && this.id != "") + { + retVal.SetAttribute("Id", this.id); + } + if (this.crlValues != null && this.crlValues.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.crlValues.GetXml(), true)); + } + if (this.ocspValues != null && this.ocspValues.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.ocspValues.GetXml(), true)); + } + if (this.otherValues != null && this.otherValues.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.otherValues.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SPUri.cs b/Hcs.ClientNet/Microsoft/Xades/SPUri.cs new file mode 100644 index 0000000..e2b2821 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SPUri.cs @@ -0,0 +1,131 @@ +// SPUri.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// SPUri represents the URL where the copy of the Signature Policy may be + /// obtained. The class derives from SigPolicyQualifier. + /// + public class SPUri : SigPolicyQualifier + { + #region Private variables + private string uri; + #endregion + + #region Public properties + /// + /// Uri for the sig policy qualifier + /// + public string Uri + { + get + { + return this.uri; + } + set + { + this.uri = value; + } + } + + /// + /// Inherited generic element, not used in the SPUri class + /// + public override XmlElement AnyXmlElement + { + get + { + return null; + } + set + { + throw new CryptographicException("Setting AnyXmlElement on a SPUri is not supported"); + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SPUri() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public override bool HasChanged() + { + bool retVal = false; + + if (this.uri != null && this.uri != "") + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public override void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SPURI", xmlNamespaceManager); + + this.uri = ((XmlElement)xmlNodeList.Item(0)).InnerText; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public override XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement bufferXmlElement; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SigPolicyQualifier", XadesSignedXml.XadesNamespaceUri); + + bufferXmlElement = creationXmlDocument.CreateElement("xades", "SPURI", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.uri; + retVal.AppendChild(creationXmlDocument.ImportNode(bufferXmlElement, true)); + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SPUserNotice.cs b/Hcs.ClientNet/Microsoft/Xades/SPUserNotice.cs new file mode 100644 index 0000000..b245909 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SPUserNotice.cs @@ -0,0 +1,175 @@ +// SPUserNotice.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// SPUserNotice element is intended for being displayed whenever the + /// signature is validated. The class derives from SigPolicyQualifier. + /// + public class SPUserNotice : SigPolicyQualifier + { + #region Private variables + private NoticeRef noticeRef; + private string explicitText; + #endregion + + #region Public properties + /// + /// The NoticeRef element names an organization and identifies by + /// numbers a group of textual statements prepared by that organization, + /// so that the application could get the explicit notices from a notices file + /// + public NoticeRef NoticeRef + { + get + { + return this.noticeRef; + } + set + { + this.noticeRef = value; + } + } + + /// + /// The ExplicitText element contains the text of the notice to be displayed + /// + public string ExplicitText + { + get + { + return this.explicitText; + } + set + { + this.explicitText = value; + } + } + + /// + /// Inherited generic element, not used in the SPUserNotice class + /// + public override XmlElement AnyXmlElement + { + get + { + return null; + } + set + { + throw new CryptographicException("Setting AnyXmlElement on a SPUserNotice is not supported"); + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SPUserNotice() + { + noticeRef = new NoticeRef(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public override bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.explicitText)) + { + retVal = true; + } + + if (this.noticeRef != null && this.noticeRef.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public override void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SPUserNotice/xsd:NoticeRef", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.noticeRef = new NoticeRef(); + this.noticeRef.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:SPUserNotice/xsd:ExplicitText", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.explicitText = xmlNodeList.Item(0).InnerText; + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public override XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement bufferXmlElement; + XmlElement bufferXmlElement2; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SigPolicyQualifier", XadesSignedXml.XadesNamespaceUri); + + bufferXmlElement = creationXmlDocument.CreateElement("xades", "SPUserNotice", XadesSignedXml.XadesNamespaceUri); + if (this.noticeRef != null && this.noticeRef.HasChanged()) + { + bufferXmlElement.AppendChild(creationXmlDocument.ImportNode(this.noticeRef.GetXml(), true)); + } + if (!String.IsNullOrEmpty(this.explicitText)) + { + bufferXmlElement2 = creationXmlDocument.CreateElement("xades", "ExplicitText", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement2.InnerText = this.explicitText; + bufferXmlElement.AppendChild(bufferXmlElement2); + } + + retVal.AppendChild(creationXmlDocument.ImportNode(bufferXmlElement, true)); + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifier.cs b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifier.cs new file mode 100644 index 0000000..8997123 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifier.cs @@ -0,0 +1,101 @@ +// SigpolicyQualifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class can contain additional information qualifying the signature + /// policy identifier + /// + public class SigPolicyQualifier + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents a sig policy qualifier + /// + public virtual XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SigPolicyQualifier() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public virtual bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public virtual void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public virtual XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SigPolicyQualifier", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifierCollection.cs b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifierCollection.cs new file mode 100644 index 0000000..caeedfd --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifierCollection.cs @@ -0,0 +1,62 @@ +// SigPolicyQualifierCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class SigPolicyQualifierCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new SigPolicyQualifier this[int index] + { + get + { + return (SigPolicyQualifier)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public SigPolicyQualifier Add(SigPolicyQualifier objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public SigPolicyQualifier Add() + { + return this.Add(new SigPolicyQualifier()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifiers.cs b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifiers.cs new file mode 100644 index 0000000..8f00729 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SigPolicyQualifiers.cs @@ -0,0 +1,169 @@ +// SigpolicyQualifiers.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a collection of SigPolicyQualifiers + /// + public class SigPolicyQualifiers + { + #region Private variables + private SigPolicyQualifierCollection sigPolicyQualifierCollection; + #endregion + + #region Public properties + /// + /// A collection of sig policy qualifiers + /// + public SigPolicyQualifierCollection SigPolicyQualifierCollection + { + get + { + return this.sigPolicyQualifierCollection; + } + set + { + this.sigPolicyQualifierCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SigPolicyQualifiers() + { + this.sigPolicyQualifierCollection = new SigPolicyQualifierCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.sigPolicyQualifierCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + SPUri newSPUri; + SPUserNotice newSPUserNotice; + SigPolicyQualifier newSigPolicyQualifier; + IEnumerator enumerator; + XmlElement iterationXmlElement; + XmlElement subElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.sigPolicyQualifierCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:SigPolicyQualifier", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + subElement = (XmlElement)iterationXmlElement.SelectSingleNode("xsd:SPURI", xmlNamespaceManager); + if (subElement != null) + { + newSPUri = new SPUri(); + newSPUri.LoadXml(iterationXmlElement); + this.sigPolicyQualifierCollection.Add(newSPUri); + } + else + { + subElement = (XmlElement)iterationXmlElement.SelectSingleNode("xsd:SPUserNotice", xmlNamespaceManager); + if (subElement != null) + { + newSPUserNotice = new SPUserNotice(); + newSPUserNotice.LoadXml(iterationXmlElement); + this.sigPolicyQualifierCollection.Add(newSPUserNotice); + } + else + { + newSigPolicyQualifier = new SigPolicyQualifier(); + newSigPolicyQualifier.LoadXml(iterationXmlElement); + this.sigPolicyQualifierCollection.Add(newSigPolicyQualifier); + } + } + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SigPolicyQualifiers", XadesSignedXml.XadesNamespaceUri); + + if (this.sigPolicyQualifierCollection.Count > 0) + { + foreach (SigPolicyQualifier sigPolicyQualifier in this.sigPolicyQualifierCollection) + { + if (sigPolicyQualifier.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(sigPolicyQualifier.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyId.cs b/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyId.cs new file mode 100644 index 0000000..59c111a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyId.cs @@ -0,0 +1,244 @@ +// SignaturePolicyId.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The SignaturePolicyId element is an explicit and unambiguous identifier + /// of a Signature Policy together with a hash value of the signature + /// policy, so it can be verified that the policy selected by the signer is + /// the one being used by the verifier. An explicit signature policy has a + /// globally unique reference, which, in this way, is bound to an + /// electronic signature by the signer as part of the signature + /// calculation. + /// + public class SignaturePolicyId + { + #region Private variables + private ObjectIdentifier sigPolicyId; + private Transforms transforms; + private DigestAlgAndValueType sigPolicyHash; + private SigPolicyQualifiers sigPolicyQualifiers; + #endregion + + #region Public properties + /// + /// The SigPolicyId element contains an identifier that uniquely + /// identifies a specific version of the signature policy + /// + public ObjectIdentifier SigPolicyId + { + get + { + return this.sigPolicyId; + } + set + { + this.sigPolicyId = value; + } + } + + /// + /// The optional Transforms element can contain the transformations + /// performed on the signature policy document before computing its + /// hash + /// + public Transforms Transforms + { + get + { + return this.transforms; + } + set + { + this.transforms = value; + } + } + + /// + /// The SigPolicyHash element contains the identifier of the hash + /// algorithm and the hash value of the signature policy + /// + public DigestAlgAndValueType SigPolicyHash + { + get + { + return this.sigPolicyHash; + } + set + { + this.sigPolicyHash = value; + } + } + + /// + /// The SigPolicyQualifier element can contain additional information + /// qualifying the signature policy identifier + /// + public SigPolicyQualifiers SigPolicyQualifiers + { + get + { + return this.sigPolicyQualifiers; + } + set + { + this.sigPolicyQualifiers = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignaturePolicyId() + { + this.sigPolicyId = new ObjectIdentifier("SigPolicyId"); + this.transforms = new Transforms(); + this.sigPolicyHash = new DigestAlgAndValueType("SigPolicyHash"); + this.sigPolicyQualifiers = new SigPolicyQualifiers(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.sigPolicyId != null && this.sigPolicyId.HasChanged()) + { + retVal = true; + } + + if (this.transforms != null && this.transforms.HasChanged()) + { + retVal = true; + } + + if (this.sigPolicyHash != null && this.sigPolicyHash.HasChanged()) + { + retVal = true; + } + + if (this.sigPolicyQualifiers != null && this.sigPolicyQualifiers.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SigPolicyId", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SigPolicyId missing"); + } + this.sigPolicyId = new ObjectIdentifier("SigPolicyId"); + this.sigPolicyId.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("ds:Transforms", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.transforms = new Transforms(); + this.transforms.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:SigPolicyHash", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SigPolicyHash missing"); + } + this.sigPolicyHash = new DigestAlgAndValueType("SigPolicyHash"); + this.sigPolicyHash.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:SigPolicyQualifiers", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.sigPolicyQualifiers = new SigPolicyQualifiers(); + this.sigPolicyQualifiers.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignaturePolicyId", XadesSignedXml.XadesNamespaceUri); + + if (this.sigPolicyId != null && this.sigPolicyId.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.sigPolicyId.GetXml(), true)); + } + else + { + throw new CryptographicException("SigPolicyId element missing in SignaturePolicyId"); + } + + if (this.transforms != null && this.transforms.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.transforms.GetXml(), true)); + } + + if (this.sigPolicyHash != null && this.sigPolicyHash.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.sigPolicyHash.GetXml(), true)); + } + else + { + throw new CryptographicException("SigPolicyHash element missing in SignaturePolicyId"); + } + + if (this.sigPolicyQualifiers != null && this.sigPolicyQualifiers.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.sigPolicyQualifiers.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyIdentifier.cs b/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyIdentifier.cs new file mode 100644 index 0000000..8d4c517 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignaturePolicyIdentifier.cs @@ -0,0 +1,181 @@ +// SignaturePolicyIdentifier.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains an identifier of a signature policy + /// + public class SignaturePolicyIdentifier + { + #region Private variables + private SignaturePolicyId signaturePolicyId; + private bool signaturePolicyImplied; + #endregion + + #region Public properties + /// + /// The SignaturePolicyId element is an explicit and unambiguous identifier + /// of a Signature Policy together with a hash value of the signature + /// policy, so it can be verified that the policy selected by the signer is + /// the one being used by the verifier. An explicit signature policy has a + /// globally unique reference, which, in this way, is bound to an + /// electronic signature by the signer as part of the signature + /// calculation. + /// + public SignaturePolicyId SignaturePolicyId + { + get + { + return this.signaturePolicyId; + } + set + { + this.signaturePolicyId = value; + this.signaturePolicyImplied = false; + } + } + + /// + /// The empty SignaturePolicyImplied element will appear when the + /// data object(s) being signed and other external data imply the + /// signature policy + /// + public bool SignaturePolicyImplied + { + get + { + return this.signaturePolicyImplied; + } + set + { + this.signaturePolicyImplied = value; + if (this.signaturePolicyImplied == true) + { + this.signaturePolicyId = null; + } + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignaturePolicyIdentifier() + { + this.signaturePolicyId = new SignaturePolicyId(); + this.signaturePolicyImplied = false; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.signaturePolicyId != null && this.signaturePolicyId.HasChanged()) + { + retVal = true; + } + + if (this.signaturePolicyImplied) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SignaturePolicyId", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.signaturePolicyId = new SignaturePolicyId(); + this.signaturePolicyId.LoadXml((XmlElement)xmlNodeList.Item(0)); + this.signaturePolicyImplied = false; + } + else + { + xmlNodeList = xmlElement.SelectNodes("xsd:SignaturePolicyImplied", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.signaturePolicyImplied = true; + this.signaturePolicyId = null; + } + else + { + throw new CryptographicException("SignaturePolicyId or SignaturePolicyImplied missing"); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignaturePolicyIdentifier", XadesSignedXml.XadesNamespaceUri); + + if (this.signaturePolicyImplied) + { //Append empty element as required + bufferXmlElement = creationXmlDocument.CreateElement("xades", "SignaturePolicyImplied", XadesSignedXml.XadesNamespaceUri); + retVal.AppendChild(bufferXmlElement); + } + else + { + if (this.signaturePolicyId != null && this.signaturePolicyId.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signaturePolicyId.GetXml(), true)); + } + else + { + throw new CryptographicException("SignaturePolicyId or SignaturePolicyImplied missing in SignaturePolicyIdentifier"); + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignatureProductionPlace.cs b/Hcs.ClientNet/Microsoft/Xades/SignatureProductionPlace.cs new file mode 100644 index 0000000..151ef47 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignatureProductionPlace.cs @@ -0,0 +1,228 @@ +// SignatureProductionPlace.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// In some transactions the purported place where the signer was at the time + /// of signature creation may need to be indicated. In order to provide this + /// information a new property may be included in the signature. + /// This property specifies an address associated with the signer at a + /// particular geographical (e.g. city) location. + /// This is a signed property that qualifies the signer. + /// An XML electronic signature aligned with the present document MAY contain + /// at most one SignatureProductionPlace element. + /// + public class SignatureProductionPlace + { + #region Private variables + private string city; + private string stateOrProvince; + private string postalCode; + private string countryName; + #endregion + + #region Public properties + /// + /// City where signature was produced + /// + public string City + { + get + { + return this.city; + } + set + { + this.city = value; + } + } + + /// + /// State or province where signature was produced + /// + public string StateOrProvince + { + get + { + return this.stateOrProvince; + } + set + { + this.stateOrProvince = value; + } + } + + /// + /// Postal code of place where signature was produced + /// + public string PostalCode + { + get + { + return this.postalCode; + } + set + { + this.postalCode = value; + } + } + + /// + /// Country where signature was produced + /// + public string CountryName + { + get + { + return this.countryName; + } + set + { + this.countryName = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignatureProductionPlace() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.city)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.stateOrProvince)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.postalCode)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.countryName)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:City", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.city = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:PostalCode", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.postalCode = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:StateOrProvince", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.stateOrProvince = xmlNodeList.Item(0).InnerText; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CountryName", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.countryName = xmlNodeList.Item(0).InnerText; + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignatureProductionPlace", XadesSignedXml.XadesNamespaceUri); + + if (!String.IsNullOrEmpty(this.city)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "City", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.city; + retVal.AppendChild(bufferXmlElement); + } + + if (!String.IsNullOrEmpty(this.stateOrProvince)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "StateOrProvince", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.stateOrProvince; + retVal.AppendChild(bufferXmlElement); + } + + if (!String.IsNullOrEmpty(this.postalCode)) + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "PostalCode", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.postalCode; + retVal.AppendChild(bufferXmlElement); + } + + if (this.countryName != null && this.countryName != "") + { + bufferXmlElement = creationXmlDocument.CreateElement("xades", "CountryName", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = this.countryName; + retVal.AppendChild(bufferXmlElement); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignatureTimeStampCollection.cs b/Hcs.ClientNet/Microsoft/Xades/SignatureTimeStampCollection.cs new file mode 100644 index 0000000..d31f511 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignatureTimeStampCollection.cs @@ -0,0 +1,63 @@ +// SignatureTimeStampCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class SignatureTimeStampCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new TimeStamp this[int index] + { + get + { + return (TimeStamp)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public TimeStamp Add(TimeStamp objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// Name of the tag when serializing into XML using GetXml() + /// The newly created object that has been added to collection + public TimeStamp Add(string tagName) + { + return this.Add(new TimeStamp(tagName)); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignedDataObjectProperties.cs b/Hcs.ClientNet/Microsoft/Xades/SignedDataObjectProperties.cs new file mode 100644 index 0000000..e26a773 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignedDataObjectProperties.cs @@ -0,0 +1,323 @@ +// SignedDataObjectProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The SignedDataObjectProperties element contains properties that qualify + /// some of the signed data objects + /// + public class SignedDataObjectProperties + { + #region Private variables + private DataObjectFormatCollection dataObjectFormatCollection; + private CommitmentTypeIndicationCollection commitmentTypeIndicationCollection; + private AllDataObjectsTimeStampCollection allDataObjectsTimeStampCollection; + private IndividualDataObjectsTimeStampCollection individualDataObjectsTimeStampCollection; + #endregion + + #region Public properties + /// + /// Collection of signed data object formats + /// + public DataObjectFormatCollection DataObjectFormatCollection + { + get + { + return this.dataObjectFormatCollection; + } + set + { + this.dataObjectFormatCollection = value; + } + } + + /// + /// Collection of commitment type indications + /// + public CommitmentTypeIndicationCollection CommitmentTypeIndicationCollection + { + get + { + return this.commitmentTypeIndicationCollection; + } + set + { + this.commitmentTypeIndicationCollection = value; + } + } + + /// + /// Collection of all data object timestamps + /// + public AllDataObjectsTimeStampCollection AllDataObjectsTimeStampCollection + { + get + { + return this.allDataObjectsTimeStampCollection; + } + set + { + this.allDataObjectsTimeStampCollection = value; + } + } + + /// + /// Collection of individual data object timestamps + /// + public IndividualDataObjectsTimeStampCollection IndividualDataObjectsTimeStampCollection + { + get + { + return this.individualDataObjectsTimeStampCollection; + } + set + { + this.individualDataObjectsTimeStampCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignedDataObjectProperties() + { + this.dataObjectFormatCollection = new DataObjectFormatCollection(); + this.commitmentTypeIndicationCollection = new CommitmentTypeIndicationCollection(); + this.allDataObjectsTimeStampCollection = new AllDataObjectsTimeStampCollection(); + this.individualDataObjectsTimeStampCollection = new IndividualDataObjectsTimeStampCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.dataObjectFormatCollection.Count > 0) + { + retVal = true; + } + + if (this.commitmentTypeIndicationCollection.Count > 0) + { + retVal = true; + } + + if (this.allDataObjectsTimeStampCollection.Count > 0) + { + retVal = true; + } + + if (this.individualDataObjectsTimeStampCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + DataObjectFormat newDataObjectFormat; + CommitmentTypeIndication newCommitmentTypeIndication; + TimeStamp newTimeStamp; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.dataObjectFormatCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:DataObjectFormat", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newDataObjectFormat = new DataObjectFormat(); + newDataObjectFormat.LoadXml(iterationXmlElement); + this.dataObjectFormatCollection.Add(newDataObjectFormat); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + this.commitmentTypeIndicationCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:CommitmentTypeIndication", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCommitmentTypeIndication = new CommitmentTypeIndication(); + newCommitmentTypeIndication.LoadXml(iterationXmlElement); + this.commitmentTypeIndicationCollection.Add(newCommitmentTypeIndication); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + this.allDataObjectsTimeStampCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:AllDataObjectsTimeStamp", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("AllDataObjectsTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.allDataObjectsTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + this.individualDataObjectsTimeStampCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:IndividualDataObjectsTimeStamp", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("IndividualDataObjectsTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.individualDataObjectsTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignedDataObjectProperties", XadesSignedXml.XadesNamespaceUri); + + if (this.dataObjectFormatCollection.Count > 0) + { + foreach (DataObjectFormat dataObjectFormat in this.dataObjectFormatCollection) + { + if (dataObjectFormat.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(dataObjectFormat.GetXml(), true)); + } + } + } + + if (this.commitmentTypeIndicationCollection.Count > 0) + { + foreach (CommitmentTypeIndication commitmentTypeIndication in this.commitmentTypeIndicationCollection) + { + if (commitmentTypeIndication.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(commitmentTypeIndication.GetXml(), true)); + } + } + } + + if (this.allDataObjectsTimeStampCollection.Count > 0) + { + foreach (TimeStamp timeStamp in this.allDataObjectsTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + + if (this.individualDataObjectsTimeStampCollection.Count > 0) + { + foreach (TimeStamp timeStamp in this.individualDataObjectsTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignedProperties.cs b/Hcs.ClientNet/Microsoft/Xades/SignedProperties.cs new file mode 100644 index 0000000..5adf3e5 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignedProperties.cs @@ -0,0 +1,204 @@ +// SignedProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The SignedProperties element contains a number of properties that are + /// collectively signed by the XMLDSIG signature + /// + public class SignedProperties + { + #region Constants + /// + /// Default value for the SignedProperties Id attribute + /// + public const string DefaultSignedPropertiesId = "SignedPropertiesId"; + #endregion + + #region Private variables + private string id; + private SignedSignatureProperties signedSignatureProperties; + private SignedDataObjectProperties signedDataObjectProperties; + #endregion + + #region Public properties + + /// + /// This Id is used to be able to point the signature reference to this + /// element. It is initialized by default. + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// The properties that qualify the signature itself or the signer are + /// included as content of the SignedSignatureProperties element + /// + public SignedSignatureProperties SignedSignatureProperties + { + get + { + return this.signedSignatureProperties; + } + set + { + this.signedSignatureProperties = value; + } + } + + /// + /// The SignedDataObjectProperties element contains properties that qualify + /// some of the signed data objects + /// + public SignedDataObjectProperties SignedDataObjectProperties + { + get + { + return this.signedDataObjectProperties; + } + set + { + this.signedDataObjectProperties = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignedProperties() + { + this.id = DefaultSignedPropertiesId; + this.signedSignatureProperties = new SignedSignatureProperties(); + this.signedDataObjectProperties = new SignedDataObjectProperties(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + + if (this.signedSignatureProperties != null && this.signedSignatureProperties.HasChanged()) + { + retVal = true; + } + + if (this.signedDataObjectProperties != null && this.signedDataObjectProperties.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SignedSignatureProperties", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SignedSignatureProperties missing"); + } + this.signedSignatureProperties = new SignedSignatureProperties(); + this.signedSignatureProperties.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:SignedDataObjectProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.signedDataObjectProperties = new SignedDataObjectProperties(); + this.signedDataObjectProperties.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignedProperties", XadesSignedXml.XadesNamespaceUri); + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + + if (this.signedSignatureProperties != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signedSignatureProperties.GetXml(), true)); + } + else + { + throw new CryptographicException("SignedSignatureProperties should not be null"); + } + + if (this.signedDataObjectProperties != null && this.signedDataObjectProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signedDataObjectProperties.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignedSignatureProperties.cs b/Hcs.ClientNet/Microsoft/Xades/SignedSignatureProperties.cs new file mode 100644 index 0000000..944b1d3 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignedSignatureProperties.cs @@ -0,0 +1,300 @@ +// SignedSignatureProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. +// + +using System; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The properties that qualify the signature itself or the signer are + /// included as content of the SignedSignatureProperties element + /// + public class SignedSignatureProperties + { + #region Private variables + private DateTimeOffset signingTime; + private SigningCertificate signingCertificate; + private SignaturePolicyIdentifier signaturePolicyIdentifier; + private SignatureProductionPlace signatureProductionPlace; + private SignerRole signerRole; + #endregion + + #region Public properties + /// + /// The signing time property specifies the time at which the signer + /// performed the signing process. This is a signed property that + /// qualifies the whole signature. An XML electronic signature aligned + /// with the present document MUST contain exactly one SigningTime element. + /// + public DateTimeOffset SigningTime + { + get + { + return this.signingTime; + } + set + { + this.signingTime = value; + } + } + + /// + /// The SigningCertificate property is designed to prevent the simple + /// substitution of the certificate. This property contains references + /// to certificates and digest values computed on them. The certificate + /// used to verify the signature shall be identified in the sequence; + /// the signature policy may mandate other certificates be present, + /// that may include all the certificates up to the point of trust. + /// This is a signed property that qualifies the signature. An XML + /// electronic signature aligned with the present document MUST contain + /// exactly one SigningCertificate. + /// + public SigningCertificate SigningCertificate + { + get + { + return this.signingCertificate; + } + set + { + this.signingCertificate = value; + } + } + + /// + /// The signature policy is a set of rules for the creation and + /// validation of an electronic signature, under which the signature + /// can be determined to be valid. A given legal/contractual context + /// may recognize a particular signature policy as meeting its + /// requirements. + /// An XML electronic signature aligned with the present document MUST + /// contain exactly one SignaturePolicyIdentifier element. + /// + public SignaturePolicyIdentifier SignaturePolicyIdentifier + { + get + { + return this.signaturePolicyIdentifier; + } + set + { + this.signaturePolicyIdentifier = value; + } + } + + /// + /// In some transactions the purported place where the signer was at the time + /// of signature creation may need to be indicated. In order to provide this + /// information a new property may be included in the signature. + /// This property specifies an address associated with the signer at a + /// particular geographical (e.g. city) location. + /// This is a signed property that qualifies the signer. + /// An XML electronic signature aligned with the present document MAY contain + /// at most one SignatureProductionPlace element. + /// + public SignatureProductionPlace SignatureProductionPlace + { + get + { + return this.signatureProductionPlace; + } + set + { + this.signatureProductionPlace = value; + } + } + + /// + /// According to what has been stated in the Introduction clause, an + /// electronic signature produced in accordance with the present document + /// incorporates: "a commitment that has been explicitly endorsed under a + /// signature policy, at a given time, by a signer under an identifier, + /// e.g. a name or a pseudonym, and optionally a role". + /// While the name of the signer is important, the position of the signer + /// within a company or an organization can be even more important. Some + /// contracts may only be valid if signed by a user in a particular role, + /// e.g. a Sales Director. In many cases who the sales Director really is, + /// is not that important but being sure that the signer is empowered by his + /// company to be the Sales Director is fundamental. + /// + public SignerRole SignerRole + { + get + { + return this.signerRole; + } + set + { + this.signerRole = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignedSignatureProperties() + { + this.signingTime = DateTimeOffset.MinValue; + this.signingCertificate = new SigningCertificate(); + //this.signaturePolicyIdentifier = new SignaturePolicyIdentifier(); + this.signatureProductionPlace = new SignatureProductionPlace(); + this.signerRole = new SignerRole(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { //Should always be serialized + bool retVal = false; + + retVal = true; + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:SigningTime", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SigningTime missing"); + } + this.signingTime = XmlConvert.ToDateTime(xmlNodeList.Item(0).InnerText, XmlDateTimeSerializationMode.Utc); + + xmlNodeList = xmlElement.SelectNodes("xsd:SigningCertificate", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("SigningCertificate missing"); + } + this.signingCertificate = new SigningCertificate(); + this.signingCertificate.LoadXml((XmlElement)xmlNodeList.Item(0)); + + xmlNodeList = xmlElement.SelectNodes("xsd:SignaturePolicyIdentifier", xmlNamespaceManager); + // TODO: + // + //if (xmlNodeList.Count == 0) + //{ + // throw new CryptographicException("SignaturePolicyIdentifier missing"); + //} + //this.signaturePolicyIdentifier = new SignaturePolicyIdentifier(); + //this.signaturePolicyIdentifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + if (xmlNodeList.Count != 0) + { + this.signaturePolicyIdentifier = new SignaturePolicyIdentifier(); + this.signaturePolicyIdentifier.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:SignatureProductionPlace", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.signatureProductionPlace = new SignatureProductionPlace(); + this.signatureProductionPlace.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.signatureProductionPlace = null; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:SignerRole", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.signerRole = new SignerRole(); + this.signerRole.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.signerRole = null; + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignedSignatureProperties", XadesSignedXml.XadesNamespaceUri); + + if (this.signingTime == DateTimeOffset.MinValue) + { + this.signingTime = DateTime.Now; + } + bufferXmlElement = creationXmlDocument.CreateElement("xades", "SigningTime", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.InnerText = signingTime.ToString(SigningTimeFormat); + retVal.AppendChild(bufferXmlElement); + + if (this.signingCertificate != null && this.signingCertificate.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signingCertificate.GetXml(), true)); + } + else + { + throw new CryptographicException("SigningCertificate element missing in SignedSignatureProperties"); + } + + // TODO: + //if (this.signaturePolicyIdentifier != null && this.signaturePolicyIdentifier.HasChanged()) + //{ + // retVal.AppendChild(creationXmlDocument.ImportNode(this.signaturePolicyIdentifier.GetXml(), true)); + //} + //else + //{ + // throw new CryptographicException("SignaturePolicyIdentifier element missing in SignedSignatureProperties"); + //} + + if (this.signatureProductionPlace != null && this.signatureProductionPlace.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signatureProductionPlace.GetXml(), true)); + } + + if (this.signerRole != null && this.signerRole.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.signerRole.GetXml(), true)); + } + + return retVal; + } + #endregion + + private const string SigningTimeFormat = "yyyy-MM-ddTHH:mm:ss.fffzzz"; + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SignerRole.cs b/Hcs.ClientNet/Microsoft/Xades/SignerRole.cs new file mode 100644 index 0000000..66db63b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SignerRole.cs @@ -0,0 +1,167 @@ +// SignerRole.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// According to what has been stated in the Introduction clause, an + /// electronic signature produced in accordance with the present document + /// incorporates: "a commitment that has been explicitly endorsed under a + /// signature policy, at a given time, by a signer under an identifier, + /// e.g. a name or a pseudonym, and optionally a role". + /// While the name of the signer is important, the position of the signer + /// within a company or an organization can be even more important. Some + /// contracts may only be valid if signed by a user in a particular role, + /// e.g. a Sales Director. In many cases who the sales Director really is, + /// is not that important but being sure that the signer is empowered by his + /// company to be the Sales Director is fundamental. + /// + public class SignerRole + { + #region Private variables + private ClaimedRoles claimedRoles; + private CertifiedRoles certifiedRoles; + #endregion + + #region Public properties + /// + /// The ClaimedRoles element contains a sequence of roles claimed by + /// the signer but not certified. Additional contents types may be + /// defined on a domain application basis and be part of this element. + /// The namespaces given to the corresponding XML schemas will allow + /// their unambiguous identification in the case these roles use XML. + /// + public ClaimedRoles ClaimedRoles + { + get + { + return this.claimedRoles; + } + set + { + this.claimedRoles = value; + } + } + + /// + /// The CertifiedRoles element contains one or more wrapped attribute + /// certificates for the signer + /// + public CertifiedRoles CertifiedRoles + { + get + { + return this.certifiedRoles; + } + set + { + this.certifiedRoles = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SignerRole() + { + this.claimedRoles = new ClaimedRoles(); + this.certifiedRoles = new CertifiedRoles(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.claimedRoles != null && this.claimedRoles.HasChanged()) + { + retVal = true; + } + + if (this.certifiedRoles != null && this.certifiedRoles.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:ClaimedRoles", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.claimedRoles = new ClaimedRoles(); + this.claimedRoles.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CertifiedRoles", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.certifiedRoles = new CertifiedRoles(); + this.certifiedRoles.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SignerRole", XadesSignedXml.XadesNamespaceUri); + + if (this.claimedRoles != null && this.claimedRoles.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.claimedRoles.GetXml(), true)); + } + + if (this.certifiedRoles != null && this.certifiedRoles.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.certifiedRoles.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/SigningCertificate.cs b/Hcs.ClientNet/Microsoft/Xades/SigningCertificate.cs new file mode 100644 index 0000000..1d8aac3 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/SigningCertificate.cs @@ -0,0 +1,147 @@ +// SigningCertificate.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. +// + +using System; +using System.Collections; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class has as purpose to provide the simple substitution of the + /// certificate. It contains references to certificates and digest values + /// computed on them. + /// + public class SigningCertificate + { + #region Private variables + private CertCollection certCollection; + #endregion + + #region Public properties + /// + /// A collection of certs + /// + public CertCollection CertCollection + { + get + { + return this.certCollection; + } + set + { + this.certCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public SigningCertificate() + { + this.certCollection = new CertCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + return true; //Should always be considered dirty + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + Cert newCert; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.certCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:Cert", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newCert = new Cert(); + newCert.LoadXml(iterationXmlElement); + this.certCollection.Add(newCert); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "SigningCertificate", XadesSignedXml.XadesNamespaceUri); + + if (this.certCollection.Count > 0) + { + foreach (Cert cert in this.certCollection) + { + if (cert.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(cert.GetXml(), true)); + } + } + } + else + { + throw new CryptographicException("SigningCertificate.Certcollection should have count > 0"); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/TimeStamp.cs b/Hcs.ClientNet/Microsoft/Xades/TimeStamp.cs new file mode 100644 index 0000000..6239ce8 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/TimeStamp.cs @@ -0,0 +1,270 @@ +// TimeStamp.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. +// + +using System; +using System.Collections; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains timestamp information + /// + public class TimeStamp + { + #region Private variables + private string tagName; + private HashDataInfoCollection hashDataInfoCollection; + private EncapsulatedPKIData encapsulatedTimeStamp; + private XMLTimeStamp xmlTimeStamp; + #endregion + + #region Public properties + /// + /// The name of the element when serializing + /// + public string TagName + { + get + { + return this.tagName; + } + set + { + this.tagName = value; + } + } + + /// + /// A collection of hash data infos + /// + public HashDataInfoCollection HashDataInfoCollection + { + get + { + return this.hashDataInfoCollection; + } + set + { + this.hashDataInfoCollection = value; + } + } + + /// + /// The time-stamp generated by a TSA encoded as an ASN.1 data + /// object + /// + public EncapsulatedPKIData EncapsulatedTimeStamp + { + get + { + return this.encapsulatedTimeStamp; + } + set + { + this.encapsulatedTimeStamp = value; + if (this.encapsulatedTimeStamp != null) + { + this.xmlTimeStamp = null; + } + } + } + + /// + /// The time-stamp generated by a TSA encoded as a generic XML + /// timestamp + /// + public XMLTimeStamp XMLTimeStamp + { + get + { + return this.xmlTimeStamp; + } + set + { + this.xmlTimeStamp = value; + if (this.xmlTimeStamp != null) + { + this.encapsulatedTimeStamp = null; + } + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public TimeStamp() + { + this.hashDataInfoCollection = new HashDataInfoCollection(); + this.encapsulatedTimeStamp = new EncapsulatedPKIData("EncapsulatedTimeStamp"); + this.xmlTimeStamp = null; + } + + /// + /// Constructor with TagName + /// + /// Name of the tag when serializing with GetXml + public TimeStamp(string tagName) : this() + { + this.tagName = tagName; + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.hashDataInfoCollection.Count > 0) + { + retVal = true; + } + + if (this.encapsulatedTimeStamp != null && this.encapsulatedTimeStamp.HasChanged()) + { + retVal = true; + } + + if (this.xmlTimeStamp != null && this.xmlTimeStamp.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + HashDataInfo newHashDataInfo; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.hashDataInfoCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:HashDataInfo", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newHashDataInfo = new HashDataInfo(); + newHashDataInfo.LoadXml(iterationXmlElement); + this.hashDataInfoCollection.Add(newHashDataInfo); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + xmlNodeList = xmlElement.SelectNodes("xsd:EncapsulatedTimeStamp", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.encapsulatedTimeStamp = new EncapsulatedPKIData("EncapsulatedTimeStamp"); + this.encapsulatedTimeStamp.LoadXml((XmlElement)xmlNodeList.Item(0)); + this.xmlTimeStamp = null; + } + else + { + xmlNodeList = xmlElement.SelectNodes("xsd:XMLTimeStamp", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.xmlTimeStamp = new XMLTimeStamp(); + this.xmlTimeStamp.LoadXml((XmlElement)xmlNodeList.Item(0)); + this.encapsulatedTimeStamp = null; + + } + else + { + throw new CryptographicException("EncapsulatedTimeStamp or XMLTimeStamp missing"); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", this.tagName, XadesSignedXml.XadesNamespaceUri); + + if (this.hashDataInfoCollection.Count > 0) + { + foreach (HashDataInfo hashDataInfo in this.hashDataInfoCollection) + { + if (hashDataInfo.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(hashDataInfo.GetXml(), true)); + } + } + } + else + { + throw new CryptographicException("HashDataInfoCollection is empty. TimeStamp needs at least one HashDataInfo element"); + } + + if (this.encapsulatedTimeStamp != null && this.encapsulatedTimeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.encapsulatedTimeStamp.GetXml(), true)); + } + else + { + if (this.xmlTimeStamp != null && this.xmlTimeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.xmlTimeStamp.GetXml(), true)); + } + else + { + throw new CryptographicException("EncapsulatedTimeStamp or XMLTimeStamp element missing"); + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/Transform.cs b/Hcs.ClientNet/Microsoft/Xades/Transform.cs new file mode 100644 index 0000000..adec29a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/Transform.cs @@ -0,0 +1,158 @@ +// Transform.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The Transform element contains a single transformation + /// + public class Transform + { + #region Private variables + private string algorithm; + private string xpath; + #endregion + + #region Public properties + /// + /// Algorithm of the transformation + /// + public string Algorithm + { + get + { + return this.algorithm; + } + set + { + this.algorithm = value; + } + } + + /// + /// XPath of the transformation + /// + public string XPath + { + get + { + return this.xpath; + } + set + { + this.xpath = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public Transform() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.algorithm)) + { + retVal = true; + } + + if (!String.IsNullOrEmpty(this.xpath)) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Algorithm")) + { + this.algorithm = xmlElement.GetAttribute("Algorithm"); + } + else + { + this.algorithm = ""; + } + + xmlNodeList = xmlElement.SelectNodes("XPath"); + if (xmlNodeList.Count != 0) + { + this.xpath = xmlNodeList.Item(0).InnerText; + } + else + { + this.xpath = ""; + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("ds", "Transform", SignedXml.XmlDsigNamespaceUrl); + + if (this.algorithm != null) + { + retVal.SetAttribute("Algorithm", this.algorithm); + } + else + { + retVal.SetAttribute("Algorithm", ""); + } + + if (this.xpath != null && this.xpath != "") + { + bufferXmlElement = creationXmlDocument.CreateElement("ds", "XPath", SignedXml.XmlDsigNamespaceUrl); + bufferXmlElement.InnerText = this.xpath; + retVal.AppendChild(bufferXmlElement); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/TransformCollection.cs b/Hcs.ClientNet/Microsoft/Xades/TransformCollection.cs new file mode 100644 index 0000000..70a9616 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/TransformCollection.cs @@ -0,0 +1,62 @@ +// TransformCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class TransformCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new Transform this[int index] + { + get + { + return (Transform)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public Transform Add(Transform objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public Transform Add() + { + return this.Add(new Transform()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/Transforms.cs b/Hcs.ClientNet/Microsoft/Xades/Transforms.cs new file mode 100644 index 0000000..2738249 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/Transforms.cs @@ -0,0 +1,147 @@ +// Transforms.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The Transforms element contains a collection of transformations + /// + public class Transforms + { + #region Private variables + private TransformCollection transformCollection; + #endregion + + #region Public properties + /// + /// A collection of transforms + /// + public TransformCollection TransformCollection + { + get + { + return this.transformCollection; + } + set + { + this.transformCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public Transforms() + { + this.transformCollection = new TransformCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.transformCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + Transform newTransform; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + + this.transformCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("ds:Transform", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTransform = new Transform(); + newTransform.LoadXml(iterationXmlElement); + this.transformCollection.Add(newTransform); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "Transforms", XadesSignedXml.XadesNamespaceUri); + + if (this.transformCollection.Count > 0) + { + foreach (Transform transform in this.transformCollection) + { + if (transform.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(transform.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperties.cs b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperties.cs new file mode 100644 index 0000000..8344e25 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperties.cs @@ -0,0 +1,148 @@ +// UnsignedDataObjectProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. +// + +using System; +using System.Collections; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The UnsignedDataObjectProperties element may contain properties that + /// qualify some of the signed data objects + /// + public class UnsignedDataObjectProperties + { + #region Private variables + private UnsignedDataObjectPropertyCollection unsignedDataObjectPropertyCollection; + #endregion + + #region Public properties + /// + /// A collection of unsigned data object properties + /// + public UnsignedDataObjectPropertyCollection UnsignedDataObjectPropertyCollection + { + get + { + return this.unsignedDataObjectPropertyCollection; + } + set + { + this.unsignedDataObjectPropertyCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public UnsignedDataObjectProperties() + { + this.unsignedDataObjectPropertyCollection = new UnsignedDataObjectPropertyCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.unsignedDataObjectPropertyCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + UnsignedDataObjectProperty newUnsignedDataObjectProperty; + IEnumerator enumerator; + XmlElement iterationXmlElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.unsignedDataObjectPropertyCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:UnsignedDataObjectProperty", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newUnsignedDataObjectProperty = new UnsignedDataObjectProperty(); + newUnsignedDataObjectProperty.LoadXml(iterationXmlElement); + this.unsignedDataObjectPropertyCollection.Add(newUnsignedDataObjectProperty); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "UnsignedDataObjectProperties", XadesSignedXml.XadesNamespaceUri); + + if (this.unsignedDataObjectPropertyCollection.Count > 0) + { + foreach (UnsignedDataObjectProperty unsignedDataObjectProperty in this.unsignedDataObjectPropertyCollection) + { + if (unsignedDataObjectProperty.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(unsignedDataObjectProperty.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperty.cs b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperty.cs new file mode 100644 index 0000000..4ec061b --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectProperty.cs @@ -0,0 +1,104 @@ +// UnsignedDataObjectProperty.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains properties that qualify some of the signed data + /// objects. The signature generated by the signer does not cover the content + /// of this element. + /// This information is added for the shake of completeness and to cope with + /// potential future needs for inclusion of such kind of properties. + /// + public class UnsignedDataObjectProperty + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents an unsigned data object + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public UnsignedDataObjectProperty() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "UnsignedDataObjectProperty", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectPropertyCollection.cs b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectPropertyCollection.cs new file mode 100644 index 0000000..c973ca6 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/UnsignedDataObjectPropertyCollection.cs @@ -0,0 +1,62 @@ +// UnsignedDataObjectPropertyCollection.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Collections; + +namespace Microsoft.Xades +{ + /// + /// Collection class that derives from ArrayList. It provides the minimally + /// required functionality to add instances of typed classes and obtain typed + /// elements through a custom indexer. + /// + public class UnsignedDataObjectPropertyCollection : ArrayList + { + /// + /// New typed indexer for the collection + /// + /// Index of the object to retrieve from collection + public new UnsignedDataObjectProperty this[int index] + { + get + { + return (UnsignedDataObjectProperty)base[index]; + } + set + { + base[index] = value; + } + } + + /// + /// Add typed object to the collection + /// + /// Typed object to be added to collection + /// The object that has been added to collection + public UnsignedDataObjectProperty Add(UnsignedDataObjectProperty objectToAdd) + { + base.Add(objectToAdd); + + return objectToAdd; + } + + /// + /// Add new typed object to the collection + /// + /// The newly created object that has been added to collection + public UnsignedDataObjectProperty Add() + { + return this.Add(new UnsignedDataObjectProperty()); + } + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/UnsignedProperties.cs b/Hcs.ClientNet/Microsoft/Xades/UnsignedProperties.cs new file mode 100644 index 0000000..11bb7a6 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/UnsignedProperties.cs @@ -0,0 +1,189 @@ +// UnsignedProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// The UnsignedProperties element contains a number of properties that are + /// not signed by the XMLDSIG signature + /// + public class UnsignedProperties + { + #region Private variables + private string id; + private UnsignedSignatureProperties unsignedSignatureProperties; + private UnsignedDataObjectProperties unsignedDataObjectProperties; + #endregion + + #region Public properties + /// + /// The optional Id attribute can be used to make a reference to the + /// UnsignedProperties element + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// UnsignedSignatureProperties may contain properties that qualify XML + /// signature itself or the signer + /// + public UnsignedSignatureProperties UnsignedSignatureProperties + { + get + { + return this.unsignedSignatureProperties; + } + set + { + this.unsignedSignatureProperties = value; + } + } + + /// + /// The UnsignedDataObjectProperties element may contain properties that + /// qualify some of the signed data objects + /// + public UnsignedDataObjectProperties UnsignedDataObjectProperties + { + get + { + return this.unsignedDataObjectProperties; + } + set + { + this.unsignedDataObjectProperties = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public UnsignedProperties() + { + this.UnsignedSignatureProperties = new UnsignedSignatureProperties(); + this.unsignedDataObjectProperties = new UnsignedDataObjectProperties(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (!String.IsNullOrEmpty(this.id)) + { + retVal = true; + } + + if (this.unsignedSignatureProperties != null && this.unsignedSignatureProperties.HasChanged()) + { + retVal = true; + } + + if (this.unsignedDataObjectProperties != null && this.unsignedDataObjectProperties.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + /// Element containing parent signature (needed if there are counter signatures) + public void LoadXml(System.Xml.XmlElement xmlElement, XmlElement counterSignedXmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:UnsignedSignatureProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.unsignedSignatureProperties = new UnsignedSignatureProperties(); + this.unsignedSignatureProperties.LoadXml((XmlElement)xmlNodeList.Item(0), counterSignedXmlElement); + } + + xmlNodeList = xmlElement.SelectNodes("xsd:UnsignedDataObjectProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.unsignedDataObjectProperties = new UnsignedDataObjectProperties(); + this.unsignedDataObjectProperties.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "UnsignedProperties", XadesSignedXml.XadesNamespaceUri); + if (!String.IsNullOrEmpty(this.id)) + { + retVal.SetAttribute("Id", this.id); + } + + if (this.unsignedSignatureProperties != null && this.unsignedSignatureProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.unsignedSignatureProperties.GetXml(), true)); + } + if (this.unsignedDataObjectProperties != null && this.unsignedDataObjectProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.unsignedDataObjectProperties.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/UnsignedSignatureProperties.cs b/Hcs.ClientNet/Microsoft/Xades/UnsignedSignatureProperties.cs new file mode 100644 index 0000000..5186f42 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/UnsignedSignatureProperties.cs @@ -0,0 +1,601 @@ +// UnsignedSignatureProperties.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Security.Cryptography; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// UnsignedSignatureProperties may contain properties that qualify XML + /// signature itself or the signer + /// + public class UnsignedSignatureProperties + { + #region Private variables + private CounterSignatureCollection counterSignatureCollection; + private SignatureTimeStampCollection signatureTimeStampCollection; + private CompleteCertificateRefs completeCertificateRefs; + private CompleteRevocationRefs completeRevocationRefs; + private bool refsOnlyTimeStampFlag; + private SignatureTimeStampCollection sigAndRefsTimeStampCollection; + private SignatureTimeStampCollection refsOnlyTimeStampCollection; + private CertificateValues certificateValues; + private RevocationValues revocationValues; + private SignatureTimeStampCollection archiveTimeStampCollection; + #endregion + + #region Public properties + /// + /// A collection of counter signatures + /// + public CounterSignatureCollection CounterSignatureCollection + { + get + { + return this.counterSignatureCollection; + } + set + { + this.counterSignatureCollection = value; + } + } + + /// + /// A collection of signature timestamps + /// + public SignatureTimeStampCollection SignatureTimeStampCollection + { + get + { + return this.signatureTimeStampCollection; + } + set + { + this.signatureTimeStampCollection = value; + } + } + + /// + /// This clause defines the XML element containing the sequence of + /// references to the full set of CA certificates that have been used + /// to validate the electronic signature up to (but not including) the + /// signer's certificate. This is an unsigned property that qualifies + /// the signature. + /// An XML electronic signature aligned with the present document MAY + /// contain at most one CompleteCertificateRefs element. + /// + public CompleteCertificateRefs CompleteCertificateRefs + { + get + { + return this.completeCertificateRefs; + } + set + { + this.completeCertificateRefs = value; + } + } + + /// + /// This clause defines the XML element containing a full set of + /// references to the revocation data that have been used in the + /// validation of the signer and CA certificates. + /// This is an unsigned property that qualifies the signature. + /// The XML electronic signature aligned with the present document + /// MAY contain at most one CompleteRevocationRefs element. + /// + public CompleteRevocationRefs CompleteRevocationRefs + { + get + { + return this.completeRevocationRefs; + } + set + { + this.completeRevocationRefs = value; + } + } + + /// + /// Flag indicating if the RefsOnlyTimeStamp element (or several) is + /// present (RefsOnlyTimeStampFlag = true). If one or more + /// sigAndRefsTimeStamps are present, RefsOnlyTimeStampFlag will be false. + /// + public bool RefsOnlyTimeStampFlag + { + get + { + return this.refsOnlyTimeStampFlag; + } + set + { + this.refsOnlyTimeStampFlag = value; + } + } + + /// + /// A collection of sig and refs timestamps + /// + public SignatureTimeStampCollection SigAndRefsTimeStampCollection + { + get + { + return this.sigAndRefsTimeStampCollection; + } + set + { + this.sigAndRefsTimeStampCollection = value; + } + } + + /// + /// A collection of refs only timestamps + /// + public SignatureTimeStampCollection RefsOnlyTimeStampCollection + { + get + { + return this.refsOnlyTimeStampCollection; + } + set + { + this.refsOnlyTimeStampCollection = value; + } + } + + /// + /// Certificate values + /// + public CertificateValues CertificateValues + { + get + { + return this.certificateValues; + } + set + { + this.certificateValues = value; + } + } + + /// + /// Revocation values + /// + public RevocationValues RevocationValues + { + get + { + return this.revocationValues; + } + set + { + this.revocationValues = value; + } + } + + /// + /// A collection of signature timestamp + /// + public SignatureTimeStampCollection ArchiveTimeStampCollection + { + get + { + return this.archiveTimeStampCollection; + } + set + { + this.archiveTimeStampCollection = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public UnsignedSignatureProperties() + { + this.counterSignatureCollection = new CounterSignatureCollection(); + this.signatureTimeStampCollection = new SignatureTimeStampCollection(); + this.completeCertificateRefs = new CompleteCertificateRefs(); + this.completeRevocationRefs = new CompleteRevocationRefs(); + this.refsOnlyTimeStampFlag = false; + this.sigAndRefsTimeStampCollection = new SignatureTimeStampCollection(); + this.refsOnlyTimeStampCollection = new SignatureTimeStampCollection(); + this.certificateValues = new CertificateValues(); + this.revocationValues = new RevocationValues(); + this.archiveTimeStampCollection = new SignatureTimeStampCollection(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.counterSignatureCollection.Count > 0) + { + retVal = true; + } + + if (this.signatureTimeStampCollection.Count > 0) + { + retVal = true; + } + + if (this.completeCertificateRefs != null && this.completeCertificateRefs.HasChanged()) + { + retVal = true; + } + + if (this.completeRevocationRefs != null && this.completeRevocationRefs.HasChanged()) + { + retVal = true; + } + + if (this.sigAndRefsTimeStampCollection.Count > 0) + { + retVal = true; + } + + if (this.refsOnlyTimeStampCollection.Count > 0) + { + retVal = true; + } + + if (this.certificateValues != null && this.certificateValues.HasChanged()) + { + retVal = true; + } + + if (this.revocationValues != null && this.revocationValues.HasChanged()) + { + retVal = true; + } + + if (this.archiveTimeStampCollection.Count > 0) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + /// Element containing parent signature (needed if there are counter signatures) + public void LoadXml(System.Xml.XmlElement xmlElement, XmlElement counterSignedXmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + IEnumerator enumerator; + XmlElement iterationXmlElement; + XadesSignedXml newXadesSignedXml; + TimeStamp newTimeStamp; + XmlElement counterSignatureElement; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + this.counterSignatureCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:CounterSignature", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + if (counterSignedXmlElement != null) + { + newXadesSignedXml = new XadesSignedXml(counterSignedXmlElement); + } + else + { + newXadesSignedXml = new XadesSignedXml(); + } + counterSignatureElement = null; + for (int childNodeCounter = 0; (childNodeCounter < iterationXmlElement.ChildNodes.Count) && (counterSignatureElement == null); childNodeCounter++) + { + if (iterationXmlElement.ChildNodes[childNodeCounter] is XmlElement) + { + counterSignatureElement = (XmlElement)iterationXmlElement.ChildNodes[childNodeCounter]; + } + } + if (counterSignatureElement != null) + { + newXadesSignedXml.LoadXml(counterSignatureElement); + this.counterSignatureCollection.Add(newXadesSignedXml); + } + else + { + throw new CryptographicException("CounterSignature element does not contain signature"); + } + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + this.signatureTimeStampCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:SignatureTimeStamp", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("SignatureTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.signatureTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CompleteCertificateRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.completeCertificateRefs = new CompleteCertificateRefs(); + this.completeCertificateRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.completeCertificateRefs = null; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CompleteRevocationRefs", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.CompleteRevocationRefs = new CompleteRevocationRefs(); + this.CompleteRevocationRefs.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.completeRevocationRefs = null; + } + + this.sigAndRefsTimeStampCollection.Clear(); + this.refsOnlyTimeStampCollection.Clear(); + + xmlNodeList = xmlElement.SelectNodes("xsd:SigAndRefsTimeStamp", xmlNamespaceManager); + if (xmlNodeList.Count > 0) + { + this.refsOnlyTimeStampFlag = false; + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("SigAndRefsTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.sigAndRefsTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + else + { + xmlNodeList = xmlElement.SelectNodes("xsd:RefsOnlyTimeStamp", xmlNamespaceManager); + if (xmlNodeList.Count > 0) + { + this.refsOnlyTimeStampFlag = true; + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("RefsOnlyTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.refsOnlyTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + else + { + this.refsOnlyTimeStampFlag = false; + } + } + + xmlNodeList = xmlElement.SelectNodes("xsd:CertificateValues", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.certificateValues = new CertificateValues(); + this.certificateValues.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.certificateValues = null; + } + + xmlNodeList = xmlElement.SelectNodes("xsd:RevocationValues", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + this.revocationValues = new RevocationValues(); + this.revocationValues.LoadXml((XmlElement)xmlNodeList.Item(0)); + } + else + { + this.revocationValues = null; + } + + this.archiveTimeStampCollection.Clear(); + xmlNodeList = xmlElement.SelectNodes("xsd:ArchiveTimeStamp", xmlNamespaceManager); + enumerator = xmlNodeList.GetEnumerator(); + try + { + while (enumerator.MoveNext()) + { + iterationXmlElement = enumerator.Current as XmlElement; + if (iterationXmlElement != null) + { + newTimeStamp = new TimeStamp("ArchiveTimeStamp"); + newTimeStamp.LoadXml(iterationXmlElement); + this.archiveTimeStampCollection.Add(newTimeStamp); + } + } + } + finally + { + IDisposable disposable = enumerator as IDisposable; + if (disposable != null) + { + disposable.Dispose(); + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + XmlElement bufferXmlElement; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "UnsignedSignatureProperties", XadesSignedXml.XadesNamespaceUri); + + if (this.counterSignatureCollection.Count > 0) + { + foreach (XadesSignedXml xadesSignedXml in this.counterSignatureCollection) + { + bufferXmlElement = creationXmlDocument.CreateElement("CounterSignature", XadesSignedXml.XadesNamespaceUri); + bufferXmlElement.AppendChild(creationXmlDocument.ImportNode(xadesSignedXml.GetXml(), true)); + retVal.AppendChild(creationXmlDocument.ImportNode(bufferXmlElement, true)); + } + } + + if (this.signatureTimeStampCollection.Count > 0) + { + foreach (TimeStamp timeStamp in this.signatureTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + + if (this.completeCertificateRefs != null && this.completeCertificateRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.completeCertificateRefs.GetXml(), true)); + } + + if (this.completeRevocationRefs != null && this.completeRevocationRefs.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.completeRevocationRefs.GetXml(), true)); + } + + if (!this.refsOnlyTimeStampFlag) + { + foreach (TimeStamp timeStamp in this.sigAndRefsTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + else + { + foreach (TimeStamp timeStamp in this.refsOnlyTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + + if (this.certificateValues != null && this.certificateValues.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.certificateValues.GetXml(), true)); + } + + if (this.revocationValues != null && this.revocationValues.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.revocationValues.GetXml(), true)); + } + + if (this.archiveTimeStampCollection.Count > 0) + { + foreach (TimeStamp timeStamp in this.archiveTimeStampCollection) + { + if (timeStamp.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(timeStamp.GetXml(), true)); + } + } + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/XAdES.xsd b/Hcs.ClientNet/Microsoft/Xades/XAdES.xsd new file mode 100644 index 0000000..87f7209 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/XAdES.xsd @@ -0,0 +1,466 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.ClientNet/Microsoft/Xades/XMLTimeStamp.cs b/Hcs.ClientNet/Microsoft/Xades/XMLTimeStamp.cs new file mode 100644 index 0000000..0a900a7 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/XMLTimeStamp.cs @@ -0,0 +1,100 @@ +// XMLTimeStamp.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class contains a timestamp encoded as XML + /// + public class XMLTimeStamp + { + #region Private variables + private XmlElement anyXmlElement; + #endregion + + #region Public properties + /// + /// The generic XML element that represents an XML timestamp + /// + public XmlElement AnyXmlElement + { + get + { + return this.anyXmlElement; + } + set + { + this.anyXmlElement = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public XMLTimeStamp() + { + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.anyXmlElement != null) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + public void LoadXml(System.Xml.XmlElement xmlElement) + { + this.anyXmlElement = xmlElement; + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("xades", "XMLTimeStamp", XadesSignedXml.XadesNamespaceUri); + + if (this.anyXmlElement != null) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.anyXmlElement, true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/XadesObject.cs b/Hcs.ClientNet/Microsoft/Xades/XadesObject.cs new file mode 100644 index 0000000..f0e244a --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/XadesObject.cs @@ -0,0 +1,164 @@ +// XadesObject.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Security.Cryptography; +using System.Security.Cryptography.Xml; +using System.Xml; + +namespace Microsoft.Xades +{ + /// + /// This class represents the unique object of a XAdES signature that + /// contains all XAdES information + /// + public class XadesObject + { + #region Private variable + private string id; + private QualifyingProperties qualifyingProperties; + #endregion + + #region Public properties + /// + /// Id attribute of the XAdES object + /// + public string Id + { + get + { + return this.id; + } + set + { + this.id = value; + } + } + + /// + /// The QualifyingProperties element acts as a container element for + /// all the qualifying information that should be added to an XML + /// signature + /// + public QualifyingProperties QualifyingProperties + { + get + { + return this.qualifyingProperties; + } + set + { + this.qualifyingProperties = value; + } + } + #endregion + + #region Constructors + /// + /// Default constructor + /// + public XadesObject() + { + this.qualifyingProperties = new QualifyingProperties(); + } + #endregion + + #region Public methods + /// + /// Check to see if something has changed in this instance and needs to be serialized + /// + /// Flag indicating if a member needs serialization + public bool HasChanged() + { + bool retVal = false; + + if (this.id != null && this.id != "") + { + retVal = true; + } + + if (this.qualifyingProperties != null && this.qualifyingProperties.HasChanged()) + { + retVal = true; + } + + return retVal; + } + + /// + /// Load state from an XML element + /// + /// XML element containing new state + /// Element containing parent signature (needed if there are counter signatures) + public void LoadXml(XmlElement xmlElement, XmlElement counterSignedXmlElement) + { + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + if (xmlElement == null) + { + throw new ArgumentNullException("xmlElement"); + } + if (xmlElement.HasAttribute("Id")) + { + this.id = xmlElement.GetAttribute("Id"); + } + else + { + this.id = ""; + } + + xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlNodeList = xmlElement.SelectNodes("xsd:QualifyingProperties", xmlNamespaceManager); + if (xmlNodeList.Count == 0) + { + throw new CryptographicException("QualifyingProperties missing"); + } + this.qualifyingProperties = new QualifyingProperties(); + this.qualifyingProperties.LoadXml((XmlElement)xmlNodeList.Item(0), counterSignedXmlElement); + + xmlNodeList = xmlElement.SelectNodes("xsd:QualifyingPropertiesReference", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + throw new CryptographicException("Current implementation can't handle QualifyingPropertiesReference element"); + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public XmlElement GetXml() + { + XmlDocument creationXmlDocument; + XmlElement retVal; + + creationXmlDocument = new XmlDocument(); + retVal = creationXmlDocument.CreateElement("ds", "Object", SignedXml.XmlDsigNamespaceUrl); + if (this.id != null && this.id != "") + { + retVal.SetAttribute("Id", this.id); + } + + if (this.qualifyingProperties != null && this.qualifyingProperties.HasChanged()) + { + retVal.AppendChild(creationXmlDocument.ImportNode(this.qualifyingProperties.GetXml(), true)); + } + + return retVal; + } + #endregion + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/XadesSignedXml.cs b/Hcs.ClientNet/Microsoft/Xades/XadesSignedXml.cs new file mode 100644 index 0000000..4556f66 --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/XadesSignedXml.cs @@ -0,0 +1,1984 @@ +// XadesSignedXml.cs +// +// XAdES Starter Kit for Microsoft .NET 3.5 (and above) +// 2010 Microsoft France +// Published under the CECILL-B Free Software license agreement. +// (http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.txt) +// +// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, +// WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED +// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. +// THE ENTIRE RISK OF USE OR RESULTS IN CONNECTION WITH THE USE OF THIS CODE +// AND INFORMATION REMAINS WITH THE USER. + +using System; +using System.Collections; +using System.Globalization; +using System.IO; +using System.Reflection; +using System.Security.Cryptography; +using System.Security.Cryptography.X509Certificates; +using System.Security.Cryptography.Xml; +using System.Xml; +using System.Xml.Schema; + +namespace Microsoft.Xades +{ + /// + /// Types of signature standards that can be contained in XadesSignedXml class instance + /// + public enum KnownSignatureStandard + { + /// + /// XML Digital Signature (XMLDSIG) + /// + XmlDsig, + /// + /// XML Advanced Electronic Signature (XAdES) + /// + Xades + } + + /// + /// Bitmasks to indicate which checks need to be executed on the XAdES signature + /// + [FlagsAttribute] + public enum XadesCheckSignatureMasks : ulong + { + /// + /// Check the signature of the underlying XMLDSIG signature + /// + CheckXmldsigSignature = 0x01, + /// + /// Validate the XML representation of the signature against the XAdES and XMLDSIG schemas + /// + ValidateAgainstSchema = 0x02, + /// + /// Check to see if first XMLDSIG certificate has same hashvalue as first XAdES SignatureCertificate + /// + CheckSameCertificate = 0x04, + /// + /// Check if there is a HashDataInfo for each reference if there is a AllDataObjectsTimeStamp + /// + CheckAllReferencesExistInAllDataObjectsTimeStamp = 0x08, + /// + /// Check if the HashDataInfo of each IndividualDataObjectsTimeStamp points to existing Reference + /// + CheckAllHashDataInfosInIndividualDataObjectsTimeStamp = 0x10, + /// + /// Perform XAdES checks on contained counter signatures + /// + CheckCounterSignatures = 0x20, + /// + /// Counter signatures should all contain a reference to the parent signature SignatureValue element + /// + CheckCounterSignaturesReference = 0x40, + /// + /// Check if each ObjectReference in CommitmentTypeIndication points to Reference element + /// + CheckObjectReferencesInCommitmentTypeIndication = 0x80, + /// + /// Check if at least ClaimedRoles or CertifiedRoles present in SignerRole + /// + CheckIfClaimedRolesOrCertifiedRolesPresentInSignerRole = 0x0100, + /// + /// Check if HashDataInfo of SignatureTimeStamp points to SignatureValue + /// + CheckHashDataInfoOfSignatureTimeStampPointsToSignatureValue = 0x0200, + /// + /// Check if the QualifyingProperties Target attribute points to the signature element + /// + CheckQualifyingPropertiesTarget = 0x0400, + /// + /// Check that QualifyingProperties occur in one Object, check that there is only one QualifyingProperties and that signed properties occur in one QualifyingProperties element + /// + CheckQualifyingProperties = 0x0800, + /// + /// Check if all required HashDataInfos are present on SigAndRefsTimeStamp + /// + CheckSigAndRefsTimeStampHashDataInfos = 0x1000, + /// + /// Check if all required HashDataInfos are present on RefsOnlyTimeStamp + /// + CheckRefsOnlyTimeStampHashDataInfos = 0x2000, + /// + /// Check if all required HashDataInfos are present on ArchiveTimeStamp + /// + CheckArchiveTimeStampHashDataInfos = 0x4000, + /// + /// Check if a XAdES-C signature is also a XAdES-T signature + /// + CheckXadesCIsXadesT = 0x8000, + /// + /// Check if a XAdES-XL signature is also a XAdES-X signature + /// + CheckXadesXLIsXadesX = 0x010000, + /// + /// Check if CertificateValues match CertificateRefs + /// + CheckCertificateValuesMatchCertificateRefs = 0x020000, + /// + /// Check if RevocationValues match RevocationRefs + /// + CheckRevocationValuesMatchRevocationRefs = 0x040000, + /// + /// Do all known tests on XAdES signature + /// + AllChecks = 0xFFFFFF + } + + /// + /// Facade class for the XAdES signature library. The class inherits from + /// the System.Security.Cryptography.Xml.SignedXml class and is backwards + /// compatible with it, so this class can host xmldsig signatures and XAdES + /// signatures. The property SignatureStandard will indicate the type of the + /// signature: XMLDSIG or XAdES. + /// + public class XadesSignedXml : System.Security.Cryptography.Xml.SignedXml + { + #region Constants + /// + /// The XAdES XML namespace URI + /// + public const string XadesNamespaceUri = "http://uri.etsi.org/01903/v1.3.2#"; + + /// + /// Mandated type name for the Uri reference to the SignedProperties element + /// + // TODO: + //public const string SignedPropertiesType = "http://uri.etsi.org/01903/v1.3.2#SignedProperties"; + public const string SignedPropertiesType = "http://uri.etsi.org/01903#SignedProperties"; + #endregion + + #region Private variables + private static readonly string[] idAttrs = new string[] + { + "_id", + "_Id", + "_ID", + "id", + "Id", + "ID", + "iD" + }; + + private KnownSignatureStandard signatureStandard; + private XmlDocument cachedXadesObjectDocument; + private string signedPropertiesIdBuffer; + private string signatureValueId; + private bool validationErrorOccurred; + private string validationErrorDescription; + // TODO: + //private string signedInfoIdBuffer = null; + #endregion + + #region Public properties + /// + /// Property indicating the type of signature (XmlDsig or XAdES) + /// + public KnownSignatureStandard SignatureStandard + { + get + { + return this.signatureStandard; + } + } + + /// + /// Read-only property containing XAdES information + /// + public XadesObject XadesObject + { + get + { + XadesObject retVal = new XadesObject(); + + retVal.LoadXml(this.GetXadesObjectElement(this.GetXml()), this.GetXml()); + + return retVal; + } + } + + /// + /// Setting this property will add an ID attribute to the SignatureValue element. + /// This is required when constructing a XAdES-T signature. + /// + public string SignatureValueId + { + get + { + return this.signatureValueId; + } + set + { + this.signatureValueId = value; + } + } + + /// + /// This property allows to access and modify the unsigned properties + /// after the XAdES object has been added to the signature. + /// Because the unsigned properties are part of a location in the + /// signature that is not used when computing the signature, it is save + /// to modify them even after the XMLDSIG signature has been computed. + /// This is needed when XAdES objects that depend on the XMLDSIG + /// signature value need to be added to the signature. The + /// SignatureTimeStamp element is such a property, it can only be + /// created when the XMLDSIG signature has been computed. + /// + public UnsignedProperties UnsignedProperties + { + get + { + XmlElement dataObjectXmlElement; + System.Security.Cryptography.Xml.DataObject xadesDataObject; + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + UnsignedProperties retVal; + + retVal = new UnsignedProperties(); + xadesDataObject = this.GetXadesDataObject(); + if (xadesDataObject != null) + { + dataObjectXmlElement = xadesDataObject.GetXml(); + xmlNamespaceManager = new XmlNamespaceManager(dataObjectXmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + xmlNodeList = dataObjectXmlElement.SelectNodes("xsd:QualifyingProperties/xsd:UnsignedProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + retVal = new UnsignedProperties(); + retVal.LoadXml((XmlElement)xmlNodeList[0], (XmlElement)xmlNodeList[0]); + } + } + else + { + throw new CryptographicException("XAdES object not found. Use AddXadesObject() before accessing UnsignedProperties."); + } + + return retVal; + } + + set + { + XmlElement dataObjectXmlElement = null; + System.Security.Cryptography.Xml.DataObject xadesDataObject, newXadesDataObject; + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList qualifyingPropertiesXmlNodeList; + XmlNodeList unsignedPropertiesXmlNodeList; + + xadesDataObject = this.GetXadesDataObject(); + if (xadesDataObject != null) + { + dataObjectXmlElement = xadesDataObject.GetXml(); + xmlNamespaceManager = new XmlNamespaceManager(dataObjectXmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + qualifyingPropertiesXmlNodeList = dataObjectXmlElement.SelectNodes("xsd:QualifyingProperties", xmlNamespaceManager); + unsignedPropertiesXmlNodeList = dataObjectXmlElement.SelectNodes("xsd:QualifyingProperties/xsd:UnsignedProperties", xmlNamespaceManager); + if (unsignedPropertiesXmlNodeList.Count != 0) + { + qualifyingPropertiesXmlNodeList[0].RemoveChild(unsignedPropertiesXmlNodeList[0]); + } + qualifyingPropertiesXmlNodeList[0].AppendChild(dataObjectXmlElement.OwnerDocument.ImportNode(value.GetXml(), true)); + + newXadesDataObject = new DataObject(); + newXadesDataObject.LoadXml(dataObjectXmlElement); + xadesDataObject.Data = newXadesDataObject.Data; + } + else + { + throw new CryptographicException("XAdES object not found. Use AddXadesObject() before accessing UnsignedProperties."); + } + } + } + + /// + /// This property contains xml document node id, + /// which will be singed by XAdES + /// + public string SignedElementId { get; set; } + #endregion + + #region Constructors + /// + /// Default constructor for the XadesSignedXml class + /// + public XadesSignedXml() : base() + { + this.cachedXadesObjectDocument = null; + this.signatureStandard = KnownSignatureStandard.XmlDsig; + } + + /// + /// Constructor for the XadesSignedXml class + /// + /// XmlElement used to create the instance + public XadesSignedXml(XmlElement signatureElement) : base(signatureElement) + { + this.cachedXadesObjectDocument = null; + } + + /// + /// Constructor for the XadesSignedXml class + /// + /// XmlDocument used to create the instance + public XadesSignedXml(System.Xml.XmlDocument signatureDocument) : base(signatureDocument) + { + this.cachedXadesObjectDocument = null; + } + + /// + /// Constructor for the XadesSignedXml class + /// + /// XmlDocument used to create the instance + /// XmlDocument signed node identifier + public XadesSignedXml(System.Xml.XmlDocument signatureDocument, string signedElementId) : base(signatureDocument) + { + this.cachedXadesObjectDocument = null; + this.SignedElementId = signedElementId; + } + #endregion + + #region Public methods + + /// + /// Load state from an XML element + /// + /// The XML element from which to load the XadesSignedXml state + public new void LoadXml(System.Xml.XmlElement xmlElement) + { + this.cachedXadesObjectDocument = null; + this.signatureValueId = null; + base.LoadXml(xmlElement); + + XmlNode idAttribute = xmlElement.Attributes.GetNamedItem("Id"); + if (idAttribute != null) + { + this.Signature.Id = idAttribute.Value; + } + this.SetSignatureStandard(xmlElement); + + XmlNamespaceManager xmlNamespaceManager = new XmlNamespaceManager(xmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + + XmlNodeList xmlNodeList = xmlElement.SelectNodes("ds:SignatureValue", xmlNamespaceManager); + if (xmlNodeList.Count > 0) + { + if (((XmlElement)xmlNodeList[0]).HasAttribute("Id")) + { + this.signatureValueId = ((XmlElement)xmlNodeList[0]).Attributes["Id"].Value; + } + } + } + + /// + /// Returns the XML representation of the this object + /// + /// XML element containing the state of this object + public new XmlElement GetXml() + { + XmlElement retVal; + XmlNodeList xmlNodeList; + XmlNamespaceManager xmlNamespaceManager; + + retVal = base.GetXml(); + if (this.signatureValueId != null && this.signatureValueId != "") + { + //Id on Signature value is needed for XAdES-T. We inject it here. + xmlNamespaceManager = new XmlNamespaceManager(retVal.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + xmlNodeList = retVal.SelectNodes("ds:SignatureValue", xmlNamespaceManager); + if (xmlNodeList.Count > 0) + { + ((XmlElement)xmlNodeList[0]).SetAttribute("Id", this.signatureValueId); + } + } + + // Add "ds" namespace prefix to all XmlDsig nodes in the signature + SetPrefix("ds", retVal); + + return retVal; + } + + /// + /// Overridden virtual method to be able to find the nested SignedProperties + /// element inside of the XAdES object + /// + /// Document in which to find the Id + /// Value of the Id to look for + /// XmlElement with requested Id + public override XmlElement GetIdElement(XmlDocument xmlDocument, string idValue) + { + XmlElement retVal = base.GetIdElement(xmlDocument, idValue); + if (retVal != null) + return retVal; + + foreach (var customId in idAttrs) + { + var found = xmlDocument.SelectSingleNode("//*[@" + customId + "=\"" + idValue + "\"]") as XmlElement; + if (found != null) + { + return found; + } + } + + if (Signature != null && Signature.SignedInfo != null && Signature.SignatureValue != null) + { + var signature = new XmlDocument(); + signature.AppendChild(signature.ImportNode(Signature.GetXml(), true)); + signature.DocumentElement.SetAttribute("xmlns:ds", SignedXml.XmlDsigNamespaceUrl); + retVal = base.GetIdElement(signature, idValue); + if (retVal != null) + { + return retVal; + } + + // If not, search for custom ids + foreach (string idAttr in idAttrs) + { + retVal = signature.SelectSingleNode("//*[@" + idAttr + "=\"" + idValue + "\"]") as XmlElement; + if (retVal != null) + { + return retVal; + } + } + } + + if (idValue == this.signedPropertiesIdBuffer) + { + var xmlDocumentCloned = new XmlDocument(); + xmlDocumentCloned.LoadXml(xmlDocument.OuterXml); + + var signedDataContainer = this.GetIdElement(xmlDocumentCloned, SignedElementId); + signedDataContainer.InsertBefore(xmlDocumentCloned.ImportNode(cachedXadesObjectDocument.DocumentElement, true), signedDataContainer.FirstChild); + + // TODO: + //xmlDocumentCloned.DocumentElement.AppendChild(xmlDocumentCloned.ImportNode(cachedXadesObjectDocument.DocumentElement, true)); + + retVal = base.GetIdElement(xmlDocumentCloned, idValue); + if (retVal != null) + { + return retVal; + } + + // If not, search for custom ids + foreach (string idAttr in idAttrs) + { + retVal = this.cachedXadesObjectDocument.SelectSingleNode("//*[@" + idAttr + "=\"" + idValue + "\"]") as XmlElement; + if (retVal != null) + { + break; + } + } + } + else + { + if (xmlDocument != null) + { + retVal = base.GetIdElement(xmlDocument, idValue); + if (retVal != null) + { + return retVal; + } + + // If not, search for custom ids + foreach (string idAttr in idAttrs) + { + retVal = xmlDocument.SelectSingleNode("//*[@" + idAttr + "=\"" + idValue + "\"]") as XmlElement; + if (retVal != null) + { + break; + } + } + } + } + + return retVal; + } + + /// + /// Add a XAdES object to the signature + /// + /// XAdES object to add to signature + public void AddXadesObject(XadesObject xadesObject) + { + Reference reference; + DataObject dataObject; + XmlElement bufferXmlElement; + + if (this.SignatureStandard != KnownSignatureStandard.Xades) + { + dataObject = new DataObject(); + dataObject.Id = xadesObject.Id; + dataObject.Data = xadesObject.GetXml().ChildNodes; + this.AddObject(dataObject); + + reference = new Reference(); + reference.DigestMethod = "http://www.w3.org/2001/04/xmldsig-more#gostr3411"; + signedPropertiesIdBuffer = xadesObject.QualifyingProperties.SignedProperties.Id; + reference.Uri = "#" + signedPropertiesIdBuffer; + reference.Type = SignedPropertiesType; + this.AddReference(reference); + + this.cachedXadesObjectDocument = new XmlDocument(); + bufferXmlElement = xadesObject.GetXml(); + + // Add "ds" namespace prefix to all XmlDsig nodes in the XAdES object + SetPrefix("ds", bufferXmlElement); + + this.cachedXadesObjectDocument.PreserveWhitespace = true; + this.cachedXadesObjectDocument.LoadXml(bufferXmlElement.OuterXml); + + this.signatureStandard = KnownSignatureStandard.Xades; + } + else + { + throw new CryptographicException("Can't add XAdES object, the signature already contains a XAdES object"); + } + } + + /// + /// Additional tests for XAdES signatures. These tests focus on + /// XMLDSIG verification and correct form of the XAdES XML structure + /// (schema validation and completeness as defined by the XAdES standard). + /// + /// + /// Because of the fact that the XAdES library is intentionally + /// independent of standards like TSP (RFC3161) or OCSP (RFC2560), + /// these tests do NOT include any verification of timestamps nor OCSP + /// responses. + /// These checks are important and have to be done in the application + /// built on top of the XAdES library. + /// + /// Thrown when the signature is not + /// a XAdES signature. SignatureStandard should be equal to + /// KnownSignatureStandard.Xades. + /// Use the CheckSignature method for non-XAdES signatures. + /// Bitmask to indicate which + /// tests need to be done. This function will call a public virtual + /// methods for each bit that has been set in this mask. + /// See the XadesCheckSignatureMasks + /// enum for the bitmask definitions. The virtual test method associated + /// with a bit in the mask has the same name as enum value name. + /// If the function returns true the check was OK. If the + /// check fails an exception with a explanatory message is thrown. + public bool XadesCheckSignature(XadesCheckSignatureMasks xadesCheckSignatureMasks) + { + bool retVal; + + retVal = true; + if (this.SignatureStandard != KnownSignatureStandard.Xades) + { + throw new Exception("SignatureStandard is not XAdES. CheckSignature returned: " + this.CheckSignature()); + } + else + { + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckXmldsigSignature) != 0) + { + retVal &= this.CheckXmldsigSignature(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.ValidateAgainstSchema) != 0) + { + retVal &= this.ValidateAgainstSchema(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckSameCertificate) != 0) + { + retVal &= this.CheckSameCertificate(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckAllReferencesExistInAllDataObjectsTimeStamp) != 0) + { + retVal &= this.CheckAllReferencesExistInAllDataObjectsTimeStamp(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckAllHashDataInfosInIndividualDataObjectsTimeStamp) != 0) + { + retVal &= this.CheckAllHashDataInfosInIndividualDataObjectsTimeStamp(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckCounterSignatures) != 0) + { + retVal &= this.CheckCounterSignatures(xadesCheckSignatureMasks); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckCounterSignaturesReference) != 0) + { + retVal &= this.CheckCounterSignaturesReference(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckObjectReferencesInCommitmentTypeIndication) != 0) + { + retVal &= this.CheckObjectReferencesInCommitmentTypeIndication(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckIfClaimedRolesOrCertifiedRolesPresentInSignerRole) != 0) + { + retVal &= this.CheckIfClaimedRolesOrCertifiedRolesPresentInSignerRole(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckHashDataInfoOfSignatureTimeStampPointsToSignatureValue) != 0) + { + retVal &= this.CheckHashDataInfoOfSignatureTimeStampPointsToSignatureValue(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckQualifyingPropertiesTarget) != 0) + { + retVal &= this.CheckQualifyingPropertiesTarget(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckQualifyingProperties) != 0) + { + retVal &= this.CheckQualifyingProperties(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckSigAndRefsTimeStampHashDataInfos) != 0) + { + retVal &= this.CheckSigAndRefsTimeStampHashDataInfos(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckRefsOnlyTimeStampHashDataInfos) != 0) + { + retVal &= this.CheckRefsOnlyTimeStampHashDataInfos(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckArchiveTimeStampHashDataInfos) != 0) + { + retVal &= this.CheckArchiveTimeStampHashDataInfos(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckXadesCIsXadesT) != 0) + { + retVal &= this.CheckXadesCIsXadesT(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckXadesXLIsXadesX) != 0) + { + retVal &= this.CheckXadesXLIsXadesX(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckCertificateValuesMatchCertificateRefs) != 0) + { + retVal &= this.CheckCertificateValuesMatchCertificateRefs(); + } + if ((xadesCheckSignatureMasks & XadesCheckSignatureMasks.CheckRevocationValuesMatchRevocationRefs) != 0) + { + retVal &= this.CheckRevocationValuesMatchRevocationRefs(); + } + } + + return retVal; + } + + #region XadesCheckSignature routines + /// + /// Check the signature of the underlying XMLDSIG signature + /// + /// If the function returns true the check was OK + public virtual bool CheckXmldsigSignature() + { + bool retVal = false; + // TODO: + //KeyInfo keyInfo = new KeyInfo(); + //X509Certificate xmldsigCert = new X509Certificate(System.Text.Encoding.ASCII.GetBytes(this.KeyInfo.GetXml().InnerText)); + //keyInfo.AddClause(new KeyInfoX509Data(xmldsigCert)); + //this.KeyInfo = keyInfo; + retVal = this.CheckSignature(); + if (retVal == false) + { + throw new CryptographicException("CheckXmldsigSignature() failed"); + } + + return retVal; + } + + /// + /// Validate the XML representation of the signature against the XAdES and XMLDSIG schemas + /// + /// If the function returns true the check was OK + public virtual bool ValidateAgainstSchema() + { + bool retValue = false; + + Assembly assembly = Assembly.GetExecutingAssembly(); + XmlSchemaSet schemaSet = new XmlSchemaSet(); + XmlSchema xmlSchema; + Stream schemaStream; + + NameTable xadesNameTable; + XmlNamespaceManager xmlNamespaceManager; + XmlParserContext xmlParserContext; + + this.validationErrorOccurred = false; + this.validationErrorDescription = ""; + + try + { + schemaStream = assembly.GetManifestResourceStream("Microsoft.Xades.xmldsig-core-schema.xsd"); + xmlSchema = XmlSchema.Read(schemaStream, new ValidationEventHandler(this.SchemaValidationHandler)); + schemaSet.Add(xmlSchema); + schemaStream.Close(); + + + schemaStream = assembly.GetManifestResourceStream("Microsoft.Xades.XAdES.xsd"); + xmlSchema = XmlSchema.Read(schemaStream, new ValidationEventHandler(this.SchemaValidationHandler)); + schemaSet.Add(xmlSchema); + schemaStream.Close(); + + if (this.validationErrorOccurred) + { + throw new CryptographicException("Schema read validation error: " + this.validationErrorDescription); + } + } + catch (Exception exception) + { + throw new CryptographicException("Problem during access of validation schemas", exception); + } + + XmlReaderSettings xmlReaderSettings = new XmlReaderSettings(); + xmlReaderSettings.ValidationEventHandler += new ValidationEventHandler(this.XmlValidationHandler); + xmlReaderSettings.ValidationType = ValidationType.Schema; + xmlReaderSettings.Schemas = schemaSet; + xmlReaderSettings.ConformanceLevel = ConformanceLevel.Auto; + + xadesNameTable = new NameTable(); + xmlNamespaceManager = new XmlNamespaceManager(xadesNameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + xmlParserContext = new XmlParserContext(null, xmlNamespaceManager, null, XmlSpace.None); + + XmlTextReader txtReader = new XmlTextReader(this.GetXml().OuterXml, XmlNodeType.Element, xmlParserContext); + XmlReader reader = XmlReader.Create(txtReader, xmlReaderSettings); + try + { + while (reader.Read()) ; + if (this.validationErrorOccurred) + { + throw new CryptographicException("Schema validation error: " + this.validationErrorDescription); + } + } + catch (Exception exception) + { + throw new CryptographicException("Schema validation error", exception); + } + finally + { + reader.Close(); + } + + retValue = true; + + return retValue; + } + + /// + /// Check to see if first XMLDSIG certificate has same hashvalue as first XAdES SignatureCertificate + /// + /// If the function returns true the check was OK + public virtual bool CheckSameCertificate() + { + bool retVal = false; + + // TODO: + //KeyInfoX509Data keyInfoX509Data = new KeyInfoX509Data(); + //keyInfoX509Data.LoadXml(this.KeyInfo.GetXml()); + //if (keyInfoX509Data.Certificates.Count <= 0) + //{ + // throw new CryptographicException("Certificate not found in XMLDSIG signature while doing CheckSameCertificate()"); + //} + //string xmldsigCertHash = Convert.ToBase64String(((X509Certificate)keyInfoX509Data.Certificates[0]).GetCertHash()); + + X509Certificate xmldsigCert = new X509Certificate(System.Text.Encoding.ASCII.GetBytes(this.KeyInfo.GetXml().InnerText)); + string xmldsigCertHash = Convert.ToBase64String(xmldsigCert.GetCertHash()); + + CertCollection xadesSigningCertificateCollection = this.XadesObject.QualifyingProperties.SignedProperties.SignedSignatureProperties.SigningCertificate.CertCollection; + if (xadesSigningCertificateCollection.Count <= 0) + { + throw new CryptographicException("Certificate not found in SigningCertificate element while doing CheckSameCertificate()"); + } + string xadesCertHash = Convert.ToBase64String(((Cert)xadesSigningCertificateCollection[0]).CertDigest.DigestValue); + + if (String.Compare(xmldsigCertHash, xadesCertHash, true, CultureInfo.InvariantCulture) != 0) + { + throw new CryptographicException("Certificate in XMLDSIG signature doesn't match certificate in SigningCertificate element"); + } + retVal = true; + + return retVal; + } + + /// + /// Check if there is a HashDataInfo for each reference if there is a AllDataObjectsTimeStamp + /// + /// If the function returns true the check was OK + public virtual bool CheckAllReferencesExistInAllDataObjectsTimeStamp() + { + AllDataObjectsTimeStampCollection allDataObjectsTimeStampCollection; + bool allHashDataInfosExist; + TimeStamp timeStamp; + int timeStampCounter; + bool retVal; + + allHashDataInfosExist = true; + retVal = false; + allDataObjectsTimeStampCollection = this.XadesObject.QualifyingProperties.SignedProperties.SignedDataObjectProperties.AllDataObjectsTimeStampCollection; + if (allDataObjectsTimeStampCollection.Count > 0) + { + for (timeStampCounter = 0; allHashDataInfosExist && (timeStampCounter < allDataObjectsTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = allDataObjectsTimeStampCollection[timeStampCounter]; + allHashDataInfosExist &= this.CheckHashDataInfosForTimeStamp(timeStamp); + } + if (!allHashDataInfosExist) + { + throw new CryptographicException("At least one HashDataInfo is missing in AllDataObjectsTimeStamp element"); + } + } + retVal = true; + + return retVal; + } + + /// + /// Check if the HashDataInfo of each IndividualDataObjectsTimeStamp points to existing Reference + /// + /// If the function returns true the check was OK + public virtual bool CheckAllHashDataInfosInIndividualDataObjectsTimeStamp() + { + IndividualDataObjectsTimeStampCollection individualDataObjectsTimeStampCollection; + bool hashDataInfoExists; + TimeStamp timeStamp; + int timeStampCounter; + bool retVal; + + hashDataInfoExists = true; + retVal = false; + individualDataObjectsTimeStampCollection = this.XadesObject.QualifyingProperties.SignedProperties.SignedDataObjectProperties.IndividualDataObjectsTimeStampCollection; + if (individualDataObjectsTimeStampCollection.Count > 0) + { + for (timeStampCounter = 0; hashDataInfoExists && (timeStampCounter < individualDataObjectsTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = individualDataObjectsTimeStampCollection[timeStampCounter]; + hashDataInfoExists &= this.CheckHashDataInfosExist(timeStamp); + } + if (hashDataInfoExists == false) + { + throw new CryptographicException("At least one HashDataInfo is pointing to non-existing reference in IndividualDataObjectsTimeStamp element"); + } + } + retVal = true; + + return retVal; + } + + /// + /// Perform XAdES checks on contained counter signatures. If couter signature is XMLDSIG, only XMLDSIG check (CheckSignature()) is done. + /// + /// Check mask applied to counter signatures + /// If the function returns true the check was OK + public virtual bool CheckCounterSignatures(XadesCheckSignatureMasks counterSignatureMask) + { + CounterSignatureCollection counterSignatureCollection; + XadesSignedXml counterSignature; + bool retVal; + + retVal = true; + counterSignatureCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.CounterSignatureCollection; + for (int counterSignatureCounter = 0; (retVal == true) && (counterSignatureCounter < counterSignatureCollection.Count); counterSignatureCounter++) + { + counterSignature = counterSignatureCollection[counterSignatureCounter]; + + if (counterSignature.signatureStandard == KnownSignatureStandard.Xades) + { + retVal &= counterSignature.XadesCheckSignature(counterSignatureMask); + } + else + { + retVal &= counterSignature.CheckSignature(); + } + } + if (retVal == false) + { + throw new CryptographicException("XadesCheckSignature() failed on at least one counter signature"); + } + retVal = true; + + return retVal; + } + + /// + /// Counter signatures should all contain a reference to the parent signature SignatureValue element + /// + /// If the function returns true the check was OK + public virtual bool CheckCounterSignaturesReference() + { + CounterSignatureCollection counterSignatureCollection; + XadesSignedXml counterSignature; + string referenceUri; + ArrayList parentSignatureValueChain; + bool referenceToParentSignatureFound; + bool retVal; + + retVal = true; + parentSignatureValueChain = new ArrayList(); + parentSignatureValueChain.Add("#" + this.signatureValueId); + counterSignatureCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.CounterSignatureCollection; + for (int counterSignatureCounter = 0; (retVal == true) && (counterSignatureCounter < counterSignatureCollection.Count); counterSignatureCounter++) + { + counterSignature = counterSignatureCollection[counterSignatureCounter]; + referenceToParentSignatureFound = false; + for (int referenceCounter = 0; referenceToParentSignatureFound == false && (referenceCounter < counterSignature.SignedInfo.References.Count); referenceCounter++) + { + referenceUri = ((Reference)counterSignature.SignedInfo.References[referenceCounter]).Uri; + if (parentSignatureValueChain.BinarySearch(referenceUri) >= 0) + { + referenceToParentSignatureFound = true; + } + parentSignatureValueChain.Add("#" + counterSignature.SignatureValueId); + parentSignatureValueChain.Sort(); + } + retVal = referenceToParentSignatureFound; + } + if (retVal == false) + { + throw new CryptographicException("CheckCounterSignaturesReference() failed on at least one counter signature"); + } + retVal = true; + + return retVal; + } + + /// + /// Check if each ObjectReference in CommitmentTypeIndication points to Reference element + /// + /// If the function returns true the check was OK + public virtual bool CheckObjectReferencesInCommitmentTypeIndication() + { + CommitmentTypeIndicationCollection commitmentTypeIndicationCollection; + CommitmentTypeIndication commitmentTypeIndication; + bool objectReferenceOK; + bool retVal; + + retVal = true; + commitmentTypeIndicationCollection = this.XadesObject.QualifyingProperties.SignedProperties.SignedDataObjectProperties.CommitmentTypeIndicationCollection; + if (commitmentTypeIndicationCollection.Count > 0) + { + for (int commitmentTypeIndicationCounter = 0; (retVal == true) && (commitmentTypeIndicationCounter < commitmentTypeIndicationCollection.Count); commitmentTypeIndicationCounter++) + { + commitmentTypeIndication = commitmentTypeIndicationCollection[commitmentTypeIndicationCounter]; + objectReferenceOK = true; + foreach (ObjectReference objectReference in commitmentTypeIndication.ObjectReferenceCollection) + { + objectReferenceOK &= this.CheckObjectReference(objectReference); + } + retVal = objectReferenceOK; + } + if (retVal == false) + { + throw new CryptographicException("At least one ObjectReference in CommitmentTypeIndication did not point to a Reference"); + } + } + + return retVal; + } + + /// + /// Check if at least ClaimedRoles or CertifiedRoles present in SignerRole + /// + /// If the function returns true the check was OK + public virtual bool CheckIfClaimedRolesOrCertifiedRolesPresentInSignerRole() + { + SignerRole signerRole; + bool retVal; + + retVal = false; + signerRole = this.XadesObject.QualifyingProperties.SignedProperties.SignedSignatureProperties.SignerRole; + if (signerRole != null) + { + if (signerRole.CertifiedRoles != null) + { + retVal = (signerRole.CertifiedRoles.CertifiedRoleCollection.Count > 0); + } + if (retVal == false) + { + if (signerRole.ClaimedRoles != null) + { + retVal = (signerRole.ClaimedRoles.ClaimedRoleCollection.Count > 0); + } + } + if (retVal == false) + { + throw new CryptographicException("SignerRole element must contain at least one CertifiedRole or ClaimedRole element"); + } + } + else + { + retVal = true; + } + + return retVal; + } + + /// + /// Check if HashDataInfo of SignatureTimeStamp points to SignatureValue + /// + /// If the function returns true the check was OK + public virtual bool CheckHashDataInfoOfSignatureTimeStampPointsToSignatureValue() + { + SignatureTimeStampCollection signatureTimeStampCollection; + bool hashDataInfoPointsToSignatureValue; + TimeStamp timeStamp; + int timeStampCounter; + bool retVal; + + hashDataInfoPointsToSignatureValue = true; + retVal = false; + signatureTimeStampCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.SignatureTimeStampCollection; + if (signatureTimeStampCollection.Count > 0) + { + for (timeStampCounter = 0; hashDataInfoPointsToSignatureValue && (timeStampCounter < signatureTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = signatureTimeStampCollection[timeStampCounter]; + hashDataInfoPointsToSignatureValue &= this.CheckHashDataInfoPointsToSignatureValue(timeStamp); + } + if (hashDataInfoPointsToSignatureValue == false) + { + throw new CryptographicException("HashDataInfo of SignatureTimeStamp doesn't point to signature value element"); + } + } + retVal = true; + + return retVal; + } + + /// + /// Check if the QualifyingProperties Target attribute points to the signature element + /// + /// If the function returns true the check was OK + public virtual bool CheckQualifyingPropertiesTarget() + { + string qualifyingPropertiesTarget; + bool retVal; + + retVal = true; + qualifyingPropertiesTarget = this.XadesObject.QualifyingProperties.Target; + if (this.Signature.Id == null) + { + retVal = false; + } + else + { + if (qualifyingPropertiesTarget != ("#" + this.Signature.Id)) + { + retVal = false; + } + } + if (retVal == false) + { + throw new CryptographicException("Qualifying properties target doesn't point to signature element or signature element doesn't have an Id"); + } + + return retVal; + } + + /// + /// Check that QualifyingProperties occur in one Object, check that there is only one QualifyingProperties and that signed properties occur in one QualifyingProperties element + /// + /// If the function returns true the check was OK + public virtual bool CheckQualifyingProperties() + { + XmlElement signatureElement; + XmlNamespaceManager xmlNamespaceManager; + XmlNodeList xmlNodeList; + + signatureElement = this.GetXml(); + xmlNamespaceManager = new XmlNamespaceManager(signatureElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + xmlNodeList = signatureElement.SelectNodes("ds:Object/xsd:QualifyingProperties", xmlNamespaceManager); + if (xmlNodeList.Count > 1) + { + throw new CryptographicException("More than one Object contains a QualifyingProperties element"); + } + + return true; + } + + /// + /// Check if all required HashDataInfos are present on SigAndRefsTimeStamp + /// + /// If the function returns true the check was OK + public virtual bool CheckSigAndRefsTimeStampHashDataInfos() + { + SignatureTimeStampCollection signatureTimeStampCollection; + TimeStamp timeStamp; + bool allRequiredhashDataInfosFound; + bool retVal; + + retVal = true; + signatureTimeStampCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.SigAndRefsTimeStampCollection; + if (signatureTimeStampCollection.Count > 0) + { + allRequiredhashDataInfosFound = true; + for (int timeStampCounter = 0; allRequiredhashDataInfosFound && (timeStampCounter < signatureTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = signatureTimeStampCollection[timeStampCounter]; + allRequiredhashDataInfosFound &= this.CheckHashDataInfosOfSigAndRefsTimeStamp(timeStamp); + } + if (allRequiredhashDataInfosFound == false) + { + throw new CryptographicException("At least one required HashDataInfo is missing in a SigAndRefsTimeStamp element"); + } + } + + return retVal; + } + + /// + /// Check if all required HashDataInfos are present on RefsOnlyTimeStamp + /// + /// If the function returns true the check was OK + public virtual bool CheckRefsOnlyTimeStampHashDataInfos() + { + SignatureTimeStampCollection signatureTimeStampCollection; + TimeStamp timeStamp; + bool allRequiredhashDataInfosFound; + bool retVal; + + retVal = true; + signatureTimeStampCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.RefsOnlyTimeStampCollection; + if (signatureTimeStampCollection.Count > 0) + { + allRequiredhashDataInfosFound = true; + for (int timeStampCounter = 0; allRequiredhashDataInfosFound && (timeStampCounter < signatureTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = signatureTimeStampCollection[timeStampCounter]; + allRequiredhashDataInfosFound &= this.CheckHashDataInfosOfRefsOnlyTimeStamp(timeStamp); + } + if (allRequiredhashDataInfosFound == false) + { + throw new CryptographicException("At least one required HashDataInfo is missing in a RefsOnlyTimeStamp element"); + } + } + + return retVal; + } + + /// + /// Check if all required HashDataInfos are present on ArchiveTimeStamp + /// + /// If the function returns true the check was OK + public virtual bool CheckArchiveTimeStampHashDataInfos() + { + SignatureTimeStampCollection signatureTimeStampCollection; + TimeStamp timeStamp; + bool allRequiredhashDataInfosFound; + bool retVal; + + retVal = true; + signatureTimeStampCollection = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties.ArchiveTimeStampCollection; + if (signatureTimeStampCollection.Count > 0) + { + allRequiredhashDataInfosFound = true; + for (int timeStampCounter = 0; allRequiredhashDataInfosFound && (timeStampCounter < signatureTimeStampCollection.Count); timeStampCounter++) + { + timeStamp = signatureTimeStampCollection[timeStampCounter]; + allRequiredhashDataInfosFound &= this.CheckHashDataInfosOfArchiveTimeStamp(timeStamp); + } + if (allRequiredhashDataInfosFound == false) + { + throw new CryptographicException("At least one required HashDataInfo is missing in a ArchiveTimeStamp element"); + } + } + + return retVal; + } + + /// + /// Check if a XAdES-C signature is also a XAdES-T signature + /// + /// If the function returns true the check was OK + public virtual bool CheckXadesCIsXadesT() + { + UnsignedSignatureProperties unsignedSignatureProperties; + bool retVal; + + retVal = true; + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + if (((unsignedSignatureProperties.CompleteCertificateRefs != null) && (unsignedSignatureProperties.CompleteCertificateRefs.HasChanged())) + || ((unsignedSignatureProperties.CompleteCertificateRefs != null) && (unsignedSignatureProperties.CompleteCertificateRefs.HasChanged()))) + { + if (unsignedSignatureProperties.SignatureTimeStampCollection.Count == 0) + { + throw new CryptographicException("XAdES-C signature should also contain a SignatureTimeStamp element"); + } + } + + return retVal; + } + + /// + /// Check if a XAdES-XL signature is also a XAdES-X signature + /// + /// If the function returns true the check was OK + public virtual bool CheckXadesXLIsXadesX() + { + UnsignedSignatureProperties unsignedSignatureProperties; + bool retVal; + + retVal = true; + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + if (((unsignedSignatureProperties.CertificateValues != null) && (unsignedSignatureProperties.CertificateValues.HasChanged())) + || ((unsignedSignatureProperties.RevocationValues != null) && (unsignedSignatureProperties.RevocationValues.HasChanged()))) + { + if ((unsignedSignatureProperties.SigAndRefsTimeStampCollection.Count == 0) && (unsignedSignatureProperties.RefsOnlyTimeStampCollection.Count == 0)) + { + throw new CryptographicException("XAdES-XL signature should also contain a XAdES-X element"); + } + } + + return retVal; + } + + /// + /// Check if CertificateValues match CertificateRefs + /// + /// If the function returns true the check was OK + public virtual bool CheckCertificateValuesMatchCertificateRefs() + { + SHA1Managed sha1Managed; + UnsignedSignatureProperties unsignedSignatureProperties; + ArrayList certDigests; + byte[] certDigest; + int index; + bool retVal; + + + retVal = true; + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + if ((unsignedSignatureProperties.CompleteCertificateRefs != null) && (unsignedSignatureProperties.CompleteCertificateRefs.CertRefs != null) && + (unsignedSignatureProperties.CertificateValues != null)) + { + certDigests = new ArrayList(); + foreach (Cert cert in unsignedSignatureProperties.CompleteCertificateRefs.CertRefs.CertCollection) + { + certDigests.Add(Convert.ToBase64String(cert.CertDigest.DigestValue)); + } + certDigests.Sort(); + foreach (EncapsulatedX509Certificate encapsulatedX509Certificate in unsignedSignatureProperties.CertificateValues.EncapsulatedX509CertificateCollection) + { + sha1Managed = new SHA1Managed(); + certDigest = sha1Managed.ComputeHash(encapsulatedX509Certificate.PkiData); + index = certDigests.BinarySearch(Convert.ToBase64String(certDigest)); + if (index >= 0) + { + certDigests.RemoveAt(index); + } + } + if (certDigests.Count != 0) + { + throw new CryptographicException("Not all CertificateRefs correspond to CertificateValues"); + } + } + + + return retVal; + } + + /// + /// Check if RevocationValues match RevocationRefs + /// + /// If the function returns true the check was OK + public virtual bool CheckRevocationValuesMatchRevocationRefs() + { + SHA1Managed sha1Managed; + UnsignedSignatureProperties unsignedSignatureProperties; + ArrayList crlDigests; + byte[] crlDigest; + int index; + bool retVal; + + retVal = true; + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + if ((unsignedSignatureProperties.CompleteRevocationRefs != null) && (unsignedSignatureProperties.CompleteRevocationRefs.CRLRefs != null) && + (unsignedSignatureProperties.RevocationValues != null)) + { + crlDigests = new ArrayList(); + foreach (CRLRef crlRef in unsignedSignatureProperties.CompleteRevocationRefs.CRLRefs.CRLRefCollection) + { + crlDigests.Add(Convert.ToBase64String(crlRef.CertDigest.DigestValue)); + } + crlDigests.Sort(); + foreach (CRLValue crlValue in unsignedSignatureProperties.RevocationValues.CRLValues.CRLValueCollection) + { + sha1Managed = new SHA1Managed(); + crlDigest = sha1Managed.ComputeHash(crlValue.PkiData); + index = crlDigests.BinarySearch(Convert.ToBase64String(crlDigest)); + if (index >= 0) + { + crlDigests.RemoveAt(index); + } + } + if (crlDigests.Count != 0) + { + throw new CryptographicException("Not all RevocationRefs correspond to RevocationValues"); + } + } + + return retVal; + } + #endregion + + #endregion + + #region Fix to add a namespace prefix for all XmlDsig nodes + + private void SetPrefix(String prefix, XmlNode node) + { + if (node.NamespaceURI == SignedXml.XmlDsigNamespaceUrl) + { + node.Prefix = prefix; + } + + foreach (XmlNode child in node.ChildNodes) + { + SetPrefix(prefix, child); + } + + return; + } + + /// + /// Copy of System.Security.Cryptography.Xml.SignedXml.ComputeSignature() which will end up calling + /// our own GetC14NDigest with a namespace prefix for all XmlDsig nodes + /// + public new void ComputeSignature() + { + AsymmetricAlgorithm signingKey = this.SigningKey; + if (signingKey == null) + { + throw new CryptographicException("Cryptography_Xml_LoadKeyFailed"); + } + if (this.SignedInfo.SignatureMethod == null) + { + if (!(signingKey is DSA)) + { + if (!(signingKey is RSA)) + { + throw new CryptographicException("Cryptography_Xml_CreatedKeyFailed"); + } + if (this.SignedInfo.SignatureMethod == null) + { + this.SignedInfo.SignatureMethod = "http://www.w3.org/2000/09/xmldsig#rsa-sha1"; + } + } + else + { + this.SignedInfo.SignatureMethod = "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; + } + } + + HashAlgorithm hash; + var description = GetSignedInfoHash(out hash); + // + this.m_signature.SignatureValue = description.CreateFormatter(signingKey).CreateSignature(hash); + } + + private HashAlgorithm signedInfoHash = null; + + /// + /// Calculates standalone SignedInfo hash + /// + /// + /// + /// + public SignatureDescription GetSignedInfoHash(out HashAlgorithm hash) + { + SignatureDescription description; + if (signedInfoHash != null) + { + description = CryptoConfig.CreateFromName(this.SignedInfo.SignatureMethod) as SignatureDescription; + hash = signedInfoHash; + return description; + } + + this.BuildDigestedReferences(); + description = + CryptoConfig.CreateFromName(this.SignedInfo.SignatureMethod) as SignatureDescription; + if (description == null) + { + throw new CryptographicException("Cryptography_Xml_SignatureDescriptionNotCreated"); + } + hash = description.CreateDigest(); + if (hash == null) + { + throw new CryptographicException("Cryptography_Xml_CreateHashAlgorithmFailed"); + } + this.GetC14NDigest(hash, "ds"); + this.signedInfoHash = hash; + return description; + } + + /// + /// Copy of System.Security.Cryptography.Xml.SignedXml.BuildDigestedReferences() which will add a "ds" + /// namespace prefix to all XmlDsig nodes + /// + private void BuildDigestedReferences() + { + ArrayList references = this.SignedInfo.References; + + // TODO: + //this.m_refProcessed = new bool[references.Count]; + Type SignedXml_Type = typeof(SignedXml); + FieldInfo SignedXml_m_refProcessed = SignedXml_Type.GetField("m_refProcessed", BindingFlags.NonPublic | BindingFlags.Instance); + SignedXml_m_refProcessed.SetValue(this, new bool[references.Count]); + + // TODO: + //this.m_refLevelCache = new int[references.Count]; + FieldInfo SignedXml_m_refLevelCache = SignedXml_Type.GetField("m_refLevelCache", BindingFlags.NonPublic | BindingFlags.Instance); + SignedXml_m_refLevelCache.SetValue(this, new int[references.Count]); + + // TODO: + //ReferenceLevelSortOrder comparer = new ReferenceLevelSortOrder(); + Assembly System_Security_Assembly = Assembly.Load("System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"); + Type ReferenceLevelSortOrder_Type = System_Security_Assembly.GetType("System.Security.Cryptography.Xml.SignedXml+ReferenceLevelSortOrder"); + ConstructorInfo ReferenceLevelSortOrder_Constructor = ReferenceLevelSortOrder_Type.GetConstructor(new Type[] { }); + Object comparer = ReferenceLevelSortOrder_Constructor.Invoke(null); + + // TODO: + //comparer.References = references; + PropertyInfo ReferenceLevelSortOrder_References = ReferenceLevelSortOrder_Type.GetProperty("References", BindingFlags.Public | BindingFlags.Instance); + ReferenceLevelSortOrder_References.SetValue(comparer, references, null); + // + + ArrayList list2 = new ArrayList(); + foreach (Reference reference in references) + { + list2.Add(reference); + } + + list2.Sort((IComparer)comparer); + + // TODO: + //CanonicalXmlNodeList refList = new CanonicalXmlNodeList(); + Type CanonicalXmlNodeList_Type = System_Security_Assembly.GetType("System.Security.Cryptography.Xml.CanonicalXmlNodeList"); + ConstructorInfo CanonicalXmlNodeList_Constructor = CanonicalXmlNodeList_Type.GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new Type[] { }, null); + Object refList = CanonicalXmlNodeList_Constructor.Invoke(null); + + MethodInfo CanonicalXmlNodeList_Add = CanonicalXmlNodeList_Type.GetMethod("Add", BindingFlags.Public | BindingFlags.Instance); + + foreach (DataObject obj2 in this.m_signature.ObjectList) + { + // TODO: + //refList.Add(obj2.GetXml()); + XmlElement xml = obj2.GetXml(); + SetPrefix("ds", xml); + CanonicalXmlNodeList_Add.Invoke(refList, new object[] { xml }); + } + + FieldInfo SignedXml_m_containingDocument = SignedXml_Type.GetField("m_containingDocument", BindingFlags.NonPublic | BindingFlags.Instance); + Type Reference_Type = typeof(Reference); + MethodInfo Reference_UpdateHashValue = Reference_Type.GetMethod("UpdateHashValue", BindingFlags.NonPublic | BindingFlags.Instance); + + foreach (Reference reference2 in list2) + { + if (reference2.DigestMethod == null) + { + // TODO: + //reference2.DigestMethod = "http://www.w3.org/2000/09/xmldsig#sha1"; + reference2.DigestMethod = "http://www.w3.org/2001/04/xmldsig-more#gostr3411"; + } + // TODO: + //reference2.UpdateHashValue(this.m_containingDocument, refList); + object m_containingDocument = SignedXml_m_containingDocument.GetValue(this); + Reference_UpdateHashValue.Invoke(reference2, new object[] { m_containingDocument, refList }); + + if (reference2.Id != null) + { + // TODO: + //refList.Add(reference2.GetXml()); + XmlElement xml = reference2.GetXml(); + SetPrefix("ds", xml); + CanonicalXmlNodeList_Add.Invoke(refList, new object[] { xml }); + } + } + } + + /// + /// We won't call System.Security.Cryptography.Xml.SignedXml.GetC14NDigest(), as we want to use our own + /// + private byte[] GetC14NDigest(HashAlgorithm hash) + { + return null; + } + + /// + /// Copy of System.Security.Cryptography.Xml.SignedXml.GetC14NDigest() which will add a + /// namespace prefix to all XmlDsig nodes + /// + private byte[] GetC14NDigest(HashAlgorithm hash, string prefix) + { + // TODO: + //if (!this.bCacheValid || !this.SignedInfo.CacheValid) + //{ + Type SignedXml_Type = typeof(SignedXml); + FieldInfo SignedXml_bCacheValid = SignedXml_Type.GetField("bCacheValid", BindingFlags.NonPublic | BindingFlags.Instance); + bool bCacheValid = (bool)SignedXml_bCacheValid.GetValue(this); + Type SignedInfo_Type = typeof(SignedInfo); + PropertyInfo SignedInfo_CacheValid = SignedInfo_Type.GetProperty("CacheValid", BindingFlags.NonPublic | BindingFlags.Instance); + bool CacheValid = (bool)SignedInfo_CacheValid.GetValue(this.SignedInfo, null); + + FieldInfo SignedXml__digestedSignedInfo = SignedXml_Type.GetField("_digestedSignedInfo", BindingFlags.NonPublic | BindingFlags.Instance); + + if (!bCacheValid || !CacheValid) + { + // TODO: + //string securityUrl = (this.m_containingDocument == null) ? null : this.m_containingDocument.BaseURI; + FieldInfo SignedXml_m_containingDocument = SignedXml_Type.GetField("m_containingDocument", BindingFlags.NonPublic | BindingFlags.Instance); + XmlDocument m_containingDocument = (XmlDocument)SignedXml_m_containingDocument.GetValue(this); + string securityUrl = (m_containingDocument == null) ? null : m_containingDocument.BaseURI; + + // TODO: + //XmlResolver xmlResolver = this.m_bResolverSet ? this.m_xmlResolver : new XmlSecureResolver(new XmlUrlResolver(), securityUrl); + FieldInfo SignedXml_m_bResolverSet = SignedXml_Type.GetField("m_bResolverSet", BindingFlags.NonPublic | BindingFlags.Instance); + bool m_bResolverSet = (bool)SignedXml_m_bResolverSet.GetValue(this); + FieldInfo SignedXml_m_xmlResolver = SignedXml_Type.GetField("m_xmlResolver", BindingFlags.NonPublic | BindingFlags.Instance); + XmlResolver m_xmlResolver = (XmlResolver)SignedXml_m_xmlResolver.GetValue(this); + XmlResolver xmlResolver = m_bResolverSet ? m_xmlResolver : new XmlSecureResolver(new XmlUrlResolver(), securityUrl); + + // TODO: + //XmlDocument document = Utils.PreProcessElementInput(this.SignedInfo.GetXml(), xmlResolver, securityUrl); + Assembly System_Security_Assembly = Assembly.Load("System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"); + Type Utils_Type = System_Security_Assembly.GetType("System.Security.Cryptography.Xml.Utils"); + MethodInfo Utils_PreProcessElementInput = Utils_Type.GetMethod("PreProcessElementInput", BindingFlags.NonPublic | BindingFlags.Static); + XmlElement xml = this.SignedInfo.GetXml(); + SetPrefix(prefix, xml); + XmlDocument document = (XmlDocument)Utils_PreProcessElementInput.Invoke(null, new object[] { xml, xmlResolver, securityUrl }); + + // TODO: + //CanonicalXmlNodeList namespaces = (this.m_context == null) ? null : Utils.GetPropagatedAttributes(this.m_context); + //FieldInfo SignedXml_m_context = SignedXml_Type.GetField("m_context", BindingFlags.NonPublic | BindingFlags.Instance); + MethodInfo Utils_GetPropagatedAttributes = Utils_Type.GetMethod("GetPropagatedAttributes", BindingFlags.NonPublic | BindingFlags.Static); + + var xmlDocumentCloned = new XmlDocument(); + xmlDocumentCloned.LoadXml(m_containingDocument.OuterXml); + + var signedDataContainer = GetIdElement(xmlDocumentCloned, SignedElementId); + signedDataContainer.InsertBefore(xmlDocumentCloned.ImportNode(document.DocumentElement, true), signedDataContainer.FirstChild); + + object namespaces = Utils_GetPropagatedAttributes.Invoke(null, new object[] { signedDataContainer.FirstChild }); + + // TODO: + //object m_context = SignedXml_m_context.GetValue(this); + //object namespaces = (m_context == null) ? null : Utils_GetPropagatedAttributes.Invoke(null, new object[] { m_context }); + + // TODO: + // Utils.AddNamespaces(document.DocumentElement, namespaces); + + Type CanonicalXmlNodeList_Type = System_Security_Assembly.GetType("System.Security.Cryptography.Xml.CanonicalXmlNodeList"); + MethodInfo Utils_AddNamespaces = Utils_Type.GetMethod("AddNamespaces", BindingFlags.NonPublic | BindingFlags.Static, null, new Type[] { typeof(XmlElement), CanonicalXmlNodeList_Type }, null); + Utils_AddNamespaces.Invoke(null, new object[] { document.DocumentElement, namespaces }); + + // TODO: + //Transform canonicalizationMethodObject = this.SignedInfo.CanonicalizationMethodObject; + System.Security.Cryptography.Xml.Transform canonicalizationMethodObject = this.SignedInfo.CanonicalizationMethodObject; + + canonicalizationMethodObject.Resolver = xmlResolver; + + // TODO: + //canonicalizationMethodObject.BaseURI = securityUrl; + Type Transform_Type = typeof(System.Security.Cryptography.Xml.Transform); + PropertyInfo Transform_BaseURI = Transform_Type.GetProperty("BaseURI", BindingFlags.NonPublic | BindingFlags.Instance); + Transform_BaseURI.SetValue(canonicalizationMethodObject, securityUrl, null); + + canonicalizationMethodObject.LoadInput(document); + + // TODO: + //this._digestedSignedInfo = canonicalizationMethodObject.GetDigestedOutput(hash); + SignedXml__digestedSignedInfo.SetValue(this, canonicalizationMethodObject.GetDigestedOutput(hash)); + + // TODO: + //this.bCacheValid = true; + SignedXml_bCacheValid.SetValue(this, true); + } + + // TODO: + //return this._digestedSignedInfo; + byte[] _digestedSignedInfo = (byte[])SignedXml__digestedSignedInfo.GetValue(this); + return _digestedSignedInfo; + } + + #endregion + + #region Private methods + + protected XmlElement GetXadesObjectElement(XmlElement signatureElement) + { + XmlElement retVal = null; + + XmlNamespaceManager xmlNamespaceManager = new XmlNamespaceManager(signatureElement.OwnerDocument.NameTable); //Create an XmlNamespaceManager to resolve namespace + xmlNamespaceManager.AddNamespace("ds", SignedXml.XmlDsigNamespaceUrl); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + + XmlNodeList xmlNodeList = signatureElement.SelectNodes("ds:Object/xsd:QualifyingProperties", xmlNamespaceManager); + if (xmlNodeList.Count > 0) + { + retVal = (XmlElement)xmlNodeList.Item(0).ParentNode; + } + else + { + retVal = null; + } + + return retVal; + } + + private void SetSignatureStandard(XmlElement signatureElement) + { + if (this.GetXadesObjectElement(signatureElement) != null) + { + this.signatureStandard = KnownSignatureStandard.Xades; + } + else + { + this.signatureStandard = KnownSignatureStandard.XmlDsig; + } + } + + private System.Security.Cryptography.Xml.DataObject GetXadesDataObject() + { + System.Security.Cryptography.Xml.DataObject retVal = null; + + for (int dataObjectCounter = 0; dataObjectCounter < (this.Signature.ObjectList.Count); dataObjectCounter++) + { + System.Security.Cryptography.Xml.DataObject dataObject = (System.Security.Cryptography.Xml.DataObject)this.Signature.ObjectList[dataObjectCounter]; + XmlElement dataObjectXmlElement = dataObject.GetXml(); + XmlNamespaceManager xmlNamespaceManager = new XmlNamespaceManager(dataObjectXmlElement.OwnerDocument.NameTable); + xmlNamespaceManager.AddNamespace("xsd", XadesSignedXml.XadesNamespaceUri); + XmlNodeList xmlNodeList = dataObjectXmlElement.SelectNodes("xsd:QualifyingProperties", xmlNamespaceManager); + if (xmlNodeList.Count != 0) + { + retVal = dataObject; + + break; + } + } + + return retVal; + } + + private void SchemaValidationHandler(object sender, ValidationEventArgs validationEventArgs) + { + this.validationErrorOccurred = true; + this.validationErrorDescription += "Validation error:\n"; + this.validationErrorDescription += "\tSeverity: " + validationEventArgs.Severity.ToString() + "\n"; + this.validationErrorDescription += "\tMessage: " + validationEventArgs.Message + "\n"; + } + + private void XmlValidationHandler(object sender, ValidationEventArgs validationEventArgs) + { + if (validationEventArgs.Severity != XmlSeverityType.Warning) + { + this.validationErrorOccurred = true; + this.validationErrorDescription += "Validation error:\n"; + this.validationErrorDescription += "\tSeverity: " + validationEventArgs.Severity.ToString() + "\n"; + this.validationErrorDescription += "\tMessage: " + validationEventArgs.Message + "\n"; + } + } + + private bool CheckHashDataInfosForTimeStamp(TimeStamp timeStamp) + { + bool retVal = true; + + for (int referenceCounter = 0; retVal == true && (referenceCounter < this.SignedInfo.References.Count); referenceCounter++) + { + string referenceId = ((Reference)this.SignedInfo.References[referenceCounter]).Id; + string referenceUri = ((Reference)this.SignedInfo.References[referenceCounter]).Uri; + if (referenceUri != ("#" + this.XadesObject.QualifyingProperties.SignedProperties.Id)) + { + bool hashDataInfoFound = false; + for (int hashDataInfoCounter = 0; hashDataInfoFound == false && (hashDataInfoCounter < timeStamp.HashDataInfoCollection.Count); hashDataInfoCounter++) + { + HashDataInfo hashDataInfo = timeStamp.HashDataInfoCollection[hashDataInfoCounter]; + hashDataInfoFound = (("#" + referenceId) == hashDataInfo.UriAttribute); + } + retVal = hashDataInfoFound; + } + } + + return retVal; + } + + private bool CheckHashDataInfosExist(TimeStamp timeStamp) + { + bool retVal = true; + + for (int hashDataInfoCounter = 0; retVal == true && (hashDataInfoCounter < timeStamp.HashDataInfoCollection.Count); hashDataInfoCounter++) + { + HashDataInfo hashDataInfo = timeStamp.HashDataInfoCollection[hashDataInfoCounter]; + bool referenceFound = false; + string referenceId; + + for (int referenceCounter = 0; referenceFound == false && (referenceCounter < this.SignedInfo.References.Count); referenceCounter++) + { + referenceId = ((Reference)this.SignedInfo.References[referenceCounter]).Id; + if (("#" + referenceId) == hashDataInfo.UriAttribute) + { + referenceFound = true; + } + } + retVal = referenceFound; + } + + return retVal; + } + + private bool CheckObjectReference(ObjectReference objectReference) + { + bool retVal = false; + + for (int referenceCounter = 0; retVal == false && (referenceCounter < this.SignedInfo.References.Count); referenceCounter++) + { + string referenceId = ((Reference)this.SignedInfo.References[referenceCounter]).Id; + if (("#" + referenceId) == objectReference.ObjectReferenceUri) + { + retVal = true; + } + } + + return retVal; + } + + private bool CheckHashDataInfoPointsToSignatureValue(TimeStamp timeStamp) + { + bool retVal = true; + foreach (HashDataInfo hashDataInfo in timeStamp.HashDataInfoCollection) + { + retVal &= (hashDataInfo.UriAttribute == ("#" + this.signatureValueId)); + } + + return retVal; + } + + private bool CheckHashDataInfosOfSigAndRefsTimeStamp(TimeStamp timeStamp) + { + UnsignedSignatureProperties unsignedSignatureProperties; + bool signatureValueHashDataInfoFound = false; + bool allSignatureTimeStampHashDataInfosFound = false; + bool completeCertificateRefsHashDataInfoFound = false; + bool completeRevocationRefsHashDataInfoFound = false; + + ArrayList signatureTimeStampIds = new ArrayList(); + + bool retVal = true; + + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + + foreach (TimeStamp signatureTimeStamp in unsignedSignatureProperties.SignatureTimeStampCollection) + { + signatureTimeStampIds.Add("#" + signatureTimeStamp.EncapsulatedTimeStamp.Id); + } + signatureTimeStampIds.Sort(); + foreach (HashDataInfo hashDataInfo in timeStamp.HashDataInfoCollection) + { + if (hashDataInfo.UriAttribute == "#" + this.signatureValueId) + { + signatureValueHashDataInfoFound = true; + } + int signatureTimeStampIdIndex = signatureTimeStampIds.BinarySearch(hashDataInfo.UriAttribute); + if (signatureTimeStampIdIndex >= 0) + { + signatureTimeStampIds.RemoveAt(signatureTimeStampIdIndex); + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteCertificateRefs.Id) + { + completeCertificateRefsHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteRevocationRefs.Id) + { + completeRevocationRefsHashDataInfoFound = true; + } + } + if (signatureTimeStampIds.Count == 0) + { + allSignatureTimeStampHashDataInfosFound = true; + } + retVal = signatureValueHashDataInfoFound && allSignatureTimeStampHashDataInfosFound && completeCertificateRefsHashDataInfoFound && completeRevocationRefsHashDataInfoFound; + + return retVal; + } + + private bool CheckHashDataInfosOfRefsOnlyTimeStamp(TimeStamp timeStamp) + { + UnsignedSignatureProperties unsignedSignatureProperties; + bool completeCertificateRefsHashDataInfoFound; + bool completeRevocationRefsHashDataInfoFound; + bool retVal; + + completeCertificateRefsHashDataInfoFound = false; + completeRevocationRefsHashDataInfoFound = false; + retVal = true; + + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + foreach (HashDataInfo hashDataInfo in timeStamp.HashDataInfoCollection) + { + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteCertificateRefs.Id) + { + completeCertificateRefsHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteRevocationRefs.Id) + { + completeRevocationRefsHashDataInfoFound = true; + } + } + retVal = completeCertificateRefsHashDataInfoFound && completeRevocationRefsHashDataInfoFound; + + return retVal; + } + + private bool CheckHashDataInfosOfArchiveTimeStamp(TimeStamp timeStamp) + { + UnsignedSignatureProperties unsignedSignatureProperties; + SignedProperties signedProperties; + + bool allReferenceHashDataInfosFound = false; + bool signedInfoHashDataInfoFound = false; + bool signedPropertiesHashDataInfoFound = false; + bool signatureValueHashDataInfoFound = false; + bool allSignatureTimeStampHashDataInfosFound = false; + bool completeCertificateRefsHashDataInfoFound = false; + bool completeRevocationRefsHashDataInfoFound = false; + bool certificatesValuesHashDataInfoFound = false; + bool revocationValuesHashDataInfoFound = false; + bool allSigAndRefsTimeStampHashDataInfosFound = false; + bool allRefsOnlyTimeStampHashDataInfosFound = false; + bool allArchiveTimeStampHashDataInfosFound = false; + bool allOlderArchiveTimeStampsFound = false; + + ArrayList referenceIds = new ArrayList(); + ArrayList signatureTimeStampIds = new ArrayList(); + ArrayList sigAndRefsTimeStampIds = new ArrayList(); + ArrayList refsOnlyTimeStampIds = new ArrayList(); + ArrayList archiveTimeStampIds = new ArrayList(); + + bool retVal = true; + + unsignedSignatureProperties = this.XadesObject.QualifyingProperties.UnsignedProperties.UnsignedSignatureProperties; + signedProperties = this.XadesObject.QualifyingProperties.SignedProperties; + + foreach (Reference reference in this.Signature.SignedInfo.References) + { + if (reference.Uri != "#" + signedProperties.Id) + { + referenceIds.Add(reference.Uri); + } + } + referenceIds.Sort(); + foreach (TimeStamp signatureTimeStamp in unsignedSignatureProperties.SignatureTimeStampCollection) + { + signatureTimeStampIds.Add("#" + signatureTimeStamp.EncapsulatedTimeStamp.Id); + } + signatureTimeStampIds.Sort(); + foreach (TimeStamp sigAndRefsTimeStamp in unsignedSignatureProperties.SigAndRefsTimeStampCollection) + { + sigAndRefsTimeStampIds.Add("#" + sigAndRefsTimeStamp.EncapsulatedTimeStamp.Id); + } + sigAndRefsTimeStampIds.Sort(); + foreach (TimeStamp refsOnlyTimeStamp in unsignedSignatureProperties.RefsOnlyTimeStampCollection) + { + refsOnlyTimeStampIds.Add("#" + refsOnlyTimeStamp.EncapsulatedTimeStamp.Id); + } + refsOnlyTimeStampIds.Sort(); + allOlderArchiveTimeStampsFound = false; + for (int archiveTimeStampCounter = 0; !allOlderArchiveTimeStampsFound && (archiveTimeStampCounter < unsignedSignatureProperties.ArchiveTimeStampCollection.Count); archiveTimeStampCounter++) + { + TimeStamp archiveTimeStamp = unsignedSignatureProperties.ArchiveTimeStampCollection[archiveTimeStampCounter]; + if (archiveTimeStamp.EncapsulatedTimeStamp.Id == timeStamp.EncapsulatedTimeStamp.Id) + { + allOlderArchiveTimeStampsFound = true; + } + else + { + archiveTimeStampIds.Add("#" + archiveTimeStamp.EncapsulatedTimeStamp.Id); + } + } + + archiveTimeStampIds.Sort(); + foreach (HashDataInfo hashDataInfo in timeStamp.HashDataInfoCollection) + { + int index = referenceIds.BinarySearch(hashDataInfo.UriAttribute); + if (index >= 0) + { + referenceIds.RemoveAt(index); + } + + // TODO: + //if (hashDataInfo.UriAttribute == "#" + this.signedInfoIdBuffer) + + if (hashDataInfo.UriAttribute == "#") + { + signedInfoHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + signedProperties.Id) + { + signedPropertiesHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + this.signatureValueId) + { + signatureValueHashDataInfoFound = true; + } + index = signatureTimeStampIds.BinarySearch(hashDataInfo.UriAttribute); + if (index >= 0) + { + signatureTimeStampIds.RemoveAt(index); + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteCertificateRefs.Id) + { + completeCertificateRefsHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CompleteRevocationRefs.Id) + { + completeRevocationRefsHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.CertificateValues.Id) + { + certificatesValuesHashDataInfoFound = true; + } + if (hashDataInfo.UriAttribute == "#" + unsignedSignatureProperties.RevocationValues.Id) + { + revocationValuesHashDataInfoFound = true; + } + index = sigAndRefsTimeStampIds.BinarySearch(hashDataInfo.UriAttribute); + if (index >= 0) + { + sigAndRefsTimeStampIds.RemoveAt(index); + } + index = refsOnlyTimeStampIds.BinarySearch(hashDataInfo.UriAttribute); + if (index >= 0) + { + refsOnlyTimeStampIds.RemoveAt(index); + } + index = archiveTimeStampIds.BinarySearch(hashDataInfo.UriAttribute); + if (index >= 0) + { + archiveTimeStampIds.RemoveAt(index); + } + } + if (referenceIds.Count == 0) + { + allReferenceHashDataInfosFound = true; + } + if (signatureTimeStampIds.Count == 0) + { + allSignatureTimeStampHashDataInfosFound = true; + } + if (sigAndRefsTimeStampIds.Count == 0) + { + allSigAndRefsTimeStampHashDataInfosFound = true; + } + if (refsOnlyTimeStampIds.Count == 0) + { + allRefsOnlyTimeStampHashDataInfosFound = true; + } + if (archiveTimeStampIds.Count == 0) + { + allArchiveTimeStampHashDataInfosFound = true; + } + + retVal = allReferenceHashDataInfosFound && signedInfoHashDataInfoFound && signedPropertiesHashDataInfoFound && + signatureValueHashDataInfoFound && allSignatureTimeStampHashDataInfosFound && completeCertificateRefsHashDataInfoFound && + completeRevocationRefsHashDataInfoFound && certificatesValuesHashDataInfoFound && revocationValuesHashDataInfoFound && + allSigAndRefsTimeStampHashDataInfosFound && allRefsOnlyTimeStampHashDataInfosFound && allArchiveTimeStampHashDataInfosFound; + + return retVal; + } + #endregion + + public SignedDataObjectProperties SignedDataObjectProperties => SignedProperties.SignedDataObjectProperties; + public SignedProperties SignedProperties => XadesObject.QualifyingProperties.SignedProperties; + public SignedSignatureProperties SignedSignatureProperties => SignedProperties.SignedSignatureProperties; + } +} diff --git a/Hcs.ClientNet/Microsoft/Xades/xmldsig-core-schema.xsd b/Hcs.ClientNet/Microsoft/Xades/xmldsig-core-schema.xsd new file mode 100644 index 0000000..157a8ee --- /dev/null +++ b/Hcs.ClientNet/Microsoft/Xades/xmldsig-core-schema.xsd @@ -0,0 +1,309 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hcs.sln b/Hcs.sln index abecab7..d80ab76 100644 --- a/Hcs.sln +++ b/Hcs.sln @@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Hcs.TestApp", "Hcs.TestApp\ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Hcs.WebApp", "Hcs.WebApp\Hcs.WebApp.csproj", "{CD1B5236-648C-4656-89F1-6CE96A9E5FAF}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Hcs.ClientNet", "Hcs.ClientNet\Hcs.ClientNet.csproj", "{4448CB37-BCF9-416C-903E-87ECFA072F9F}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -27,6 +29,10 @@ Global {CD1B5236-648C-4656-89F1-6CE96A9E5FAF}.Debug|Any CPU.Build.0 = Debug|Any CPU {CD1B5236-648C-4656-89F1-6CE96A9E5FAF}.Release|Any CPU.ActiveCfg = Release|Any CPU {CD1B5236-648C-4656-89F1-6CE96A9E5FAF}.Release|Any CPU.Build.0 = Release|Any CPU + {4448CB37-BCF9-416C-903E-87ECFA072F9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4448CB37-BCF9-416C-903E-87ECFA072F9F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4448CB37-BCF9-416C-903E-87ECFA072F9F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4448CB37-BCF9-416C-903E-87ECFA072F9F}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE