王 琦 金玉琴 周金海 周 明
(南京中醫藥大學信息技術學院 南京 210023) (南京體育學院運動康復醫院 南京 210041)
?
基于WPF的中醫電子病歷系統設計與實現*
王 琦 金玉琴 周金海 周 明
(南京中醫藥大學信息技術學院 南京 210023) (南京體育學院運動康復醫院 南京 210041)
基于中醫病歷較西醫病歷的特殊性,基于WPF設計面向中醫專業人員的電子病歷系統。從數據庫設計、WPF與MVVM模式、XAML與數據綁定、界面設計與自定義控件等方面,詳細介紹系統的設計與實現,闡述系統的功能模塊及數據挖掘,指出系統的創新之處。
中醫電子病歷;WPF;XAML;數據挖掘
病歷是指醫務人員在醫療活動過程中形成的文字、符號、圖表、影像、切片等資料的總和,是病人在醫院診斷治療全過程的原始記錄,包含病人個人信息、病程記錄、檢查結果、醫囑、處方用藥等。近年來,隨著計算機技術、信息處理及網絡技術的迅猛發展及其應用的不斷普及,電子病歷(Electronic Medical Record,EMR)的研究受到越來越廣泛的關注。電子病歷是信息技術在醫療領域應用的必然產物,是醫院管理現代化的必然趨勢,其臨床應用極大提高了醫院的醫療服務質量和管理效率。但是,目前醫院使用的電子病歷系統絕大多數是為西醫設計,不能體現中醫“辨證論治”的診療特點;同時,中醫及西醫在檢查、診斷、處方、用藥等多方面的差異[1]使得中醫在使用醫院提供的電子病歷系統時也存在極大不便。
中醫具有鮮明的民族風格、獨特的理論體系、豐富的醫療實踐,在我國醫學中扮演著非常重要的角色,作為世界上迄今為止唯一保持不衰的傳統醫學屹立于世界醫學之林。因此,開發一款能夠體現中醫“辨證論治”特點、符合中醫實際診療過程、便于中醫專家實際使用,有效實現中醫診療經驗的收集整理與學術思想的歸納總結的軟件具有較大的理論和現實意義。本文基于WPF設計中醫電子病歷系統,該系統針對診療過程中產生的病案信息進行結構化存儲,有效實現對診療經驗的收集和整理,同時為臨床知識和經驗的傳承與創新提供幫助,可有效實現中醫的現代化、國際化[2]。
2.1 數據庫設計
中醫電子病歷系統設計的首要問題是醫學語言的標準化進度緩慢[3],如何將復雜的中醫藥信息進行結構化存儲是設計的難點。本系統數據庫設計參考數據存儲與數據工程(Data Storage and Data Engineering,DSDE)的設計方式,對中醫病案信息進行結構化處理,通過DSDE方法根據中醫辨證論治的診療特點確定結構化原則,即以癥-證-治為要素對病歷信息進行結構化[4]。病歷信息的結構化應盡可能符合臨床診療術語規范,以便形成標準化的中醫病案信息,為進一步經驗整理和數據挖掘提供支持。數據庫中證型診斷,見表1,同一病歷號由于證、病性和病機的原因可以對應多個證型號。

表1 證型診斷
2.2 WPF與MVVM模式
(1)Windows Presentation Foundation (WPF)是微軟推出的基于.NET平臺、構建于Dir-ectX接口上的下一代用戶界面框架,它提供了統一的編程模型、語言和框架,實現了用戶界面設計代碼與程序邏輯代碼的分離,真正做到了分離界面設計人員與開發人員的工作[5]。(2)Model-View-View-Model (MVVM)中醫電子病歷系統對結構化、規范化的中醫藥數據要求較高,所以高效、可控、便于管理的設計模式顯得格外重要。本系統使用WPF的新設計模式MVVM進行架構管理,見圖1,立足于原有MVP框架并且把WPF的新特性揉合進去[6]。

圖1 MVVM架構
MVVM模式的主要目的是分離視圖(View)和模型(Model),具有低耦合、可重用性、獨立開發和可測試等優點。本系統使用MVVM模式,通過View綁定到ViewModel然后執行命令請求動作,ViewModel再與Model通訊,更新來響應用戶界面,從而實現View獨立于Model進行變化和修改,同時一個ViewModel可以綁定到不同的View上。采用MVVM模式使得系統的用戶界面設計代碼與程序邏輯代碼完全分離,可以在不影響功能實現的前提下充分發揮WPF的新特性,將Sliverlight、音頻、視頻、3D、動畫等引入軟件的用戶界面層,使界面既人性化又美觀;同時,MVVM模式的使用可以讓難以測試的界面測試變得便捷,只要針對ViewModel層就可以簡單地完成界面的測試環節。
2.3 XAML與數據綁定
可擴展應用程序標記語言(eXtensible Application Markup Language,XAML),引用使得WPF下用戶界面設計代碼與程序邏輯代碼的分離得以實現。對于結構化、規范化要求較高的中醫藥數據,選取XAML綁定方式可以顯著提高存儲及管理效率。實現了數據源及界面的雙向綁定,數據源變化時界面自動跟隨數據源一起發生改變;反之,界面的變化同樣會引起數據源的變化。以下為系統XAML綁定數據庫字段的部分代碼:
但不可否認的是XAML 綁定與路由事件的大量使用會導致軟件架構不穩定,從而加大了系統的后期維護難度,傳統的MVC及MVP模式已經漸漸不能滿足系統開發的要求,因此,XAML數據綁定配合前文闡述的MVVM模式可以有效避免架構不穩定的問題,實現對中醫藥數據高效、可控的管理。
2.4 界面設計與自定義控件
XAML作為可擴展應用程序標記語言,可以完成與后臺數據源的數據綁定,其最大的優勢是設計與邏輯分離,通過XAML的編寫可以在不影響邏輯代碼的前提下完成復雜的用戶界面設計,兼具友好性與美觀性。Expression Blend作為一款功能齊全的專業設計工具,可用來針對基于Microsoft Windows的應用程序制作精美復雜的用戶界面。本系統通過Expression Blend對XAML進行編寫,重新設計了包括Button、Textbox、DataGrid在內的多項控件,通過修改控件的形狀、顏色、圖案以及事件響應時的觸發器變化設計出了更符合中醫特色的系統控件,在保證貼合使用者習慣的同時更加美觀。同時,充分利用WPF自帶的“用戶控制(UserControl)”重新設計符合系統要求的自定義控件,諸如為方便中醫專家文字輸入而引入的首字母下拉選擇框與數據庫相連,用戶只要輸入拼音首字母,控件下拉框可以從數據庫中選出所有對應中藥材以供用戶選擇(如用戶輸入BS,下拉框顯示白芍和北沙參);為解決中藥材過多導致顯示不便而引入的分頁控件,向用戶提供分頁數量的選擇,更好地呈現大量的中藥材數據。
2.5 圖像與聲音采集
中醫與西醫差異性的體現之一就是方式診斷依據的差異。與西醫重視各種生化檢查不同,中醫主要通過“四診”,即望、聞、問、切來獲取患者有關疾病的各項數據[7]。因此,能否儲存四診過程中患者的面像、脈象、舌象等圖像數據以及咳嗽等聲音數據對中醫電子病歷病案的完整性至關重要。本系統編寫自定義類cVideo.cs和cVoice.cs來調取攝像頭和聲卡進行診療過程中圖像及聲音的采集,通過完善的數據庫進行圖像和聲音數據的存儲。醫生在患者復診時,可以輕松調出相關資料,包括圖像和聲音資料,極大提升了中醫病案數據的完整性,為中醫專家病案研究和診療經驗的整理總結奠定了基礎。
2.6 處方設計與打印
中醫與西醫差異的另一點體現在處方與用藥。中醫處方用藥多為方劑,需要在辨證審因確定治法后,選擇適當藥物、遵循組方原則、斟酌用量用法,進行妥善配伍。因此,本系統中醫處方的設計結構遵循“主病之謂君、佐君之謂臣、應臣之謂使”的君臣佐使規則[8],不僅支持經驗方的直接調用,而且還可以根據中醫醫師個人的診療經驗對其進行藥物及計量的修改,提供藥物、劑量、煎法、溫度、用法等多方面的支持,為減少處方信息記錄復雜度提供最大限度的支持。系統通過CrystalReport.rpt提供報表解決方案,預設多份處方樣式,用戶可以選擇自身需要的樣式,預留打印接口,在開方結束后可以直接進行打印。
2.7 數據導出與還原
考慮到中醫專家往往因坐診場所不同而導致病案數據的更新不同步的問題,本系統提供了數據的備份與還原功能,支持多種格式的數據導出,比如.bak和.mdf數據庫文件,以及.xls和.csv報表文件。通過數據的備份與還原有效提高了用戶對病案數據的管理;同時,選擇.xls和.csv的數據格式導出為中醫專家提供了對收集的病案數據進一步處理的功能,支持中醫專家的經驗總結與醫案研究。

圖2 中醫電子病歷系統功能
3.1 前臺處理
前臺處理是系統的主要功能模塊,用戶使用的功能主要集中在前臺處理,本系統完全模擬中醫實際診療從錄入初診病人信息、診斷檢查信息,到開出處方用藥信息并打印的全過程,確保中醫病案的數據錄入具有完整性。
3.2 后臺管理
系統的后臺管理主要為前臺處理提供數據支持,其中最重要的中藥和常用方數據參考《中藥學》和《方劑學》(新世紀第2版全國高等中醫藥院校規劃教材,供中醫藥類專業用)錄入,提供增、刪、改、查功能,為用戶根據自身情況修改中藥及常用方數據提供支持。
3.3 接口管理
隨著醫療衛生機構信息化的普及,不僅僅是病歷電子化,掛號、藥房管理等環節同樣電子化。本系統為未來用戶使用過程中可能發生的多系統鏈接提供必要的接口,如和掛號系統鏈接后可以直接調用掛號時收集的病歷號及病人信息;與藥房管理相連,在開方時遇到庫房方藥不足時能夠實時提示等,極大提高了系統的可用性和擴展性。
4.1 數據挖掘過程
在大數據時代下,數據已經滲透到生活的方方面面,成為重要的生產要素[9];同時,數據挖掘(Data Mining)技術已成為許多領域研究處理數據的有效手段。數據挖掘是指從大量的數據中通過算法搜索隱藏于其中信息的過程,即從海量、不完全、隨機、有噪聲的數據中提取隱含的、未知的但卻有價值的知識和規律的過程[10]。數據挖掘過程,見圖3[11]。

圖3 數據挖掘過程
4.2 中醫藥數據挖掘
中醫藥數據具有維度高、復雜性強、數據量大等特點,在中醫藥知識體系中存在著大量的隱性知識,中醫歷來有“醫者意也”的說法,很多隱性知識無法通過文字或語言進行表達,這就是很多高明的醫生卻很難把醫術傳承下來的原因。在中醫藥領域引入數據挖掘技術就是為了從大量中醫病案中提取隱性知識,為理論研究和臨床實施提供科學依據。中醫藥數據可供挖掘的方向有很多,如楊濤等[12]應用人工神經網絡算法探討心系病證與基礎證的相關性研究;張承江等[13]應用關聯規則對中醫腎病方劑配伍規律的研究;郭捷婷等[14]應用聚類分析研究急性缺血性中風的證型分布等。本系統集成了聚類分析和關聯規則等多項數據挖掘算法,可以對數據庫中預處理后的數據進行挖掘。
5.1 針對性強,體現中醫辨證論治的診療特點
不同于目前各醫院使用的西醫電子病歷的系統,本系統完全基于中醫診療特點,從數據庫到界面設計充分考慮中醫實際使用需求,模擬實際中醫診斷流程,體現了中醫辨證論治的診療特點。
5.2 簡單實用,符合中醫專家的使用習慣
由于中醫專家通常年紀較大,缺乏過多的計算機使用技巧,系統的開發在保證功能的基礎上簡化操作過程,用戶在使用過程中甚至可以脫離鼠標,完全使用鍵盤操作,極大縮短了不必要的診療時間。
5.3 簡潔美觀,系統界面表現形式豐富多彩
基于WPF新的用戶體驗,系統界面開發運用了豐富的圖片、自定義控件和3D素材,在不影響功能使用的前提下,盡可能提高美觀性。
5.4 可擴展性強,便于與相關醫療電子軟件結合
預留接口,為未來用戶使用過程中可能發生的多系統鏈接提供必要的接口,極大提高了系統的兼容性和實用性。
5.5 集成算法,輔助數據挖掘分析
系統集成聚類分析、關聯規則、決策樹等多種經典數據挖掘算法,輔助中醫專家對收集的病案進行數據挖掘分析,提供診療數據的增值空間,為中醫專家的經驗總結與醫案研究提供支持。
中醫電子病歷系統作為傳統醫學與現代科學的結合,順應了當前大數據大健康的發展潮流,推進了中醫現代化的步伐,為中醫藥大健康的相關產業和服務奠定基礎。本系統還具有很好的發展性,在移動端設備極為發達、移動醫療快速發展的今天,可以開發電子病歷系統的手機端APP,側重于掛號系統,在醫療資源緊張的時間段可以通過手機遠程掛號,直接生成病歷號,入院診療時醫生可以直接調用手機掛號時的病歷號。還可與時下流行的云端技術相結合,將醫生的病案信息存入云端,在保證安全性的同時減少了病案信息更新不及時、更換繁瑣、容易丟失等問題;與快速發展的物聯網技術相結合,建立公民個人診療信息卡片,公民所有的診療信息都存在本人的卡片內,既方便了醫生第一時間了解病人相關信息,也便于公民個人及時了解自身的身體狀況。
1 沈紹武,肖勇,陳偉.我國中醫藥信息化建設與發展的思考[J].醫學信息學雜志,2010,31(7):1-4,8.
2 劉保延,張紅,倪皖東.試論中醫電子病歷系統及其特殊性[J].醫學信息,2004,17(1):9-11.
3 孫沂振,沈云學,唐賀云.電子病歷概述[J].醫學信息學雜志,2009,30(3):1-5.
4 張潤順,王映輝,姚乃禮,等.名老中醫電子病歷中病史動態結構化數據錄入規范[J].中國醫藥信息雜志,2007,14(3):100-101.
5 戴伯樂.Windows Presentation Foundations的項目部署和性能優化[J].電腦知識與技術,2010,6(1):227-228,249.
6 黃建崗.淺談WPF設計模式[J].中小企業管理與科技:上旬刊,2009,(10):286.
7 岳琳哲,施誠.病歷、電子病歷與中醫電子病歷[J].醫學信息,2006,19(7):1121-1124.
8 沈寧喬,張偉威,余春蘭,等.論中醫電子病歷的中醫方向[J].江蘇中醫藥,2011,(6):83-84.
9 劉保延.中醫藥迎來大數據時代[N].健康報,2013-8-21(005).
10 吳麗,周良.數據挖掘方法在中醫藥領域的應用淺析[J].醫學信息,2009,22(5):576-578.
11 王惠中,彭安群.數據挖掘研究現狀及發展趨勢[J].工礦自動化,2011,(2):29-32.
12 楊濤,吳承玉.基于人工神經網絡的心系基礎證診斷模型構建[J].中國中醫基礎醫學雜志,2013,19(9):765-766.
13 張承江,閆朝升,宋立群.中醫腎病治療信息中關聯規則的挖掘算法[J].黑龍江大學自然科學學報,2005,22(6):842-845.
14 郭捷婷,黃燕,蔡業峰,等.急性缺血性中風的證型分布研究[J].中醫學報,2015,30(1):130-132.
Design and Implementation of WPF-based Electronic Medical Record System for Traditional Chinese Medicine
WANG Qi,JIN Yu-qin,ZHOU Jin-hai,
College of Information Technology, Nanjing University of Chinese Medicine, Nanjing 210023,China;ZHOU Ming, Exercise Rehabilitation Hospital of Nanjing Sport Institute, Nanjing 210041,China
Based on the particularity of traditional Chinese medical records as compared with western medical records, the paper designs an Electronic Medical Record (EMR) system for traditional Chinese medical personnel based on WPF. It elaborates the system design and implementation from database design, WPF and MVVM mode, XAML and data binding, interfacial design and custom controls, etc. It also explains the system′s functional modules and data mining and points out its innovation.
Electronic Chinese medical record;WPF;XAML;Data mining
2015-10-25
王琦,在讀碩士研究生;通訊作者:金玉琴。
江蘇省高校大學生實踐創新訓練計劃—省級一般項目“基于WPF的中醫專家門診電子病歷系統的構建”(項目編號:201310315073Y);國家中醫藥管理局重點學科(中醫藥信息學)開放課題“面向數據挖掘的中醫電子處方系統構建”(項目編號:ZYYXXX-16)。
R-056
A 〔DOI〕10.3969/j.issn.1673-6036.2015.12.006