Подсистема обработки заявок в Ветис.API
Общие сведения
В целях обеспечения эффективного информационного обмена между внешними информационными системами и ГИС «Ветис» взаимодействие организуется через универсальный шлюз Ветис.API с использованием единой системы обработки заявок. Единая система обработки заявок создана с целью объединить в одном месте приём и обработку заявок на выполнение операции в информационных системах Россельхознадзора, таких как Меркурий, Аргус, Цербер и др.
Информационный обмен реализован по асинхронной схеме. Для данной схемы действуют следующие правила:
- Взаимодействие реализуется посредством запросов ИС Предприятий к заявочной системе. ГИС «Ветис» не может выступать в роли инициатора запроса к системе предприятия. Передача информации из ГИС «Ветис» осуществляется в виде ответа на запрос от ИС предприятия.
- Любая операция в рамках информационного взаимодействия с ГИС «Ветис» представляет собой заявку на осуществление некоторых действий. Заявка от ИС Предприятия попадает в заявочную систему, где обрабатывается. Заявка проходит форматно-логический контроль, регистрацию и ей присваивается уникальный идентификатор. Сервис позволяет отслеживать состояние данной заявки и получать результат выполнения операции.
- Любой запрос в рамках информационного взаимодействия через универсальный шлюз "Ветис.API" должен содержать идентификационные данные хозяйствующего субъекта, производственной площадки, на которой осуществляется бизнес-операция, а также персональные аутентификационные данные сотрудника организации в ИС «Меркурий», осуществляющего действия в ИС предприятия, инициирующие операции по информационному обмену. Таким образом, важным условием осуществления информационного взаимодействия является предварительная регистрация хозяйствующего субъекта, его производственной площадки и ответственных лиц в ИС «Меркурий».
Доступ к сервису ограничивается с помощью ключей доступа к API (APIKey). Ключи доступа предоставляются в результате прохождения процедуры регистрации программного средства в качестве клиента сервиса заявочной системе.
Операция Applying предназначена для подачи заявки на выполнение операции к универсальному шлюзу "Ветис.API". На вход системы, в зависимости от сценария, передаются следующие сведения:
Для получения результата обработки заявки необходимо запросить результат по идентификатору заявки.
Возможные сценарии
При обработке запроса возможны следующие сценарии.
2.1 Запрос успешно обработан.
2.1.1 Заявка требует обработки.
2.1.2 Результат сформирован в рамках запроса(cтатус заявки-completed).
2.2 Произошла ошибка при обработке запроса.
2.2.1 Некорректный запрос.
2.2.2 Запрос не прошёл проверку на бизнес-правила.
2.2.3 Внутренняя ошибка системы.
Используемые пространства имён и типы
|
Отправка заявки
Данные запроса
Структура данных запроса в формате ХML.
<ws:submitApplicationRequest>
<ws:apiKey>{app:APIKey}</ws:apiKey>
<app:application>
<app:serviceId>{xs:NCName}</app:serviceId>
<app:issuerId>{bs:UUID}</app:issuerId>
<app:issueDate>{xs:dateTime}</app:issueDate>
<app:data>
<…>
</app:data>
</app:application>
</ws:submitApplicationRequest>
Объект submitApplicationRequest
Заявка в единой заявочной системе на выполнение определенной операции, определяет пользователя, который инициирует запрос и содержит сведения самого запроса.
Поле | Описание | Тип | Обязательность |
---|---|---|---|
apiKey | Специальный код, который идентифицирует учетную запись пользователя и позволяет веб-сервису получить доступ к информации о хозяйствующем субъекте и обслуживаемых предприятиях, к которым данный пользователь относится. | app:APIKey | 1 |
application | Сведения о заявке. | app:application | 1 |
Объект application
Сведения о заявке.
Поле | Описание | Тип | Обязательность |
---|---|---|---|
serviceId | Код запрашиваемого сервиса (системы, к которой обращается пользователь). | xs:NCName | 1 |
issuerId | Идентификатор пользователя, обратившегося к заявочной системе. | bs:UUID | 1 |
issueDate | Дата обращения пользователя к заявочной системе. | xs:dateTime | 1 |
data | Сведения о заявке. | app:ApplicationDataWrapper | 1 |
Данные ответа
Структура данных запроса в формате ХML.
<submitApplicationResponse xmlns="http://api.vetrf.ru/schema/cdm/application/ws-definitions">
<application xmlns="http://api.vetrf.ru/schema/cdm/application">
<applicationId>{bs:UUID}</applicationId>
<status>{app:ApplicationStatus}</status>
<serviceId>{xs:NCName}</serviceId>
<issuerId>{bs:UUID}</issuerId>
<issueDate>{xs:dateTime}</issueDate>
<rcvDate>{xs:dateTime}</rcvDate>
</application>
</submitApplicationResponse>
Объект submitApplicationResponse
Заявка в заявочной системе, определяет пользователя, который инициирует запрос и содержит сведения самого запроса.
Поле | Описание | Тип | Обязательность |
---|---|---|---|
application | Сведения о заявке. | app:Application | 1 |
Объект application
Поле | Описание | Тип | Обязательность |
---|---|---|---|
applicationId | Сгенерированный идентификатор заявки. | bs:UUID | 1 |
status | Статус готовности результата. | app:ApplicationStatus | 1 |
serviceId | Код запрашиваемого сервиса (системы, к которой обращается пользователь). | xs:NCName | 1 |
issuerId | Идентификатор пользователя, обратившегося к заявочной системе. | bs:UUID | 1 |
issueDate | Дата и время получения заявки сервисом. | xs:dateTime | 1 |
rcvDate | Дата и время формирования результата. | xs:dateTime | 1 |
Запрос результата обработки заявки
Данные запроса
Структура данных запроса в формате ХML.
<ws:receiveApplicationResultRequest>
<ws:apiKey>{xs:string}</ws:apiKey>
<ws:issuerId>{bs:UUID}</ws:issuerId>
<ws:applicationId>{bs:UUID}</ws:applicationId>
</ws:receiveApplicationResultRequest>
Объект receiveApplicationResultRequest
Запрос на получение результатов обработки заявки.
Поле | Описание | Тип | Обязательность |
---|---|---|---|
apiKey | Специальный код, который идентифицирует учетную запись пользователя и позволяет веб-сервису получить доступ к информации о хозяйствующем субъекте и обслуживаемых предприятиях, к которым данный пользователь относится. | xs:string | 1 |
issuerId | Идентификатор пользователя, обратившегося к заявочной системе. | bs:UUID | 1 |
applicationId | Идентификатор заявки, в заявочной системе. | bs:UUID | 1 |
Данные ответа
Структура данных ответа в формате ХML.
<receiveApplicationResultResponse xmlns="http://api.vetrf.ru/schema/cdm/application/ws-definitions">
<application xmlns="http://api.vetrf.ru/schema/cdm/application">
<applicationId>{bs:UUID}</applicationId>
<status>{app:ApplicationStatus}</status>
<serviceId>{xs:NCName}</serviceId>
<issuerId>{bs:UUID}</issuerId>
<issueDate>{xs:dateTime}</issueDate>
<rcvDate>{xs:dateTime}</rcvDate>
<prdcRsltDate>{xs:dateTime}</prdcRsltDate>
<result>
<...>
</result>
</application>
</receiveApplicationResultResponse>
Объект receiveApplicationResultResponse
Получение результатов обработки заявки.
Поле | Описание | Тип | Обязательность |
---|---|---|---|
application | Сведения о заявке. | app:Application | 1 |
Объект application
Поле | Описание | Тип | Обязательность |
---|---|---|---|
applicationId | Сгенерированный идентификатор заявки. | bs:UUID | 1 |
status | Статус готовности результата. | app:ApplicationStatus | 1 |
serviceId | Код запрашиваемого сервиса (системы, к которой обращается пользователь). | xs:NCName | 1 |
issuerId | Идентификатор пользователя, обратившегося к заявочной системе. | bs:UUID | 1 |
issueDate | Дата и время получения заявки сервисом. | xs:dateTime | 1 |
rcvDate | Дата и время формирования результата. | xs:dateTime | 1 |
prdcRsltDate | Дата и время получения результата выполнения заявки. | xs:dateTime | 1 |
result | Результат выполнения заявки. | app:ApplicationResultWrapper | 1 |