王賢恩, 王德東, 王文軍
(浙江海洋學院 實驗室建設與設備管理處,浙江 舟山 31600)
隨著高等教育大眾化[1],高校的辦學規模不斷擴大,許多高校出現了多校區辦學,設備損壞后報修的工作量不斷增加,產生多校區多人管理設備維修。由于人工管理,相應報修程序的煩瑣,出現信息不共享,處理不及時,管理成本變大的問題。隨著計算機網絡的普及與VPN技術[2-5]的成熟,采用B/S模式[6]開發的多校區網上報修系統[7-10],實現了網上辦公,提高工作效率,加強維修工作的管理,提供了安全實施的基礎。
多校區網上報修系統主要是利用互聯網技術實現網上報修操作,并將整個操作過程詳細展示記錄下來。此系統的實現,一能大大提高工作效率,二能為兼職維修員和定點維修公司提供詳實的記錄依據,三能通過報修者的評價來考量維修人員的維修技術與服務態度,作為下一年度定點的依據。傳統的報修大多以電話,口頭通知或紙質文件傳遞形式進行,多校區間的傳遞,不僅浪費人力物力,而且效率低,甚至產生管理人員與維修人員的遺忘,導致無法進行及時維修,影響教學、科研、學習與生活,甚至還容易產生報修部門和維修單位相互扯皮的現象。市場上雖有大量報修的管理系統,但每個單位具有不同的實際情況,購置的系統不一定合符單位實際情況。因此,開發網上報修系統是相當必要的。
網絡技術的發展使高校通過網絡對多校區設備報修管理成為了可能。通過網站對保修信息進行管理,大大提高了辦公效率,避免了人為記錄信息時的誤差,使管理更加科學、系統化。網絡化的管理,使報修的過程更加規范,實現了信息的快速傳遞與發布。
我校已經具備了進行網絡化管理的硬件條件,設立專門的內網服務器,建立學校設備維修網站,通過網站的訪問管理系統。利用專用的VPN服務器,實現多校區間、定點維修公司、教師家庭間的網絡連接,管理員、維修人員和報修者可以在任何時間、任何地點訪問該系統,而且VPN技術可以隔斷來自網絡的惡意攻擊與無效信息的提交,保證了網站的安全。
本系統采用模塊化結構,共包用戶管理、維修管理、報修工作報表統計及評價系統。其中用戶管理包括一般報修用戶(含校外維修公司維修員)、部門、校內維修員以及各類管理人員用戶管理;維修管理是指報修申請人通過網絡提交報修申請單、管理人員審核及派工、維修人員提交維修結論、報修申請人提交維修意見及對維修員的評價等報修及維修過程;報修工作報表統計指根據不同的要求及應用,輸出相應的統計報表;評價系統是指在給定的一段時間對每一維修項目、每一維修人員或整個維修進行評價,給出相應的評分,作為考核維修與定點公司的依據,類似與淘寶網的評價。
1.4.1系統數據庫模型圖
根據實際功能的需求,需要的主要數據信息有:用戶表(含校外維修人員)、部門表、資產表及維修表等信息。系統采用關系數據庫[11]進行數據管理,實現了高效的管理與使用這些數據信息。系統數據庫模型圖如圖1所示。
1.4.2關鍵數據庫物理結構表
各類用戶信息見表1,維修信息見表2。


表2 維修表(因篇幅限刪除了一些字段)
(1) 部門資產管理員報修:填寫申請單,提交部門領導;
(2) 部門領導審核通過,提交資產處;不通過,作廢申請單;
(3) 設備處審核,提出維修意見,分派維修任務;
(4) 修理員接單修理;
(5) 修理員(廠商維修),填寫維修記錄,部門資產管理員給出評價;
(6) 使用人、部門領導在發票簽字;
(7) 送交設備處統一辦理相關手續。
本系統主要采用B/S模式的體系結構,用戶所有的操作通過Web瀏覽器來實現,極少部分事務邏輯在前端實現,主要事務邏輯在服務器實現,形成所謂三層結構[12]。這樣的設計減少了客戶端計算機載荷,降低了用戶端系統維護與硬件升級的成本和工作量,降低了用戶端的總體成本。客戶端用戶均通過同一個連接緩沖池連接數據庫,用戶并不保存對數據的連接,從而大大減少了對數據據庫的資源占用[13]。
系統網絡架構拓撲圖如圖2所示,分校區用戶與校外定點維修公司通過Internet和給定VPN服務器賬號與系統服務器連接,校內通過校內部局域網連接,用戶可以直接與數據庫服務器連接。

圖2 系統網絡架構圖拓撲圖
2.2.1“用戶登錄功能”模塊主要代碼
為了有效抵御SQL注入風險,該模塊使用ADO的參數化查詢功能來實現[16]。
<%
UserID = Trim(Request("a_userid")) ‘獲取提交的賬號信息
PassWD = MD5(Trim(Request("a_pwd"))) ‘獲取提交的密碼信息
Set cmd = Server.CreateObject("ADODB.Command")
cmd.ActiveConnection = oConn
cmd.CommandType = 1
cmd.CommandText = "SELECT TOP 1 * FROM 用戶表 WHERE 賬號 = ? AND 密碼 = ?"
cmd.Parameters.Append(cmd.CreateParameter("@賬號", 200, 1, 20, UserID))
cmd.Parameters.Append(cmd.CreateParameter("@密碼", 200, 1, 16, PassWD))
Set oRs = cmd.Execute()
Response.Write("賬號= " & oRs("賬號").value)
…
%>
2.2.2“報修信息處理”模塊主要代碼
從1.5系統業務流程可以看出,不同類型的用戶具有不同的權限,相應的處理模塊代碼也不完全相同,但核心代碼基本類似,即通過Request或Session變量獲取輸入數據,然后寫入數據庫。下面的Ajax[14]及ASP代碼[15]展示的是“部門資產管理員”填寫申請單,通過資產編號獲得其相應信息。
//調用的ajax代碼:
var xmlHttpRequest;
function GetByNum(ID){
if(ID = =""){ return false;}
else{//1. 創建XMLHttpRequest組件
xmlHttpRequest=createXmlHttpRequest();
// 請求字符串
var URL ="FindByID.asp?ID = "+escape(ID);
// 2. 設置回調函數
xmlHttpRequest.onreadystatechange=callback;
// 3. 初始化XMLHttpRequest組件
xmlHttpRequest.open("GET",URL,true);
// 4. 發送請求 xmlHttpRequest.send(null);} }
function createXmlHttpRequest(){ if(window.ActiveXObject)
{ return new ActiveXObject("Microsoft.XMLHTTP");
//windows瀏覽器}
else if(window.XMLHttpRequest)
{ return new XMLHttpRequest();//其他瀏覽器 } }
function callback(){ if(xmlHttpRequest.readyState == 4)
{ if(xmlHttpRequest.status==200)
{var returnMsg=xmlHttpRequest.responseText;
if(returnMsg != ""){
var strs= new Array(); //定義數組
strs= returnMsg.split(","); //字符分割
cument.myform.._設備名稱.value=strs[0];
document.myform.._單價.value=strs[1];
document.myform.._品牌規格.value=strs[2];
document.myform.._型號規格.value=strs[3];
document.myform.._實驗室.value=strs[4];
document.myform.._購置日期.value=strs[5].substring(0,4); }
} } }
2.2.3“報修設備信息”查詢模塊主要代碼
<%
response.ContentType = "text/html;charset=gb2312"
Dim cRs, cSql, Num, RetunMsg
Num=request("ID")
Num=GetSafeStr(trim(Num))
cSql="select * from 資產表 where 資產編號 =’" & Num & "’"
set cRs=Server.CreateObject("ADODB.Recordset")
cRs.Open cSql, oConn, 1, 1
If cRs.eof Then
RetunMsg="" ‘沒有查到該編號的設備信息
Else
RetunMsg=cRs("名稱") & ","
RetunMsg=RetunMsg & cRs("金額") & ","
RetunMsg=RetunMsg & cRs("規格") & ","
RetunMsg=RetunMsg & cRs("型號") & ","
RetunMsg=RetunMsg & cRs("使用單位") & ","
RetunMsg=RetunMsg & cRs("購置日期")
response.Write RetunMsg
End If
cRs.Close
Set cRs = Nothing
%>
2.2.4“表單統計”模塊主要代碼
“表單統計”模塊主要完成一些基本信息的統計工作,例如:按部門、維修人統計維修次數,維修總價,服務評價等信息,其功能主要是利用SQL的統計語句來實現的。
按照部門統計維修次數:SELECT Count(單據編號) AS維修次數, 部門編號 FROM 維修表 GROUP BY .部門編號;
按照維修人統計維修次數:SELECT Count(單據編號) AS 維修次數, 維修人 FROM 維修表 GROUP BY 維修人;
按照部門匯總維修總費用:SELECT Sum(維修總價) AS 維修費用,部門編號 FROM 維修表 GROUP BY .部門編號;
對客戶評價進行分類統計:SELECT Count(客戶評價) AS 客戶評價之計數, 客戶評價 FROM 維修表 GROUP BY 客戶評價。
設計開發的多校區網上報修系統,經過我校大半年的應用,方便、快捷使用的優勢,所有行為都有記錄,考量有依據,實現了學校設備日常維修的信息化管理,提高學校設備維修業務的工作水平及管理效率。
本文所設計與實現的報修系統在其它有大量維修的大型企事業單位中,具有較好的推廣和應用的意義。
[1] 馬丁·特羅.從精英向大眾高等教育階段轉變中的問題[Z].王香麗,譯.外國語高等教育資料,1999(1):1-22.
Martin Trow: Problems in the Transition from Elite to Mass Higher Education[Z].Wang Xiang-li, Translate. Information on Higher Education in foreign languages, 1999(1):1-22.
[2] 黃新民,劉旺全. VPN技術綜述[J].計算機安全,2003(5):25-28.
HUANG Xin-Min, LIU Wang-quan. Summary of VPN Technical[J]. Network & Computer Security,2003(5):25-28.
[3] 魏念忠,基于VPN技術的多校區校園網絡安全研究[J].微電子學與計算機,2007(10):108-111.
WEI Nian-zhong, Study on the Network Safety of Multi-district Campus Based on VP N Technology [J].Microelectronics & Computer,2007(10):108-111.
[4] 李盤榮,毛萬年.基于VPN的多校區校園網絡安全[J].電腦知識與技術,2010(10):1080-1083.
LI Pan-rong,MAO Wan-nian. The Campus Network Security Based on the Technology of VPN[J].Computer Knowledge and Technology,2010(10):1080-1083.
[5] 伏秋平,姚渺波.應用VPN技術延伸校園網覆蓋范圍[J].計算機時代,2007(4):21-23.
FU Qiu-ping,YAO Miao-bo. Application of VPN in Extending Coverage of Campus Network[J].Computer Era,2007(4):21-23.
[6] 馮曼菲.精通Ajax——基礎概念、核心技術與典型案例[M].北京:人民郵電出版社,2008.
[7] 佀新學,李喆,田濤.高校實驗室信息化平臺—設備在線報修系統的開發[J]. 中國現代教育裝備,2010(7):115-116.
SI Xin-xue, LI Zhe, TIAN Tao. Laboratory Informationization Platform of University——Development of a Online Repair System [J]. China Modern Educational Equipment.,2010(7):115-116.
[8] 王 濤.增強型報修系統的分析和設計[J].電腦知識與技術,2011(18):4283-4285.
WANG Tao. Analyze and Design of Enhanced Fault Reporting System[J]. Computer Knowledge and Technology, 2011(18):4283-4285.
[9] 周 翔.基于Web 的高校后勤報修系統設計與實現[J].科技廣場,2009(11):131-133.
ZHOU Xiang. Design and Implement of College Logistics Repair System Based on Web[J]. Science Mosaic, 2009(11):131-133.
[10] 楊海波,許禮捷,岳 浩.基于Web的網絡中心報修管理系統的設計與實現[J].電腦知識與技術,2011(23):5610-5611.
YANG Hai-bo,XU Li-jie,YUE Hao, Design and implement of Network Center Report management system based on Web [J].Computer Knowledge and Technology, 2011(23):5610-5611.
[11] 鐘克英.基于Web報修系統的數據庫設計[J].軟件導刊,2011(6):170-172.
ZHONG Ke-ying. [J]. Design of Database for Repair System Based on Web. Software Guide, 2011(6):170-172.
[12] 吳 丹,易 輝.知識庫系統中語義網知識的表示[J].電腦與信息技術,2004(1): 9-11.
WU Dan,YI Hui. Knowledge Representation for Semantic Web in Knowledge Base System[J]. Computer and Information Technology,2004(1):9-11.
[13] 劉柏嵩.基于知識的語義網:概念、技術及挑戰[J].中國圖書館學報,2003(29):18-21.
LIU Bai-song. The Semantic Web Based On Knowledge: Concept、Technology And Challenges[J]. The Journal of The Library Science In China,2003(29):18-21.
[14] 侯艷君,馬子領. 基于Ajax的高校設備管理系統設計與實現[J].實驗室研究與探索,2011 (12):183-186.
HOU Yan-jun, MA Zi-ling. Design and Implementation of Equipment Management System in Colleges and Universities Based on Ajax[J].Research and Exploration in Laboratory, 2011 (12):183-186.
[15] 周金橋.ASP-NET夜話[M].北京:電子工業出版社,2009.
[16] 陳雪梅. 基于ADO技術實現多種數據源間SQL查詢功能[J].計算機技術與發展,2007(10):7-11.
CHEN Xue-mei. Realization of SQL Query Function Among Multiple Data Sources Based on ADO Technique[J].Computer Technology and Development, 2007(10):7-11.