馮帥
基于三層結(jié)構(gòu)的衛(wèi)勤保障人員管理信息系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
馮帥
目的:把計(jì)算機(jī)技術(shù)應(yīng)用于軍事衛(wèi)勤任務(wù)保障工作中,實(shí)現(xiàn)衛(wèi)勤保障人員管理的信息化與網(wǎng)絡(luò)化。方法:分析衛(wèi)勤保障人員信息化管理的需求,采用基于ASP.NET技術(shù)的B/S模式三層結(jié)構(gòu)設(shè)計(jì)方案,運(yùn)用C#設(shè)計(jì)語言進(jìn)行開發(fā)。結(jié)果:該系統(tǒng)實(shí)現(xiàn)了軍事衛(wèi)勤保障人員科學(xué)選拔、后期查詢統(tǒng)計(jì)的功能,完成了信息采集、任務(wù)分配、數(shù)據(jù)反饋、管理決策的全數(shù)據(jù)鏈管理過程。結(jié)論:該系統(tǒng)實(shí)現(xiàn)了衛(wèi)勤保障人員的信息化管理,提高了衛(wèi)勤護(hù)理保障體制的自動(dòng)性、高效性與科學(xué)性,為做好新形勢下信息化網(wǎng)絡(luò)化的軍事任務(wù)衛(wèi)勤保障工作提供了有力保障。
三層結(jié)構(gòu);衛(wèi)勤保障;ASP.NET;計(jì)算機(jī)管理;人員管理信息系統(tǒng)
為了適應(yīng)新形勢下軍事衛(wèi)勤任務(wù)保障工作的需求,建立與信息化技術(shù)相結(jié)合的衛(wèi)勤保障體制是其重要舉措。其中,衛(wèi)勤保障人員合理、高效、科學(xué)的配置是保障體制中的重要一項(xiàng)。目前,許多部門在組織保障人員小組時(shí)基本憑經(jīng)驗(yàn)分配,在任務(wù)種類多、保障人員多的情況下就會(huì)非常盲目,效率低且不科學(xué)?;诠芾聿块T的需求,筆者開發(fā)了衛(wèi)勤保障人員管理信息系統(tǒng),實(shí)現(xiàn)了衛(wèi)勤任務(wù)保障人員科學(xué)選拔、后期查詢統(tǒng)計(jì)的功能。
根據(jù)對(duì)系統(tǒng)需求的分析,該系統(tǒng)功能流程如圖1所示。
圖1 系統(tǒng)功能流程圖
該系統(tǒng)的主要功能是衛(wèi)勤任務(wù)保障人員信息管理,定期的各項(xiàng)素質(zhì)考核及參加軍事任務(wù)情況登統(tǒng)記,根據(jù)人員狀況、專業(yè)分類、考核分值及參加任務(wù)情況按照權(quán)重值進(jìn)行最終測評(píng),最后進(jìn)行人員科學(xué)選拔。根據(jù)功能分析,該系統(tǒng)劃分為衛(wèi)勤任務(wù)保障人員選拔、人員管理、考核成績維護(hù)、任務(wù)維護(hù)、系統(tǒng)維護(hù)、查詢統(tǒng)計(jì)6個(gè)模塊,其邏輯模塊結(jié)構(gòu)如圖2所示。
2.1 三層結(jié)構(gòu)
從安全性、可擴(kuò)展性、可移植性角度出發(fā),本系統(tǒng)采用基于ASP.NET技術(shù)的B/S模式三層結(jié)構(gòu)設(shè)計(jì)方案,使用C#設(shè)計(jì)語言、Visual Studio 2010工具開發(fā),以O(shè)racle10g為后臺(tái)數(shù)據(jù)庫。
圖2 系統(tǒng)功能模塊圖
三層體系結(jié)構(gòu)是在客戶端與數(shù)據(jù)庫之間加入了一個(gè)中間層,也叫組件層??蛻舳瞬恢苯优c數(shù)據(jù)庫進(jìn)行交互,而是通過COM/DCOM通信與中間層建立連接,再經(jīng)由中間層與數(shù)據(jù)庫進(jìn)行交換[1]。
本系統(tǒng)的B/S三層結(jié)構(gòu)體系由瀏覽器、Web服務(wù)器和數(shù)據(jù)庫組成。表示層為瀏覽器端顯示界面,包括6個(gè)模塊,提供輸入和查詢統(tǒng)計(jì)功能;業(yè)務(wù)邏輯層建立一個(gè)組件文件,負(fù)責(zé)處理表示層的請(qǐng)求及功能邏輯的實(shí)現(xiàn);數(shù)據(jù)接口層實(shí)現(xiàn)與數(shù)據(jù)庫之間的數(shù)據(jù)交互。三層之間互相引用,建立邏輯關(guān)聯(lián)[2],如圖3所示。
圖3 B/S模式三層結(jié)構(gòu)圖
2.2 數(shù)據(jù)庫設(shè)計(jì)
本系統(tǒng)采用Oracle10.0.2.2數(shù)據(jù)庫,建立單獨(dú)的表空間及用戶。由需求規(guī)劃分析,創(chuàng)建wqbz用戶下與考核總科目、考核子科目、考核項(xiàng)目、衛(wèi)勤任務(wù)、人員信息有關(guān)的數(shù)據(jù)表,包括科目字典表、子科目字典表、項(xiàng)目字典表、人員信息表、人員—科目—成績表、人員—任務(wù)表及多個(gè)存儲(chǔ)過程,通過調(diào)用以上存儲(chǔ)過程創(chuàng)建人員—任務(wù)次數(shù)—考核成績對(duì)應(yīng)虛擬表。
2.3 三層架構(gòu)的組件設(shè)計(jì)
系統(tǒng)功能主要通過業(yè)務(wù)層及數(shù)據(jù)訪問層的類文件、對(duì)象和界面實(shí)現(xiàn),其中,相同功能的類進(jìn)行封裝構(gòu)成功能組件。本系統(tǒng)主要構(gòu)建了system.dll、mission.dll、database.dll組件文件,system.dll組件實(shí)現(xiàn)系統(tǒng)基本頁面及用戶管理功能(登錄驗(yàn)證、頁面加載、系統(tǒng)用戶管理等),mission.dll組件實(shí)現(xiàn)系統(tǒng)功能流程操作,database.dll組件實(shí)現(xiàn)與數(shù)據(jù)庫間的數(shù)據(jù)交互。system.dll與mission.dll構(gòu)成業(yè)務(wù)層,database.dll實(shí)現(xiàn)數(shù)據(jù)接口層[3]。
2.3.1 數(shù)據(jù)訪問層的database.dll組件使用
ADO.NET技術(shù)訪問Oracle數(shù)據(jù)庫。ADO.NET是.NETFramework用于和數(shù)據(jù)源進(jìn)行交互的面向?qū)ο箢悗?。本系統(tǒng)采用OLEDB.NETFramework數(shù)據(jù)類庫,主要使用Connection連接對(duì)象連接數(shù)據(jù)庫、command數(shù)據(jù)命令對(duì)象執(zhí)行增刪改 SQL語句、DataReader數(shù)據(jù)讀取器對(duì)象、DataAdapter數(shù)據(jù)適配器對(duì)象及DataSet數(shù)據(jù)集對(duì)象[3]。
2.3.2 業(yè)務(wù)層的system.d ll組件
system.dll組件主要實(shí)現(xiàn)系統(tǒng)用戶分組、用戶權(quán)限、登錄驗(yàn)證、頁面加載等功能。當(dāng)使用者登錄時(shí),Web頁面調(diào)用system.dll的usermanager.cs類文件中的userlogin方法。userlogin方法引用database.dll中的runsql和runproc方法,從數(shù)據(jù)庫中獲取用戶對(duì)應(yīng)權(quán)限及密碼驗(yàn)證,重組Web頁面。
2.3.3 業(yè)務(wù)層的m ission.dll組件
mission.dll組件主要實(shí)現(xiàn)系統(tǒng)業(yè)務(wù)功能,包括項(xiàng)目維護(hù)、考核成績錄入、人員管理、任務(wù)人員篩選及查詢統(tǒng)計(jì)等功能。組件中的類文件執(zhí)行查詢、添加、刪除、更新、維護(hù)等操作,通過調(diào)用數(shù)據(jù)訪問層組件的各個(gè)方法實(shí)現(xiàn)系統(tǒng)的各項(xiàng)功能[4]。
3.1 動(dòng)態(tài)生成功能模塊
設(shè)計(jì)時(shí)考慮系統(tǒng)的拓展性和可移植性,Web導(dǎo)航頁面、任務(wù)保障維護(hù)和成績錄入模塊均是動(dòng)態(tài)生成的。使用者只需維護(hù)好任務(wù)字典和考核科目、子科目、項(xiàng)目字典以及考核規(guī)則表,表示層Web導(dǎo)航頁面自動(dòng)刷新,任務(wù)保障和成績錄入模塊根據(jù)維護(hù)好的字典項(xiàng)目調(diào)用mission.dll類文件中的bindmission、bindclass、GridViewShow等各種方法自動(dòng)更新顯示。
Web主頁導(dǎo)航樹的設(shè)計(jì)中使用treeview控件結(jié)合iframe框架實(shí)現(xiàn)[5]。具體實(shí)現(xiàn)方法如下:
protected void TreeNodePopulate(object sender, TreeNodeEventArgse)
{if(e.Node.ChildNodes.Count==0)
{switch(e.Node.Depth)
{case 0:
Bindclass(e.Node);//填充主目錄節(jié)點(diǎn)
break;
case 1:
Bindsubclass(e.Node);//填充子目錄節(jié)點(diǎn)
break;
default:
break;
}
}
}
public void Bindclass(TreeNode node) //綁定數(shù)據(jù)庫中任務(wù)名
{ 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ù)人員選拔
衛(wèi)勤任務(wù)人員選拔是本系統(tǒng)設(shè)計(jì)的主要功能。根據(jù)歷次參加衛(wèi)勤任務(wù)的情況、日??己丝颇康某煽?、衛(wèi)勤保障人員的狀態(tài)等綜合測評(píng)結(jié)果進(jìn)行本次衛(wèi)勤任務(wù)人員的選拔,選拔結(jié)果同時(shí)反饋至日常任務(wù)維護(hù)中。
此項(xiàng)功能的實(shí)現(xiàn)主要采用.NET中的虛擬表技術(shù),調(diào)用Oracle數(shù)據(jù)庫中的createtableproc存儲(chǔ)過程生成虛擬表動(dòng)態(tài)創(chuàng)建綁定gridview顯示,gridview列名為人員信息、任務(wù)名稱及考核科目(這幾項(xiàng)從字典表中提取,具體內(nèi)容和列數(shù)不確定,gridview字段值為列名對(duì)應(yīng)人員信息、任務(wù)保障次數(shù)及考核項(xiàng)目按權(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í)行存儲(chǔ)過程生成虛擬表
return dt;
}
3.3 ajax控件的使用
ajax是異步Javascript和XML的縮寫。在傳統(tǒng)的Web網(wǎng)頁中,當(dāng)瀏覽器向服務(wù)器提出訪問請(qǐng)求時(shí),Web頁面的每個(gè)服務(wù)器控件均與服務(wù)器連接一次。而在ajax處理模型中,一些頁面元素可以直接調(diào)用ajax引擎實(shí)現(xiàn)功能,只有當(dāng)信息必須從服務(wù)器上獲得時(shí)才訪問服務(wù)器,這樣可節(jié)省時(shí)間、提高效率。本系統(tǒng)在登錄用戶的驗(yàn)證碼、時(shí)間控件的獲取、同步刷新導(dǎo)航列表等功能中均使用ajax控件,本文中不再贅述。
軍事任務(wù)衛(wèi)勤保障人員管理系統(tǒng)是在.NET三層結(jié)構(gòu)的基礎(chǔ)上開發(fā)的,層次分明、邏輯清楚、功能穩(wěn)定。此外,設(shè)計(jì)時(shí)充分考慮系統(tǒng)的拓展性,各個(gè)功能模塊采用動(dòng)態(tài)生成和創(chuàng)建虛擬表的技術(shù),為系統(tǒng)功能開發(fā)和擴(kuò)充提供了技術(shù)保證。軍事任務(wù)衛(wèi)勤保障人員管理系統(tǒng)實(shí)現(xiàn)了對(duì)衛(wèi)勤保障人員的信息化管理,把保障人員的信息、日常工作學(xué)習(xí)狀態(tài)通過加權(quán)算法與衛(wèi)勤保障人員選拔相結(jié)合,完成了信息采集、任務(wù)分配、數(shù)據(jù)反饋、管理決策的全數(shù)據(jù)鏈管理過程,彌補(bǔ)了以往保障人員選拔中存在的憑經(jīng)驗(yàn)、靠印象、盲選的不足,提高了衛(wèi)勤護(hù)理保障體制的自動(dòng)性、高效性與科學(xué)性,為做好新形勢下信息化、網(wǎng)絡(luò)化的軍事任務(wù)衛(wèi)勤保障工作提供了有力保障。
[1]扶松柏.深入體驗(yàn)C#項(xiàng)目開發(fā)[M].北京:清華大學(xué)出版社,2011:193-197.
[2]DinoE.構(gòu)建Web解決方案——應(yīng)用ASP.NET和ADO.NET[M].北京:清華大學(xué)出版社,2002:321-335.
[3]樂藝.基于三層結(jié)構(gòu)的教務(wù)管理系統(tǒng)的開發(fā)與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2012(7):202-204.
[4]徐寶林.基于ADO.NET的應(yīng)用程序訪問后臺(tái)數(shù)據(jù)的模塊劃分研究[J].計(jì)算機(jī)與現(xiàn)代化,2011(9):2 425-2 426.
[5]微軟公司.數(shù)據(jù)庫訪問技術(shù)——ADO.NET程序設(shè)計(jì)[M].北京:高等教育出版社,2004:203-208.
[6]Dino E.ASP數(shù)據(jù)訪問高級(jí)編程[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ī)院信息科(馮 帥)