本發(fā)明涉及醫(yī)療信息化領域,尤其涉及一種醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)及方法。
背景技術:
病歷是病人在醫(yī)院診斷治療全過程的原始記錄,它包含有首頁、病程記錄、檢查檢驗結果、醫(yī)囑、手術記錄、護理記錄等等。隨著醫(yī)院計算機管理網(wǎng)絡化,電子病歷(EMR,Electronic Medical Record)應運而生。作為科技進步的產(chǎn)物,電子病歷因其方便記錄,易存儲等優(yōu)點被越來越廣泛的應用在醫(yī)療系統(tǒng)中。
然而,現(xiàn)有的電子病歷系統(tǒng)中并沒有對電子病歷中的內(nèi)容進行加密處理,降低了電子病歷的信息安全,并會導致電子病歷泄露。
進一步地,由于醫(yī)生在電子病歷中輸入的信息難免出現(xiàn)錯誤,增加對電子病歷中的內(nèi)容進行審核可以盡量避免人為醫(yī)療事故。然而,現(xiàn)有的電子病歷中,審核人員對電子病歷的修改沒有經(jīng)過其它審核人員的確認,難免出現(xiàn)審核錯誤,會導致醫(yī)療事故。
技術實現(xiàn)要素:
本發(fā)明的主要目的在于提供一種醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)及方法,旨在解決現(xiàn)有的電子病歷沒有加密導致電子病歷容易泄露的技術問題。
為實現(xiàn)上述目的,本發(fā)明提供了一種醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng),運行于電子病歷云平臺中,所述電子病歷云平臺與客戶端通過網(wǎng)絡連接,該系統(tǒng)包括:
接收模塊,用于從客戶端接收醫(yī)生創(chuàng)建的XML格式的電子病歷;
加密模塊,用于對電子病歷中的數(shù)據(jù)進行加密;
鎖定模塊,用于對加密后的電子病歷進行只讀鎖定;
發(fā)送模塊,用于將只讀鎖定后的電子病歷發(fā)送給審核人員的客戶端;
獲取模塊,用于當有審核人員對電子病歷進行了修改且有審核人員對電子病歷的修改數(shù)據(jù)進行確認時,獲取對電子病歷的修改數(shù)據(jù)并將所述修改數(shù)據(jù)進行加密轉換;
解除模塊,用于解除對該電子病歷的只讀鎖定,并將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù);
所述發(fā)送模塊,還用于發(fā)送通知給創(chuàng)建該電子病歷的醫(yī)生的客戶端,并對修改后的電子病歷進行只讀鎖定;及
生成模塊,用于當對修改后的電子病歷進行只讀鎖定后,生成正式的電子病歷。
優(yōu)選地,所述電子病歷為XML格式,所述電子病歷中包括多個多層節(jié)點及文本內(nèi)容,多層節(jié)點之間為樹形結構,上一層節(jié)點可以包括多個同一層節(jié)點、多個下一層節(jié)點及多個文本內(nèi)容,第一層節(jié)點只包括文本內(nèi)容及一個或多個下一層節(jié)點。
優(yōu)選地,所述鎖定模塊對加密后的電子病歷進行只讀鎖定的方式如下:對加密后的電子病歷中的節(jié)點名稱進行轉換。
優(yōu)選地,所述判定有審核人員對電子病歷進行了修改的方式如下:
(1)當電子病歷顯示于審核人員的客戶端時,獲取該客戶端的鼠標位于電子病歷上的位置;
(2)對電子病歷進行解密,并將鼠標的位置與電子病歷中對應位置的節(jié)點關聯(lián);
(3)在所述鼠標的位置生成修改對話框,該修改對話框提示用戶是否對電子病歷進行修改;
(4)當修改對話框有輸入修改數(shù)據(jù)時,判定審核人員對電子病歷進行了修改。
優(yōu)選地,所述解除模塊解除對該電子病歷的只讀鎖定的方式如下:對只讀鎖定的電子病歷中的節(jié)點名稱恢復為原有的節(jié)點名稱。
優(yōu)選地,所述加密模塊對電子病歷中的數(shù)據(jù)進行加密所采用的加密算法與所述獲取模塊對修改數(shù)據(jù)進行加密處理所采用的加密算法相同。
另一發(fā)明,本發(fā)明還提供一種電子病歷加密審核方法,應用于電子病歷云平臺中,所述電子病歷云平臺與客戶端通過網(wǎng)絡連接,該方法包括以下步驟:
從客戶端接收醫(yī)生創(chuàng)建的XML格式的電子病歷;
對電子病歷中的數(shù)據(jù)進行加密;
對加密后的電子病歷進行只讀鎖定;
將只讀鎖定后的電子病歷發(fā)送給審核人員的客戶端;
當有審核人員對電子病歷進行了修改且有審核人員對電子病歷的修改數(shù)據(jù)進行確認時,獲取對電子病歷的修改數(shù)據(jù)并將所述修改數(shù)據(jù)進行加密轉換;
解除對該電子病歷的只讀鎖定,并將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù);
發(fā)送通知給創(chuàng)建該電子病歷的醫(yī)生的客戶端,并對修改后的電子病歷進行只讀鎖定;及
當對修改后的電子病歷進行只讀鎖定后,生成正式的電子病歷。
優(yōu)選地,所述電子病歷為XML格式,所述電子病歷中包括多個多層節(jié)點及文本內(nèi)容,多層節(jié)點之間為樹形結構,上一層節(jié)點可以包括多個同一層節(jié)點、多個下一層節(jié)點及多個文本內(nèi)容,第一層節(jié)點只包括文本內(nèi)容及一個或多個下一層節(jié)點。
優(yōu)選地,所述對加密后的電子病歷進行只讀鎖定的方式如下:對加密后的電子病歷中的節(jié)點名稱進行轉換。
優(yōu)選地,所述判定有審核人員對電子病歷進行了修改的方式如下:
(1)當電子病歷顯示于審核人員的客戶端時,獲取該客戶端的鼠標位于電子病歷上的位置;
(2)對電子病歷進行解密,并將鼠標的位置與電子病歷中對應位置的節(jié)點關聯(lián);
(3)在所述鼠標的位置生成修改對話框,該修改對話框提示用戶是否對電子病歷進行修改;
(4)當修改對話框有輸入修改數(shù)據(jù)時,判定審核人員對電子病歷進行了修改。
本發(fā)明采用上述技術方案,帶來的技術效果為:本發(fā)明所述醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)及方法,可以對電子病歷進行加密處理,提高了電子病歷的信息安全,且審核人員對電子病歷的修改需要其它審核人員的確認,從而確保對電子病歷的修改準確無誤,避免出現(xiàn)醫(yī)療事故。
附圖說明
圖1是本發(fā)明醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)的應用環(huán)境示意圖。
圖2是本發(fā)明醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)的優(yōu)選實施例的模塊示意圖。
圖3是本發(fā)明電子病歷加密審核方法的優(yōu)選實施例的流程圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結合實施例,參照附圖做進一步說明。
具體實施方式
為更進一步闡述本發(fā)明為達成預定發(fā)明目的所采取的技術手段及功效,以下結合附圖及較佳實施例,對本發(fā)明的具體實施方式、結構、特征及其功效,詳細說明如下。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
參照圖1所示,圖1是本發(fā)明醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)的應用環(huán)境示意圖。本發(fā)明中的醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)10運行于電子病歷云平臺1上。所述電子病歷云平臺1與一個或多個客戶端2(圖1中以三個為例進行說明)通過網(wǎng)絡3通信連接。所述網(wǎng)絡3可以是有線通訊網(wǎng)絡(例如,通過網(wǎng)線連接的內(nèi)部局域網(wǎng))或無線通訊網(wǎng)絡(例如,GSM網(wǎng)絡、GPRS網(wǎng)絡、CDMA網(wǎng)絡、TD-SCDMA網(wǎng)絡、WiMAX網(wǎng)絡、TD-LTE網(wǎng)絡、FDD-LTE網(wǎng)絡等無線傳輸網(wǎng)絡)。
所述客戶端2可以創(chuàng)建電子病歷并保存于電子病歷云平臺1中。所述客戶端2還可以從所述電子病歷云平臺1獲取所述創(chuàng)建的電子病歷并顯示于所述客戶端2的顯示器(圖中未示出)上,方便醫(yī)生查看、審核、編輯及/或修改電子病歷。具體地說,所述電子病歷云平臺1中存儲有電子病歷的模板,客戶端2從所述電子病歷云平臺1獲取電子病歷的模板,并在所述電子病歷的模板中添加患者的患病信息(例如,姓名、年齡、性別、主訴、癥狀名稱、現(xiàn)病史、起病方式、過敏史等信息)以生成該患者的電子病歷。
具體地說,所述電子病歷的模板為XML格式的模板。
具體地說,所述XML格式的電子病歷的模板描述如下:
<?xml version="1.0"encoding="utf-8"?>
<MedicalNote>
<Group name='姓名'>
<Text></Text>
</Group>
<Group name='姓別'>
<Text></Text>
</Group>
<Group name='年齡'>
<Text></Text>
</Group>
<Group name='主訴'>
<Element name='癥狀名稱'>
<Text></Text>
</Element>
</Group>
<Group name='現(xiàn)病史'>
<Text></Text>
<Element>
<Text>起病方式</Text>
</Element>
</Group>
</MedicalNote>
上述電子病歷的模板中包括多個多層節(jié)點及文本內(nèi)容,每層節(jié)點的名稱及文本內(nèi)容可以根據(jù)用戶需求自行定義,例如,用戶自己定義的三層節(jié)點分別為MedicalNote、Group、Element。其中,多層節(jié)點之間為樹形結構,上一層節(jié)點可以包括多個同一層節(jié)點、多個下一層節(jié)點及多個文本內(nèi)容,此外,第一層節(jié)點只包括文本內(nèi)容及一個或多個下一層節(jié)點。具體地說,假設節(jié)點MedicalNote為第一層節(jié)點,節(jié)點Group為第二層節(jié)點,節(jié)點Element為第三層節(jié)點,第一層節(jié)點MedicalNote中包括一個或多個文本內(nèi)容Text、一個或多個第二層節(jié)點Group。每個第二層節(jié)點Group還包括一個或多個節(jié)點文本內(nèi)容Text、一個或多個第三層節(jié)點Element。進一步地,同一層節(jié)點可以相互嵌套,例如,第二層節(jié)點還包括多個第二層節(jié)點,第三層節(jié)點還包括多個第三層節(jié)點。在本實施例中,所述第一層節(jié)點MedicalNote為主節(jié)點,表示電子病歷。
此外,在這個XML基礎上的電子病歷還可以繼續(xù)擴展,用戶可以定義各種類型的節(jié)點,例如,定義圖像的節(jié)點(Image)、表格的節(jié)點(Table)、單元格的節(jié)點(Cell)等,并對不同類型的節(jié)點相應定義節(jié)點的層級,例如,圖像的節(jié)點定義為第三層、表格的節(jié)點定義為第二層節(jié)點、單元格的節(jié)點定義為第三層節(jié)點。
醫(yī)生通過客戶端2添加患者的患病信息后,生成該患者的電子病歷。
例如,患者張三的XML格式的電子病歷如下:
<?xml version="1.0"encoding="utf-8"?>
<MedicalNote>
<Group name='姓名'>
<Text>張三</Text>
</Group>
<Group name='姓別'>
<Text>男</Text>
</Group>
<Group name='年齡'>
<Text>42</Text>
</Group>
<Group name='主訴'>
<Element name='癥狀名稱'>
<Text>頭痛</Text>
</Element>
</Group>
<Group name='現(xiàn)病史'>
<Text>今日患者未訴不適</Text>
<Element>
<Text>起病方式</Text>
</Element>
</Group>
</MedicalNote>
進一步地,所述電子病歷云平臺1是云平臺或數(shù)據(jù)中心的某一臺服務器,通過云平臺或數(shù)據(jù)中心的數(shù)據(jù)傳輸能力及數(shù)據(jù)存儲能力,可以更好地管理及/或協(xié)助與該電子病歷云平臺1連接的客戶端2,有利于醫(yī)生從電子病歷云平臺1創(chuàng)建、查看、審核、編輯及/或修改電子病歷。為了集中管理,所述電子病歷云平臺1由某一個特定部門(例如,醫(yī)院的IT部門或與醫(yī)院有合作協(xié)議的云計算服務提供商)維護。
所述電子病歷云平臺1可以位于醫(yī)院經(jīng)營場所,也可以位于遠離醫(yī)院經(jīng)營場所的其它位置。為了避免擠占醫(yī)院經(jīng)營場所的空間,所述電子病歷云平臺1位于遠離醫(yī)院經(jīng)營場所的其它位置。
所述客戶端2可以是,但不限于,智能手機、平板電腦、個人數(shù)字助理(Personal Digital Assistant,PDA)、筆記本電腦、臺式電腦、電子看板等其它任意合具有數(shù)據(jù)處理能力的電子設備。在本實施例中,所述客戶端為臺式電腦。
參照圖2所示,是本發(fā)明醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)的優(yōu)選實施例的模塊示意圖。在本實施例中,所述醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)10應用于電子病歷云平臺1。該電子病歷云平臺1包括,但不僅限于,醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)10、存儲單元11、處理單元12、及通訊單元13。
所述的存儲單元11可以為一種只讀存儲單元ROM,電可擦寫存儲單元EEPROM、快閃存儲單元FLASH或固體硬盤等。
所述的處理單元12可以為一種中央處理器(Central Processing Unit,CPU)、微控制器(MCU)、數(shù)據(jù)處理芯片、或者具有數(shù)據(jù)處理功能的信息處理單元。
所述的通訊單元13為一種具有遠程通訊功能的通訊接口,例如支持GSM、GPRS、WCDMA、CDMA、TD-SCDMA、WiMAX、TD-LTE、FDD-LTE等無線通訊技術的通訊接口,支持USB、網(wǎng)線的有線通訊接口。
所述醫(yī)療信息化系統(tǒng)中電子病歷加密審核系統(tǒng)10包括,但不局限于,接收模塊111、加密模塊112、鎖定模塊113、發(fā)送模塊114、判斷模塊115、獲取模塊116、解除模塊117及生成模塊118,本發(fā)明所稱的模塊是指一種能夠被所述電子病歷云平臺1的處理單元12執(zhí)行并且能夠完成固定功能的一系列計算機程序指令段,其存儲在所述電子病歷云平臺1的存儲單元11中。
所述接收模塊111用于從客戶端2接收醫(yī)生創(chuàng)建的XML格式的電子病歷。具體地說,當患者看病時,醫(yī)生在客戶端2上(通過點擊操作指令)調(diào)用XML格式的電子病歷的模板(保存于電子病歷云平臺1中),并添加該患者的患病信息(例如,姓名、年齡、性別、主訴、癥狀名稱、現(xiàn)病史、起病方式、過敏史等信息)至XML格式的電子病歷的模板,之后生成針對該患者的XML格式的電子病歷。
所述加密模塊112用于對電子病歷中的數(shù)據(jù)進行加密。具體地說,所述加密模塊112獲取每個節(jié)點下的數(shù)據(jù)(即電子病歷中Text后面的數(shù)據(jù)),之后通過加解密算法(例如,MD5加解密算法、RSA加解密算法、DES加解密算法、DSA加解密算法、AES加解密算法等)對電子病歷中每個節(jié)點下的數(shù)據(jù)進行加密處理。
所述鎖定模塊113用于對加密后的電子病歷進行只讀鎖定。具體地說,所述鎖定模塊113對加密后的電子病歷進行只讀鎖定的方式如下:對XML格式的電子病歷中的節(jié)點名稱進行轉換,經(jīng)過名稱轉換后,將無法對節(jié)點中的數(shù)據(jù)進行修改、編輯等操作處理。例如,以張三的電子病歷為例進行說明:將第一層節(jié)點的名稱由MedicalNote轉換成A1,第二層節(jié)點的名稱由Group轉換成A2,將第三層節(jié)點的名稱由Element轉換成A3。經(jīng)過轉換后,由于各層級節(jié)點名稱出現(xiàn)變動,即便對張三的電子病歷進行修改,也因為在只讀鎖定后的電子病歷中無法找到對應的數(shù)據(jù)插入位置,而無法對張三的電子病歷進行修改。
進一步地,在其它實施例中,所述鎖定模塊113可以選擇性地鎖定XML格式的電子病歷中的數(shù)據(jù),例如,鎖定模塊113只轉換第二層節(jié)點的名稱,則第二層節(jié)點中的數(shù)據(jù)將被鎖定。
所述發(fā)送模塊114用于將只讀鎖定后的電子病歷發(fā)送給審核人員的客戶端2。在本實施例中,所述審核人員一般是指資深的醫(yī)生(例如,副主任醫(yī)師或主任醫(yī)師)。進一步地,由于電子病歷中的數(shù)據(jù)進行了加密,審核人員的客戶端2查看電子病歷時,會對電子病歷進行解密處理(通過與加密模塊112中相同的加解密算法進行解密處理)后查看該電子病歷。
所述判斷模塊115用于判斷是否有審核人員對電子病歷進行了修改。所述判斷模塊115判斷審核人員對電子病歷進行了修改的方式如下:
(1)當電子病歷顯示于審核人員的客戶端2時(采用表格的形式顯示XML格式的電子病歷),獲取該客戶端2的鼠標位于電子病歷上的位置(例如,通過onmousemove函數(shù)獲取位置,或者在電子病歷中關聯(lián)鼠標控件,通過鼠標控件獲取位置);
(2)對電子病歷進行解密(通過與加密模塊112中相同的加解密算法進行解密處理),并將鼠標的位置與電子病歷中對應位置的節(jié)點關聯(lián),例如,鼠標放置于電子病歷的中間位置,而中間位置是第二層節(jié)點A2中“癥狀名稱”所在的位置,則該鼠標的位置與電子病歷中第二層節(jié)點A2的“癥狀名稱”關聯(lián),審核人員可以對第二層節(jié)點A2的“癥狀名稱”進行數(shù)據(jù)修改,如對將“<Text>頭痛</Text>”修改為“<Text>頭痛且發(fā)燒</Text>”;
(3)在所述鼠標的位置生成修改對話框,該修改對話框提示用戶是否對電子病歷進行修改,例如,修改對話框中有修改按鍵,當用戶點擊修改按鍵時,提示用戶輸入修改的文字信息;
(4)當修改對話框有輸入修改數(shù)據(jù)時,所述判斷模塊115判定審核人員對電子病歷進行了修改。需要說明的是,由于修改對話框的生成與鼠標的位置關聯(lián),而鼠標的位置與電子病歷的節(jié)點關聯(lián),因此,審核人員將鼠標放置于電子病歷的位置并對電子病歷修改時,審核人員針對鼠標所在位置在電子病歷中對應的節(jié)點的數(shù)據(jù)進行修改。
當有審核人員對電子病歷進行了修改時,所述判斷模塊115還用于判斷是否有審核人員對電子病歷的修改數(shù)據(jù)進行確認。具體地說,當有審核人員對電子病歷進行修改后,所述判斷模塊115將電子病歷及修改數(shù)據(jù)發(fā)送給其他審核人員的客戶端2并彈出確認對話框,當其它審核人員點擊確認對話框的確認按鈕后,表明其它審核人員對修改后的電子病歷進行了確認。
所述獲取模塊116用于獲取對電子病歷的修改數(shù)據(jù),并將修改數(shù)據(jù)進行加密轉換。所述獲取模塊116從修改對話框獲取輸入的修改數(shù)據(jù),之后對修改數(shù)據(jù)按照加解密算法(例如,MD5加解密算法、RSA加解密算法、DES加解密算法、DSA加解密算法、AES加解密算法等)進行加密處理。需要說明的是,所述獲取模塊116對修改數(shù)據(jù)進行加密處理所采用的加密算法與所述加密模塊112對電子病歷中的數(shù)據(jù)進行加密所采用的加密算法是一致的,例如,若加密模塊112對電子病歷中的數(shù)據(jù)進行加密所采用的加密算法為MD5加解密算法,則所述獲取模塊116對修改數(shù)據(jù)進行加密處理所采用的加密算法也是MD5加解密算法。也就是說,修改數(shù)據(jù)加密后的格式要與電子病歷中數(shù)據(jù)加密后的格式一致,采用同樣的加解密算法能夠確保兩者保持格式一致。
所述解除模塊117用于解除對該電子病歷的只讀鎖定,并將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)。所述解除模塊117解除對該電子病歷的只讀鎖定的方式如下:對只讀鎖定的電子病歷中的節(jié)點名稱恢復為原有的節(jié)點名稱。例如,以張三的電子病歷為例進行說明:將第一層節(jié)點的名稱由A1恢復為MedicalNote,第二層節(jié)點的名稱由A2恢復為Group,將第三層節(jié)點的名稱由A3恢復為Element。所述解除模塊117將修改的數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)的方式如下:(1)獲取修改對話框對應的節(jié)點名稱,例如,修改對話框對應的節(jié)點名稱為A2中的“癥狀名稱”;(2)將修改對話框對應的節(jié)點名稱恢復為原有的節(jié)點名稱,例如將<A2name='癥狀名稱'>恢復為<Element name='癥狀名稱'>;(3)將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)。
所述發(fā)送模塊114還用于發(fā)送通知給創(chuàng)建該電子病歷的醫(yī)生的客戶端2,并對修改后的電子病歷進行只讀鎖定。
所述生成模塊118用于當對修改后的電子病歷進行只讀鎖定后,生成正式的電子病歷。當修改后的電子病歷重新進行只讀鎖定時,生成正式的電子病歷并保存于電子病歷云平臺1。此外,所述正式的電子病歷中還包括一個二維碼,方便患者通過二維碼掃描查詢。所述二維碼中包括了患者的基本信息,二維碼的生成方式為現(xiàn)有技術,在此不贅述。
參照圖3所示,是本發(fā)明電子病歷加密審核方法的優(yōu)選實施例的流程圖。在本實施例中,所述的電子病歷加密審核方法應用于電子病歷云平臺1,該方法包括以下步驟:
步驟S11:所述接收模塊111從客戶端2接收醫(yī)生創(chuàng)建的XML格式的電子病歷。具體地說,當患者看病時,醫(yī)生在客戶端2上(通過點擊操作指令)調(diào)用XML格式的電子病歷的模板(保存于電子病歷云平臺1中),并添加該患者的患病信息(例如,姓名、年齡、性別、主訴、癥狀名稱、現(xiàn)病史、起病方式、過敏史等信息)至XML格式的電子病歷的模板,之后生成針對該患者的XML格式的電子病歷。
步驟S12:所述加密模塊112對電子病歷中的數(shù)據(jù)進行加密。具體地說,所述加密模塊112獲取每個節(jié)點下的數(shù)據(jù)(即電子病歷中Text后面的數(shù)據(jù)),之后通過加解密算法(例如,MD5加解密算法、RSA加解密算法、DES加解密算法、DSA加解密算法、AES加解密算法等)對電子病歷中每個節(jié)點下的數(shù)據(jù)進行加密處理。
步驟S13:所述鎖定模塊113對加密后的電子病歷進行只讀鎖定。具體地說,所述鎖定模塊113對加密后的電子病歷進行只讀鎖定的方式如下:對XML格式的電子病歷中的節(jié)點名稱進行轉換,經(jīng)過名稱轉換后,將無法對節(jié)點中的數(shù)據(jù)進行修改、編輯等操作處理。例如,以張三的電子病歷為例進行說明:將第一層節(jié)點的名稱由MedicalNote轉換成A1,第二層節(jié)點的名稱由Group轉換成A2,將第三層節(jié)點的名稱由Element轉換成A3。經(jīng)過轉換后,由于各層級節(jié)點名稱出現(xiàn)變動,即便對張三的電子病歷進行修改,也因為在只讀鎖定后的電子病歷中無法找到對應的數(shù)據(jù)插入位置,而無法對張三的電子病歷進行修改。
進一步地,在其它實施例中,所述鎖定模塊113可以選擇性地鎖定XML格式的電子病歷中的數(shù)據(jù),例如,鎖定模塊113只轉換第二層節(jié)點的名稱,則第二層節(jié)點中的數(shù)據(jù)將被鎖定。
步驟S14:所述發(fā)送模塊114將只讀鎖定后的電子病歷發(fā)送給審核人員的客戶端2。在本實施例中,所述審核人員一般是指資深的醫(yī)生(例如,副主任醫(yī)師或主任醫(yī)師)。進一步地,由于電子病歷中的數(shù)據(jù)進行了加密,審核人員的客戶端2查看電子病歷時,會對電子病歷進行解密處理(通過與加密模塊112中相同的加解密算法進行解密處理)后查看該電子病歷。
步驟S15:所述判斷模塊115判斷是否有審核人員對電子病歷進行了修改。所述判斷模塊115判斷審核人員對電子病歷進行了修改的方式如下:
(1)當電子病歷顯示于審核人員的客戶端2時(采用表格的形式顯示XML格式的電子病歷),獲取該客戶端2的鼠標位于電子病歷上的位置(例如,通過onmousemove函數(shù)獲取位置,或者在電子病歷中關聯(lián)鼠標控件,通過鼠標控件獲取位置);
(2)對電子病歷進行解密(通過與加密模塊112中相同的加解密算法進行解密處理),將鼠標的位置與電子病歷中對應位置的節(jié)點關聯(lián),例如,鼠標放置于電子病歷的中間位置,而中間位置是第二層節(jié)點A2中“癥狀名稱”所在的位置,則該鼠標的位置與電子病歷中第二層節(jié)點A2的“癥狀名稱”關聯(lián),審核人員可以對第二層節(jié)點A2的“癥狀名稱”進行數(shù)據(jù)修改,如對將“<Text>頭痛</Text>”修改為“<Text>頭痛且發(fā)燒</Text>”;
(3)在所述鼠標的位置生成修改對話框,該修改對話框提示用戶是否對電子病歷進行修改,例如,修改對話框中有修改按鍵,當用戶點擊修改按鍵時,提示用戶輸入修改的文字信息;
(4)當修改對話框有輸入修改數(shù)據(jù)時,所述判斷模塊115判定審核人員對電子病歷進行了修改。需要說明的是,由于修改對話框的生成與鼠標的位置關聯(lián),而鼠標的位置與電子病歷的節(jié)點關聯(lián),因此,審核人員將鼠標放置于電子病歷的位置并對電子病歷修改時,審核人員針對鼠標所在位置在電子病歷中對應的節(jié)點的數(shù)據(jù)進行修改。
當有審核人員對電子病歷進行了修改,流程進入步驟S16。當沒有審核人員對電子病歷進行了修改時(即在預設時間內(nèi),沒有任何一個審核人員對電子病歷進行修改),流程進入步驟S20。
步驟S16:所述判斷模塊115判斷是否有審核人員對電子病歷的修改數(shù)據(jù)進行確認。當有審核人員對電子病歷進行修改后,所述判斷模塊115將電子病歷及修改數(shù)據(jù)發(fā)送給其他審核人員的客戶端2并彈出確認對話框,當其它審核人員點擊確認對話框的確認按鈕后,表明其它審核人員對修改后的電子病歷進行了確認,流程進入步驟S16。
步驟S17:所述獲取模塊116獲取對電子病歷的修改數(shù)據(jù),并將修改數(shù)據(jù)進行加密轉換。所述獲取模塊116從修改對話框獲取輸入的修改數(shù)據(jù),之后對修改數(shù)據(jù)按照加解密算法(例如,MD5加解密算法、RSA加解密算法、DES加解密算法、DSA加解密算法、AES加解密算法等)進行加密處理。需要說明的是,所述獲取模塊116對修改數(shù)據(jù)進行加密處理所采用的加密算法與所述加密模塊112對電子病歷中的數(shù)據(jù)進行加密所采用的加密算法是一致的,例如,若加密模塊112對電子病歷中的數(shù)據(jù)進行加密所采用的加密算法為MD5加解密算法,則所述獲取模塊116對修改數(shù)據(jù)進行加密處理所采用的加密算法也是MD5加解密算法。也就是說,修改數(shù)據(jù)加密后的格式要與電子病歷中數(shù)據(jù)加密后的格式一致,采用同樣的加解密算法能夠確保兩者保持格式一致。
步驟S18:所述解除模塊117解除對該電子病歷的只讀鎖定,并將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)。所述解除模塊117解除對該電子病歷的只讀鎖定的方式如下:對只讀鎖定的電子病歷中的節(jié)點名稱恢復為原有的節(jié)點名稱。例如,以張三的電子病歷為例進行說明:將第一層節(jié)點的名稱由A1恢復為MedicalNote,第二層節(jié)點的名稱由A2恢復為Group,將第三層節(jié)點的名稱由A3恢復為Element。所述解除模塊117將修改的數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)的方式如下:(1)獲取修改對話框對應的節(jié)點名稱,例如,修改對話框對應的節(jié)點名稱為A2中的“癥狀名稱”;(2)將修改對話框對應的節(jié)點名稱恢復為原有的節(jié)點名稱,例如將<A2name='癥狀名稱'>恢復為<Element name='癥狀名稱'>;(3)將所述加密后的修改數(shù)據(jù)替換電子病歷中對應的原有數(shù)據(jù)。
步驟S19:所述發(fā)送模塊114還用于發(fā)送通知給創(chuàng)建該電子病歷的醫(yī)生的客戶端2,并對修改后的電子病歷進行只讀鎖定。
步驟S20:當對修改后的電子病歷進行只讀鎖定后,所述生成模塊118生成正式的電子病歷。當修改后的電子病歷重新進行只讀鎖定時,所述生成模塊118生成正式的電子病歷并保存于電子病歷云平臺1。此外,所述正式的電子病歷中還包括一個二維碼,方便患者通過二維碼掃描查詢。所述二維碼中包括了患者的基本信息,二維碼的生成方式為現(xiàn)有技術,在此不贅述。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。