Справочно-информационный портал

© Группа компаний ХОСТ, www.hostco.ru, 2015-2017

Инструменты пользователя

Инструменты сайта


remd:info

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

remd:info [2022/06/10 18:11] (текущий)
Системный администратор создано
Строка 1: Строка 1:
 +====== Описание сервисов РЭМД ======
 +~~TOC:2-4 ~~
 +[[{}:​remd|← Назад]]
 +
 +==== 1. EMDS-SERVICE ====
 +Сервис осуществляет прием и валидацию запросов от МИС по rest- протоколу. ​
 +Если запрос был успешно обработан и принят,​ появляется запись в таблице med_docs, затем сервис осуществляет постановку документов в очередь на отправку в ФРЭМД (таблица emdfr_send_task) в соответствии с правилами,​ прописанными в таблице ref_emdfr_send_rule. ​
 +Если запрос не прошел валидацию,​ запись появляется в таблице med_docs_reg_flk. ​
 +
 +Методы сервиса:​
 +  * POST/​documents – публикация документа;​
 +  * GET/​documents/​ – поиск метаданных ЭМД по параметрам;​
 +Параметры поиска,​ используемые в данном методе:​
 +^ Параметр ​          ^ Назначение ​                                                                                ^
 +| X-medOrgOid ​       | Организация,​ от имени которой выполняется запрос ​                                          |
 +| creationDate ​      | Дата создания документа внутри организации или ее подразделения ​                           |
 +| creationDateTime ​  | Дата и время создания документа внутри организации или ее подразделения ​                   |
 +| creationDateBegin ​ | Дата и время начала периода создания документа внутри организации или ее подразделения ​    |
 +| creationDateEnd ​   | Дата и время окончания периода создания документа внутри организации или ее подразделения ​ |
 +| registerDateBegin ​ | Дата и время начала периода регистрации документа в ФРЭМД ​                                 |
 +| registerDateEnd ​   | Дата и время окончания периода регистрации документа в ФРЭМД ​                              |
 +| documentNumber ​    | Регистрационный номер документа внутри организации или подразделения ​                      |
 +| emdrId ​            | Реестровый номер документа в ФРЭМД ​                                                        |
 +| kind               | Код вида документа ​                                                                        |
 +| localUid ​          | Уникальный идентификатор документа в РЭМД в формате UUID                                   |
 +| organization ​      | Код мед. организации,​ подписью которой подписан документ ​                                  |
 +| patientLocalId ​    | Идентификатор пациента в МИС ​                                                              |
 +| patientSnils ​      | СНИЛС пациента ​                                                                            |
 +| pageNumber ​        | Номер страницы с результатами поиска (0 - первая страница) ​                                |
 +| pageSize ​          | Количество записей на странице с результатами (1 - одна запись на странице) ​               |
 +| searchInFremd ​     | Признак необходимости поиска в ФРЭМД ​                                                      |
 +| securityToken ​     | Токен безопасности МО                                                                      |
 +
 +
 +  * GET/​documents/​{uid}/​signed-content,​ где uid – localUid документа. Метод получения подписанного ЭМД;
 +
 +  * GET/​documents /​{messageId}/​{emdrId}/​demand-content,​ где messageId - идентификатор запроса,​ emdrId – регистрационный номер документа во ФРЭМД. Метод для запроса файла ЭМД, зарегистрированного в сторонней ИС через ФРЭМД; так же необходимо указывать параметр SendAdress (коллбэк МИСа) в заголовке запроса
 +
 +  * GET/​documents/​metadata?​{emdrId}&​{grantingEmdrId},​ где emdrId – регистрационный номер документа во ФРЭМД, grantingEmdrId - идентификатор документа,​ к которому ИС имеет доступ,​ связанного с запрашиваемым. Указывается в том случае,​ когда нет явного разрешения на получение документа,​ но есть разрешение на связанный. Метод получения метаописания ЭМД в РЭМД.
 +
 +  * GET/​documents/​{uid}/​xsl-content,​ где uid – localUid документа. Метод находит в хранилище документов РРЭМД тело документа (xml) с указанным uid, осуществляет xsl-преобразование и отдает документ,​ полученный путем xslt-преобразования из xml (hl7) в html или pdf, в виде строки,​ закодированной в base64.
 +  ​
 +Параметры,​ используемые в данном методе:​
 +^ Параметр ​          ^ Назначение ​ ^
 +| docType| Формат документа (pdf\html) |
 +| stamp       | Проставление печати в документе pdf (true\false) |
 +
 +  * GET/​documents/​{uid}/​associations,​ где uid – localUid документа. Метод возвращает метаданные связанного документа из блока associations:​ смотрит какой emdrId стоит в блоке associations и ищет по этому emdrId документ в med_docs (associations -> '​targetDocument'​ ->> '​emdrId'​). ​
 +
 +
 +==== 2. EMDS-SOAP-SERVICE ====
 +Сервис осуществляет прием запросов от МИС по soap – формату,​ затем преобразует полученный запрос в rest формат и отправляет его в сервис EMDS-SERVICE по rest – протоколу. ​
 +Принимает запрос getDocumentFile от сервиса EMDS-SERVICE и направляет его в МИС, полученный ответ транслирует обратно. ​
 +
 +==== 3. EMDS-OUTBOUND-SCHEDULER ====
 +Сервис проверяет таблицу emdfr_send_task на наличие записей,​ где is_done != true, осуществляет пакетную отправку запросов на регистрацию ЭМД в сервис взаимодействия с ФРЭМД - emdr.
 +
 +Так же сервис осуществляет повторную отправку ЭМД, ранее отправленных на регистрацию во ФРЭМД и вернувшихся с ошибкой,​ согласно перечню ошибок в таблице emds.ref_error_resending и настройке частоты отправки в параметре конфига сервиса - emdfr.resending.cron.expression
 +
 +==== 4. EMDR ====
 +=== Сервис осуществляет:​ ===
 +  - Прием пакетов запросов от emds-outbound-scheduler,​
 +  - На основе полученных данных формирует запрос RegisterDocument в формате xml, 
 +  - Осуществляет проверку сформированного запроса на валидность xsd схеме, ​
 +  - Осуществляет заполнение заголовка и подписание (используется подпись МИАЦ/​Деп. здрав.) SOAP запроса,​ в котором осуществляется передача сведений с использованием сертификата системы.
 +  - Отправляет запрос во ФРЭМД,
 +  - Получает синхронные и асинхронные ответы от ФРЭМД,
 +  - Осуществляет прием запросов от ФРЭМД.
 +
 +=== Методы сервиса:​ ===
 +  * registerDocument – регистрация документа во ФРЭМД;
 +  * searchRegistryItem - поиск записей в федеральном реестре сведений об ЭМД;
 +  * getRegistryItem - запрос сведения о регистрации по номеру записи в федеральном реестре;​
 +  * demandContent - используется для запроса файла ЭМД, зарегистрированного предоставляющей ИС;
 +  * getMetadata - позволяет запросить метаописание ЭМД, зарегистрированного во ФРЭМД, по номеру записи в реестре.
 +
 +=== Методы колбек сервиса:​ ===
 +  * sendRegisterDocumentResult – используется для асинхронной передачи результатов регистрации сведений об ЭМД;
 +  * getDocumentFile – используется для запроса тела документа из архива ИС;
 +  * sendDocumentFile – используется для асинхронной передачи ЭМД, запрошенного из электронного архива предоставляющей ИС;
 +  * sendNotice – используется для уведомления ИС о регистрации в РЭМД сведений об ЭМД из других ИС, а также о создании другими ИС связей с документами ИС.
 +
 +=== 5. EMDS-NOTICE-SENDING ===
 +Сервис осуществляет отправку уведомлений в МИС/​РМИС о результатах обработки документа,​ отправленного во ФРЭМД.
 +=== Сервис направляет уведомления в результате следующих событий:​ ===
 +  * Документ успешно зарегистрирован во ФРЭМД;
 +  * Документ не зарегистрирован во ФРЭМД (от сервиса ФРЭМД получена ошибка);​
 +  * Возникла ошибка при передаче запроса в сервис ФРЭМД;
 +  * В РРЭМД появился связанный документ (сведения о результатах МСЭ).
 +Для отправки уведомлений в МИС в исходном запросе от МИС обязательно присутствие не пустого параметра messageId. ​
 +messageId – идентификатор запроса. ​
 +
 +==== 6. EMDS-UPDATE-SCHEDULER ====
 +Сервис в автоматическом режиме осуществляет запрос актуальных сведений по ЭМД, записи по которым имеются в таблице update_registry_item со значением в поле status = ‘1’, из ФРЭМД и вносит полученные от ФРЭМД данные в таблицу med_docs в поле emdr_metadata.
 +
 +==== 7. EMDS-IPRA-OUTBOUND-SCHEDULER ====
 +Сервис предназначен для передачи зарегистрированных во ФРЭМД направлений на МСЭ в подсистему ИПРА.
 +Все успешно зарегистрированные во ФРЭМД направления на МСЭ (kind.code = ‘34’) добавляются в таблицу очереди ipra_send_task,​ далее сервис проверяет данную таблицу на наличие записей,​ где is_done != true, после чего осуществляет пакетную отправку запросов в ИПРА. ​
 +Статус выгрузки документов в сервис ИПРА проставляется в поле status таблицы ipra_doc_upload_status.
 +
 +==== 8. EMDS-RIMS-SERVICE ====
 +В сервис emds-rims-service поступают данные подписанта из блока personal_signature,​ после чего он обращается в сервис РИМС (региональный индекс медицинских сотрудников) получая от него по СНИЛС подписанта + oid медицинской организации информацию по медицинскому сотруднику из ФРМО/​ФРМР,​ затем сверяет данные,​ полученные в запросе от emds-service и данные из РИМС сервиса. ​
 +Если данные совпадают – ФЛК пройдено,​ в противном случае в МИС вернется синхронная ошибка. ​
 +
 +==== 9. EMDS-REGIONAL-OUTBOUND-SCHEDULER ====
 +Сервис проверяет таблицу do_send_task на наличие записей,​ где is_done != true, осуществляет пакетную отправку запросов на регистрацию региональных ЭМД в сервис департамента образования.
 +
 +==== 10. EMDR-NOTICE-SCHEDULER ====
 +Сервис запрашивает документ (как правило документ вида “Сведения о результатах МСЭ”) из ФРЭМД на основе полученного уведомления от федерального сервиса методом notice_task.
 +
 +==== 11. EMDS-CLEAN-SCHEDULER ====
 +Сервис осуществляет удаление записей в таблице med_docs по заданным настройкам и расписанию,​ а также очистку истории хранения запросов к федеральному сервису.
 +По требованиям федерального РЭМД документы должны храниться 25 лет.
 +
  
remd/info.txt · Последние изменения: 2022/06/10 18:11 — Системный администратор