葉昱, 鄧豪, 劉漫
(成醫附二院·核工業四一六醫院 1.門診部; 2.信息科; 3.內分泌科, 四川 成都 610051)
隨著計算機技術的飛速發展,各行各業的信息化水平均不斷提升。在現代化醫院的管理過程中,信息化技術也是必不可少的,能夠大幅地提升醫院的工作效率,減少工作紕漏。然而,由于在信息化系統平臺的建設過程中,對應急措施考慮不夠周全,常常會出現業務混亂、造成經濟損失等現象的發生[1-5]。例如,門診信息化系統通常是通過網關與數據庫服務器相連,因此發生數據庫故障時,或是進行日常維護時,門診的掛號和收費業務則被迫暫停,或通過人工途徑進行,甚至還會造成門診工作的癱瘓,后果嚴重。
針對以上情況,通常醫院會建立一個備用系統,以供在數據庫故障、網絡故障等臨時狀況發生時使用,利用備用系統來保證門診工作的順利進行[6-10]。然而,前提條件是該系統必須要具有和原系統同樣的功能,才能夠保障門診工作順利進行。因此,對于門診應急策略信息化匹配平臺來說,必須要具有自動更新的功能,將數據庫服務器中所儲存的數據信息進行拷貝和儲存,而且還需要具有將應急處理過程中所儲存的數據反饋給原數據庫服務器的功能。本文則針對這一問題,提出了一種用于平臺自動更新的方案,進行了門診應急策略信息化匹配平臺自動更新的設計。
應急策略信息化匹配平臺的主要架構如圖1所示。

圖1 應急策略信息化匹配平臺的整體架構
主要包括了總數據庫服務器和應急數據庫服務器。兩種數據庫服務器實現并聯使用,正常情況下門診客戶端通過網絡共享與總數據庫服務器連接,實現數據的查詢、添加、編輯和調取等;另外總數據庫服務器通過交換機與醫保中心的數據相連接,實現對醫保中心數據的讀取。應急數據庫服務器與總數據庫服務器具有同樣的功能,與門診客戶端以及醫保中心實現數據共享;另外,在本應急策略信息化匹配平臺中,應急數據庫服務器與總數據庫服務器之間還通過網絡服務器實現數據的互通和共享。在正常工作狀態下,通過門診客戶端添加并儲存在總數據庫服務器中的相關數據,均實時備份至網絡服務器中,再由網絡服務器共享至應急數據庫服務器中;在總數據庫服務器故障或進行日常維護時,啟用應急數據庫服務器,此時應急數據庫服務器中包含所有總數據庫服務器中的數據;另外,通過門診客戶端添加并儲存在應急數據庫服務器中的數據也會上傳至網絡服務器,并共享給總數據庫服務器。從而實現平臺的自動更新。
另外,該應急策略信息化匹配平臺具有自動切換正常系統和應急系統的功能,如圖2所示。

圖2 應急策略信息化匹配平臺自動切換流程
在門診客戶端使用人員登錄系統后,首先進行系統狀況的判定;若是應急情況下,管理人員會在系統上設置標識,客戶端使用人員可通過標識進行判定。如果是正常情況下,則進行正常系統的連接,即連接總數據庫服務器,連接成功則進入正常系統;若連接不成功,則進入應急系統。如果標識判定為應急狀態,那么則直接進行應急系統的連接,即連接應急數據庫服務器,連接成功則進入應急系統。另外,在每次業務結束后,都需要重新進行標識判定,以確認正常系統是否已經修復完成,若修復完成則連接正常系統,連接成功后進入正常系統,并退出應急系統;若連接不成功或修復未完成則繼續連接應急系統,直至正常系統修復成功。
根據該應急策略信息化匹配平臺的功能設計,建立了相應的數據庫。數據庫E-R圖給出了不同實體及其關系,如圖3所示。

圖3 數據庫的E-R圖
該數據庫主要有5個實體,分別為病患實體、藥品實體、入庫實體、出庫實體和庫存實體。另外圖3中還給出了該數據庫設計的邏輯結構和物理結構,該邏輯結構和物理結構是結合數據的儲存和調取以及系統的時間與空間效率進行設計的。
其中病患信息庫主要適用于儲存病患的相關信息,例如病患代碼、掛號科室代碼、入院時間代碼、出院時間代碼等。病患基本信息表示方法為emas_person_personnel;病患信息儲存的表示方法為emas_person_storage;病患入院信息表示方法為emas_person_import;病患出院信息表示方法為emas_person_export;診斷信息的表示方法為emas_person_treat;手術信息的表示方法為emas_person_surgery;后送處置情況的表示方法為emas_person_send。出診信息中還包含了出診人員信息和出診人員組別信息,分別可用emas_treatment_staff和emas_treatment_group來表示。藥品信息庫主要是用于儲存醫療藥品的庫存信息,主要包括藥品代碼、庫房代碼、入庫信息代碼、出庫信息代碼、藥品規格代碼、藥品有效期代碼等。藥品儲存的表示方法為emas_project_drug_storage;藥品入庫的表示方法為emas_project_drug_import;藥品出庫的表示方法為emas_project_drug_sexport。
該門診應急策略信息化匹配平臺自動更新設計的總體流程,如圖4所示。

圖4 數據自動更新流程圖
如果在正常系統下運行,操作人員通過門診客戶端進行數據錄入后,相應數據會儲存在總數據庫服務器中,總數據庫服務器會同時將數據備份并上傳至網關服務器,然后網關服務器再與應急數據庫服務器進行數據共享;然后于應急服務器上判定數據是否重復,若重復則不進行數據更新,若不重復則進行數據更新。若平臺是在應急系統下進行運行,相應流程與上述流程大致相同,數據先錄入到應急數據庫服務器,然后同步至總數據庫服務器,若數據不重復則進行數據更新。該門診應急策略信息化匹配平臺自動更新是在兩套系統下分別進行的,本質上是應急數據庫服務器的數據上傳和下載,實現對總數據庫服務器和應急數據庫服務器數據的添加和編輯等操作,實現總數據庫服務器和應急數據庫服務器數據的互通,保證兩個服務器具有相同的數據儲備以及相同的功能。
該門診應急策略信息化匹配平臺的自動更新包括了數據庫中所有數據的更新、上傳和下載,大致包括醫院醫生的個人信息、科室信息、工作日程信息,病患的基本信息、醫保信息、就診記錄信息,藥品基本信息、庫存信息等。自動更新功能通過C語言實現,本節以醫院醫生個人信息的自動更新為例進行介紹,其代碼如圖5所示。

圖5 醫院醫生個人信息自動更新源代碼框式圖
當醫生個人信息錄入后,根據醫生的科室、類別、職稱等信息進行分類,Setgroup是醫生分組方法,根據醫生的個人信息、組別進行匹配,具有相同科室、職稱信息的人分配到同一組中setstaff。分組利用random算法進行匹配,人員信息獲取利用setstaff方法獲取,利用checkgroup獲取分組信息。
Group組是分組信息,用來儲存醫生個人信息,儲存方法為savegroup;Staff是醫生個人信息表,包括醫生的ID、身份、科室、職稱、姓名、年齡、性別等信息;信息錄入通過ctreatstaff實現,利用checkstaff實現校對。
自動更新功能是利用checkstaff和creatstaff公用實現的,當總數據庫服務器上傳醫生個人信息后,通過網關服務器共享至應急數據庫服務器;應急數據庫服務器進行信息下載,利用Group方法和Setgroup方法進行分組,利用Staff方法儲存時,checkstaff進行信息校對,若存在相同信息,則不進行創建;若不存在相同信息則利用creatstaff進行醫生個人信息的創建,實現在應急數據庫服務器上的數據更新。
本文設計了一種門診應急策略信息化匹配平臺及其自動更新功能,并建立了相關的數據庫。該平臺主要是通過主數據庫服務器以及數據庫服務器并聯使用來實現的。在系統運行過程中,該平臺具有自動切換功能,通過識別管理人員設置的標識來進行正常系統和應急系統的相互切換。自動更新功能主要是主數據庫服務器和應急數據庫服務器之間的數據共享,在系統運行過程中數據上傳至網關服務器,然后實現二者之間的數據共享。