方小勇
【摘 要】每年度單位都會(huì)組織對(duì)本單位內(nèi)設(shè)部門(mén)進(jìn)行目標(biāo)考核,目標(biāo)考核是單位內(nèi)部管理中一個(gè)不可或缺的重要環(huán)節(jié)。傳統(tǒng)的目標(biāo)考核存在工作量高度集中、資料浪費(fèi)、主觀因素影響等多方面因素。本文在對(duì)軟件的系統(tǒng)分析、總體設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、功能實(shí)現(xiàn)等基礎(chǔ)上,提出了基于B/S結(jié)構(gòu)的高校部門(mén)目標(biāo)考核管理系統(tǒng)的基本設(shè)計(jì)思想,介紹了各功能模塊及數(shù)據(jù)庫(kù)設(shè)計(jì),以及軟件的實(shí)現(xiàn)方法。
【關(guān)鍵詞】B/S;目標(biāo)考核;管理系統(tǒng);設(shè)計(jì);實(shí)現(xiàn)
0 前言
很多高校每年都會(huì)對(duì)本單位各部門(mén)的工作開(kāi)展及落實(shí)情況進(jìn)行目標(biāo)考核,傳統(tǒng)的紙質(zhì)化考核存在紙張浪費(fèi)、主管因素影響等問(wèn)題,為此,我們研究開(kāi)發(fā)了某高校的部門(mén)目標(biāo)考核管理系統(tǒng),將考核工作從原來(lái)的集中考核轉(zhuǎn)換為日??己?,考核過(guò)程不受時(shí)空限制,節(jié)省考核精力和考核成本,各類(lèi)材料實(shí)行電子存儲(chǔ),便于保管及查詢。系統(tǒng)采用B/S的軟件體系結(jié)構(gòu),利用ASP.NET(C#)技術(shù)和SQL Server數(shù)據(jù)庫(kù)實(shí)現(xiàn)。
1 系統(tǒng)功能需求
根據(jù)目標(biāo)考核的要求,系統(tǒng)必須具備如下主要功能模塊:(1)考核年度管理模塊;(2)考核部門(mén)管理模塊;(3)考核指標(biāo)管理模塊;(4)考核部門(mén)上傳支撐材料模塊;(5)評(píng)分管理及統(tǒng)計(jì)模塊;(6)信息發(fā)布模塊;(7)用戶管理模塊;(8)數(shù)據(jù)備份與恢復(fù)模塊。系統(tǒng)總體結(jié)構(gòu)如下:
1.1 各模塊功能需求
(1)考核年度管理模塊。該模塊實(shí)現(xiàn)對(duì)考核年度的管理,包括設(shè)定年度內(nèi)上傳考核支撐材料的截止時(shí)間。
(2)考核部門(mén)管理模塊。該模塊實(shí)現(xiàn)對(duì)考核部門(mén)的管理。
(3)考核指標(biāo)管理模塊。該模塊實(shí)現(xiàn)對(duì)各年度各部門(mén)考核指標(biāo)的管理。
(4)上傳支撐材料管理模塊。該模塊實(shí)現(xiàn)考核部門(mén)對(duì)本部門(mén)各項(xiàng)指標(biāo)支撐材料的上傳及修改等功能。
(5)評(píng)分管理及統(tǒng)計(jì)模塊。該模塊實(shí)現(xiàn)評(píng)分、評(píng)分匯總統(tǒng)計(jì)及導(dǎo)出Excel功能。
(6)信息發(fā)布與管理模塊。該模塊實(shí)現(xiàn)信息的發(fā)布及管理等功能。
(7)用戶管理模塊。該模塊實(shí)現(xiàn)用戶管理,以及用戶權(quán)限的設(shè)置等功能。
(8)數(shù)據(jù)備份與恢復(fù)模塊。該模塊實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)及支撐材料的備份、恢復(fù)等功能。
1.2 系統(tǒng)角色的確定
部門(mén)目標(biāo)考核系統(tǒng)主要?jiǎng)?chuàng)建三類(lèi)角色:
(1)系統(tǒng)管理員。主要功能:管理用戶、考核年度管理、考核部門(mén)管理、指標(biāo)維護(hù)、評(píng)分統(tǒng)計(jì)、信息發(fā)布、數(shù)據(jù)備份與恢復(fù)。
(2)考核部門(mén)用戶。主要功能:上傳或修改本部門(mén)考核指標(biāo)支撐材料。
(3)評(píng)分用戶。主要功能:評(píng)分、取消評(píng)分、評(píng)分統(tǒng)計(jì)及導(dǎo)出。
2 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.1 用戶登錄模塊
2.1.1 模塊實(shí)現(xiàn)算法
對(duì)用戶輸入的賬戶和密碼進(jìn)行驗(yàn)證,驗(yàn)證通過(guò)則保存登錄用戶權(quán)限,進(jìn)入目標(biāo)考核管理系統(tǒng)主界面;驗(yàn)證失敗返回登錄界面。
2.1.2 模塊數(shù)據(jù)庫(kù)設(shè)計(jì)
用戶信息表主要包含以下字段:ID、所屬部門(mén)、真實(shí)姓名、賬戶、密碼、用戶啟用狀態(tài)、年度管理權(quán)限、部門(mén)管理權(quán)限、指標(biāo)管理權(quán)限、評(píng)分權(quán)限、上傳附件權(quán)限、用戶管理權(quán)限、數(shù)據(jù)備份恢復(fù)權(quán)限、信息發(fā)布權(quán)限等。
2.2 考核年度管理模塊
2.2.1 模塊實(shí)現(xiàn)算法
若登錄用戶具備考核年度管理權(quán)限,顯示該模塊的菜單及界面,對(duì)年度信息進(jìn)行管理:(1)添加/修改年度:在對(duì)年度信息有效性驗(yàn)證通過(guò)后,可添加或修改年度;(2)刪除年度:若某年度與其它模塊無(wú)任何數(shù)據(jù)關(guān)聯(lián),可以刪除;(3)鎖定年度:在完成本年度評(píng)分后,可以鎖定該年度,年度鎖定后,將不能進(jìn)行評(píng)分、上傳資料等操作;(4)設(shè)置當(dāng)年年度:可選擇設(shè)置某年度為當(dāng)前年度。若登錄用戶無(wú)考核年度管理權(quán)限,隱藏該模塊的菜單及界面。
2.2.2 模塊數(shù)據(jù)庫(kù)設(shè)計(jì)
年度信息表主要包含以下字段:ID、年度、上傳資料截止時(shí)間、當(dāng)年年度狀態(tài)、年度鎖定狀態(tài)等。
2.3 考核部門(mén)管理模塊
2.3.1 模塊實(shí)現(xiàn)算法
若登錄用戶具備考核部門(mén)管理權(quán)限,顯示該模塊的菜單及界面,對(duì)部門(mén)信息進(jìn)行管理:(1)添加/修改:在對(duì)部門(mén)信息有效性驗(yàn)證通過(guò)后,可添加或修改部門(mén)信息;(2)刪除:若某部門(mén)與其它模塊無(wú)任何數(shù)據(jù)關(guān)聯(lián),可以刪除。若登錄用戶無(wú)考核部門(mén)管理權(quán)限,隱藏該模塊的菜單及界面。
2.3.2 模塊數(shù)據(jù)庫(kù)設(shè)計(jì)
考核部門(mén)信息表主要包含ID、部門(mén)名稱(chēng)等字段。
2.4 考核指標(biāo)管理模塊
2.4.1 模塊實(shí)現(xiàn)算法
若登錄用戶具備考核指標(biāo)管理權(quán)限,顯示該模塊的菜單及界面,對(duì)考核指標(biāo)進(jìn)行管理:可修改或刪除各部門(mén)已存在的指標(biāo)信息,以及單個(gè)錄入或從Excel批量導(dǎo)入指標(biāo)信息。若登錄用戶無(wú)考核指標(biāo)管理權(quán)限,隱藏該模塊的菜單及界面。
從Excel批量導(dǎo)入考核指標(biāo)的方法:
(1)準(zhǔn)備導(dǎo)入數(shù)據(jù)。填寫(xiě)Excel模板數(shù)據(jù),Excel模板的表結(jié)構(gòu)與圖2中預(yù)覽數(shù)據(jù)的表結(jié)構(gòu)相同,該模板的指標(biāo)級(jí)數(shù)可以任意增加或減少,指標(biāo)級(jí)數(shù)不受限制,保證各部門(mén)考核指標(biāo)的靈活性。
(2)預(yù)覽數(shù)據(jù)。先上傳Excel文件至服務(wù)器,再將Excel中的數(shù)據(jù)放入DataTable,通過(guò)對(duì)DataTable各行各列數(shù)據(jù)的判斷,動(dòng)態(tài)生成表格的HTML代碼即可預(yù)覽數(shù)據(jù)。效果如圖2所示,主要代碼如下:
(3)導(dǎo)入數(shù)據(jù)。預(yù)覽數(shù)據(jù)無(wú)誤后,對(duì)預(yù)覽數(shù)據(jù)產(chǎn)生的DataTable進(jìn)行判斷,利用循環(huán)語(yǔ)句將考核指標(biāo)逐條插入數(shù)據(jù)庫(kù),若為頂級(jí)指標(biāo),parentID的值為0,二級(jí)以后的指標(biāo)parentID值為上一級(jí)父指標(biāo)在數(shù)據(jù)庫(kù)中的ID,考核指標(biāo)信息表中各指標(biāo)之間通過(guò)parentID建立聯(lián)系。
2.4.2 模塊數(shù)據(jù)庫(kù)設(shè)計(jì)
考核指標(biāo)信息表主要包含一下字段:ID、考核部門(mén)、考核年度、指標(biāo)內(nèi)容、父指標(biāo)ID、分值、評(píng)分部門(mén)、附件、評(píng)分狀態(tài)、得分等。
2.5 考核部門(mén)管理上傳支撐材料模塊
2.5.1 模塊實(shí)現(xiàn)算法
若登錄用戶具備上傳支撐材料管理權(quán)限,顯示該模塊的菜單及界面,管理本部門(mén)當(dāng)前年度各項(xiàng)考核指標(biāo)的支撐材料::若指標(biāo)未評(píng)分且當(dāng)前時(shí)間在規(guī)定的截止時(shí)間內(nèi),可上傳或修改用戶所屬部門(mén)各項(xiàng)考核指標(biāo)的支撐材料如文字、圖片或有關(guān)附件。若登錄用戶無(wú)上傳支撐材料管理權(quán)限,隱藏該模塊的菜單及界面。
因上傳的支撐材料可以是文字、圖片或其它附件,上傳頁(yè)面可內(nèi)嵌富文本編輯器對(duì)上傳內(nèi)容進(jìn)行編輯。
在對(duì)支撐材料進(jìn)行管理時(shí),需列表顯示各項(xiàng)指標(biāo)信息,再選擇選擇性地對(duì)某項(xiàng)指標(biāo)進(jìn)行支撐材料管理,這就需要?jiǎng)討B(tài)生成指標(biāo)表格在頁(yè)面顯示,頁(yè)面效果如圖3所示。鑒于篇幅,此處只介紹方法:
(1)生成行:查詢年度內(nèi)本部門(mén)的所有考核指標(biāo)放入DataTable,在DataTable中計(jì)算記錄指標(biāo)層級(jí),循環(huán)生成行的HTML代碼。
(2)生成單元格:統(tǒng)計(jì)末級(jí)指標(biāo)數(shù)后從末級(jí)指標(biāo)開(kāi)始生成單元格代碼,通過(guò)parentID查找父指標(biāo)動(dòng)態(tài)生成父指標(biāo)單元格代碼,直到頂級(jí)指標(biāo)(parentID=0)。
2.5.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
該模塊與考核指標(biāo)管理模塊塊均使用考核指標(biāo)信息表,此處不再描述。
2.6 評(píng)分管理模塊
2.6.1 模塊實(shí)現(xiàn)算法
若登錄用戶具備評(píng)分管理權(quán)限,顯示該模塊的菜單及界面,進(jìn)行評(píng)分、修改和取消評(píng)分,或按年度統(tǒng)計(jì)評(píng)分并導(dǎo)出Excel。若登錄用戶無(wú)評(píng)分管理權(quán)限,隱藏該模塊的菜單及界面。
評(píng)分前要先顯示各項(xiàng)指標(biāo)信息,再選擇對(duì)某項(xiàng)指標(biāo)進(jìn)行評(píng)分,方法與上傳資料管理模塊相同,此處不再描述。
評(píng)分統(tǒng)計(jì)及導(dǎo)出方法:按考核年度在指標(biāo)信息表查詢考核部門(mén),分別匯總各考核部門(mén)的得分情況,按得分高低進(jìn)行排序后利用Repeater控件顯示在頁(yè)面上。
在導(dǎo)出Excel時(shí),可利用StringWriter和HtmlTextWriter類(lèi)將Repeater控件中的內(nèi)容生成HTML表格并轉(zhuǎn)換為Excel文件下載即可。鑒于篇幅,此處只列出導(dǎo)出Excel的主要代碼:
2.6.2 數(shù)據(jù)庫(kù)設(shè)計(jì)
該模塊與考核指標(biāo)管理模塊均使用考核指標(biāo)信息表。
2.7 信息發(fā)布模塊
模塊實(shí)現(xiàn)算法:若登錄用戶具備信息發(fā)布權(quán)限,顯示該模塊的菜單及界面,對(duì)信息進(jìn)行添加、修改、審核等管理。若登錄用戶無(wú)發(fā)布信息權(quán)限,隱藏該模塊的菜單及界面。數(shù)據(jù)庫(kù)設(shè)計(jì)此處不作描述。
2.8 用戶管理模塊
2.8.1 模塊實(shí)現(xiàn)算法
用戶登錄成功后,均可修改密碼;若登錄用戶具備用戶管理權(quán)限,顯示管理用戶的菜單和頁(yè)面,可添加、修改、刪除用戶,以及設(shè)置其它用戶權(quán)限。若登錄用戶不具備用戶管理權(quán)限,隱藏用戶管理菜單及界面。
用戶密碼字符串可用通過(guò)MD5等方法進(jìn)行加密,加密方法及過(guò)程可根據(jù)需要作自身定制。
2.8.2 模塊數(shù)據(jù)庫(kù)設(shè)計(jì)
該模塊與用戶登錄模塊均使用用戶信息表。
2.9 數(shù)據(jù)備份與恢復(fù)模塊
模塊實(shí)現(xiàn)算法:用戶登錄成功后,若具備數(shù)據(jù)備份恢復(fù)權(quán)限,顯示該模塊的菜單和頁(yè)面,進(jìn)行數(shù)據(jù)的備份和恢復(fù)。若不具備數(shù)據(jù)備份恢復(fù)權(quán)限,隱藏該模塊的菜單及界面。
數(shù)據(jù)備份方法:利用backup語(yǔ)句生成數(shù)據(jù)庫(kù)備份文件(.bak),將該文件存放在上傳資料的文件夾中,再壓縮整個(gè)文件夾為zip文件后下載到客戶端,完成數(shù)據(jù)備份。
數(shù)據(jù)恢復(fù)方法:客戶端選擇備份的.zip文件后上傳至服務(wù)器并解壓至指定文件夾,解壓后即可恢復(fù)上傳的各類(lèi)資料,再通過(guò)結(jié)束SQL SERVER服務(wù)器中有關(guān)進(jìn)程,利用restore語(yǔ)句還原數(shù)據(jù)庫(kù),完成數(shù)據(jù)恢復(fù)。
3 結(jié)束語(yǔ)
基于B/S結(jié)構(gòu)的部門(mén)目標(biāo)考核管理系統(tǒng)解決了傳統(tǒng)紙質(zhì)考核中碰到的資料浪費(fèi)、考核工作高度集中等困難及問(wèn)題,軟件平臺(tái)搭建好后,考核的重點(diǎn)工作更傾向于如何合理制定各部門(mén)的考核指標(biāo),這也是整個(gè)考核工作過(guò)程的難點(diǎn),各高校可結(jié)合自身實(shí)際,認(rèn)真研究符合自身特色的考核指標(biāo),為目標(biāo)考核管理工作提供科學(xué)依據(jù)。
【參考文獻(xiàn)】
[1]龔根華.ADO.NET數(shù)據(jù)訪問(wèn)技術(shù)[M].清華大學(xué)出版社,2012,04.
[2]丁桂芝.ASP.NET動(dòng)態(tài)網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)[M].中國(guó)鐵道出版社,2013,01.
[責(zé)任編輯:朱麗娜]