張華貴 邱丹



摘要:通過c#技術(shù)和SQLSERVER數(shù)據(jù)庫來開發(fā)國際疾病編碼查詢系統(tǒng),可以有效地解決醫(yī)護(hù)人員對疾病編碼靈活快速錄入的問題,也方便醫(yī)護(hù)人員進(jìn)行查詢和統(tǒng)計,保證了醫(yī)務(wù)人員錄入疾病編碼的正確性,可以明顯提高醫(yī)護(hù)人員的工作效率。
關(guān)鍵詞:疾病編碼;c#技術(shù);SQLSERVER數(shù)據(jù)庫
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)14-0128-03
1背景
國際疾病編碼分類是國際上公認(rèn)的對疾病以及損傷和死亡進(jìn)行分類統(tǒng)計的世界標(biāo)準(zhǔn),世界衛(wèi)生組織會定期對編碼和分類進(jìn)行更新。全世界范圍內(nèi)的醫(yī)療行業(yè)疾病編碼都統(tǒng)一使用,它在疾病索引、疾病監(jiān)測與統(tǒng)計、醫(yī)療質(zhì)量評估及保險等方面都發(fā)揮著極大的作用。目前,它已經(jīng)進(jìn)行了多次的分類更新,最近一次是2018年6月份發(fā)布的,稱為《國際疾病分類第十一次修改本》(簡稱ICD-11),這是20多年來ICD的第一次修訂,國家衛(wèi)生健康委已下發(fā)了通知,自2019年3月1日想,各級各類醫(yī)療機(jī)構(gòu)應(yīng)當(dāng)全面使用ICD-11進(jìn)行疾病分類和編碼,這樣做對于提高醫(yī)療服務(wù)標(biāo)準(zhǔn)化水平和管理效率,促進(jìn)診療信息有效互聯(lián)互通具有積極意義。由于疾病編碼規(guī)則非常復(fù)雜,學(xué)習(xí)難度大,想完全掌握不太容易,基于這種原因開發(fā)了這套查詢系統(tǒng)。此系統(tǒng)通過網(wǎng)絡(luò)并利用C#編程語言和SQLSERVER數(shù)據(jù)庫來進(jìn)行開發(fā)疾病編碼的查詢檢索,使醫(yī)護(hù)人員能夠利用網(wǎng)絡(luò)進(jìn)行疾病編碼知識的學(xué)習(xí),降低記憶難度,進(jìn)一步普及ICD-11疾病編碼。
2系統(tǒng)模塊設(shè)計
2.1數(shù)據(jù)庫設(shè)計
本系統(tǒng)所使用的數(shù)據(jù)庫是微軟公司的SQL Server2012,SQL Server是結(jié)構(gòu)化的關(guān)系型數(shù)據(jù)庫,存儲數(shù)據(jù)安全可靠,可以在此基礎(chǔ)上開發(fā)出高可用性的數(shù)據(jù)應(yīng)用程序。由于很多醫(yī)療機(jī)構(gòu)還在使用原有的ICD-10疾病編碼,所以系統(tǒng)中也提供了原有的編碼查詢功能。首先在SQL Server數(shù)據(jù)庫建立三張數(shù)據(jù)表,其中兩張為ICD-10和ICD-11數(shù)據(jù)表,另外一張是管理員數(shù)據(jù)表。如下表1、2所示。
2.2功能模塊設(shè)計
系統(tǒng)主要由綜合管理、綜合查詢、數(shù)據(jù)維護(hù)管理和常用工具模塊組成。其中綜合管理模塊共包含五個功能:“管理員密碼”修改功能,“ICD10”管理功能、“ICD11管理功能”、“換膚”功能以及直接更換操作界面的功能。綜合查詢模塊包含目前只包含“查詢疾病編碼”功能。數(shù)據(jù)維護(hù)管理模塊包含兩個功能:“數(shù)據(jù)備份”功能和“數(shù)據(jù)恢復(fù)”功能。常用工具則是提供一些常用的計算器、pdf查看等等功能。
程序運行后的界面如圖1所示。
本系統(tǒng)采用了分層設(shè)計思想,但由于是c#設(shè)計的winform程序,所以這里BLL文件夾為業(yè)務(wù)層只是包含了數(shù)據(jù)實體模型。DAL文件夾為數(shù)據(jù)訪問層,放置程序的所有數(shù)據(jù)處理相關(guān)的類,GUI目錄為用戶界面層,放置所有和用戶交互相關(guān)的win-form界面。整個系統(tǒng)使用MDI(多文檔界面)來進(jìn)行開發(fā),所有的子窗體都是在MainForm主窗體中展體,主窗體使用Devex-press中的DocumentManager控件作用容器來載入所有模塊中的功能窗體。這里關(guān)鍵技術(shù)是如何防止子窗體在主窗體中被無限制打開,所以這里在MainForm主窗體設(shè)計了一個如下函數(shù),判斷子窗體是否處于激活狀態(tài):
新增編碼的代碼處理事件和修改類似,這里就不詳細(xì)列出。編碼導(dǎo)出和打印功能非常簡單,直接使用和GfidContro控件中的ExportToXls和XtraPfiming來實現(xiàn)。換膚功能是利用了Devexpress的控件skinRibbonGallervBarItem來實現(xiàn),這個控件包含了從xp到winl0里所有出現(xiàn)過的主題搭配形式,只要選擇想要的主題即可。
2.2.2綜合查詢模塊設(shè)計開發(fā)
綜合查詢模塊中“查詢疾病編碼”功能也是直接使用Grid-Contro來展示數(shù)據(jù),數(shù)據(jù)載入顯示的代碼和ICDll中的代碼基本相同,但在這里,可以通過模糊查詢來實現(xiàn)可以顯示ICDl0和ICDll兩個表中名稱相關(guān)的編碼,以便于醫(yī)護(hù)人員進(jìn)行編碼分析。
2.2.3數(shù)據(jù)維護(hù)管理模塊設(shè)計開發(fā)
數(shù)據(jù)維護(hù)管理模塊中主要包含“數(shù)據(jù)備份”和“數(shù)據(jù)恢復(fù)”功能。這兩個功能是一個數(shù)據(jù)管理信息系統(tǒng)中常用的功能,通過調(diào)用數(shù)據(jù)庫的語言來執(zhí)行,并將備份文件寫人本地文件夾,備份的時候執(zhí)行的事件已經(jīng)寫成了一個方法BackUp,點擊按鈕直接執(zhí)行此事件即可。這里我們只列出備份功能的代碼,因為恢復(fù)功能也與此類似:
常用功能模塊主要是一些日常用到的如計算器、PDF閱讀器等功能,這里就不一一列出了。
3系統(tǒng)部署
系統(tǒng)部署的方法非常簡單,只需將可執(zhí)行文件的整個目錄拷貝到使用windows系統(tǒng)的計算機(jī)中,并且在計算機(jī)中安裝.net framework4.5的庫文件程序就可以了。數(shù)據(jù)庫的文件可以通過附加或者恢復(fù)的方法將備份的文件還原到安裝有sql Serv-er2012以上的計算機(jī)中就行。唯一需要注意的是可執(zhí)行文件的數(shù)據(jù)庫配置需要定位到安裝數(shù)據(jù)庫計算機(jī)的IP地址。這樣,所有能夠連接到這臺數(shù)據(jù)庫的計算機(jī)都可以運行疾病編碼查詢程序了。
4結(jié)束語
此程序可進(jìn)一步擴(kuò)展,通過更加智能的輸人感知實現(xiàn)智能優(yōu)化查詢,如:在下拉列表查詢條件<名稱>中輸入肝炎,就會列出所有肝炎有關(guān)疾病的下拉列表,并顯示全部記錄數(shù),這樣更便于使用和檢索。目前,系統(tǒng)ICD110和ICD11的編碼庫是全國大型醫(yī)院所使用的疾病編碼庫,可以完全滿足醫(yī)療人員的使用需要,如果有需要的人員,可以跟我聯(lián)系。我的電子郵件地址為zhg_w@163.com。