1. Общее описание

Сервис Формирования документов предназначен для обеспечения возможности формирования документов, в формате XML и PDF, на основе предварительно подготовленных pebble-шаблонов, с возможностью добавления к сформированным документам электронной подписи.

Сервис Формирования документов предназначен для решения следующих задач:

  • формировать документ, на основе поступившего в Витрину запроса, в формате:

    • XML;

    • PDF.

  • отправлять сформированные документы на подпись в Сервис электронной подписи (например, КриптоПро).

  • отправлять сформированные и подписанные документы в ПОДД в виде ответа на пришедший запрос.

Формат обмена электронными сообщениями описан в разделе Спецификация модуля «Сервис Формирования документов».

1.1. Общая схема взаимодействия модуля «Сервис Формирования документов»

Общая схема взаимодействия модуля «Сервис Формирования документов»

Рисунок - 1.1 Общая схема взаимодействия модуля «Сервис Формирования документов»

1.2. Процесс обработки запроса через модуль «Сервис Формирования документов»

  1. Запрос на предоставление сформированного документа поступает через Агента ПОДД, в топик report.rq (название топика может быть изменено на этапе внедрения).

  2. ПОДД-адаптер считывает запрос из топика и передает его в Сервис Формирования документов. Сервис Формирования документов запускает соответствующий пришедшему типу документа pebble-шаблон, собирает данные из Витрины (Prostore) и формирует на основании этих данных JSON-файл.

  3. Из содержащейся в JSON-файле информации формируется итоговая форма документа. Для этого используется pebble-шаблон для XML или PDF, предназначенный для генерации документов (см. Pebble-шаблон для формирования XML-документа) и Pebble-шаблон для формирования PDF-документа.

  4. В случае, если электронная подпись не требуется, то PDF-документ сразу пересылается в топик report.rs Kafka ПОДД-адаптера.

  5. Если требуется электронная подпись:

  • PDF-документ и публичная часть SSH-ключа (pub) будут отправлены в Сервис электронной подписи. Сервис электронной подписи сформирует для этого PDF-документа файл подписи (p7s) и вернет его в Сервис Формирования документов.

  • Полученный XML или PDF-файл Сервис Формирования документов отправляет в ПОДД-адаптер, в топик report.rs Kafka ПОДД-адаптер.

  1. Агент ПОДД проверяет топик и забирает сформированные документы для передачи в ПОДД.

Внимание

Следует обратить внимание, что при формировании XML-документов используется - присоединенная подпись (подпись содержится в самом XML-документе). Для PDF-документов - отсоединенная подпись (подпись документа формируется отдельным файлом), т.е. при формировании PDF-документа сгенерируется два файла: PDF-документ и файл электронной подписи для этого документа.