曲阜師范大學信息科學與工程學院 安志宏 翟雪婷 張新軍
本文實現了一種基于Android和Java Web的支持先進的數據分析和智能故障預測的學生公寓報修系統。該系統包括學生公寓報修客戶端、維修客戶端和報修管理中心。報修、維修客戶端通過Volley網絡通信框架與數據庫相連,學生選擇故障類型、具體所在地進行報修,并且拍照交給報修系統數據中心。移動端借助高德地圖API模塊實現定位及路線導航功能,可將具體故障地點上傳至數據中心,以供維修人員自主接單。該系統提高了學生公寓報修管理效率,同時部署較為靈活。
引言:隨著計算機科學技術的日益發展,很多管理領域的智能應用越來越廣泛,需求越來越大。在學生公寓報修領域中,傳統的人工的報修方式上有很多不合理以及不方便的地方,比如它形式單一,工作效率低,不能及時地解決問題等。本文設計的學生公寓報修系統能大大減輕報修、維修工作量。該報修系統的主要功能包括學生通過文字和圖片等快速報修物品的功能,查詢物品維修狀態信息的功能,學生評價學生公寓報修系統的功能。并且,它方便的信息管理用戶界面,簡便的操作,完善的數據庫管理,還將會使得報修系統極大限度地應用于現代化學生的生活管理,成為管理人員的得力助手,減輕工作人員的負擔。
Java Web技術是用Java技術來解決相關Web互聯網領域的技術總和。Web包括:Web服務器和Web客戶端兩部分。Java在服務器端的應用非常的豐富,比如Servlet,JSP和第三方框架等等。Java技術對Web領域的發展注入了強大的動力。
JSP主要是基于Java語言上實現的,它許可在HTML和XML文檔中,將Java代碼邏輯嵌入到其中。在一定程度上,為動態網頁的內容創建和管理,帶來了非常極大的便利。當瀏覽器將JSP文件這一請求發給服務器時,這個時候的服務器,直接采用相對應的Servlet結果作為應答。
高德地圖JS API是一套JavaScript語言開發的的地圖應用編程接口,移動端、PC端一體化設計,一套API兼容眾多平臺。本系統的地圖顯示和位置定位采用的基于Android的高德地圖API技術開發實現的。高德定位服務包含GPS和網絡定位(Wi-Fi和基站定位)兩種能力,采用的是高精度定位模式,即會同時使用網絡定位和GPS定位,優先返回最高精度的GPS定位結果。這樣不管用戶是在室外還是在室內進行故障報修,報修客戶端都可以獲取當前用戶的位置信息并進行位置定位。
Volley網絡通信框架把AsyncHttpClient和Universal-Image-Loader的優點集于了一身,既可以像AsyncHttpClient一樣非常簡單地進行HTTP通信,也可以像Universal-Image-Loader一樣輕松加載網絡上的圖片。除了簡單易用之外,Volley在性能方面也進行了大幅度的調整,它的設計目標就是非常適合去進行數據量不大,但通信頻繁的網絡操作。
整個系統用Tomcat作為Web服務器,以Java web作為服務端與網頁管理端的主要開發語言,數據庫用MySQL社區服務器,移動端采用Android studio開發,通過Volley+JSON實現APP與服務端的通信。
系統的主體部分是采用Java Web技術實現的基于B/S模式的報修管理系統,以tomcat作為服務器部署在遠程服務器上,后臺使用MySQL數據庫存儲維修人員、報修清單、報修人員等等數據,在此基礎上實現基于C/S模式Android智能手機操作系統的移動報修端和維修服務端。
系統管理人員可以在Web管理端進行協助維修,也可以將報修任務分配給維修工;報修人員通過報修端APP提交故障詳情,將任務發布于任務列表,維修人員可以查看任務列表選擇接單,此系統還增加了評價反饋,以此來提高報修系統的工作效率。
2.2.1 總體功能設計
本系統功能主要分為三大模塊:教師學生報修、故障處理、系統管理。系統基本功能設計如下。
(1)教師學生報修。此模塊應用于學生、教師等報修人員。報修人員可以通過此模塊來提交故障詳情,可以向管理員申請進行語音輔助維修,可以查看歷史報修記錄以及報修完成情況,可以在維修完成后進行評價反饋。
(2)故障處理。維修人員通過接單的方式獲取報修人員提交到服務器的報修任務,進行故障維修,查看歷史維修以及評價星級,在特殊情況下還可以通過此模塊向管理人員請假。
(3)系統管理。此模塊功能主要包括維修工人員管理、基本任務分配、數據統計、權限設置、系統服務的各個具體地點數據的管理、賬號管理等。
2.2.2 數據庫設計
本系統使用Mysql社區版作為數據庫數據庫,設計的數據表主要包括:師生信息表、管理員信息表、報修任務列表、用戶評價表、教學樓信息表等。
主界面主要分為左側的工具欄、中間的展示圖以及快捷公告欄。在報修列表頁面中,左側是實時的地圖,可以進行拖動和縮放,右側是所有的工單,包括未維修,維修中和已維修的工單,單擊序號可以查看每個工單的詳細信息,左側依舊是地圖顯示,右側包含了工單的詳細信息,點擊定位可查看查看維修地點,單擊路線導航,可以在地圖中看到線路圖,同時在右上角中可以看到文字說明,當維修工維修后,可以在維修進度這里手動修改。如圖1、圖2所示。

圖1 Web端主界面

圖2 維修列表界面
在用戶管理菜單欄可以查看學生、教師和維修工的用戶信息,根據學生的學號或移動電話可進行模糊或精確搜索,選中學生點擊下方的編輯按鈕,可以在下方進行學生信息的修改。
公告顯示欄也可以看到工單,同樣點擊序號可以查看詳情。
居中偏右可以看到一個快捷欄,可以分別看到未維修,維修中和已維修和訂單數,這是對部分數據進行分析的結果。
主界面由故障報修、保修記錄、退出系統以及宿舍區地圖組成。用戶發現故障后點擊故障報修提交信息,在報修事項中選擇具體地區以及具體設備,然后依次添加故障描述、報修具體地點、報修人員和聯系電話。在“報修記錄”中可查看提交的報修信息,界面中可以看到隨機生成的工單號、報修物品、報修人員和維修狀態,當維修工完成維修后狀態會轉為已維修。如圖3、圖4所示。

圖3 報修APP主界面

圖4 故障報修界面
維修APP對應故障處理功能模塊,主要分為移動端與服務端。
移動端通過Android官方Volley(此APP選用Volley網絡通信框架的原因是Volley適用于通信頻繁但數據量不大的應用)網絡通信框架進行HTTP通信。APP向遠程服務端提交POST請求,遠程服務端被請求的Sevlet通過分析請求中的參數進行應答,應答的數據存放在JSONObject對象中并轉換為字符串,Sevlet響應APP的請求,將字符串發送的APP上,APP將數據展現在UI中。
界面分為三個頁面,任務廣場、我的任務和個人中心,在任務廣場界面中顯示的是已經提交的報修訂單,點擊右下角查看詳情可查看詳細的任務信息,維修人員可自主進行接單。我的任務界面包括進行中的任務和已完成的任務。個人中心中可查看用戶的評價,新增請假功能。如圖5所示。

圖5 維修APP界面
學生公寓報修系統是高校校園管理工作的重要組成部分之一,基于B/S與C/S混合模式的實驗室報修系統提高了學生公寓報修、維修工作的及時性、便攜性。學生及維修工通過手機APP可以隨時隨地查看和處理報修業務,從而有效提高了工作效率和管理水平。目前系統還有很多地方需要改進,在之后的工作中會為手機APP增加語音報修、在線維修、數據分析等功能。