呂昭君
(浙江旅游職業學院,浙江杭州 311231)
請假系統APP的開發及應用
呂昭君
(浙江旅游職業學院,浙江杭州 311231)
系統梳理出設計一款請假系統所需要的技術細節,同時總結管理人員實際應用過程中反饋的問題,以期借助技術的力量使學校的管理工作更加便捷、更加人性化,并為開發人員提供一定的參考。
請假系統;安卓APP;C/S模式;學生管理
1.1 任務框架
請假系統雖然不是大型系統,但其任務框架五臟俱全,而且涉及到服務器、客戶端的信息交互,多客戶端的協作和配合。以浙江旅游職業學院為例,學生請假,需要班主任、輔導員、系支部書記、院領導等多級簽字,因此該系統由以下幾部分組成[1]。
1.1.1 學生端。根據需要可設以下幾項功能:“填寫假單”“顯示記請假記錄”“修改密碼”“關閉退出”和“故障申報”等。在“填寫假單”一頁,可根據需要設“假單類型”“請假原因”“起止日期”“起止節次”和“上傳證明文件”等。而“上傳文件”可以另起一頁,一般有“選擇圖片”“根據要求編輯圖片”“上傳”“取消返回”等。如何編輯壓縮圖片是開發難點。
1.1.2 審核端。主要分設“顯示未批準假單”“顯示批準假單”“統計各班級請假情況”等。這3項功能點擊后都會列表形式顯示記錄,該列表的每一行數據都需要提供“審核”按鈕,點擊審核按鈕跳入新的一頁或者彈出窗口,之后選擇“通過”“不通過”“刪除該申請”等。
1.1.3 系統維護端。一般會設有“增加班級”“增加新學生”“編輯學生信息”“文件夾維護”等。而增加班級時,根據數據庫的不同,需要導入到系部數據庫和班級數據庫,有時學生的信息變動時,一般會涉及到修改班主任信息和班級名稱信息等。
1.2 需要用到的開發平臺
3個端、不同的功能模塊都需要一一實現,這個過程中需要用到不同的開發平臺和工具。筆者采用了VS2005和Eclipse,前者用于服務器端網頁的設計和響應客戶端代碼的編寫,后者是Android版開發需要的。當然當前VS有更高的版本2015,筆者習慣用2005這個版本,讀者可以根據自己需要選用。Eclipse雖然也有替代工具,比如Android Studio(簡稱AS),但筆者也是因為最早習慣了Eclipse,還沒有使用AS。VS2015可以同時開發安卓和蘋果版,有興趣可以試用一下。
1.3 數據庫的建設
以上交互都需要有數據支撐,因此學生的基礎數據庫如何建設。筆者采用了3個數據庫:全系的數據庫、分班級的數據庫、請假記錄數據庫。全系的數據庫是為了方便學生登錄用的,學生只需要輸入學號和密碼,即可以登錄到學生端中。如果分班級存放數據,顯然還需要選擇班級,這從服務角度來講,是不夠便捷的。分班數據庫是為了以后擴展系統功能預設的。請假記錄數據庫目前采用的是自動序列ID為關鍵索引的,因為要考慮到不同的學生會有多次請假的情況,因此不能用學號或姓名作為關鍵索引。在數據庫建設過程,遇到了比較現實的難題是,技術員得到的數據往往是Excel格式的,這可能與日常辦公采用Excel做表格有關。單位提供給技術員的數據也不一定嚴格按照格式排列;還有如何把每一屆的數據自動導入到數據庫中(當然如果直接采用Excel作為數據庫也可以,無須導入到Access),需要維護端開發一個專門的工具。筆者利用VS2005開發出維護端的單機版工具,方便建設數據庫,遠程上傳批量的學生信息數據。請假記錄數據庫里可以根據需要,包含如下內容:ID、姓名、學號、性別、電話、系部、班級、請假原因、請假類型、起止日期、一級Pass、二級Pass和三級Pass等,一般還需要記錄上傳該數據的IP地址和時間。而證明文件的保存,目前采取的是按照學年、班級建設文件夾,證明文件存放在對應班級的目錄下,而證明文件的名稱以學號加上傳的時間為唯一識別名稱,并同時記錄到請假記錄數據庫中。
1.4 網站的搭建
該系統是C/S(客戶端/服務器)的交互模式,因此離不開網站的搭建,可利用單位自己的服務器存放服務器端文件,也可以根據需要搭建服務器。有些單位考慮到網站安全,禁止學生上傳自己的圖片,擔心部分同學惡意上傳帶有病毒代碼的圖片,這也限制了該系統的應用和推廣。筆者目前采用自己搭建服務器,租用了阿里巴巴(之前的萬網)的空間。
1.5 不同類型的應用端
三方(學生、審核、維護)都通過向服務器發送數據和從服務器接收數據。這三方目前可以開發為不同類型的客戶端,即網頁版、安卓版、蘋果版、電腦單機版等。
首先,網頁版的開發。筆者采用了VS2005作為開發平臺,具體是采用了VB.NET,文件是aspx格式,其主要核心的編碼是數據庫的訪問、增刪等。其次,蘋果版的開發。開發蘋果版有3種選擇,一是購買蘋果電腦,在MAC系統上利用XCODE開發蘋果APP;二是在Windows操作系統上,用QEMU加載蘋果MAC的鏡像iso,虛擬一個蘋果系統的環境;三是利用VS2015開發。但個人開發的蘋果APP需要上傳到蘋果的store商店,經過審核后才可以放在商店上供用戶下載,而且技術員要付款99美元。再次,Android版的開發。相對蘋果的APP,安卓APP幾乎是免費的,其無需購買專用的電腦,其開發平臺Eclipse或AS可以免費使用,用平臺開發的軟件也是可以免費安裝,無需上傳和審核,也無需付費,雖然從技術員的角度看,有專利被侵犯的潛在可能,但從應用角度來看,無疑是方便的[2]。筆者目前主要開發的是安卓版和網頁版。具體技術細節,限于篇幅,無法一一給出,在開發過程中,可能會涉及到xml文件的布局,證明文件的上傳、頁面間如何帶參數跳轉和返回、登錄頁面與服務器的數據交互、本地圖片的預覽和選擇、大量數據的上傳、電話的撥打以及uses-permission權限的設定等這些問題。最后,Windows單機版。為方便維護和審核,也可以考慮設計Windwos單機版,如維護數據、與計算機上的數據庫交互等。
目前很多工作都轉移到手機上操作,10.00~16.67cm大小的屏幕,需要實現之前1 024×768像素電腦上的功能,需要有一個良好的頁面布局,否則使用者將因為難用而放棄。從應用反饋來看,主要遇到如下問題:①網頁版要考慮到手機上左右手操作的習慣;②優先選擇的功能要放在突出的位置;③平面設計問題,使用Eclipse做xml界面設計時拖放比較麻煩,為業界所詬病;④學生在使用時,發現無法登陸,這可能與數據導入時有遺漏有關;⑤學生的密碼忘記,維護方需要查詢后發短信提供;⑥學生無法上傳尺寸超過規定的照片,但手機上又無法編輯大小時,作為審核的老師,還是需要學生提供紙質的證明,當前很多APP需要認證身份時,都需要申請人拍照上傳,這個過程中因相機像素比較大,勢必需要壓縮圖片;⑦誤操作造成的刪除需要,學生有刪除權限嗎,還是審核端有刪除權限;⑧按照單位的統計需要,還要把學生的曠課統計進去,這似乎與請假系統無關,但如果不能提供曠課統計,似乎請假系統的應用效果也打了折扣。因此,還需要增加一個專門供學習委員上傳曠課學生數據的“學習委員端”。
通過開發本系統,不僅在技術上對一個完整的系統框架有了更清晰的認識,也對學生的管理工作如何提供更加便捷的服務有了全新的體會,同時也發現當前手機操作系統的不同給技術員帶來了很多苦惱,不僅要開發網頁版,還要根據客戶需要開發安卓版、蘋果版,甚至Windows Mobile版,當然網頁版是最通用的,任何操作端只要有瀏覽器都可以使用。但使用的體驗和提供的服務功能可能不同。
今后將根據使用的反饋不斷完善該系統,在此基礎上不斷開發更多的服務系統,讓管理過程中遇到的各種困難和問題,都能夠借助技術的力量變得更加便捷、更加人性化。這樣不僅可以提高管理效率,也可以提高科技管理意識,讓使用的雙方都能體驗到公正高效的管理模式。
[1]王興晶.Visual Basic.NET數據庫開發典型實例[M].北京:電子工業出版社,2002:181.
[2]Jonathan S.Harbour.Andriod游戲編程入門經典[M].北京:人民郵電出版社,2013:21.
Development and Application of Leave System APP
Lv Zhaojun
(Tourism College of Zhejiang,Hangzhou Zhejiang 311231)
Design technical details required for a leave system was systematically sort out,and feedback problems in the practical application of management personnel were summarized,to make the school management more convenient and more humane with the help of the power of technology,and to provide a reference for developers
leave system;Android APP;C/S pattern;student management
TP311.52
A
1003-5168(2016)11-0048-02
2016-10-16
呂昭君(1980-),本科,講師,研究方向:計算機語言學,中韓語言對比,軟件開發。