GetProductByUuid v2.0

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску

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

Операция GetProductByUuid предназначена для получения записи продукции (2 уровень иерархического справочника) по идентификатору версии записи. Выполнение операции заканчивается либо возвратом записи той версии, которая значится под указанным UUID, то есть запись может быть не последней и/или не актуальной (active=false, last=false), либо ошибкой, в случае если параметры запроса не корректны, если запись по запросу не найдена или произошла иная ошибка выполнения запроса.

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

  • уникальный идентификатор версии записи продукции.

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

  • данные о продукции.

Спецификация запроса

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getProductByUuidRequest>
002 ···<bs:uuid>UUID</bs:uuid> bs:UUID [1..1]

Идентификатор версии продукции.

  • второй уровень иерархического справочника продукции ИС Меркурий
003 </ws:getProductByUuidRequest>

Спецификация ответа

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getProductByUuidResponse>
002 ···<dt:product> dt:Product [1..1]

Продукция.

  • второй уровень иерархического справочника продукции ИС Меркурий
003 ······<bs:uuid>UUID</bs:uuid> bs:UUID [1..1] Идентификатор версии продукции.
004 ······<bs:guid>GUID</bs:guid> bs:UUID [1..1] Глобальный идентификатор продукции.
005 ······<bs:active>true</bs:active> xs:boolean [1..1]

Описывает, является ли запись активной.

  • true - запись активна;
  • false - запись не активна.
006 ······<bs:last>true</bs:last> xs:boolean [1..1]

Описывает, является ли версия записи последней.

  • true - да;
  • false - нет.
007 ······<bs:status>100</bs:status> bs:VersionStatus [1..1] Статус версии записи.
008 ······<bs:createDate>2017-07-07T12:00:00</bs:createDate> xs:DateTime [1..1] Дата создания записи.
009 ······<bs:updateDate>2017-07-07T12:00:00</bs:updateDate> xs:DateTime [1..1] Дата изменения записи.
010 ······<bs:previous>UUID</bs:previous> bs:UUID [0..1] Идентификатор предыдущей версии записи.
011 ······<bs:next>UUID</bs:next> bs:UUID [0..1] Идентификатор следующей версии записи.
012 ······<dt:name>готовые мясные продукты</dt:name> bs:String255 [1..1] Название продукции.
013 ······<dt:code>0210, 1601, 1602</dt:code> bs:String255 [1..1] Код ТН ВЭД продукции.
014 ······<dt:productType>5</dt:productType> dt:ProductType [1..1]

Тип продукции.

  • первый уровень иерархического справочника продукции ИС Меркурий
015 ···</dt:product>
016 </ws:getProductByUuidResponse>

Описание ошибок

Ошибка Описание
InternalServiceFault Внутренняя ошибка сервиса.
IncorrectRequestFault Некорректный запрос. Происходит в случае, если запрос не соответствует требованиям указанным в xsd, то есть сообщение не проходит валидацию.
EntityNotFoundFault Объект с заданными параметрами не найден в базе.

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

Запрос на получение данных о продукции "Готовые мясные продукты".

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://api.vetrf.ru/schema/cdm/registry/ws-definitions/v2" xmlns:bs="http://api.vetrf.ru/schema/cdm/base">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:getProductByUuidRequest>
         <bs:uuid>b1253a77-0585-291f-57a4-53319e897866</bs:uuid>
      </ws:getProductByUuidRequest>
   </soapenv:Body>
</soapenv:Envelope>


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

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <v2:getProductByUuidResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlns:dt="http://api.vetrf.ru/schema/cdm/dictionary/v2" xmlns:v2="http://api.vetrf.ru/schema/cdm/registry/ws-definitions/v2">
         <dt:product>
            <bs:uuid>b1253a77-0585-291f-57a4-53319e897866</bs:uuid>
            <bs:guid>362aa885-9b9f-ae95-05d0-f9570f4fbdc6</bs:guid>
            <bs:active>true</bs:active>
            <bs:last>true</bs:last>
            <bs:status>100</bs:status>
            <bs:createDate>2011-05-23T10:25:38+04:00</bs:createDate>
            <bs:updateDate>2011-05-23T10:25:38+04:00</bs:updateDate>
            <dt:name>говядина</dt:name>
            <dt:code>0201, 0202, 0206, 0210</dt:code>
            <dt:productType>1</dt:productType>
         </dt:product>
      </v2:getProductByUuidResponse>
   </soap:Body>
</soapenv:Envelope>