上海申腾信息技术有限公司 张 余 姬江涛 唐 凯
随着社会的发展,社区卫生服务的包含范围从以前单纯的面对面的医疗服务发展出了目前社区未病保障为主看病治疗为辅的医疗模式。这样一来如何提高医师社区保障效率成为一个重点,同时,医师资源的匮乏以及社区患者医疗意识的提高成为一对难以解决的矛盾。如何有效的提高社区医师为社区患者服务的效率成了关键。
社区卫生服务中心的主要移动医疗业务有家庭病床和慢性病随访,家庭病床业务是将病情稳定的患者转移到家中进行医疗和康复,慢性病随访业务是定期上门检查患者病情及进行健康指导。目前在业务开展过程中主要存在以下问题:第一,业务流程没有规范化;第二,业务数据没有标准化;第三,业务数据缺乏实时交互性。
(1)业务工作流程规范化
需要根据上海市地方标准《家庭病床服务规范》(沪卫基层〔2010〕018号)的规定结合实际,本系统设计了完整的规范化家庭病床业务操作流程,明确各阶段涉及的人员角色、主要工作及相关数据的交换方式。
(2)业务数据集标准化
需要根据电子病历《电子病历临床文档数据组与数据元》和《健康档案公用数据元标准》,对病史卡和随访表中的数据项进一步拆分。为医护人员的记入数据提供了标准化的格式,也方便后台分门别类的存储数据、检索数据。
(3)业务数据实时交互性
需要使用移动通信系统解决“移动办公”问题,使医护人员能在现场开展工作的同时录入完整数据,并避免“二次记录”。利用移动通信技术,现场数据通过无线网络实时与后台进行交换,使后台系统能及时获得现场数据,也使现场医护人员能及时获得后台的数据支持。
(4)数据形式的多样性
需要能够展示和记录多样化数据的移动通信系统,解决除文字以外的图像、音频、视频等数据的展示和采集。使医护人员在现场能够查阅到多样化的病患信息,帮助诊疗更充分;同时也丰富了医护人员现场记录数据的手段。
(5)数据录入方式智能化
需要标准化的记入系统,减少医护人员在记录病历上的工作量,也为记入的内容提供标准化的格式。综合《电子病历临床文档数据组与数据元》和《健康档案公用数据元标准》中规定数据元值域代码表,需要以下几种数据录入方式:
①以选择项的方式录入数据。
②以联想输入的方式录入整段描述性文字。
本系统借助移动计算和无线通信技术,为社区医院和社区居民搭建一个医疗服务系统,为社区医护人员提供标准化的移动办公业务,提高医疗工作效率;为社区患者提供多样化的移动医疗服务,节省诊疗时间和成本。
通过社区移动医疗系统与区级医疗平台对接,一方面,充分利用区级医疗平台的整合数据,促成区级医疗平台与社区移动医疗平台“面点”结合,形成医疗信息跨区、跨院联动;另一方面,社区移动医疗平台通过数据上传,使区级医疗平台数据更充分完整。
通过对社区医疗工作和疾病的统计分析,监督社区医护人员的工作情况,有利于保障医护服务质量;监测社区居民的疾病情况,全面掌握社区居民健康状况,有利于及时采取有效防治措施。
图1 系统架构图
按照系统信息流在整个业务流程框架中的产生、集成、加工、访问过程,其整体架构可分为五大部分:
接入部分,通过构建统一的权限控制,提供相关的用户、角色、权限等系统设置功能,同时在这个基础上构建所有的业务系统;
业务部分,提供给患者、医护人员、管理人员具体业务操作功能,通过它把家庭病床管理、慢性病随访管理、门诊代预约管理等基础业务知识管理化,通过知识管理的设计、利用、创新、发掘、共享等方法使之能够达到信息的最大利用;
应用服务部分,该层囊括了目前总体业务中的核心——系统内部数据交换,其功能包括向患者发送通知、安排医护人员工作日程、统计工作及评价、病历和随访数据上报与查询、整合门诊预约功能、系统配置等。数据交换是实现整个数据集成平台中的最为基础和重要的模块,是贯穿所有业务功能模块的核心。
数据库部分,用户通过接口数据交换,将其后台人员、病历、药品、系统配置等数据存储并按照其相关的业务逻辑呈现在其具体业务功能中。
数据接口部分,通过该层实现本系统数据库与区级医疗平台和医联预约平台的数据交换。本系统的数据通过该层开放给区级医疗平台和医联合预约平台使用,同时本系统也通过该层向以上两个平台获取数据。
3.3.1 移动应用端
移动应用端是使用JAVA开发的应用于Android系统的各类移动设备,适用范围广。移动应用端主要安装在家庭医生使用的移动设备上,比如手机、平板电脑,其功能包括了家庭医生的日常工作需求,为家庭医生提供了一个便捷丰富的移动办公环境。
以下是移动应用端的主要功能:
图2 移动应用端功能
家庭病床管理有效缩短建床、撤床的周期,使家庭医生可以快速地为患者建立或撤销家庭病床。同时提供大量的、多样化的患者历史病案信息,可以使家庭医生在短时间内迅速了解患者的病情。同时为家庭医生提供现场病案记录,有效提高数据的实时性。
随访服务管理为家庭医生提供现场访视记录,并且提供完整的历史访视记录,图形化的患者生理指标数据,使家庭医生更全面、直观地了解患者病情发展趋势和治疗情况,为家庭医生制定康复计划和健康知道提供准确的依据。
门诊代预约依靠与医联预约平台的数据对接,使家庭医生可以有针对性地为本社区内的患者预约专家门诊。由家庭医生对患者进行筛选甄别,可以大大提高医疗资源的利用率,真正做到“小病在社区,大病进医院”的主旨。
医疗知识库是为家庭医生提供各类药品、疾病、症状的查询,并且与患者的病案相关联,使家庭医生在遇到疑难杂症的时候可以得到及时的帮助,也为家庭医生进行诊断和治疗提供参考。
即时通信是以实名制为基础建立的家庭医生与专家医师、家庭医生与社区患者之间的即时沟通的方式。家庭医生通过即时通信能够从专家医师那里获得专业医疗知识上的帮助,也能随时向社区患者推送健康指导,获取社区患者治疗反馈,解答社区患者的咨询。
3.3.2 系统服务端
系统服务端是使用C#开发的应用服务系统,主要通过Web Service向移动应用端提供各类业务功能的支持。根据不同的业务,提供以下几方面的服务:
用户管理服务对使用者的身份进行认证,根据使用者的权限加载各项不同的业务功能,以及管理使用者的个人信息;
病案管理服务是对各类病案表单进行管理,由于病案的种类和样式繁多,考虑到系统的灵活性和扩展性,所以本系统将病案的格式是以XML的形式存储,家庭医生可以通过修改XML的格式创建各种病案。移动应用端从系统服务端获得XML形式的病案,由XML表单解析模块解析并显示;
即时通信服务是基于XMPP协议开发的通信服务,它可以与任何符合XMPP协议的即时通信软件通信,这样拓展了可用联系人的范围。
本系统中集合了大量的病案表单,为每个表单做独立的输入和输出接口太过繁琐,而且在增加新表单时候需要更新前后台的程序,这种做法不够灵活,扩展性差,为此本系统利用XML技术实现对各式各样的病案表单进行统一封装,并通过同一个解析过程还原表单并显示在界面上。
病案表单中各元素的内容可以分为字符型、数值型、日期型、图像、声音,而相应的类型则有单一值、多选项、模板、链接,比如患者姓名是一个字符型的单一值元素,患者的性别则是字符型的多选项,所以将一个表单元素定义成如下的XML格式:
(元素的值见下列说明)
其中Name表示元素的名称,Type表示元素的类型。元素的类型(Type):String(字符型)、Number(数值型)、Date(日期型)、File(文件)。各元素的值:表示单一值;表示多个选项,重复多次表示多个选项;表示是模板;表示图像、声音的文件链接。
将各病案表单元素分解后,按照以上格式进行嵌套和组合,并将形成的XML模板存储在数据库中。在显示表单时候,可以根据获得的XML模板,通过统一解析动态的生成表单,而不用为每个表单都单独编写一个界面。
解析过程是使用递归的方法来实现的,每次递归根据节点的类型来做相应的处理,如果是Field节点,则将Name属性的内容用标签控件显示在界面上,作为字段名称;如果是Value节点,则将Value的值作为字段的值显示在界面上,如果表单处于编辑状态则使用编辑框控件来显示;如果是Selection节点,则将所有的Selection节点以下拉框的形式显示在界面上;如果是Template节点,则使用多行文本框来显示模板内容;如果是Link节点,则需要先获取到Link所对应的文件,再根据Field的类型来显示。
解析时候使用的递归算法是一个先序遍历的过程,先将查找出所有父节点的子节点,在下一次递归时,将子节点作为父节点,再次查询其子节点,如果没有子节点,则表示该节点是叶子节点,根据节点的名称和类型做完相应处理后返回。
由于Web Service提供的API函数都是公开的,知道了URL地址后就可以调用,而本系统所涉及的患者病案数据需要保密,只允许通过实名认证的用户才能访问。因此,需要确保Web Service访问和通信的安全性,主要包括两方面的安全性保证:一是保证当前的用户是实名注册的家庭医生;二是保证在移动应用端与服务器之间传递的消息即时被第三方截获也无法解密。
为确保用户是实名注册的家庭医生,通过RSA加密算法保证用户的合法性。本系统需要先由移动应用端产生一自身独有的标识,以唯一标识当前的移动应用端,防止其他设备模仿本机行为。一般可以使用移动应用端MAC地址或CPU序列号等具有唯一性的序号来产生字符串标识。然后,移动应用端使用唯一标识向服务器请求RSA公钥。在服务器上,当用户访问Web Service网站时产生一个1024或更长的RSA加密钥匙对。并且保存当前请求对象的RSA加密对、DES加密矢量、帐号信息。之后服务器向请求的移动应用端发送RSA公钥。移动应用端收到RSA公钥后,产生自身的DES加密矢量用于常规的通信信息加密。接着,移动应用端用RSA公钥加密登录帐号、密码和DES加密矢量,并连同移动应用端的唯一标识,向服务器请求身份验证。验证成功后,服务器将保存当前请求帐号的信息、RSA钥匙、DES加密矢量等到会话Session中,并返回验证成功信息给移动应用端;验证失败,则返回失败信息给移动应用端。
为保证数据在网络上传输时候的正确性和完整性,并且防止被无意或恶意的修改、窃取,在数据传输的安全性上,因为Web Service是依靠SOAP协议进行传输的,所以对传输数据的加密其实就是对SOAP消息进行加密,通过扩展SOAP协议就可以实现这一点。在移动应用端调用Web Service的时候,必须同时提交本机唯一标识和参数,参数使用DES加密。服务器收到移动应用端的请求后,首先检验唯一标识的合法性,即验证用户身份。然后再进行参数解密处理,解密成功则进行业务处理,否则返回异常消息给移动应用端。服务器返回信息时候也需要做DES加密处理。移动应用端收到返回信息先做解密处理,成功后转入业务处理操作;失败则抛出异常。即时第三方截获信息,并保存唯一标识,也不能查看原始内容,修改原始信息,这样就保证了Web Service传输的安全性。
由于患者的各类病历、报告数据量大而且这些数据之间都有相互联系,这些海量数据全部调用既不可能,也无功效,所以需要进行深入的挖掘和分析。将患者的所有病历与知识库进行关联,为家庭医生提供多方位的典型病例,使家庭医生能够全面了解患者病情,快速做出诊断,提高工作效率;同时提取患者在接收治疗过程中的检查、化验等各类报告中的指标数据,通过曲线图、表格等多种形式与典型病例相比对,展现给家庭医生,使家庭医生能够及时分析掌握患者的病情发展趋势和治疗效果。
本文根据社区医疗卫生服务的实际情况,利用移动技术为家庭医生提供移动办公环境,提高家庭医生的办公效率。在设备上,系统客户端在现今最流行的Android系统开发,使本系统有较广的移动设备选择余地。在技术上,通过XML技术统一解决了患者信息格式多样化的问题,通过Web服务身份验证和数据传输加密技术保证了患者信息的安全性,利用数据挖掘技术,为家庭医生提供了充分有效的数据,对家庭医生的诊疗和学习起到辅助作用。
[1]张鹤高,熊文灿,李祥.Web服务身份验证与数据加密传输协议的设计与实现[J].电脑知识与技术,2005(05).
[2]康晓东.基于数据仓库的数据挖掘技术[M].北京:机械工业出版社,2004.
[3]李瑞花.基于Android的XML解析技术分析[J].计算机时代,2010(12).
[4]陈任,谈辉,童茵,陈立.基于Web Service的企业集团综合运营管理[J].计算机软件与应用,2013(29):203-204,287.
[5]郑浩然,魏文,闫国龙,龚文荣,姜少峰.基于XML数据的可变表格排版设计与实现[J].计算机软件与应用,2013(27):187-189.
[6]李璐.浅谈XML技术在文献数字化工程中的应用[J].科技信息,2007(33).
[7]李进.一种基于XML的参考文献搜索引擎[J].图书馆理论与实践,2002(5).
[8]石伟鹏,杨小虎.基于SOAP协议的Web Service安全基础规范[J].计算机应用研究,2003(2).
[9]邵峰晶,于忠清.数据挖掘原理与算法[M].中国水利水电出版社,2003:2-26.
[10]Jiawei Han Micheline Kamber.数据挖掘概念与技术[M].机械工业出版社,2005,4.