$member-add操作用于 HealthLake - AWS HealthLake

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

$member-add操作用于 HealthLake

FHIR $member-add 操作将成员(患者)添加到群组资源,特别是成员归因列表。此操作是《 DaVinci 成员归因实施指南》的一部分,支持用于管理成员归因的对账流程。

操作终端节点

POST [base]/datastore/{datastoreId}/r4/Group/{groupId}/$member-add Content-Type: application/json

Parameters

该操作接受具有以下参数组合的 FHIR 参数资源:

参数选项

您可以使用以下参数组合之一:

选项 1:会员 ID + 提供商 NPI

memberId + providerNpi

memberId + providerNpi + attributionPeriod

选项 2:患者推荐+提供者参考

patientReference + providerReference

patientReference + providerReference + attributionPeriod

参数详情

会员 ID(可选)

要添加到群组的成员的标识符。

类型:标识符

系统:患者识别系统

{ "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }
ProviderNPI(可选)

归因提供商的国家提供商标识符 (NPI)。

类型:标识符

系统:http://terminology.hl7。 org/CodeSystem/NPI

{ "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }
患者参考(可选)

直接引用待添加的患者资源。

类型:参考

{ "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }
提供者引用(可选)

直接引用提供者资源。

类型:参考

{ "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }
归因周期(可选)

将患者归因于提供者的时间段。

类型:时期

{ "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } }

索取示例

使用会员 ID 和提供商 NPI

{ "resourceType": "Parameters", "parameter": [ { "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }, { "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

使用患者和提供者推荐信

{ "resourceType": "Parameters", "parameter": [ { "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }, { "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }

响应格式

成功添加响应

HTTP Status: 200 OK Content-Type: application/fhir+json { "resourceType": "OperationOutcome", "issue": [ { "severity": "success", "code": "informational", "details": { "text": "Member Patient/patient-new successfully added to the Member Attribution List." } } ] }

错误响应

请求语法无效

HTTP 状态:400 错误请求

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "invalid", "details": { "text": "Invalid parameter combination provided" } } ] }
未找到资源

HTTP 状态:404 未找到

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-found", "details": { "text": "Resource not found." } } ] }
版本冲突

HTTP 状态:409 冲突

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "conflict", "details": { "text": "Resource version conflict detected" } } ] }
归因状态无效

HTTP 状态:422 无法处理的实体

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "business-rule", "details": { "text": "Cannot add member to Attribution List with status 'final'. Status must be 'draft' or 'open'." } } ] }

商业规则

归因状态验证

只有当群组的归因状态为:时,才能执行该操作:

  • draft

  • open

当状态为时,不允许进行操作final

防止重复会员

系统会根据以下各项的唯一组合来防止添加重复成员:

  • 成员标识符

  • 付款人标识符

  • 保险标识符

承保期验证

提供attributionPeriod时,它必须在成员的保险期限范围内。该系统将:

  • 搜索会员的承保范围资源

  • 如果存在多个覆盖率,则使用最新的覆盖率(最高版本 ID)

  • 确认归因期限未超过保险期限

参考文献验证

当为同一个资源(患者或提供者)同时提供身份证和参考资料时,系统会验证它们是否对应于相同的资源。

如果为同一资源(患者或提供者)同时提供 ID 和 reference.identifier 字段,则会引发错误。

身份验证和授权

该操作需要 FHIR 上的 SMART 授权,以便:

  • 读取权限-用于验证患者、提供者和小组资源

  • 搜索权限-按标识符查找资源

  • 更新权限-修改群组资源

操作行为

资源更新
  • 更新群组资源版本 ID

  • 使用操作前的原始资源状态创建历史条目

  • 使用以下命令将成员信息添加到 Group.member 数组:

    • entity.reference 中的患者参考资料

    • 期间内的归因周期

    • 扩展字段中的覆盖范围和提供者信息

验证步骤
  • 参数验证-确保有效的参数组合

  • 资源存在-验证患者、提供者和小组资源的存在

  • 归因状态-确认群组状态允许修改

  • 重复检查-防止添加现有成员

  • 覆盖范围验证-确保归因期限在覆盖范围内

限制

  • 所有引用的资源必须存在于同一个数据存储中

  • 操作仅适用于成员归因列表组资源

  • 归因期限必须在覆盖范围内

  • 无法修改处于 “最终” 状态的群组