周紫鈺, 劉 越
(佳木斯大學信息電子技術學院,黑龍江 佳木斯 154007)
2020年4月黑龍江省新冠病毒疫情突然增加了大量輸入性和聚集性傳染,為了最大限度降低醫(yī)院交叉感染的風險,4月19日開始,醫(yī)院不僅要求非新冠患者住院要進行新冠病毒血清抗體和核酸檢測,而且要求陪護人員也要進行相關核酸檢測。由于陪護人員也是一個比較大的群體,這就給醫(yī)護人員增加了額外工作量。據(jù)了解國內大多數(shù)醫(yī)院關于陪護人群的新冠核酸檢測信息還沒有計入到醫(yī)院的信息系統(tǒng)中,相較于傳統(tǒng)手工登記信息,一是工作效率低,二是容易出現(xiàn)差錯,三是傳遞紙質登記信息需要消毒,比較麻煩。本系統(tǒng)主要是為了解決醫(yī)院陪護人員的核酸檢測信息登記、查詢管理等問題,使醫(yī)護工作者從繁雜工作中脫離出來,降低勞動強度,快速、準確地完成相關信息管理操作,減少接觸性的操作,避免感染風險。
系統(tǒng)采用B/S架構,使用.NET技術,C#為開發(fā)語言,實現(xiàn)的三層架構體系??蛻舳顺绦蚴褂肰isual Studio 2019,C#語言作為開發(fā)工具,服務端使用SQL Server 2012進行開發(fā)。
B/S架構全稱是Browser/Server,即瀏覽器和服務器架構模式,它是伴隨現(xiàn)代互聯(lián)網(wǎng)技術的發(fā)展,在C/S(Client/Server)架構基礎上演化而來的[1]。在B/S架構下,用戶可以通過瀏覽器打開工作界面,服務器端主要是進行各種事務邏輯處理。
ASP.NET是.NET框架的一部分,利用.NET框架中的類進行編程,可以使用C#,VB.NET,J#和JScript.NET等編程語言來開發(fā)Web程序[2]。ASP使用簡單的語言,能夠將VBscript,javaScript等語言直接嵌入到HTML,這使得用戶在設計Web頁面時變得更加容易。特別是ADO組件,可以輕松地訪問數(shù)據(jù)庫[3]。
C#是.NET開發(fā)的首選語言,C#綜合了VB簡單的可視化操作和C++的高效率的運行,還有它創(chuàng)新的語言特性和簡便的面向組件[4]。
數(shù)據(jù)庫在各個領域都充當著重要的角色,所以本系統(tǒng)使用了SQL Server2012版本的數(shù)據(jù)庫,SQL Server可以在許多操作系統(tǒng)上運行,這是因為SQL Server是對外開放形式的系統(tǒng),任何系統(tǒng)都可以與它進行完好的交互操作[5]。
基于B/S的核酸檢測信息管理系統(tǒng)采用B/S架構,基于.NET 技術,以C#為開發(fā)語言實現(xiàn)的三層架構體系[6]。三層結構主要包括前端的表示層,中間的邏輯層以及后臺的數(shù)據(jù)處理層[7]。系統(tǒng)應用總體技術架構如圖1所示。
圖1 系統(tǒng)總體技術架構圖
系統(tǒng)包括三個子系統(tǒng)及其下面的相關功能模塊,三個子系統(tǒng)分別為陪護人員,醫(yī)護人員和管理員。陪護人員子系統(tǒng)具有登記、查詢功能;醫(yī)護人員子系統(tǒng)在登錄后會根據(jù)不同權限具有檢測管理的相關功能,如反饋信息、信息編輯、檢測結果查詢等功能;管理員主要進行基礎管理和系統(tǒng)維護等功能,負責整個系統(tǒng)的角色分配,正常運行和維護。系統(tǒng)功能模塊圖如圖2所示。
圖2 系統(tǒng)功能模塊圖
2.2.1 陪護人員功能模塊
陪護人員有信息登記,查詢檢測時間和檢測結果的功能。信息登記就是注冊登錄,輸入陪護人員的姓名、年齡、性別、手機號、身份證號等以及患者的姓名和床號。點擊提交按鈕,數(shù)據(jù)庫中就會自動添加一行填寫后的信息記錄。這就代表登記成功了。在設計陪護人員功能模塊時,在前端用到了一些驗證控件,是為了防止有哪些信息是必須要填寫的,但是用戶沒有填。(用到的是非空驗證,代表哪些是必填字段)或者用戶在輸入信息時出現(xiàn)輸入錯誤的現(xiàn)象,系統(tǒng)會自動提示哪個地方輸入有誤。例如:手機號必須滿足11位的0-9的數(shù)字等(這里用到了規(guī)則驗證,用正則表達式表示[1]d{10})。圖3所示為陪護人員信息登記流程圖。另外,陪護人員可以通過手機掃描發(fā)送來的二維碼,及時查詢檢測時間、地點,及檢測結果。
圖3 陪護人員信息登記流程圖
2.2.2 醫(yī)護人員功能模塊
醫(yī)護人員的功能有信息查詢、信息編輯、反饋信息、信息收集的功能。醫(yī)護人員有不同的角色,具有的操作功能也略有差異。如果是普通護士,只能進行查詢病例,不可更改,也不可刪除。如果是護士長,可以進行查詢操作,添加操作。而主任就可以進行增、刪、改、查的操作,也就是級別越大功能會越多。
系統(tǒng)流程是首先進入login_method.aspx中,右鍵選擇瀏覽器運行,進入登錄方式界面。前端通過DropDownList來顯示用戶,有陪護人員、醫(yī)護人員及管理員,然后通過登錄按鈕Button的單擊事件來判斷登錄的身份,如果選擇Button1的按鈕則是陪護人員,后端通過Response.Redirect(″./aaccompany_login.aspx″);語句跳轉到陪護人員登錄界面;若點擊Button2按鈕后端則是通過Response.Redirect(″./doctor_login.aspx″);語句跳轉到醫(yī)護人員登錄界面;若是選擇Button3按鈕后端是通過Response.Redirect(″./admin_login.aspx″);語句跳轉到管理員登錄界面,登錄時需要和數(shù)據(jù)庫中創(chuàng)建的表里的信息進行比對,如果信息相同就代表登錄成功,成功之后就可以進行相應的查詢、編輯等操作。
當醫(yī)護人員登錄成功后,進入檢測管理界面,點擊查詢進入信息查詢頁面,進行瀏覽患者信息。如圖4所示是按照采集單位進行查詢的界面,另外還可以通過就診科室、時間、檢測類型等來進行查詢或者多條件并列查詢。界面中通過Repeater和<%#Eval(“患者姓名”)和<%#Eval(“患者性別”)等將數(shù)據(jù)庫中的數(shù)據(jù)顯示在頁面上。
圖4 系統(tǒng)查詢模塊
在數(shù)據(jù)庫設計部分,主要利用SQL Server 2012設計了幾個數(shù)據(jù)庫表用來存儲檢測人員的基本信息、采集信息、檢測信息等。在數(shù)據(jù)庫中主要用到數(shù)據(jù)查詢、數(shù)據(jù)插入、數(shù)據(jù)更新、數(shù)據(jù)刪除、數(shù)據(jù)連接等操作。數(shù)據(jù)查詢操作使用SQL語言(Structured Query Language,結構化查詢語言)中select from where語句(找出滿足條件的記錄),利用定義好的相關字段的信息,通過這些字段名進行查詢表里的數(shù)據(jù)。數(shù)據(jù)插入操作使用insert into(增加記錄)語句。數(shù)據(jù)更新、修改操作是update set(更正滿足條件的記錄)語句。數(shù)據(jù)刪除操作是delete from(刪除滿足條件的記錄)語句。
本系統(tǒng)在訪問數(shù)據(jù)庫時用到了ADO.NET提供的各種對象,通過編寫代碼的方式自由地實現(xiàn)對數(shù)據(jù)庫的各種存取操作。首先為了能從SQL Server數(shù)據(jù)庫中執(zhí)行select語句的查詢(string SqlStr = ″select * from accompany1 where 患者姓名=? + patient_name1 + ?″;)需要知道數(shù)據(jù)庫的用戶id和密碼,還要有連接的數(shù)據(jù)庫的名字,這里我們可以定義一個字符串將其存起來string ConStr1 = ″server=(local);user id=sa;pwd=11;database=dc″;接下來通過定義的字符串連接到數(shù)據(jù)庫的SqlConnection對象,SqlConnection con = new SqlConnection(ConStr1);然后創(chuàng)建一個包含查詢語句的SqlDataAdapter對象,SqlDataAdapter ada = new SqlDataAdapter(SqlStr con);隨后用Connection對象的方法打開連接con.Open();之后用查詢的返回結果填充到DataSet 對象中,這時需要調用SqlDataAdapter的Fill方法,DataSet ds = new DataSet(); ada.Fill(ds)。其中要注意的是當使用Connection對象的Open()方法打開數(shù)據(jù)庫連接時一定不要忘記當不再使用數(shù)據(jù)源時使用Close()方法關閉與數(shù)據(jù)源的連接。
基于B/S的核酸檢測信息管理系統(tǒng)的應用,將大大提高醫(yī)護人員的工作效率,避免手工操作中的一些紕漏和錯誤,也有效降低了交叉感染的風險,為檢測者提供了方便、快捷的查詢檢測結果。疫情的反復,在一段時間內,人員流動還需要提供核酸檢測報告,可以把本系統(tǒng)的被檢測者由醫(yī)院陪護人員擴大到所有需要進行核酸檢測的人員。這樣被檢測者到外地辦事可以通過手機掃碼查詢到的結果來提供證明,十分方便。另外,本系統(tǒng)開發(fā)的軟件擴展性好,日后可以升級、完善功能,以便于在醫(yī)院平時陪護管理、日常醫(yī)院信息管理或藥店開處方藥信息管理中擴展應用范圍。