馮帥
基于三層結(jié)構(gòu)的衛(wèi)勤保障人員管理信息系統(tǒng)設計與實現(xiàn)
馮帥
目的:把計算機技術(shù)應用于軍事衛(wèi)勤任務保障工作中,實現(xiàn)衛(wèi)勤保障人員管理的信息化與網(wǎng)絡化。方法:分析衛(wèi)勤保障人員信息化管理的需求,采用基于ASP.NET技術(shù)的B/S模式三層結(jié)構(gòu)設計方案,運用C#設計語言進行開發(fā)。結(jié)果:該系統(tǒng)實現(xiàn)了軍事衛(wèi)勤保障人員科學選拔、后期查詢統(tǒng)計的功能,完成了信息采集、任務分配、數(shù)據(jù)反饋、管理決策的全數(shù)據(jù)鏈管理過程。結(jié)論:該系統(tǒng)實現(xiàn)了衛(wèi)勤保障人員的信息化管理,提高了衛(wèi)勤護理保障體制的自動性、高效性與科學性,為做好新形勢下信息化網(wǎng)絡化的軍事任務衛(wèi)勤保障工作提供了有力保障。
三層結(jié)構(gòu);衛(wèi)勤保障;ASP.NET;計算機管理;人員管理信息系統(tǒng)
為了適應新形勢下軍事衛(wèi)勤任務保障工作的需求,建立與信息化技術(shù)相結(jié)合的衛(wèi)勤保障體制是其重要舉措。其中,衛(wèi)勤保障人員合理、高效、科學的配置是保障體制中的重要一項。目前,許多部門在組織保障人員小組時基本憑經(jīng)驗分配,在任務種類多、保障人員多的情況下就會非常盲目,效率低且不科學?;诠芾聿块T的需求,筆者開發(fā)了衛(wèi)勤保障人員管理信息系統(tǒng),實現(xiàn)了衛(wèi)勤任務保障人員科學選拔、后期查詢統(tǒng)計的功能。
根據(jù)對系統(tǒng)需求的分析,該系統(tǒng)功能流程如圖1所示。
圖1 系統(tǒng)功能流程圖
該系統(tǒng)的主要功能是衛(wèi)勤任務保障人員信息管理,定期的各項素質(zhì)考核及參加軍事任務情況登統(tǒng)記,根據(jù)人員狀況、專業(yè)分類、考核分值及參加任務情況按照權(quán)重值進行最終測評,最后進行人員科學選拔。根據(jù)功能分析,該系統(tǒng)劃分為衛(wèi)勤任務保障人員選拔、人員管理、考核成績維護、任務維護、系統(tǒng)維護、查詢統(tǒng)計6個模塊,其邏輯模塊結(jié)構(gòu)如圖2所示。
2.1 三層結(jié)構(gòu)
從安全性、可擴展性、可移植性角度出發(fā),本系統(tǒng)采用基于ASP.NET技術(shù)的B/S模式三層結(jié)構(gòu)設計方案,使用C#設計語言、Visual Studio 2010工具開發(fā),以Oracle10g為后臺數(shù)據(jù)庫。
圖2 系統(tǒng)功能模塊圖
三層體系結(jié)構(gòu)是在客戶端與數(shù)據(jù)庫之間加入了一個中間層,也叫組件層??蛻舳瞬恢苯优c數(shù)據(jù)庫進行交互,而是通過COM/DCOM通信與中間層建立連接,再經(jīng)由中間層與數(shù)據(jù)庫進行交換[1]。
本系統(tǒng)的B/S三層結(jié)構(gòu)體系由瀏覽器、Web服務器和數(shù)據(jù)庫組成。表示層為瀏覽器端顯示界面,包括6個模塊,提供輸入和查詢統(tǒng)計功能;業(yè)務邏輯層建立一個組件文件,負責處理表示層的請求及功能邏輯的實現(xiàn);數(shù)據(jù)接口層實現(xiàn)與數(shù)據(jù)庫之間的數(shù)據(jù)交互。三層之間互相引用,建立邏輯關聯(lián)[2],如圖3所示。
圖3 B/S模式三層結(jié)構(gòu)圖
2.2 數(shù)據(jù)庫設計
本系統(tǒng)采用Oracle10.0.2.2數(shù)據(jù)庫,建立單獨的表空間及用戶。由需求規(guī)劃分析,創(chuàng)建wqbz用戶下與考核總科目、考核子科目、考核項目、衛(wèi)勤任務、人員信息有關的數(shù)據(jù)表,包括科目字典表、子科目字典表、項目字典表、人員信息表、人員—科目—成績表、人員—任務表及多個存儲過程,通過調(diào)用以上存儲過程創(chuàng)建人員—任務次數(shù)—考核成績對應虛擬表。
2.3 三層架構(gòu)的組件設計
系統(tǒng)功能主要通過業(yè)務層及數(shù)據(jù)訪問層的類文件、對象和界面實現(xiàn),其中,相同功能的類進行封裝構(gòu)成功能組件。本系統(tǒng)主要構(gòu)建了system.dll、mission.dll、database.dll組件文件,system.dll組件實現(xiàn)系統(tǒng)基本頁面及用戶管理功能(登錄驗證、頁面加載、系統(tǒng)用戶管理等),mission.dll組件實現(xiàn)系統(tǒng)功能流程操作,database.dll組件實現(xiàn)與數(shù)據(jù)庫間的數(shù)據(jù)交互。system.dll與mission.dll構(gòu)成業(yè)務層,database.dll實現(xiàn)數(shù)據(jù)接口層[3]。
2.3.1 數(shù)據(jù)訪問層的database.dll組件使用
ADO.NET技術(shù)訪問Oracle數(shù)據(jù)庫。ADO.NET是.NETFramework用于和數(shù)據(jù)源進行交互的面向?qū)ο箢悗?。本系統(tǒng)采用OLEDB.NETFramework數(shù)據(jù)類庫,主要使用Connection連接對象連接數(shù)據(jù)庫、command數(shù)據(jù)命令對象執(zhí)行增刪改 SQL語句、DataReader數(shù)據(jù)讀取器對象、DataAdapter數(shù)據(jù)適配器對象及DataSet數(shù)據(jù)集對象[3]。
2.3.2 業(yè)務層的system.d ll組件
system.dll組件主要實現(xiàn)系統(tǒng)用戶分組、用戶權(quán)限、登錄驗證、頁面加載等功能。當使用者登錄時,Web頁面調(diào)用system.dll的usermanager.cs類文件中的userlogin方法。userlogin方法引用database.dll中的runsql和runproc方法,從數(shù)據(jù)庫中獲取用戶對應權(quán)限及密碼驗證,重組Web頁面。
2.3.3 業(yè)務層的m ission.dll組件
mission.dll組件主要實現(xiàn)系統(tǒng)業(yè)務功能,包括項目維護、考核成績錄入、人員管理、任務人員篩選及查詢統(tǒng)計等功能。組件中的類文件執(zhí)行查詢、添加、刪除、更新、維護等操作,通過調(diào)用數(shù)據(jù)訪問層組件的各個方法實現(xiàn)系統(tǒng)的各項功能[4]。
3.1 動態(tài)生成功能模塊
設計時考慮系統(tǒng)的拓展性和可移植性,Web導航頁面、任務保障維護和成績錄入模塊均是動態(tài)生成的。使用者只需維護好任務字典和考核科目、子科目、項目字典以及考核規(guī)則表,表示層Web導航頁面自動刷新,任務保障和成績錄入模塊根據(jù)維護好的字典項目調(diào)用mission.dll類文件中的bindmission、bindclass、GridViewShow等各種方法自動更新顯示。
Web主頁導航樹的設計中使用treeview控件結(jié)合iframe框架實現(xiàn)[5]。具體實現(xiàn)方法如下:
protected void TreeNodePopulate(object sender, TreeNodeEventArgse)
{if(e.Node.ChildNodes.Count==0)
{switch(e.Node.Depth)
{case 0:
Bindclass(e.Node);//填充主目錄節(jié)點
break;
case 1:
Bindsubclass(e.Node);//填充子目錄節(jié)點
break;
default:
break;
}
}
}
public void Bindclass(TreeNode node) //綁定數(shù)據(jù)庫中任務名
{ OleDbConnection conn=DBCon();
conn.Open();
string sql="select mission_name from mission_ dict";
DataTable dt=database.GetDataTable(sql);
if(dt!=null)
{foreach(DataRow dr in dt.Rows)
{TreeNode tn=new TreeNode(Convert. ToString(dr["mission_name"])
tn.PopulateOnDemand=true;
tn.SelectAction=TreeNodeSelectAction. Expand; node.ChildNodes.Add(tn);}
}
}
3.2 衛(wèi)勤任務人員選拔
衛(wèi)勤任務人員選拔是本系統(tǒng)設計的主要功能。根據(jù)歷次參加衛(wèi)勤任務的情況、日??己丝颇康某煽儭⑿l(wèi)勤保障人員的狀態(tài)等綜合測評結(jié)果進行本次衛(wèi)勤任務人員的選拔,選拔結(jié)果同時反饋至日常任務維護中。
此項功能的實現(xiàn)主要采用.NET中的虛擬表技術(shù),調(diào)用Oracle數(shù)據(jù)庫中的createtableproc存儲過程生成虛擬表動態(tài)創(chuàng)建綁定gridview顯示,gridview列名為人員信息、任務名稱及考核科目(這幾項從字典表中提取,具體內(nèi)容和列數(shù)不確定,gridview字段值為列名對應人員信息、任務保障次數(shù)及考核項目按權(quán)重算出的科目成績)[6]。
public void setBind()
{
DataTable dt=getDataTable();//獲得數(shù)據(jù)源
gvshow=new GridView(); //創(chuàng)建gridview
gvshow.Width=Unit.Pixel(700);
gvshow.DataSource=dt;
for(int i=0;i
{
BoundField bc=new BoundField();
bc.DataField=dt.Columns[i].ColumnName.ToString ();
bc.HeaderText=dt.Columns[i].Caption.ToString(); gvshow.Columns.Add(bc);
}
}
public DataTable getDataTable()
{
OleDbConnection conn=DBCon();
conn.Open();
DataTabledt=database.runprocl("create tableprec"). Tables[0];//引用數(shù)據(jù)接口層方法,執(zhí)行存儲過程生成虛擬表
return dt;
}
3.3 ajax控件的使用
ajax是異步Javascript和XML的縮寫。在傳統(tǒng)的Web網(wǎng)頁中,當瀏覽器向服務器提出訪問請求時,Web頁面的每個服務器控件均與服務器連接一次。而在ajax處理模型中,一些頁面元素可以直接調(diào)用ajax引擎實現(xiàn)功能,只有當信息必須從服務器上獲得時才訪問服務器,這樣可節(jié)省時間、提高效率。本系統(tǒng)在登錄用戶的驗證碼、時間控件的獲取、同步刷新導航列表等功能中均使用ajax控件,本文中不再贅述。
軍事任務衛(wèi)勤保障人員管理系統(tǒng)是在.NET三層結(jié)構(gòu)的基礎上開發(fā)的,層次分明、邏輯清楚、功能穩(wěn)定。此外,設計時充分考慮系統(tǒng)的拓展性,各個功能模塊采用動態(tài)生成和創(chuàng)建虛擬表的技術(shù),為系統(tǒng)功能開發(fā)和擴充提供了技術(shù)保證。軍事任務衛(wèi)勤保障人員管理系統(tǒng)實現(xiàn)了對衛(wèi)勤保障人員的信息化管理,把保障人員的信息、日常工作學習狀態(tài)通過加權(quán)算法與衛(wèi)勤保障人員選拔相結(jié)合,完成了信息采集、任務分配、數(shù)據(jù)反饋、管理決策的全數(shù)據(jù)鏈管理過程,彌補了以往保障人員選拔中存在的憑經(jīng)驗、靠印象、盲選的不足,提高了衛(wèi)勤護理保障體制的自動性、高效性與科學性,為做好新形勢下信息化、網(wǎng)絡化的軍事任務衛(wèi)勤保障工作提供了有力保障。
[1]扶松柏.深入體驗C#項目開發(fā)[M].北京:清華大學出版社,2011:193-197.
[2]DinoE.構(gòu)建Web解決方案——應用ASP.NET和ADO.NET[M].北京:清華大學出版社,2002:321-335.
[3]樂藝.基于三層結(jié)構(gòu)的教務管理系統(tǒng)的開發(fā)與實現(xiàn)[J].計算機與現(xiàn)代化,2012(7):202-204.
[4]徐寶林.基于ADO.NET的應用程序訪問后臺數(shù)據(jù)的模塊劃分研究[J].計算機與現(xiàn)代化,2011(9):2 425-2 426.
[5]微軟公司.數(shù)據(jù)庫訪問技術(shù)——ADO.NET程序設計[M].北京:高等教育出版社,2004:203-208.
[6]Dino E.ASP數(shù)據(jù)訪問高級編程[J].程永敬,董啟雄,譯.北京:機械工業(yè)出版社,2004:159-162.
(收稿:2013-07-02 修回:2013-10-10)
Design and implementation of military medical support personnel management information system based on three-layer structure
FENG Shuai
(Departmentof Information,the 401st Hospital of the PLA,QingDao 266071,Shandong Province,China)
Objective To introduce computer technology into military medical support to realize the informatized and networked medical support personnel management.Methods The requirements of informatized medical support personnel managementwere analyzed,and three-layer structure based on B/Smode and ASP.NET technology was adopted.C#language was used for the development.Results The system realized the functions of selection,and inquiry&statistics of the personnel.The whole data link managementwas completed for information acquisition,mission assignment,data feedback and management decision.Conclusion The system implements the informatized management ofmedical support personnel, and enhances the automation,efficiency and rationality of medical nursing.[Chinese Medical Equipment Journal,2014,35(7):60-62]
three-layer structure;military medical support;ASP.NET;computermanagement;personnelmanagement information system
R318;TP311.1
A
1003-8868(2014)07-0060-03
10.7687/J.ISSN1003-8868.2014.07.060
馮 帥(1975—),女,碩士,工程師,主要從事醫(yī)院信息化管理方面的研究工作,E-mail:yangzhen20050306@163.com。
266071山東青島,解放軍401醫(yī)院信息科(馮 帥)