戴麗麗 朱妤
摘要:針對傳統(tǒng)的課堂點名方式不僅浪費寶貴的時間,而且加重了教師的工作量,因此,借助微信平臺為入口,基于微信小程序建立一個課堂考勤系統(tǒng)。文章采用Java語言編寫,用SpringBoot框架實現(xiàn),選擇MySql作為后臺數(shù)據(jù)庫,前端用微信開發(fā)工具開發(fā),后臺使用IntelliJ idea,在降低系統(tǒng)成本的同時并未降低系統(tǒng)的穩(wěn)定性和可靠性?;谖⑿判〕绦蜷_發(fā)的課堂考勤系統(tǒng)可以大大節(jié)省了課堂和教師的時間成本,并且該系統(tǒng)開發(fā)周期短,軟件升級、維護方便。實測結果表明,本系統(tǒng)運行穩(wěn)定可靠,達到了快速組建班級、簽到、請假等要求。
關鍵詞:微信小程序;課堂考勤;Java語言;MySql數(shù)據(jù)庫
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)19-0055-03
1 背景
課堂考勤是學校教學管理的重要組成部分,是智能校園系統(tǒng)的核心模塊之一。學生課堂考勤與企業(yè)單位的考勤的不同之處在于:1)出勤頻率不同。2)學校的學生數(shù)量大,班級多。3)課堂時間有不同的可能性。例如,臨時調課會使學生考勤變得更加復雜。因此,學生課堂考勤系統(tǒng)設計時應注意:1)考勤系統(tǒng)應該能以不同課時的上課時間為依據(jù)準確的劃分考勤時間;2)實現(xiàn)自動考勤,從而提高效率;3)考勤系統(tǒng)必須穩(wěn)定,識別精度高;4)學生群體是考勤對象,系統(tǒng)不應只向學校員工展示考勤信息[1]。同時,考勤的結果應該反饋給學生,提高他們的自律意識。
而該系統(tǒng)就是針對考勤系統(tǒng)的特點設計了一款基于微信小程序的課堂考勤管理系統(tǒng),只要用戶安裝了微信客戶端,即可方便地獲取應用程序,同時小程序又有與APP 相當?shù)挠押玫挠脩趔w驗。
2 微信小程序
微信小程序于2017年1月9日,由騰訊公司正式發(fā)布。它是一種全新的連接用戶與服務的方式,它可以在微信內被便捷地獲取和傳播,同時具有出色的用戶使用體驗[2]。微信小程序的框架采用mvc開發(fā)思想,包括邏輯層、視圖層和基礎層。主要采用WXML( HTML5) 、WXSS( CSS) 和JavaScript 技術。用戶無須下載或安裝便可快捷地獲取服務,功能強大,用戶體驗出色,并且提供了一系列的組件和接口,開發(fā)快速。微信小程序的開發(fā)流程如下:
1) 登錄到微信小程序的開發(fā)網站,注冊微信小程序;
2) 完善主要信息,包括程序的名稱、簡介和服務范圍等;
3) 綁定微信小程序開發(fā)者,開發(fā)者可以使用官網提供的開發(fā)工具編寫代碼和調試;
4) 微信小程序開發(fā)結束后,向微信團隊提交代碼,審核通過即可發(fā)布。
3 基于微信小程序的課堂管理系統(tǒng)的設計
3.1 系統(tǒng)功能
該課堂考勤管理系統(tǒng)主要包括教師和學生兩類用戶,主要功能如圖1所示。
1)教職工用戶
教師是考勤過程的主要參與者。除了系統(tǒng)的組建班級以及添加課程外,教師還可以查看每個人的到課率。課程信息管理展示了本周所要教的課程信息。學生請假時可以在線審核請假申請,并可以利用系統(tǒng)來監(jiān)控學生的學習狀態(tài)以及根據(jù)學生到課情況統(tǒng)計平時成績。
2)學生用戶
學生是考勤簽到人員,需要在考勤系統(tǒng)上注冊個人信息以及進行簽到,可以在考勤管理系統(tǒng)上察看自己的出勤信息和進行請假的申請和查詢。學生的主要用例包括課程管理、查看考勤和管理請假[3-5]。
3.2 數(shù)據(jù)模型的設計
依據(jù)系統(tǒng)功能模塊設計,得到本系統(tǒng)數(shù)據(jù)庫的實體:教師、學生、課程、班級、請假單等實體信息。這些實體之間又相互聯(lián)系。系統(tǒng)總體ER圖如圖2所示。
4 基于微信小程序的課堂管理系統(tǒng)的實現(xiàn)
4.1 注冊模塊
首先,該課堂管理系統(tǒng)無論是教師還是學生在首次訪問該程序時,都需要進行注冊,教師(學生)注冊時應填寫工號(學號)、姓名、密碼、確認密碼,并且下面包含學生和教師兩個角色的選擇。值得注意的是已注冊過的工號(學號)不可以再進行注冊,密碼為6-8位且不能為空。注冊界面實現(xiàn)結果如圖3所示:
4.2 教師信息管理模塊實現(xiàn)
教師信息管理模塊主要實現(xiàn)該模塊的查詢、添加、啟用、編輯功能。老師注冊并登錄進入教師考勤系統(tǒng)界面,其中設計了幾個按鈕:“簽到”“請假”“我的”。在“我的”按鈕中,有如下幾項:“個人資料” “請假單審批”“班級”“課程”“退出”。其中“個人資料”中有老師工號、姓名。老師還可以添加其郵箱和手機號碼,完善個人信息?!罢埣賳螌徟敝?,老師可以看到學生請假信息從而進行審批。主界面如圖4所示:
下面是創(chuàng)建班級和課程的具體實現(xiàn):
1)在“班級”選項中,老師可以組建授課班級,以及填寫班級名和人數(shù),這樣學生注冊登錄時就可以顯示該老師的課程從而進行簽到。創(chuàng)建班級界面如圖5所示:
相關代碼實現(xiàn)如下:
@RequestMapping(“createClass”)//映射URL
public JSONObject createClass(String id,String gradeName,String gradeNumAll){//封裝一個類
Grade grade=new Grade();
grade.setTeacherId((long) Integer.parseInt(id));
grade.setCreateTime(new Date());//設置grade的創(chuàng)建時間
grade.setGradeName(gradeName);//設置grade的班級名稱
grade.setGradeNumAll(Integer.parseInt(gradeNumAll));//設置grade的班級人數(shù)
User user=userService.find((long) Integer.parseInt(id));
grade.setTeacherName(user.getUsername());//設置grade的老師姓名
grade.setGradeNumNow(0);
gradeService.save(grade);//將grade保存在數(shù)據(jù)庫中
return JsonHandler.jsonSuccess(“”);//返回結果
}
2)在“課程”選項中,老師可以添加所授課程,其中包括課程名,開始時間,結束時間,選擇星期幾和班級,即可添加成功。值得注意的是開始時間和結束時間的冒號是英文狀態(tài)下的冒號,若填中文狀態(tài)的就會添加失敗[6-8]。添加課程信息如圖6所示:
添加完畢后,老師就可查看所添加的課程信息,從而方便學生簽到。查看添加課程信息如圖7所示:
老師發(fā)布完課程,學生可以進行簽到。學生簽到完后老師查看學生簽到信息,實現(xiàn)結果如圖8所示:
4.3 學生信息管理模塊實現(xiàn)
學生信息管理模塊同樣實現(xiàn)的是該模塊的查詢、添加、啟用和編輯功能。學生注冊并登錄后進入考勤系統(tǒng)界面。和老師相似的有“簽到”“請假”和“我的”三個按鈕?!罢埣佟敝锌梢韵蚶蠋熖峤徽埣偕暾垺!拔业摹敝腥缦聨醉棧簜€人資料、我的簽到、請假單和退出。進入考勤系統(tǒng)界面如圖9所示:
下面是學生簽到和請假的具體實現(xiàn):
1)“簽到”中有顯示的需要 簽到的課程,當學生在開始時間準時簽到就顯示簽到成功,在結束時間之后才簽到就顯示逃課,在開始時間之后,結束時間之前簽到顯示遲到。實現(xiàn)結果如圖所示:
“我的簽到”中可以顯示學生已經簽到的信息。包括已簽的課程、簽到日期、簽到時間和指導老師。其中,設置的狀態(tài)1為遲到、2為簽到、3為曠課。簽到信息如圖10所示:
2)“請假”選項為學生若有特殊情況未能按時出席,就必須請假,學生提交請假單時需要填寫請假時間,老師以及請假課程,并寫明請假內容,方便老師查閱。注意的是請假時間必須格式為xxxx-xx-xx或xxxx-x-x,例如2018-05-01或2018-5-1,否則提交失敗[9-11]。請假信息如圖11所示:
相關代碼實現(xiàn)如下所示:
@RequestMapping(“saveLeave”)
public JSONObject saveLeave(Leave leave,String time) throws ParseException {
leave.setState(1);
SimpleDateFormat simpleDateFormat=new SimpleDateFormat(“yyyy-MM-dd”);//設置請假時間
Date date = simpleDateFormat.parse(time);
leave.setLeaveTime(date);//設置請假時間
leaveService.save(leave);//將leave保存在數(shù)據(jù)庫中
return JsonHandler.jsonSuccess(“”);//返回結果
}
5 系統(tǒng)測試
系統(tǒng)測試需要遵循相關的原則。需要進行各種重復性的操作測試,需要考慮各種各樣的錯誤情況,并盡可能多地進行同一問題的反復測試。下面以請假失誤為代表進行測試,如表1所示為請假界面的測試用例:
請假單測試結果如圖12所示:
該文分析了請假測試界面,實際還進行了登錄、注冊、老師添加課程等這些功能,都能得以實現(xiàn),與此相對應的非空校驗和格式校驗也都已進行測試。其他功能與之相類似,該文就不做詳細描述。
6 結束語
該文設計的是基于微信小程序的課堂考勤管理系統(tǒng),該系統(tǒng)易于維護和升級,使用方便、簡單。經過測試,該系統(tǒng)可靠、穩(wěn)定,達到了課堂考勤管理的需求?,F(xiàn)如今,微信已經是我們生活中必不可少的一部分。隨著微信小程序的日益發(fā)展,利用微信平臺實現(xiàn)學生考勤管理必將成為一種趨勢。微信平臺以其巨大的便利,在學生管理方面有著廣泛的應用前景。
參考文獻:
[1] 蔣夢浩.基于指紋識別的分布式考勤系統(tǒng)研究[D].重慶:重慶大學,2010.
[2] 張小龍.微信小程序入口在哪?有什么用?[J].計算機與網絡,2017,548(4):50.
[3] 王冬波.基于B/S架構的考勤管理系統(tǒng)的設計與實現(xiàn)[D].青島:中國海洋大學,2011.
[4] 楊民峰.基于J2EE的學生考勤系統(tǒng)設計與實現(xiàn)[J].北京工業(yè)職業(yè)技術學院學報,2015,14(1):45-50.
[5] 何曉昀.基于校園網的學生考勤系統(tǒng)的設計[J].長江大學學報: 自然科學版,2010,9(3):285-286.
[6] 張惠娟.基于人臉識別的考勤系統(tǒng)的設計與實現(xiàn)[D].武漢: 華中科技大學,2011.
[7] 趙晉萍.基于LAMP框架的通用數(shù)據(jù)測試平臺的設計與實現(xiàn)[D].北京:北京交通大學,2015.
[8] 王冬波.基于B/S架構的考勤管理系統(tǒng)的設計與實現(xiàn)[D].青島:中國海洋大學,2011.
[9] 江治.基于ASP.NET的學生考勤管理系統(tǒng)設計與實現(xiàn)[J].電腦知識與技術,2012,35(5):56-58.
[10] 李勝,殷杰,郭超沛,等.基于RFID的課堂考勤系統(tǒng)的設計[J].電子制作,2015(6):23,38.
[11] 李旭,田文凱,何雷.智能感應卡考勤管理系統(tǒng)設計[J].產業(yè)與科技論壇,2015(3):66,75.