劉凱婷 史素娟 余丙軍



摘要:在機房的日常使用中,機房的使用者與管理者之間常因為各種原因無法方便快捷的溝通,并且缺少便利的安全教育途徑。為解決這些問題,設計開發了一款基于微信小程序的管理平臺。該系統使用JavaScript、WXML和WXSS語言進行前端開發,后端采用微信團隊提供的云數據庫、云函數和云存儲服務,分為用戶端和管理員端,核心模塊包含壞設備報修模塊,文檔學習模塊,機房建議模塊,查看通知模塊等多個模塊,給高校機房的管理提供了方便可靠的手段。
Abstract: In the daily use of the computer room, the users and the managers are often unable to communicate conveniently and quickly for various reasons, and lack of convenient safety education approaches. To solve these problems, a management platform based on WeChat is designed and developed. The system uses JavaScript, WXML and WXSS language in terms of front end development, and the back-end uses cloud database, cloud function and cloud storage service provided by Wechat team. The system is divided into users and managers entrance, and the core module contains bad equipment repair service module, document learning module, suggestion module, notification module and other modules, which provides a convenient and reliable method to the management of college computer room.
關鍵詞:機房管理系統;小程序;微信
Key words: computer room management system;small program;WeChat
中圖分類號:G434? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2020)09-0217-03
0? 引言
機房是學生進行計算機上機實驗的場所,是高校培養人才的教學活動中非常重要的一個環節,但往往不被師生們重視。第一,機房的使用者與管理者之間存在一定的隔離。首先,在高校的機房使用過程中,設備有時會出現損壞的情況,但學生和老師沒有方便快捷的報修途徑,需要自己找到機房負責人,但機房負責人往往會有其他任務。其次,在機房上課的老師和學生常常會想給機房管理老師提點建議,而機房管理員也想快速通知使用者一些重要事項,該項目能通過小程序為機房管理員與使用者提供便捷快速的溝通渠道。第二,機房的安全教育很薄弱。安全地使用機房設備不僅能保證學生和教師的安全,同時也有助于延長高校機房設備的使用壽命,減少損耗。因此,在進入機房使用設備時,學生和教師都必須先閱讀使用手冊和安全手冊,同時遇到緊急情況還能找到解決辦法以及聯系負責人。現有的紙質閱讀費時費力,并且不利于查閱。該項目則能通過方便快捷的線上學習對機房用戶進行安全培訓。
1? 系統構成
1.1 架構設計
該系統分為學生教師端(即為用戶端)和機房管理員端兩大模塊。在一進入系統的時候會先有用戶登錄模塊,選擇用戶入口或者管理員入口,根據微信賬號識別有無權限。用戶端又分為壞設備報修模塊,設備信息查看模塊,文檔學習模塊,機房建議交流模塊,查看通知模塊和個人信息模塊。管理員端又分為留言模塊,資料管理模塊,用戶信息管理模塊,設備信息管理模塊,建議管理模塊和通知管理模塊。用戶端的功能包括報修機房壞設備,查看機房壞設備,學習機房設備使用和機房安全相關文檔,在學習文檔和視頻的時候進行心得體會交流,對機房提建議,對別人的建議進行評論,查看管理員發的通知,查看和修改個人信息。管理員端的功能包括,對留言進行管理,查看報修的設備并在設備修理好以后及時更改設備信息,管理視頻還有文檔學習資料,管理用戶信息和用戶權限,管理建議和通知等功能。
1.2 功能介紹
①用戶登錄模塊。在該模塊中,用戶選擇登錄入口,學生、教師以及游客都選擇用戶入口,只有機房管理員可選擇管理員入口。教師可以選擇申請管理員賬號,需要最高管理員審核通過給予權限。
②壞設備報修模塊。當教師和學生在使用機房的時候,如果發現有設備出現損壞或者其他無法使用的情況,可以及時通報給管理員,并且記錄在壞設備列表中。在報修壞設備的時候需要實名,沒有填寫個人資料無法報修。用戶需要提供樓棟號,房間號以及機器號等數據,有利于機房管理員及時聯系維修人員檢查相應設備。
③設備信息查看模塊。學生可以查看所有記錄在案的壞設備,并且可以根據樓棟,機房號進行篩選,這個功能模塊有助于學生上課以及考試期間避開壞設備。
④文檔學習模塊。當教師和學生想要具體學習機房使用規則時,可以通過該小程序觀看機房學習文件。文件在云存儲中。
⑤機房建議交流模塊。教師和學生可以向管理員提關于機房管理和設施的建議。教師和學生可以在某建議下進行評論、點贊或者點倒贊,促進機房改善。對機房提建議可以匿名,有助于學生大膽的提出自己的想法。評論必須實名,這樣有助于營造和諧的交流環境。
⑥查看通知模塊。首頁可以查看到機房管理員發布的關于各樓棟各個機房的最新消息和安排,有利于學生和教師及時獲取相關信息。
⑦個人信息模塊。學生和教師在該頁面完善個人信息,沒有完善信息的游客不予發表機房建議或者報修的權限。但是可以查看壞設備列表、通知和學習文檔。
⑧資料管理模塊。機房最高權限管理員可在資料管理模塊上傳或刪除機房學習的文件和相關的圖片。
⑨用戶信息管理模塊。機房最高權限管理員可以查看學生或者教師的資料。若是學生或者教師申請管理員權限,機房最高權限管理員可以審核通過予以權限或者拒絕該申請。
⑩設備信息管理模塊。機房最高權限管理員可以看到壞設備列表。在設備維修好了以后,由機房管理員負責修改設備狀態。
{11}建議管理模塊。機房管理員可以查看到用戶對機房的提議,并且可以參與討論,進行點贊或點倒贊等。同時機房管理員還可以對建議以及建議底下的評論進行刪除操作。
{12}通知管理模塊。機房管理員可以管理已發布的通知,刪除舊的已過時的通知,同時發布新的通知。
2? 技術方法
2.1 前端技術
該系統由于采用了云數據庫作為后臺存儲,開發難度主要集中在前端開發,既JavaScript/WXML/WXSS的開發。對于界面的美化和部分功能的實現,我們采用了微信自帶的component和團隊開發的component,包括navigation、slideview等。這些組件實現了活動刪除,首頁導航等各種功能。對于數據加載,我們采用了懶加載技術,在小程序中,系統的瓶頸常在于系統的響應速度。如果系統響應速度過慢,用戶就會出現埋怨情緒,系統的價值也因此會大打折扣。懶加載(Load On Demand)是一種獨特而又強大的數據獲取方法,它能夠在用戶滾動頁面的時候自動獲取更多的數據,而新得到的數據不會影響原有數據的顯示,同時最大程度上減少服務器端的資源耗用。而對于用戶賬號的管理,我們選擇關聯微信賬號來減少管理難度,通過平臺提供的API可獲取用戶的openid(在一個小程序中,一個微信賬號的openid是唯一的),并且使用wx.getUserInfo()獲取用戶的其他信息,并且把這些用戶信息關聯該小程序的用戶信息,使得用戶可以通過微信來登錄該小程序或者判斷權限。
2.2 小程序碼技術
通過后臺接口可以獲取小程序任意頁面的小程序碼,掃描該小程序碼可以直接進入小程序對應的頁面,所有生成的小程序碼永久有效,可放心使用。小程序碼需要拿到Access_token,可以選擇3個獲取小程序碼的接口,包括接口A:適用于需要的碼數量較少的業務場景(生成小程序碼,可接受path參數較長,生成個數受限);接口B:適用于需要的碼數量極多的業務場景(生成小程序碼,可接受頁面參數較短,生成個數不受限);接口C:適用于需要的碼數量較少的業務場景(生成二維碼,可接受path參數較長,生成個數受限)我們按需選擇。小程序碼使得我們的小程序有更高的辨識度,并且使用更便捷。
2.3 云開發技術
該項目使用小程序云開發,無需搭建服務器,即可使用云端功能。使用平臺提供的API進行核心業務開發,可實現快速上線和迭代。降低了開發難度,從而能有更多的時間迭代更新,不斷完善產品功能和體驗。本系統中,我們主要的云開發技術是云函數、云數據庫和云存儲的使用。
通過云函數操作云數據庫和云存儲,云函數可以在云端部署代碼和對應的node_modules,大大的減輕了前端的壓力,并且可以快捷的對數據進行增刪改查的操作。
wx.cloud.callFunction({
name: 'login',
data: {},
success: res => {
},
fail: err => {
}
})
云數據庫類似于mongoDB非關系型數據庫,不需要設計數據庫表,數據存儲沒有固定的格式。每個object即是一條數據。訪問數據庫表直接采用小程序原生接口。
const db = wx.cloud.database({})
const users = db.collection('users');
users.where({
Wxid: app.globalData.openid
}).get(
{
success: function (res) {
},
fail: function () {
}
})
云存儲包括了照片和文檔等大文件的存儲,存儲和讀取都使用微信小程序原生接口,生成唯一的FileID,方便快捷。
wx.cloud.downloadFile({
fileID:
success: res => {
},
Fail: err => {
}
})
3? 結語
本文針對現存高校機房管理的漏洞與需求,設計了一款基于微信小程序的機房交互和管理小程序。該系統開發速度快,運營成本低,功能齊全,能夠有效地增強對機房的管理。
在溝通方面,小程序拓寬了機房使用者與管理者之間溝通的渠道,溝通也不再受時間、空間的限制,掃描二維碼即可進行聯系,能有效聯系這兩個群體。
在安全教育方面,實驗室安全教育目前仍是高校教育的薄弱環節,該項目能通過無紙化培訓降低溝通成本,提高溝通意愿,有效改善實驗室安全教育狀況。
參考文獻:
[1]李哲,周靈.微信小程序的架構與開發淺析[J].福建電腦,2019,35(12):66-69.
[2]董傲通,文俊浩.基于小程序·云開發的實驗室設備管理系統的設計與實現[J].實驗技術與管理,2019,36(10):282-284,288.
[3]孫凱,樊春紅,劉純忠,等.基于移動平臺開發設備維修管理系統[J].中國醫療設備,2013,28(11):51-53.
[4]劉衛紅.微信小程序應用探析[J].無線互聯科技,2016(23):11-12.
[5]騰訊計算機系統有限公司.微信小程序簡易教[EB/OL].[2020-1-18]https://developers.weixin.qq.com/miniprogram/dev/framework/.
基金項目:華南理工大學校級創新創業項目。
作者簡介:劉凱婷(1997-),女,廣東惠州人,華南理工大學本科生;史素娟(1997-),女,云南大理人,華南理工大學本科生;余丙軍(1977-),男,湖北黃岡人,華南理工大學軟件學院副主任/工程師。