FHIR Поиск слотов

Я внедряю сервер FHIR и по какой-то неустранимой причине у меня нет доступа к расписанию врача, однако у меня есть доступ к слотам, доступным для бронирования по назначению.

Я могу получить слоты из 4 параметров, используя

  1. идентификатор врача
  2. идентификатор организации
  3. идентификатор местоположения
  4. дата слота

Ниже будет рассматриваться как действительный запрос слота с использованием FHIR:

HTTP: // локальный: 8080 / контекст / fhir / Slot Практикующий = Практикующий / 123456789 и организация = Организация / 1234 и местоположение = Расположение / 2 & Start = 2016-07-25

Кроме того, в ответе на вышеуказанный запрос, поскольку ссылка на Расписание является абсолютно необходимой (слот имеет карту =1..1 для ссылки на Расписание), я могу передать значение ссылки как что-то вроде:

"schedule": {
    "reference": "Schedule/notrequired"
  }

в ответ слот?

2 ответа

К сожалению, прямо сейчас вам нужно раскрыть Расписание, но нет никаких причин, по которым оно должно быть "реальным". В настоящее время мы реализовали поиск по слотам, выставив фиктивное расписание с единственным элементом данных, который является ссылкой на актера. Например:

<Schedule xmlns="http://hl7.org/fhir">
<id value="1234" />
<actor>
    <display value="Cooper Thompson, MD" />
    <reference value="http://host/api/FHIR/DSTU2/Practitioner/1234" />
</actor>

Наш поиск слотов в итоге выглядит следующим образом (с некоторыми правками для краткости и ясности, особенно вокруг типа слота):

http://host/api/FHIR/DSTU2/Slot?Schedule.actor:Practitioner=1234&Schedule.actor:Patient=5678&slottype=urn:oid:1.2.3|Cardiology&start=2016-07-21

Обратите внимание, что это технически недопустимо, так как слот может иметь только одно расписание, и мы включаем несколько связанных параметров поиска для расписания. Мы также используем расширения для отправки обратно пациенту, практикующему врачу и местоположению, связанному со слотом, так как Slot.schedule - 1:1. Однако это "преднамеренное неправильное использование" - лучший вариант, который я нашел, не заставляя клиента становиться системой планирования и иметь дело с выравниванием слотов для каждого ресурса.

В gforge FHIR есть несколько элементов отслеживания ( 9989, 9208) о внесении обновлений в слот, чтобы быть более дружественными к "простым клиентам". Мы будем благодарны за ваш вклад:).

Я мог бы что-то здесь упустить, но не уверен, как вы определяете разницу между временем и расписанием?

Ресурс "Расписание" просто определяет период времени, в течение которого могут существовать временные интервалы, и для которого другой ресурс. Он не определяет и не раскрывает встречи, которые могут существовать в течение этого времени.

Параметры поиска слотов не определяют параметры поиска, как вы предполагали. Это все из ресурса расписания, с которого он ссылается.

Практик, местоположение и пациент могут иметь свое расписание / слоты, и, таким образом, это зависит от системы, в которой определяется сложность. Некоторые системы решают, что они будут беспокоиться только о практикующих (у которых есть своя комната), другие беспокоятся только о комнате и будут распределять практикующих позже.

Исходя из моего понимания того, что, по моему мнению, вы пытаетесь сделать (создавая фасад FHIR перед системой управления практикой), я думаю, что вам нужно будет предоставить следующие ресурсы:

  • Практикующий: раскрыть подробности практикующего (интересно, могут ли ваши практикующие работать в разных местах)
  • Расписание. Чтобы просто указать диапазон дат, в который вы принимаете встречи (и у вас будет определена доступность слотов), и практикующий будет связан с этим ресурсом, если они работают в нескольких местах, у вас будет один из них для каждого местоположения, в котором работает практикующий врач., (Если ресурсы местоположения имеют свое собственное расписание, то необходимо будет дополнительно его рассмотреть, и где будет выполнено согласование доступных слотов)
  • Слот: для определения доступных слотов, в которые могут быть назначены встречи. (примечание: это не встречи)
  • Назначение: для получения созданных назначений (не знаю, как вы собираетесь это делать, если у вас нет доступа к расписанию)
  • Пациент: Предполагая, что вы хотите назначить пациентов на приемы;)

Если все это имеет смысл, и вы проясните свое окружение, я добавлю вероятные запросы, которые вам нужно будет обработать.

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

Другие вопросы по тегам