GetProductByUuid v2.0: различия между версиями

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
(Новая страница: «==Общие сведения== Операция '''GetProductByUuid''' предназначена для получения записи продукции по…»)
 
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
==Общие сведения==
==Общие сведения==


Операция '''GetProductByUuid''' предназначена для получения записи продукции по идентификатору версии записи.Уникальный идентификатор версии записи продукции содержится в ветеринарных сертификатах. Выполнение операции заканчивается либо возвратом записи той версии, которая значится под указанным UUID, то есть запись может быть не последней и/или не актуальной  (active=false, last=false), либо ошибкой, в случае если параметры запроса не корректны, если запись по запросу не найдена или произошла иная ошибка выполнения запроса.
Операция '''GetProductByUuid''' предназначена для получения записи продукции (2 уровень иерархического справочника) по идентификатору версии записи. Выполнение операции заканчивается либо возвратом записи той версии, которая значится под указанным UUID, то есть запись может быть не последней и/или не актуальной  (active=false, last=false), либо ошибкой, в случае если параметры запроса не корректны, если запись по запросу не найдена или произошла иная ошибка выполнения запроса.
 
<!--===Используемые пространства имён и типы===
===Используемые пространства имён и типы===
{{столбцы}}
{{столбцы}}
{{столбец}}
{{столбец}}
Строка 16: Строка 15:
* [[NameSpaces#http://api.vetrf.ru/schema/cdm/base|bs]] (<nowiki>http://api.vetrf.ru/schema/cdm/base</nowiki>)
* [[NameSpaces#http://api.vetrf.ru/schema/cdm/base|bs]] (<nowiki>http://api.vetrf.ru/schema/cdm/base</nowiki>)
** [[UUID|bs:UUID]]
** [[UUID|bs:UUID]]
{{столбцы/конец}}
{{столбцы/конец}}-->


===[[#Объект getProductByUuidRequest|Входные данные]]===
===Входные данные===
* уникальный идентификатор версии записи продукции.
* уникальный идентификатор версии записи продукции.


===[[#Объект getProductByUuidResponse |Выходные данные]]===
===Выходные данные===
* данные о продукции.
* данные о продукции.


==Данные запроса==
==Спецификация запроса==
{| class="wikitable"
! #
! Название XML-элемента
! Тип
! Обязат.
! Описание (нажмите [...] для отображения дополнительного описания)
|-
|001
|style="font-weight: ; font-family: Courier;" |{{color|#190dbf|'''<ws:getProductByUuidRequest>'''}}
|
|
| style="width:52em;"|
|-
|002
|style="font-weight: ; font-family: Courier;" |···{{color|#190dbf|'''<{{color|#660e7a|bs:}}uuid>'''}}{{color|#131313|UUID}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}uuid>'''}}
|[[UUID|bs:UUID]]
|[1..1]
|<div class="mw-collapsible mw-collapsed" data-expandtext="&nbsp;...&nbsp;" data-collapsetext="свернуть" style="font-weight: bold; width:52em;">
<span style="white-space:nowrap; font-weight: normal;">Идентификатор версии продукции.</span>
<div class="mw-collapsible-content" style="font-weight: normal;">
* второй уровень иерархического справочника продукции ИС Меркурий</div>
</div>
|-
|003
|style="font-weight: ; font-family: Courier;" |{{color|#190dbf|'''</ws:getProductByUuidRequest>'''}}
|
|
| style="width:52em;"|
|-
|}


<!--<div class="toccolours mw-collapsible mw-collapsed" style="width:100%">
==Спецификация ответа==
Структура данных запроса в формате ХML.
{| class="wikitable"
<div class = "mw-collapsible-content">
! #
<syntaxhighlight lang="xml">
! Название XML-элемента
<ws:getProductByGuidRequest>
! Тип
        <base:uuid>{base:guid}</base:uuid>
! Обязат.
      </ws:getProductByGuidRequest>
! Описание (нажмите [...] для отображения дополнительного описания)
</syntaxhighlight>
|-
|001
|style="font-weight: ; font-family: Courier;" |{{color|#190dbf|'''<ws:getProductByUuidResponse>'''}}
|
|
| style="width:52em;"|
|-
|002
|style="font-weight: ; font-family: Courier;" |···{{color|#190dbf|'''<{{color|#660e7a|dt:}}product>'''}}
|[[Product_v2.0|dt:Product]]
|[1..1]
|<div class="mw-collapsible mw-collapsed" data-expandtext="&nbsp;...&nbsp;" data-collapsetext="свернуть" style="font-weight: bold; width:52em;">
<span style="white-space:nowrap; font-weight: normal;">Продукция.</span>
<div class="mw-collapsible-content" style="font-weight: normal;">
* второй уровень иерархического справочника продукции ИС Меркурий</div>
</div>
|-
|003
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}uuid>'''}}{{color|#131313|UUID}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}uuid>'''}}
|[[UUID|bs:UUID]]
|[1..1]
| style="width:52em;"| Идентификатор версии продукции.
|-
|004
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}guid>'''}}{{color|#131313|GUID}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}guid>'''}}
|[[UUID|bs:UUID]]
|[1..1]
| style="width:52em;"| Глобальный идентификатор продукции.
|-
|005
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}active>'''}}{{color|#131313|true}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}active>'''}}
|[http://www.w3.org/TR/xmlschema-2/#boolean xs:boolean]
|[1..1]
|<div class="mw-collapsible mw-collapsed" data-expandtext="&nbsp;...&nbsp;" data-collapsetext="свернуть" style="font-weight: bold; width:52em;">
<span style="white-space:nowrap; font-weight: normal;">Описывает, является  ли запись активной.</span>
<div class="mw-collapsible-content" style="font-weight: normal;">
* true - запись активна;
* false - запись не активна.</div>
</div>
|-
|006
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}last>'''}}{{color|#131313|true}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}last>'''}}
|[http://www.w3.org/TR/xmlschema-2/#boolean xs:boolean]
|[1..1]
|<div class="mw-collapsible mw-collapsed" data-expandtext="&nbsp;...&nbsp;" data-collapsetext="свернуть" style="font-weight: bold; width:52em;">
<span style="white-space:nowrap; font-weight: normal;">Описывает, является ли версия записи последней.</span>
<div class="mw-collapsible-content" style="font-weight: normal;">
* true - да;
* false - нет.
</div>
</div>
</div>
</div>
-->
===Объект getProductByUuidRequest===
Корневой элемент запроса.
{| class="wikitable"
|-
|-
! Поле !! Описание !! Тип данных !! Обязательность
|007
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}status>'''}}{{color|#131313|100}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}status>'''}}
|[[VersionStatus|bs:VersionStatus]]
|[1..1]
| style="width:52em;"| Статус версии записи.
|-
|008
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}createDate>'''}}{{color|#131313|2017-07-07T12:00:00}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}createDate>'''}}
|[http://www.w3.org/TR/xmlschema-2/#DateTime xs:DateTime]
|[1..1]
| style="width:52em;"| Дата создания записи.
|-
|009
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}updateDate>'''}}{{color|#131313|2017-07-07T12:00:00}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}updateDate>'''}}
|[http://www.w3.org/TR/xmlschema-2/#DateTime xs:DateTime]
|[1..1]
| style="width:52em;"| Дата изменения записи.
|-
|010
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}previous>'''}}{{color|#131313|UUID}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}previous>'''}}
|[[UUID|bs:UUID]]
|[0..1]
| style="width:52em;"| Идентификатор предыдущей версии записи.
|-
|011
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|bs:}}next>'''}}{{color|#131313|UUID}}{{color|#190dbf|'''</{{color|#660e7a|bs:}}next>'''}}
|[[UUID|bs:UUID]]
|[0..1]
| style="width:52em;"| Идентификатор следующей версии записи.
|-
|012
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|dt:}}name>'''}}{{color|#131313|готовые мясные продукты}}{{color|#190dbf|'''</{{color|#660e7a|dt:}}name>'''}}
|[[String255|bs:String255]]
|[1..1]
| style="width:52em;"| Название продукции.
|-
|013
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|dt:}}code>'''}}{{color|#131313|0210, 1601, 1602}}{{color|#190dbf|'''</{{color|#660e7a|dt:}}code>'''}}
|[[String255|bs:String255]]
|[1..1]
| style="width:52em;"| Код ТН ВЭД продукции.
|-
|-
| '''UUID''' || Уникальный идентификатор версии записи продукции в реестре Россельхознадзора. || [[UUID|bs:UUID]] || 1
|014
|}
|style="font-weight: ; font-family: Courier;" |······{{color|#190dbf|'''<{{color|#660e7a|dt:}}productType>'''}}{{color|#131313|5}}{{color|#190dbf|'''</{{color|#660e7a|dt:}}productType>'''}}
 
|[[ProductType_v2.0|dt:ProductType]]
==Данные ответа==
|[1..1]
 
|<div class="mw-collapsible mw-collapsed" data-expandtext="&nbsp;...&nbsp;" data-collapsetext="свернуть" style="font-weight: bold; width:52em;">
<!--- div class="toccolours mw-collapsible mw-collapsed" style="width:100%">
<span style="white-space:nowrap; font-weight: normal;">Тип продукции.
Структура данных ответа в формате ХML.
</span>
<div class = "mw-collapsible-content">
<div class="mw-collapsible-content" style="font-weight: normal;">
<syntaxhighlight lang="xml">
* первый уровень иерархического справочника продукции ИС Меркурий</div>
<ws:getProductByUuidResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlns:pro="http://api.vetrf.ru/schema/cdm/argus/production" xmlns:ws="http://api.vetrf.ru/schema/cdm/argus/production/ws-definitions">
        <pro:product>
            <bs:uuid>{bs:UUID}</bs:uuid>
            <bs:guid>{bs:UUID}</bs:guid>
            <bs:active>{xs:boolean}</bs:active>
            <bs:last>{xs:boolean}</bs:last>
            <bs:status>{bs:VersionStatus}</bs:status>
            <bs:createDate>{xs:dateTime}</bs:createDate>
            <bs:updateDate>{xs:dateTime}</bs:updateDate>
            <pro:name>{bs:String255}</pro:name>
            <pro:code>{bs:String255}</pro:code>
            <pro:productType>{prod:ProductType}</pro:productType>
        </pro:product>
      </ws:getProductByGuidResponse>
</syntaxhighlight>
</div>
</div>
</div> -->
===Объект getProductByUuidResponse===
Корневой объект ответа. Содержит информацию о запрашиваемой продукции.
{| class="wikitable"
|-
|-
! Поле !! Описание !! Тип данных !! Обязательность
|015
|style="font-weight: ; font-family: Courier;" |···{{color|#190dbf|'''</{{color|#660e7a|dt:}}product>'''}}
|
|
| style="width:52em;"|
|-
|016
|style="font-weight: ; font-family: Courier;" |{{color|#190dbf|'''</ws:getProductByUuidResponse>'''}}
|
|
| style="width:52em;"|
|-
|-
| [[#Объект ..Response/product|'''product''']] || Объект, содержащий сведения о продукции. || [[Product|prod:Product]] || 1
|}
|}
===Объект [[#Объект getProductByUuidResponse|..Response]]/'''product'''===
Объект содержит свойства возвращаемой продукции.
{{Ветис.API ProductService Product|1}}


==Описание ошибок==
==Описание ошибок==
Строка 106: Строка 198:
<div class = "mw-collapsible-content">
<div class = "mw-collapsible-content">
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
<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">
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/argus/production/ws-definitions"  
  <soapenv:Header/>
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base">
  <soapenv:Body>
  <soapenv:Header/>
      <ws:getProductByUuidRequest>
  <soapenv:Body>
        <bs:uuid>b1253a77-0585-291f-57a4-53319e897866</bs:uuid>
    <ws:getSubProductByUuidRequest>
      </ws:getProductByUuidRequest>
      <base:uuid>3008afa9-8a88-8586-5f75-08ce43189ac8</base:uuid>
  </soapenv:Body>
    </ws:getSubProductByUuidRequest>
  </soapenv:Body>
</soapenv:Envelope>
</soapenv:Envelope>
</syntaxhighlight>
</syntaxhighlight>
Строка 125: Строка 215:
<syntaxhighlight lang="xml">
<syntaxhighlight lang="xml">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <S:Body xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <ws:getProductByUuidResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base"  
      <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">
                                xmlns:pro="http://api.vetrf.ru/schema/cdm/argus/production"  
        <dt:product>
                                xmlns:ws="http://api.vetrf.ru/schema/cdm/argus/production/ws-definitions">
            <bs:uuid>b1253a77-0585-291f-57a4-53319e897866</bs:uuid>
      <pro:product>
            <bs:guid>362aa885-9b9f-ae95-05d0-f9570f4fbdc6</bs:guid>
        <bs:uuid>3008afa9-8a88-8586-5f75-08ce43189ac8</bs:uuid>
            <bs:active>true</bs:active>
        <bs:guid>e9fa27c7-c0e0-2f64-308c-c6409de238ae</bs:guid>
            <bs:last>true</bs:last>
        <bs:active>true</bs:active>
            <bs:status>100</bs:status>
        <bs:last>true</bs:last>
            <bs:createDate>2011-05-23T10:25:38+04:00</bs:createDate>
        <bs:status>100</bs:status>
            <bs:updateDate>2011-05-23T10:25:38+04:00</bs:updateDate>
        <bs:createDate>2011-05-23T10:35:08+03:00</bs:createDate>
            <dt:name>говядина</dt:name>
        <bs:updateDate>2011-05-23T10:35:08+03:00</bs:updateDate>
            <dt:code>0201, 0202, 0206, 0210</dt:code>
        <pro:name>готовые мясные продукты</pro:name>
            <dt:productType>1</dt:productType>
        <pro:code>0210, 1601, 1602</pro:code>
        </dt:product>
        <pro:productType>5</pro:productType>
      </v2:getProductByUuidResponse>
      </pro:product>
  </soap:Body>
    </ws:getProductByUuidResponse>
  </S:Body>
</soapenv:Envelope>
</soapenv:Envelope>
</syntaxhighlight>
</syntaxhighlight>

Текущая версия на 15:48, 27 сентября 2020

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

Операция 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>