上海申騰信息技術有限公司 張 余 姬江濤 唐 凱
隨著社會的發展,社區衛生服務的包含范圍從以前單純的面對面的醫療服務發展出了目前社區未病保障為主看病治療為輔的醫療模式。這樣一來如何提高醫師社區保障效率成為一個重點,同時,醫師資源的匱乏以及社區患者醫療意識的提高成為一對難以解決的矛盾。如何有效的提高社區醫師為社區患者服務的效率成了關鍵。
社區衛生服務中心的主要移動醫療業務有家庭病床和慢性病隨訪,家庭病床業務是將病情穩定的患者轉移到家中進行醫療和康復,慢性病隨訪業務是定期上門檢查患者病情及進行健康指導。目前在業務開展過程中主要存在以下問題:第一,業務流程沒有規范化;第二,業務數據沒有標準化;第三,業務數據缺乏實時交互性。
(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.