GetCountryChangesList: различия между версиями

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
Строка 25: Строка 25:
{{столбцы/конец}}
{{столбцы/конец}}


===Входные данные===
===[[#Объект getCountryChangesListRequest|Входные данные]]===
* параметры выводимого списка.
* параметры выводимого списка.
* временной интервал.
* временной интервал.

Версия 09:35, 9 ноября 2016

Общие сведения

Операция GetCountryChangesList предназначена для получения истории изменений в списке стран. Выполнение операции заканчивается возвратом списка стран, в который попадают записи, дата изменения которых принадлежит временному интервалу, указанному в запросе. В список попадут все версии записей, которые изменялись в течение указанного интервала, то есть могут присутствовать не последние и/или не актуальные записи. Выполнение операции заканчивается либо возвратом списка стран, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса. Операция поддерживает возможность частичного вывода списка.

Используемые пространства имён и типы


Входные данные

  • параметры выводимого списка.
  • временной интервал.

Выходные данные

  • список записей стран, изменённых за период. Выводятся все записи, в том числе не активные и не последние.

Данные запроса

Объект getCountryChangesList

Корневой объект запроса. Содержит параметры запрашиваемого списка.

Поле Описание Тип данных Обязательность
listOptions Параметры возвращаемого списка: количество элементов и смещение. bs:ListOptions 0..1
updateDateinterval Интервал дат, за который запрашиваются изменения. bs:DateInterval 1

Объект ..Request/listOptions

Объект содержит два параметра запрашиваемого списка: количество выводимых объектов и смещение относительно начала.

Поле Описание Тип данных Обязательность
count Количество значений в списке
  • По умолчанию значение равно 100;
  • Максимально допустимое значение равно 1000.
xs:nonNegativeInteger 0..1
offset Смещение в списке относительно начала. xs:nonNegativeInteger 0..1

Объект ..Request/updateDateInterval

Объект содержит сведения об интервале времени, за который необходимо получить обновления.

Поле Описание Тип Обязательность
beginDate Дата, начиная с которой пользователь получит историю изменений записей стран. xs:dateTime 1
endDate Конец временного интервала.
  • В случае, если компонента endDate не указана, то используется текущая дата.
xs:dateTime 0..1

Данные ответа

Объект getCountryChangesListResponse

Корневой объект ответа. Содержит список возвращаемых стран.

Поле Описание Тип данных Обязательность
countryList Объект, содержащий запрашиваемый список стран. ikar:CountryList 1

Объект ..Response/countryList

Объект содержит список стран.

Поле Описание Тип данных Обязательность
country Объект содержит информацию о стране. ikar:Country 0..*

Атрибуты списка countryList

Атрибут Описание Тип данных Обязательность
count Размер списка, передаваемого в ответе на запрос. xs:int 1
total Размер всего списка, удовлетворяющего запросу. xs:long 1
offset Смещение первого элемента передаваемого списка во всем списке результатов, удовлетворяющих запросу. xs:int 1

Объект ..Response/countryList/country

Объект содержит информацию о стране.

Поле Описание Тип данных Обязательность
UUID Идентификатор версии записи о стране в реестре системы Икар. bs:UUID 1
GUID Глобальный идентификатор страны в реестре системы Икар. bs:UUID 1
active Флаг, указывающий активна ли запись. xs:boolean 1
last Флаг, указывающий, является ли версия записи последней. xs:boolean 1
status Статус записи. bs:VersionStatus 1
createDate Дата создания записи. xs:date 1
updateDate Дата обновления записи. xs:date 1
previous Идентификатор предыдущей версии записи. bs:UUID 0..1
name Название страны (например, Белоруссия). xs:string 1
fullName Полное название страны (например, Республика Беларусь). xs:string 1
englishName Название страны на английском языке. xs:string 1
code Двухбуквенный код страны в соответствии со стандартом ISO 3166-1 alpha-2. xs:string 1
code3 Трёхбуквенный код страны в соответствии со стандартом ISO 3166-1 alpha-3. xs:string 1

Описание возможных ошибок

Ошибка Описание
InternalServiceFault Внутренняя ошибка сервиса.
IncorrectRequestFault Некорректный запрос. Возникает, если запрос не соответствует требованиям указанным в xsd.
OffsetOutOfRangeFault Заданный в запросе отступ больше числа записей в результате запроса.

Пример запроса

Запрос первых трёх изменённых стран с 1.01.2013 по текущую дату

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions" 
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base">
  <soapenv:Header/>
  <soapenv:Body>
    <ws:getCountryChangesListRequest>
      <base:listOptions>
        <base:count>3</base:count>
        <base:offset>0</base:offset>
      </base:listOptions>
      <base:updateDateInterval>
        <base:beginDate>2013-01-01</base:beginDate>
        <base:endDate></base:endDate>
      </base:updateDateInterval>
    </ws:getCountryChangesListRequest>
  </soapenv:Body>
</soapenv:Envelope>


Ответ на запрос

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
  <SOAP-ENV:Body xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <ws:getCountryChangesListResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" 
                                      xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar" 
                                      xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions">
      <ikar:countryList count="3" total="6" offset="0">
        <ikar:country>
          <bs:uuid>8fc2b7bd-6d1c-4172-ae87-d27c69e5d9b9</bs:uuid>
          <bs:guid>cac8a802-3c65-397d-895d-c0495bf6ea61</bs:guid>
          <bs:active>true</bs:active>
          <bs:last>true</bs:last>
          <bs:status>200</bs:status>
          <bs:createDate>2013-11-01T11:37:11+04:00</bs:createDate>
          <bs:updateDate>2013-11-01T11:37:11+04:00</bs:updateDate>
          <bs:previous>91134526-4373-ec59-4a1e-e0e99bd50b7b</bs:previous>
          <ikar:name>Соединенные Штаты Америки</ikar:name>
          <ikar:fullName>Соединенные Штаты Америки</ikar:fullName>
          <ikar:englishName>United States</ikar:englishName>
          <ikar:code>US</ikar:code>
          <ikar:code3>USA</ikar:code3>
        </ikar:country>
        <ikar:country>
          <bs:uuid>91134526-4373-ec59-4a1e-e0e99bd50b7b</bs:uuid>
          <bs:guid>cac8a802-3c65-397d-895d-c0495bf6ea61</bs:guid>
          <bs:active>false</bs:active>
          <bs:last>false</bs:last>
          <bs:status>100</bs:status>
          <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
          <bs:updateDate>2013-11-01T11:37:11+04:00</bs:updateDate>
          <bs:next>8fc2b7bd-6d1c-4172-ae87-d27c69e5d9b9</bs:next>
          <ikar:name>Соединенные Штаты</ikar:name>
          <ikar:fullName>Соединенные Штаты Америки</ikar:fullName>
          <ikar:englishName>United States</ikar:englishName>
          <ikar:code>US</ikar:code>
          <ikar:code3>USA</ikar:code3>
        </ikar:country>
        <ikar:country>
          <bs:uuid>0337a6ef-12c6-432d-af81-34e8156467c4</bs:uuid>
          <bs:guid>d13b7f26-82b6-4591-c1de-eb19e75671ea</bs:guid>
          <bs:active>true</bs:active>
          <bs:last>true</bs:last>
          <bs:status>200</bs:status>
          <bs:createDate>2016-01-22T10:40:36+03:00</bs:createDate>
          <bs:updateDate>2016-01-22T10:40:36+03:00</bs:updateDate>
          <bs:previous>cf24604d-f6db-822c-203e-1ad25572e48b</bs:previous>
          <ikar:name>Киргизия</ikar:name>
          <ikar:fullName>Киргизская Республика</ikar:fullName>
          <ikar:englishName>Kyrgyzstan</ikar:englishName>
          <ikar:code>KG</ikar:code>
          <ikar:code3>KGZ</ikar:code3>
        </ikar:country>
      </ikar:countryList>
    </ws:getCountryChangesListResponse>
  </SOAP-ENV:Body>
</soapenv:Envelope>