Метод получения документа для печати.

Входит в РЭМД Сервис регионального хранилища ЭМД.

Здесь публикуются последние версии спецификаций РЭМД Сервис регионального хранилища ЭМД. Спецификации для интеграций

Также доступна спецификация в формате OpenAPI(swagger) http://remd.emias.mosreg.ru/emds/rest/api/swagger-ui.html#/emds-controller

Базовый адрес(url) для Московской области http://remd.emias.mosreg.ru/

Запросы печати ЭМД из РЭМД

Существуют 2 формата ЭМД - PDF/A-1 и HL7 CDA R2
https://nsi.rosminzdrav.ru/#!/refbook/1.2.643.5.1.13.13.99.2.40/?version=1.2

Примеры разных документов:
1fce3354-6043-46bc-b635-d12e73b3084a - Протокол консультации (PDF/A-1)
390b9929-b8fd-4adc-8772-f85f0113cb13 - Справка об отсутствии контактов с инфекционными больными (CDA) Редакция 2

Для формата PDF/A-1 в РЭМД хранится файл pdf, который можно получить напрямую методом /signed-content, либо в методе /documents/{localUid} 
Для формата CDA в РЭМД хранится файл xml, для печати которого в формате PDF следует выполнять преобразование, поэтому нужно использовать использовать метод /xsl-content?docType=pdf&stamp=true

Определить формат ЭМД можно:

Запрос печати PDF/A-1 ЭМД

Адрес запроса

GET: {{url}}/emds/rest/api/v1/documents/{{emdGuid}}/signed-content

Параметры запроса

Параметр

Тип

Описание

По умолчанию

Обязательный

Комментарий

emdGuidpathИдентификатор ЭМД-+

Можно получить в методе Получение ЭМД и заявок на ЭМД по документу-основанию или Журнал заявок ЭМД. Получение журнала заявок на ЭМД. При получении ЭМД этими методами для печати доступны только документы со статусом от 06 - Отправлен и выше (06, 07, 08, 09, 10).

Также можно получить документ напрямую из РЭМД методом Получение документов пациента. Получение списка ЭМД из РЭМД. В качестве emdGuid используется localUid.

Ответ сервера

В случае успешного выполнения сервер вернет ответ в формате JSON со следующими данными:

ПолеТипОписание
docContent

Содержимое электронного документа

datastring

Содержимое электронного документа (файл формата PDF, в base64).

Для просмотра при тесте можно пользоваться онлайн форматером, например https://www.freeformatter.com/base64-encoder.html

checksuminteger

Контрольная сумма файла, вычисленная по алгоритму CRC32 (в десятичном представлении)

Другие поля из тела ответа в данной интеграции не интересны.

{
    "docContent": {
        "data": "JVBERi0xLjQNCiW0tba3DQolDQoxIDAgb2JqDQo8PA0K...",
        "checksum": 215542653
    }
}

Запрос печати CDA ЭМД

Адрес запроса

GET: {{url}}/emds/rest/api/v1/documents/{{emdGuid}}/xsl-content?docType=pdf&stamp=true

Параметры запроса

Параметр

Тип

Описание

По умолчанию

Обязательный

Комментарий

emdGuid
pathИдентификатор ЭМД-+

Можно получить в методе Получение ЭМД и заявок на ЭМД по документу-основанию или Журнал заявок ЭМД. Получение журнала заявок на ЭМД. При получении ЭМД этими методами для печати доступны только документы со статусом от 06 - Отправлен и выше (06, 07, 08, 09, 10).

Также можно получить документ напрямую из РЭМД методом Получение документов пациента. Получение списка ЭМД из РЭМД. В качестве emdGuid используется localUid.

docTypequeryТип документа-+Поддерживается только pdf и html
stampqueryОтображать штамп с информацией о подписи на документе--

Только для pdf

Для печати на РПГУ вывод штампа обязателен.

Ответ сервера

В случае успешного выполнения сервер вернет ответ в формате JSON со следующими данными:

ПолеТипОписание
datastring

Содержимое электронного документа (файл формата PDF, в base64).

Для просмотра при тесте можно пользоваться онлайн форматером, например https://www.freeformatter.com/base64-encoder.html

checksuminteger

Контрольная сумма файла, вычисленная по алгоритму CRC32 (в десятичном представлении)

docTypestring

Локальный идентификатор услуги относящийся к документу

{
    "data": "JVBERi0xLjcKJeLjz9MKNSAwIG9iago8PC9GaWx0ZXIvRmxhdGVEZWNvZ...",
    "checksum": 581198999,
    "docType": "pdf"
}

Возможные ошибки

Ошибки с кодом и сообщением перечислены в массиве errors тела ответа при неуспешном коде ответа 400, 404 или 500.

Код ответа сервераКод сообщенияСообщениеКомментарий
400E-0001Разрешенные типы документов - pdf и html



404E-0002Документ с идентификатором {emdGuid} не найден
400E-0003Значение параметра 'docType' должно быть заполнено
500-Непредвиденное сообщение ошибкиВозникает при непредвиденных ошибках сервера
{
    "status": "error",
    "result": null,
    "errors": [
        {
            "code": "E-0002",
            "message": "Документ с идентификатором localUid='b488a8b5-ad9d-459d-9a5a-61f487178245' не найден"
        }
    ],
    "page": null,
    "id": null,
    "messageId": null
}