医院信息平台接口规范新奥博为技术有限公司20一五-04更改页表单流程:①项目负责人编制→②立项部门审核→③上一级部门批准→④研发中心存档本表单为一份,由研发中心留存目录1 文档说明 (5)2 引用标准 (5)3 接口方式 (5)3.1 WS消息方式 (6)3.2 业务协同与数据交换流程 (7)3.3 安全访问机制 (8)4 平台服务接口 (8)4.1 获取令牌服务接口 (8)4.1.1 接口说明 (8)4.1.2 场景说明 (9)4.1.3 调用地址 (9)4.1.4 WS接口定义 (9)4.2 消息发布服务接口 (11)4.2.1 接口说明 (11)4.2.2 场景说明 (11)4.2.3 调用地址 (12)4.2.4 WS接口定义 (12)4.3 业务交换服务接口 (14)4.3.1 接口说明 (14)4.3.2 场景说明 (14)4.3.3 调用地址 (15)4.3.4 WS接口定义 (15)5 业务交换服务 (17)5.1 业务交互服务概述 (17)5.2 基础交换服务(A) (17)5.2.1 消息订阅服务(A00) (17)5.2.2 患者服务(A01) (19)5.2.3 医疗卫生人员服务(A02) (19)5.2.4 医疗卫生机构(科室)服务(A03) (35)5.2.5 术语和字典服务(A04) (40)5.3 临床业务交换服务(B) (42)5.4 医院管理交换服务(C) (57)6 服务异常编码 (65)1文档说明本文档定义了医院信息平台(后续简称平台)和院内业务系统(HIS、LIS、PACS、EMR)的接口方式、接口规范。
2引用标准✓基于电子病历的医院信息平台建设技术解决方案(1.0 版)2011-03;✓河南省数字化医院建设指南(2014版)2014-05;✓《电子病历基本架构与数据标准(试行)》,2009-12;✓《基于电子病历的医院信息平台技术规范》,2014-10-01✓《电子病历基本数据集》,2014-5-30;✓河南省基于健康档案的卫生信息平台接口库说明(医疗服务V1.7.1)试行✓河南省基于健康档案的卫生信息平台接口库说明(卫生资源V1.0.1)试行3接口方式医院信息集成平台业务协同与数据交换采用SOA架构设计,需要ESB企业总线支持实现医院业务系统业务协同和数据的交换。
数据交换总线功能主要包括:SOA支持,遵循SOA设计原则和技术标准,提供松耦合模式,实现业务逻辑和应用逻辑、数据逻辑等分离;智能路由支持,采用灵活的消息路由方式,支持基于消息内容的处理和路由;XML支持,支持标准XML数据的格式转换,可以通过图形化映射组件、XSLT、客户化Java程序等多种方式实现转换功能;消息发布/订阅功能,支持队列和主题两种订阅模式;3.1WS消息方式Web service是一个跨语言的,松耦合、平台独立的、基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
医院信息平台定义的WS消息交换接口满足SOAP 1.1 SOAP 1.2、WSDL1.1 WSDL2.0标准规范。
WS接口定义说明性描述主要由以下几部分组成:✓接口说明:定义和说明接口的作用和适用范围✓场景说明:定义和描述WS服务接口的调用和使用场景、说明业务处理流程;✓服务地址:描述WS服务的调用URL地址;✓请求数据结构:定义和描述WS服务的请求数据结构和参数说明;✓响应数据结构:定义和描述WS服务的响应数据结构和参数说明;3.2 业务协同与数据交换流程医院信息平台交换方式(即时模式)系统B (如HIS )医院信息平台系统A (如LIS )阶段订阅化验申请单消息接收消息订阅并存储1发送化验申请单信息接收化验申请单信息并存储化验单申请消息发布接收化验单申请消息获取化验申请单信息查询化验单申请信息返回化验单申请信息后续业务处理2345678说明:1、业务系统A (入LIS )订阅相关业务消息,医院信息平台接收消息订阅,并存储订阅信息;2、业务系统B (如HIS )处理业务过程中生成业务关键数据(如医生工作站生成实验室化验申请单),然后业务系统B 生成业务关键数据后,把业务关键数据调用医院信息平台相关接口发送到医院信息平台。
3、医院信息平台接收业务系统B 发送的关键业务数据(实验室化验单申请),将数据存储入医院信息平台数据中心,同时将新增或更新业务关键数据的信息生成消息(实验室化验申请单消息)通知推送给已经订阅了相关内容消息的业务系统A(如LIS)4、业务系统A (LIS )接收通知消息,消息内容中包括消息关联业务数据ID (实验室化验申请单ID)、消息类型(实验室化验申请单类型消息)、获取业务数据所需要的服务接口地址、获取业务数据所需要的服务编码(实验室化验申请单查询服务编码);5、业务系统A(LIS)根据消息内容调用消息中包含的服务接口地址,调用相关接口服务(实验室化验申请单查询服务)获取指定ID业务数据;6、医院信息平台根据业务系统A(LIS)传递的服务编码和业务数据ID,从医院信息平台数据中心获取指定数据;7、医院信息平台将查询到的业务数据封装为标准接口数据结构(XML)结构数据,返回业务系统A(LIS);8、业务系统A(LIS)获取指定业务数据后进行后续业务处理。
3.3安全访问机制满足数字化医院信息安全要求,建立健全的信息安全保障体系是保障院内系统安全的基础。
可靠有效的安全访问机制,是保证医院信息平台接口库和各业务系统WS服务的安全,通过身份验证防止非法用户、匿名用户和恶意用户的非法访问。
WS接口方式安全访问机制依赖医院信息平台的令牌动态口令算法,平台定义令牌加密算法,每次产生的令牌在设置时间内是有效的,超过令牌的有效期这个令牌就失效了,必须重新产生一个令牌。
4平台服务接口4.1获取令牌服务接口4.1.1接口说明医院信息平台在每次调用接口时需要带上accessToken参数,accessToken参数由systemCode和systemPassword换取。
systemCode是第三方系统编码,每个第三方应用系统拥有一个唯一的systemCode,systemPassword是系统凭证密码。
医院信息平台系统管理员可以通过管理端的权限分配给第三方系统一个唯一的systemPassword。
当第三方系统调用医院信息平台接口时,医院信息平台会根据此次访问的accessToken,校验访问的合法权限以返回相应的结果。
accessToken令牌有时效性,医院信息平台默认设置为7200秒,平台管理员可以通过系统参数修改时效参数。
如果第三方系统调用本接口时accessToken未过期,医院信息平台会自动延长accessToken到期时间。
如果调用本接口时accessToken过期,则医院信息平台会生成新的accessToken令牌并返回。
4.1.2场景说明第三方系统调用医院信息平台业务交换服务接口前,先需要通过本接口获取accessToken,然后使用accessToken再调用平台其他业务服务接口。
4.1.3调用地址xip:port//hipService/GetTokenPort4.1.4WS接口定义WSDL文档:<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions xmlns:wsdl="/wsdl/"xmlns:soap="/wsdl/soap/" xmlns:http="/wsdl/http/"xmlns:xs="/2001/XMLSchema" xmlns:soapenc="/soap/encoding/" xmlns:mime="/wsdl/mime/" xmlns:xsi="/2001/XMLSchema-instance" xmlns:tns="http:/xxinbohitx" targetNamespace="http:/xxinbohitx"><wsdl:types><xs:schema targetNamespace="xxxinbohitx" elementFormDefault="qualified"/> </wsdl:types><wsdl:message name="GetTokenRequest"><wsdl:part name="requestId" type="xs:string"/><wsdl:part name="requestIP" type="xs:string"/><wsdl:part name="systemCode" type="xs:string"/><wsdl:part name="systemPassword" type="xs:string"/></wsdl:message><wsdl:message name="GetTokenResponse"><wsdl:part name="requestId" type="xs:string"/><wsdl:part name="msgCode" type="xs:string"/><wsdl:part name="msgDesc" type="xs:string"/><wsdl:part name="accessToken" type="xs:string"/></wsdl:message><wsdl:portType name="GetTokenPortType"><wsdl:operation name="getToken"><wsdl:input message="tns:GetTokenRequest"/><wsdl:output message="tns:GetTokenResponse"/></wsdl:operation></wsdl:portType><wsdl:binding name="GetTokenBinding" type="tns:GetTokenPortType"><soap:binding style="document" transport="/soap/http"/><wsdl:operation name="getToken"><soap:operation soapAction="xxxinbohitx/services" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="GetTokenService"><wsdl:port name="GetTokenPort" binding="tns:GetTokenBinding"><soap:address location="xip:port/hipService/GetTokenService"/></wsdl:port></wsdl:service></wsdl:definitions>参数说明4.2消息发布服务接口4.2.1接口说明本接口主要提供消息通知服务,当医院信息平台数据中心相关业务数据发生变化,本接口会生成相关消息,然后推送到已经订阅了本消息的三方系统。