Войти

Рекомендации по разработке вида сведений для приема заявлений с ЕПГУ

Блок бизнес-данных сообщения

Блок бизнес-данных (MessagePrimaryContent) для сообщений типа «Запрос» (Request) должен состоять из следующих частей — вариантов запроса, разделённых с помощью «choice»:

  • передача заявления — обязательно
  • запрос на отмену заявления — опционально
  • передача текстового сообщения — опционально

Пример фрагмента xsd-схемы для для сообщений типа «Запрос» (Request):

Блок бизнес-данных (MessagePrimaryContent) для сообщений типа «Ответ» (Response) должен состоять из следующих частей — вариантов ответа, разделённых с помощью «choice»:

  • ответ на заявление — обязательно
  • ответ на запрос отмены заявления — опционально
  • ответ на передачу текстового сообщения — опционально

Пример фрагмента xsd-схемы для для сообщений типа «Ответ» (Response):

Варианты запросов на отмену заявления и на передачу текстового сообщения включаются в блок бизнес-данных (MessagePrimaryContent), если соответствующая функциональность будет реализована хотя бы для одной из услуг, использующих этот вид сведений

В целях тестирования в состав корневого элемента запроса добавлен атрибут «envType», который определяет среду ЕПГУ. Значение атрибута необходимо использовать при запросе к ВС «Универсальный вид сведений для приёма событий электронного заявления на портале государственных услуг (функций)». Данный атрибут необязательный и добавляется в случае, если требуется для ИС Ведомства

Ведомство должно формировать собственное значение targetNamespace для вида сведений в соответствии с МР СМЭВ

Передача заявления и ответ на заявление

Для корректного приёма заявлений с ЕПГУ, запрос на передачу заявления в блоке бизнес-данных (MessagePrimaryContent) должен содержать следующие служебные элементы:

  • номер заявления на ЕПГУ (orderId) — обязательно
  • код ведомства (Department) — опционально
  • код услуги (ServiceCode) — обязательно
  • код цели (TargetCode) — обязательно
  • дата заявления на ЕПГУ (StatementDate) — обязательно
  • id пользователя в ЕСИА (userId) — опционально

Пример фрагмента xsd-схемы для Подачи заявления:

Ответ на заявление в блоке бизнес-данных (MessagePrimaryContent) должен содержать следующие элементы:

  • номер заявления на ЕПГУ (orderId)
  • код статуса (statusCode)
  • комментарий к статусу (comment)

В качестве кода статуса может передавать технологический код статуса ЕПГУ (techCode) или ведомственный код статуса (orgCode)

Комментарий к статусу (comment) является необязательным элементом и не может содержать более 3000 символов

Пример фрагмента xsd-схемы для Ответа на заявление:

Запрос и ответ на отмену заявления

Запрос на отмену заявления в блоке бизнес-данных (MessagePrimaryContent) должен содержать следующие элементы:

  • номер заявления на ЕПГУ (orderId)
  • причина отмены (reason)

Причина отмены (reason) является необязательным элементом и не может содержать более 3000 симоволов

Пример фрагмента xsd-схемы для Запроса на отмену заявления:

Ответ на отмену заявления в блоке бизнес-данных (MessagePrimaryContent) должен содержать следующие элементы:

  • номер заявления на ЕПГУ (orderId)
  • результат (result)
  • комментарий (comment)

В элементе «Результат» (result) можно возвращать следующие значения:

  • «CANCELLED» соответствует статусу «Заявление отменено», код статуса «10»
  • «IN_PROGRESS» соответствует статусу «Заявление отменяется», код статуса «9»
  • «REJECTED» соответствует статусу «Не удалось отменить заявление», код статуса «11»
  • комментарий (comment) является необязательным элементом и не может содержать более 3000 симоволов

Пример фрагмента xsd-схемы для Ответа на отмену заявления:

Запрос и ответ на передачу текстового сообщения

Запрос на передачу текстового сообщения в блоке бизнес-данных (MessagePrimaryContent) должен содержать следующие элементы:

  • номер заявления на ЕПГУ (orderId)
  • текстовое сообщение (text)

Текстовое сообщение (text) не может содержать более 3000 симоволов

Пример фрагмента xsd-схемы для Запроса на передачу текстового сообщения:

Ответ на передачу текстового сообщения в блоке бизнес-данных (MessagePrimaryContent) содержит следующие элементы:

  • номер заявления на ЕПГУ (orderId)
  • результат (result)

В элементе «Результат» (result) можно возвращать только значение «OK»

Пример фрагмента xsd-схемы для Ответа на передачу текстового сообщения:

Передачу текстового сообщения по заявлению ОИВ осуществляет через «Универсальный вид сведений для приёма событий электронного заявления на портале государственных услуг (функций)» аналогично отправке промежуточных статусов по заявлению. Для корректного приёма передачи текстового сообщения по заявлению в ЛК ЕПГУ, запрос должен содержать следующие служебные элементы:

  • номер заявления в ЛК ЕПГУ (orderId) — обязательно
  • дата и время передачи сообщения (eventDate) — опционально
  • текстовое сообщение (eventComment) — опционально в ВС, но для переписки - обязательно
  • ФИО сотрудника ОИВ (eventAuthor) — опционально
  • дата и время передачи сообщения (eventDate) — опционально
  • блок события (event) с типом события (textMessageEvent) — обязательно

Примеры 

Пример схемы вида сведений, содержащего блоки передачи заявления, отмены и переписки:

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

 xmlns:tns="http://foiv.ru/service1/3.1.0

targetNamespace="http://foiv.ru/service1/3.1.0" elementFormDefault="qualified" attributeFormDefault="unqualified">

       <xs:element name="FormDataRequest" type="tns:FormDataRequestType">

             <xs:annotation>

                    <xs:documentation>Запрос вида сведений</xs:documentation>

             </xs:annotation>

       </xs:element>

       <xs:element name="FormDataResponse" type="tns:FormDataResponseType">

             <xs:annotation>

                    <xs:documentation>Запрос вида сведений</xs:documentation>

             </xs:annotation>

       </xs:element>

       <xs:complexType name="dataRequestType">

             <xs:annotation>

                    <xs:documentation>Подача заявления</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="xs:long"/>

                    <xs:element name="Department" type="tns:string-20"/>

                    <xs:element name="ServiceCode" type="tns:string-20"/>

                    <xs:element name="TargetCode" type="tns:string-20"/>

                    <xs:element name="StatementDate" type="xs:date"/>

             </xs:sequence>

       </xs:complexType>

       <xs:complexType name="FormDataRequestType">

             <xs:annotation>

                    <xs:documentation>Передача заявления или запроса на отмену заявления или текстового сообщения от заявителя в ведомство</xs:documentation>

             </xs:annotation>

             <xs:choice>

                    <xs:element name="dataRequest" type="tns:dataRequestType"/>

                    <xs:element name="cancelRequest" type="tns:cancelRequestType"/>

                    <xs:element name="textRequest" type="tns:textRequestType"/>

             </xs:choice>

             <xs:attribute name="env" type="tns:envType" use="required"/>

       </xs:complexType>

       <xs:complexType name="cancelRequestType">

             <xs:annotation>

                    <xs:documentation>Запрос на отмену заявления</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="xs:long"/>

                    <xs:element name="reason" type="tns:string-3000" minOccurs="0"/>

             </xs:sequence>

       </xs:complexType>

       <xs:complexType name="textRequestType">

             <xs:annotation>

                    <xs:documentation>Текстовое сообщение от заявителя в ведомство</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="xs:long"/>

                    <xs:element name="text" type="tns:string-3000"/>

             </xs:sequence>

       </xs:complexType>

       <xs:complexType name="orderIdType">

             <xs:sequence>

                    <xs:annotation>

                          <xs:documentation>Номер заявки в ЛК ЕПГУ</xs:documentation>

                    </xs:annotation>

                    <xs:element name="pguId" type="xs:long"/>

             </xs:sequence>

       </xs:complexType>

       <xs:complexType name="statusCodeType">

             <xs:annotation>

                    <xs:documentation>Новый статус заявления</xs:documentation>

             </xs:annotation>

             <xs:choice>

                    <xs:element name="techCode" type="xs:byte">

                          <xs:annotation>

                                 <xs:documentation>Код статуса ЕПГУ</xs:documentation>

                          </xs:annotation>

                    </xs:element>

                    <xs:element name="orgCode" type="xs:byte">

                          <xs:annotation>

                                 <xs:documentation>Код ведомственного статуса</xs:documentation>

                          </xs:annotation>

                    </xs:element>

             </xs:choice>

       </xs:complexType>

       <xs:complexType name="changeOrderInfoType">

             <xs:annotation>

                    <xs:documentation>Информация для изменения статуса заявления в ЛК ЕПГУ</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="tns:orderIdType"/>

                    <xs:element name="statusCode" type="tns:statusCodeType"/>

                    <xs:element name="comment" type="tns:string-3000" minOccurs="0"/>

             </xs:sequence>

       </xs:complexType>

       <xs:simpleType name="CancelResponseResultType">

             <xs:annotation>

                    <xs:documentation>Результат передачи запроса на отмену заявления</xs:documentation>

             </xs:annotation>

             <xs:restriction base="xs:string">

                    <xs:enumeration value="CANCELLED"/>

                    <xs:enumeration value="IN_PROGRESS"/>

                    <xs:enumeration value="REJECTED"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:complexType name="cancelResponseType">

             <xs:annotation>

                    <xs:documentation>Ответ на запрос отмены заявления</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="xs:long"/>

                    <xs:element name="result" type="tns:CancelResponseResultType"/>

                    <xs:element name="comment" type="tns:string-3000" minOccurs="0"/>

             </xs:sequence>

       </xs:complexType>

       <xs:simpleType name="TextResponseResultType">

             <xs:annotation>

                    <xs:documentation>Результат передачи текстового сообщения</xs:documentation>

             </xs:annotation>

             <xs:restriction base="xs:string">

                    <xs:enumeration value="OK"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:complexType name="textResponseType">

             <xs:annotation>

                    <xs:documentation>Ответ на текстовое сообщение от заявителя в ведомство</xs:documentation>

             </xs:annotation>

             <xs:sequence>

                    <xs:element name="orderId" type="xs:long"/>

                    <xs:element name="result" type="tns:TextResponseResultType"/>

             </xs:sequence>

       </xs:complexType>

       <xs:complexType name="FormDataResponseType">

             <xs:annotation>

                    <xs:documentation>Ответ на подачу заявлени или запроса на отмену заявления или текстового сообщения от заявителя в ведомство</xs:documentation>

             </xs:annotation>

             <xs:choice>

                    <xs:element name="changeOrderInfo" type="tns:changeOrderInfoType"/>

                    <xs:element name="cancelResponse" type="tns:cancelResponseType"/>

                    <xs:element name="textResponse" type="tns:textResponseType"/>

             </xs:choice>

       </xs:complexType>

       <xs:simpleType name="envType">

             <xs:restriction base="tns:string-20"/>

       </xs:simpleType>

       <xs:simpleType name="stringNN-11">

             <xs:restriction base="xs:normalizedString">

                    <xs:minLength value="1"/>

                    <xs:maxLength value="11"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:simpleType name="string-3000">

             <xs:restriction base="xs:string">

                    <xs:maxLength value="3000"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:simpleType name="string-20">

             <xs:restriction base="xs:string">

                    <xs:maxLength value="20"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:simpleType name="string-50">

             <xs:restriction base="xs:string">

                    <xs:maxLength value="50"/>

             </xs:restriction>

       </xs:simpleType>

       <xs:simpleType name="string-500">

             <xs:restriction base="xs:string">

                    <xs:maxLength value="500"/>

              </xs:restriction>

       </xs:simpleType>

</xs:schema>

Пример xml-запроса (подача заявления):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataRequest xmlns:tns="http://foiv.ru/service1/3.1.0" env="SVCDEV">

       <tns:dataRequest>

             <tns:orderId>123123123</tns:orderId>

             <tns:Department>10001</tns:Department>

             <tns:ServiceCode>-600000001</tns:ServiceCode>

             <tns:TargetCode>600000001</tns:TargetCode>

             <tns:StatementDate>2022-08-10</tns:StatementDate>

       </tns:dataRequest>

</tns:FormDataRequest>

Пример xml-ответа (ответ на заявление):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataResponse xmlns:tns="http://foiv.ru/service1/3.1.0">

       <tns:changeOrderInfo>

             <tns:orderId>123123123</tns:orderId>

             <tns:statusCode>

                    <tns:techCode>3</tns:techCode>

             </tns:statusCode>

             <tns:comment>Услуга оказана</tns:comment>

       </tns:changeOrderInfo>

</tns:FormDataResponse>

Пример xml-запроса (отмена заявления):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataRequest env="SVCDEV">

<tns:cancelRequest>

       <tns:orderId>123123123</tns:orderId>

       <tns:reason>Cancel User</tns:reason>

</tns:cancelRequest>

</tns:FormDataRequest>

Пример xml-ответа (ответ на отмену заявления):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataResponse xmlns:tns="http://foiv.ru/service1/3.1.0">

       <tns:cancelResponse>

             <tns:orderId>123123123</tns:orderId>

             <tns:result>CANCELLED</tns:result>

       </tns:cancelResponse>

</tns:FormDataResponse>

Пример xml-запроса (передачу текстового сообщения):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataRequest env="SVCDEV">

<tns:textRequest>

       <tns:orderId>123123123</tns:orderId>

       <tns:text>Мое заявление на Петрова пришло к вам?</tns:text>

</tns:textRequest>

</tns:FormDataRequest>

Пример xml-ответа (ответ на отмену заявления):

<?xml version="1.0" encoding="UTF-8"?>

<tns:FormDataResponse xmlns:tns="http://foiv.ru/service1/3.1.0">

<tns:textResponse>

       <tns:orderId>123123123</tns:orderId>

       <tns:result>OK</tns:result>

</tns:textResponse>

</tns:FormDataResponse>

Авторизуйтесь, чтобы оставить комментарий к статье