0

我正在实施 FHIR 服务器,由于某些不可避免的原因,我无法访问医生的日程安排,但是,我可以访问可用于预约的时段。

我可以使用 4 个参数获取插槽

  1. 医生编号
  2. 组织编号
  3. 位置 ID
  4. 插槽日期

下面将被视为使用 FHIR 的有效槽查询:

http://localhost:8080/context/fhir/Slot?practitioner=Practitioner/123456789&organization=Organization/1234&location=Location/2&start=2016-07-25

此外,在对上述查询的响应中,由于对 Schedule 的引用是绝对必要的(Slot 有 card=1..1 用于 Schedule 参考),我可以将参考值传递为:

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

在插槽响应?

4

2 回答 2

1

不幸的是,现在,您确实必须公开一个时间表,但没有任何理由必须是“真实的”。我们目前实现 Slot 搜索的方式是公开一个虚拟 Schedule,其中唯一的数据元素是到 actor 的链接。例如:

<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>

我们的 Slot 搜索最终看起来像这样(为了简洁明了,特别是围绕 slottype 进行了一些编辑):

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,并且我们为 Schedule 包含多个链式搜索参数。由于 Slot.schedule 是 1:1,因此我们还使用扩展来发回与插槽关联的患者、从业者和位置。然而,这种“故意滥用”是我发现的最佳选择,而不是强迫客户端成为调度系统并处理为每个资源排列插槽。

FHIR gforge 中有一些跟踪器项目(99899208)关于更新 Slot 以对“简单客户”更友好。我们将不胜感激您的意见:)。

于 2016-08-08T18:03:05.050 回答
0

我可能在这里遗漏了一些东西,但不确定您如何定义时段和时间表之间的区别?

调度资源只是定义了一个时间段内可能存在时隙,以及其他资源。它不定义或公开在此期间可能存在的约会。

如您所暗示的,槽搜索参数未定义任何搜索参数。这些都在它链接的计划资源上。

从业者、位置和患者都可以有自己的时间表/时间段,因此它取决于定义复杂性的系统。一些系统决定他们只关心练习者(他们有自己的房间),其他系统只关心房间,稍后会分配练习者。

根据我对您的想法的理解(在实践管理系统前创建 FHIR 外观),我认为您需要公开以下资源:

  • 从业者:暴露从业者的详细信息(如果您的从业者可以在多个地点工作,有兴趣)
  • 时间表:为了简单地显示您接受约会的日期范围(并且将定义空位可用性)并且从业者链接到此资源,如果他们在多个地点工作,您将为从业者工作的每个地点提供其中一个. (如果位置资源有自己的时间表,则需要进一步考虑,以及可用时隙的协商在哪里完成)
  • 时隙:定义可以安排约会的可用时隙。(注意:这些不是约会)
  • 约会:接收创建的约会(如果您无权访问日程,不确定如何处理)
  • 患者:假设您想将患者分配到预约中;)

如果这一切都有意义并且您澄清了您的环境,我将提出您需要处理的可能查询。

这是一个很好的问题,患者管理部门正计划编写一些实施指南,以在各种环境(全科、住院、门诊、社区、实验室等)中实施此功能

于 2016-07-31T00:34:30.413 回答