Метод импорта пакета медицинских данных о пациенте в ЦИСЗ в виде электронного документа является основным методом импорта (добавления) медицинской информации о пациенте в ЦИСЗ.
Программные интерфейсы ЦИСЗ защищены сервером авторизации с использованием технологии OAuth 2.0 (см. вкладку “Авторизация в ЦИСЗ”). При каждом вызове метода клиентское приложение (МИС) должно передавать токен доступа (токен медицинского работника) в заголовке запроса.
Последовательность действий для использования метода:
МИС ОЗ формирует пакет медицинской информации о пациенте в виде ресурса Bundle;
МИС ОЗ конвертирует ресурс Bundle в формат base64;
МИС ОЗ вызывает локальный метод КП ЕСИФЮЛ sign и предает в метод ресурс Bundle в формате base64;
Медицинский работник с помощью КП ЕСИФЮЛ подписывает Bundle, КП ЕСИФЮЛ возвращает в МИС ОЗ ответ в формате base64;
МИС ОЗ вызывает метод импорта пакета медицинских данных о пациенте в ЦИСЗ в виде электронного документа и в теле запроса передает подписанный ресурс Bundle, в заголовках запроса устанавливается тип передаваемого контента (content-type) в application/cms.
Примечания:
При импорте пакета медицинской информации о пациенте в поле Composition.author обязательно должен быть указан идентификатор авторизованного медицинского работника (идентификатор содержится в токене авторизации - поле practitioner_id);
При импорте пакета медицинской информации о пациенте в поле Composition.custodian обязательно должен быть указан идентификатор организации здравоохранения, в которой происходила авторизация медицинского работника (идентификатор содержится в токене авторизации – поле department_ids).
Для использования метода в процессе проектирования и разработки допускается передача пакета медицинских данных без подписи со стороны медицинского работника, для этого необходимо в заголовках запроса установить тип передаваемого контента(content-type) в application/json. Отличие основного метода импорта от служебного метода импорта заключается в том, что информация в основной метод импорта передается не в виде JSON, а в двоичном подписанном виде.
ЦИСЗ может принимать только ресурс Bundle, соответствующий профилю MedicationDocument, при этом:
• входящие FHIR-профили должны соответствовать профилям ЦИСЗ;
• используемые справочные данные должны соответствовать значениям справочников ЦИСЗ.
В случае, если входящий пакет медицинских данных является валидным, то возвращается ресурс Parameters. В противном случае возвращается ресурс OperationOutcome с HTTP статусом 400 (BadRequest)
Ресурс Parameters состоит из следующих параметров:
Название
Описание
ProcessingStatus
Статус обработки добавления пакета медицинских данных. При успешном выполнении операции будет иметь значение Pending
Идентификатор ресурса, по которому можно получить статус операции, проводящейся с данным ресурсом
ResourceType
Тип ресурса
Метод возвращает:
HTTP статус 202 (Accepted): валидация входящего пакета медицинских данных на соответствие профилю пакета медицинских данных прошла успешно, запрос на импорт пакета принят в обработку, но обработка запроса еще не завершена;
HTTP статус серии 4xx: операция импорта не выполнена. К сбою операции импорта могут привести ошибки в контенте (например, неверный набор символов, неверный JSON
и т. д.).
В случае успешного выполнения проверки метод возвращает НТТР статус операции импорта и набор параметров, по которым в последующем можно запросить в ЦИСЗ добавленный пакет медицинских данных.
Пример запроса на импорт пакета медицинских данных о пациенте в ЦИСЗ: