周歡 焦?jié)?/p>
摘 要:文章設(shè)計出一種基于主動式二維碼識別+LBS位置識別技術(shù)的考勤管理系統(tǒng)方案,其考勤基本流程是,教師在到達教室后,生成本次課程的動態(tài)二維碼,其中包含有本次課程的時間信息、上課地點信息等,將此二維碼通過投屏或者微信公眾號推送的形式發(fā)放給學(xué)生,學(xué)生掃描二維碼完成簽到?;诤灥綌?shù)據(jù),可進一步完成考勤數(shù)據(jù)分析等工作。為了防止“代簽到”的現(xiàn)象,本設(shè)計動態(tài)實時刷新二維碼,且通過LBS技術(shù)來獲取師生的地理位置,通過判斷師生是否在同一位置處,進而識別學(xué)生是否真實在課堂中。通過該雙重保障,克服了單一技術(shù)的不足之處,從而有效杜絕“代簽到”現(xiàn)象。文章所設(shè)計的考勤系統(tǒng)優(yōu)化了高校課堂考勤流程,提高了課堂考勤效率,操作便捷,安全可靠,可在高校課堂或其他會議考勤等場景下推廣使用。
關(guān)鍵詞:高??记诠芾?二維碼;LBS;微信二次開發(fā)
0? ? 引言
學(xué)風(fēng)建設(shè)是建設(shè)高水平大學(xué)的關(guān)鍵,它標(biāo)志著一所高校的辦學(xué)思想、教育質(zhì)量和管理水平。學(xué)生課堂考勤管理是高校學(xué)風(fēng)建設(shè)的根本,是保證日常教學(xué)秩序正常運行和學(xué)校行使教育培養(yǎng)職責(zé)的重要手段。
課堂考勤在高校教學(xué)過程中既是判斷學(xué)生學(xué)習(xí)態(tài)度的重要因素,也是課程平時成績的判別依據(jù)。因此,為了能取得較好的平時成績,學(xué)生們經(jīng)常會出現(xiàn)“代點”的現(xiàn)象,這對傳統(tǒng)的考勤方式提出了挑戰(zhàn)。因此,本文設(shè)計開發(fā)了一套考勤管理系統(tǒng),從而提高課堂考勤的效率和準(zhǔn)確率。
1? ? 系統(tǒng)分析
為了滿足管理員、教師對學(xué)生課堂出勤情況的管理,首先需要采集到學(xué)生每次課堂出勤情況的數(shù)據(jù),文章計劃基于微信公眾平臺設(shè)計開發(fā)學(xué)生微信客戶端,因需使用微信公眾平臺,還需進行相應(yīng)的基礎(chǔ)配置。具體配置要求和功能需求如下:
1.1? 微信公眾平臺基礎(chǔ)配置
(1)向騰訊申請微信公眾平臺賬號、將公眾號改為開發(fā)者模式、實現(xiàn)與系統(tǒng)的接口對接;(2)通過公眾號提供的菜單接口,配置公眾號的底部功能菜單,將菜單鏈接至本系統(tǒng)中;(3)需進行微信相關(guān)技術(shù)接口的開發(fā),如微信網(wǎng)頁授權(quán)、地理位置接口等;(4)在關(guān)注/取消關(guān)注學(xué)院微信公眾號時,需將關(guān)注者微信的基本信息記錄到系統(tǒng)數(shù)據(jù)庫中。
1.2? 教師微信客戶端模塊
(1)教師注冊。教師關(guān)注公眾號,填寫個人手機號碼和驗證碼,系統(tǒng)自動與教師庫預(yù)留的號碼進行比對,自動完成教師注冊。(2)教師課前簽到。任課教師到達教室后,通過微信掃描預(yù)留在教室的二維碼完成上課前的簽到。系統(tǒng)自動記錄下教師信息、教室、GIS地理位置信息(精確到教學(xué)樓)、時間(精確到秒)。(3)生成簽到二維碼。任課教師簽到后,選擇需上課程、班級,填寫本次課程簽到的截止時間,學(xué)生簽到超過該時間就是遲到,截止時間默認(rèn)為上課時間延后十分鐘,可以修改。教師生成本次課的簽到二維碼。(4)按需推送簽到碼。生成的簽到二維碼,教師可以通過投影機投射出來,供學(xué)生掃碼簽到。或者是將該二維碼推送給班級的所有學(xué)生,由學(xué)生在公眾號中識別簽到。(5)查看上課簽到情況。教師可查看本節(jié)課學(xué)生簽到情況,上課簽到情況分為:正常、遲到、缺勤、地理位置異常等。
1.3? 學(xué)生微信客戶端模塊
(1)學(xué)生注冊。學(xué)生關(guān)注公眾號,填寫個人手機號碼和驗證碼,系統(tǒng)自動與學(xué)生庫預(yù)留的號碼進行比對,完成學(xué)生注冊。(2)學(xué)生簽到。學(xué)生掃描教師生成的簽到二維碼,完成上課簽到。在簽到時記錄簽到時間、學(xué)生賬號、地址位置(精確到教學(xué)樓)。(3)查看歷史簽到情況。學(xué)生可以查看自己以往的上課簽到情況。
1.4? PC管理端
(1)班級管理,維護班級信息。(2)學(xué)生管理,維護學(xué)生信息,需記錄下每個學(xué)生的手機號碼、姓名、所在班級等信息。(3)課程管理,維護課程信息,需記錄下課程任課老師、上課學(xué)習(xí)、上課教室、上課時間等信息。(4)教師管理,維護教師信息,需記錄下教師姓名、手機號碼等信息。(5)教室管理,維護上課教室,需記錄下教室所在教學(xué)樓、樓層、教室房間號。同時需要生成該教室的唯一二維碼,張貼在教室供教師簽到用。(6)查詢統(tǒng)計,可按班級、學(xué)生、課程、教師統(tǒng)計出勤率,以列表和圖表的形式顯示。
2? ? 系統(tǒng)設(shè)計
2.1? 系統(tǒng)業(yè)務(wù)流程設(shè)計
本項目所設(shè)計的基于主動式二維碼識別+LBS位置識別技術(shù)的考勤管理系統(tǒng),其考勤方式的基本流程是,教師在到達教室后,生成本次課程的動態(tài)二維碼,包含本次課程的時間信息、上課地點信息等,將此二維碼通過投屏或者微信公眾號推送的形式發(fā)放給學(xué)生,學(xué)生掃描二維碼完成簽到。具體流程如圖1所示。
為了防止“代簽到”的現(xiàn)象,本項目中將二維碼動態(tài)實時刷新,且通過LBS技術(shù)來獲取師生的地理位置,通過判斷師生是否在同一位置處,進而識別學(xué)生是否真實在課堂中。通過該雙重保障,克服了單一技術(shù)的不足之處,從而有效杜絕“代簽到”現(xiàn)象。
2.2? 系統(tǒng)總體功能結(jié)構(gòu)設(shè)計
系統(tǒng)總體功能結(jié)構(gòu)如圖2所示,分為微信客戶端和Web管理分析平臺兩部分。微信客戶端又分為教師客戶端和學(xué)生客戶端。
教師用戶通過訪問微信公眾號,完成身份認(rèn)證之后,上課到達教室后完成教室簽到,生成本次上課的學(xué)生簽到二維碼。可以查看自己本班學(xué)生的簽到出勤情況,也可通過師生交流模塊與學(xué)生進行個別交流,并及時回復(fù)學(xué)生的留言。
學(xué)生用戶通過訪問微信公眾號,首先進行身份認(rèn)證,每次上課前,通過微信掃描簽到二維碼,比對二維碼的時間戳,教室的經(jīng)緯度,完成上課簽到。此后能通過學(xué)生簽到模塊實現(xiàn)每日簽到;通過簽到歷史模塊,查看自己既往的簽到統(tǒng)計信息和每日簽到詳細信息;通過師生交流模塊,可向教師留言提問。
Web管理分析平臺,供管理員和教師用戶所使用。管理員可以通過該平臺管理全院所有學(xué)生的全部信息,教師用戶僅可管理自己本班級的學(xué)生的相關(guān)信息。該Web管理分析平臺基于Java Web開發(fā)技術(shù)實現(xiàn),分為后臺管理、統(tǒng)計分析模塊。
后臺管理中有課程管理、教師管理、班級管理和學(xué)生管理子模塊。課程信息管理包括新增、修改、刪除和查詢信息。課程編輯時需要定義上下課時間、教室位置(經(jīng)緯度)。教師管理子模塊是便于管理員管理教師信息,實現(xiàn)教師信息的新增、修改、刪除和查詢功能。班級管理子模塊是便于管理員管理班級信息,實現(xiàn)班級信息與班主任綁定,以及班級信息的新增、修改、刪除和查詢功能。學(xué)生管理子模塊便于管理員和教師管理學(xué)生信息,將學(xué)生信息與班級相綁定,以及學(xué)生信息的新增、修改、刪除和查詢功能[1]。
統(tǒng)計分析模塊中有簽到統(tǒng)計和圖表分析子模塊。簽到統(tǒng)計模塊便于管理員從宏觀上掌握出勤情況,以列表形式呈現(xiàn)統(tǒng)計結(jié)果。該子模塊可以通過3個維度來統(tǒng)計,分別是:按時間統(tǒng)計、按班級統(tǒng)計、按時間+班級統(tǒng)計,他們分別統(tǒng)計出某一段時間內(nèi)、某班級或者某班級在某段時間內(nèi)的每位學(xué)生的總的簽到次數(shù)、每次簽到的明細和非正常出勤的次數(shù)[2]。
圖表分析子模塊是將簽到數(shù)據(jù)進行恰當(dāng)?shù)挠嬎闾幚恚玫骄C合性的分析結(jié)果,并以圖表的形式更直觀地展現(xiàn)給管理員和教師。該模塊中共有5類分析圖表,分別是:班級簽到對比、正常出勤率統(tǒng)計、簽到人次數(shù)對比、簽到情況分析和綜合指標(biāo)分析。具體如下:(1)班級簽到對比:通過柱狀圖展示,逐月統(tǒng)計各班級簽到情況,能區(qū)分正常出勤與非正常出勤人數(shù)。正常出勤是指在教學(xué)實際區(qū)域簽到,非正常出勤指簽到地點明顯偏離實際位置。同時,也能進行各班級之間的橫向?qū)Ρ?。?)正常出勤率統(tǒng)計:通過折線圖展示,統(tǒng)計各班級各月正常出勤率,班級間由不同的折線代表,可進行橫向比對;(3)簽到人次數(shù)對比:通過柱狀圖展示,統(tǒng)計出各月各班級簽到的總?cè)舜螖?shù),以便知曉學(xué)生參與簽到的總體人數(shù),是否每人均參與簽到考勤。同時,班級間進行橫向比較;(4)簽到情況分析:通過餅狀圖展示,詳細了解各個班級在各個月中參與簽到情況,如:可知曉某班某月簽到小于10次的人數(shù)、簽到在10~20次的人數(shù)和簽到次數(shù)大于20次的人數(shù);(5)綜合指標(biāo)分析:通過雷達圖展示,綜合分析每班各月出勤指標(biāo),包括未遲到率、正常出勤率、代簽人數(shù)比率,各班級間可進行橫向比較。
2.3? 系統(tǒng)體系結(jié)構(gòu)
系統(tǒng)采用B/S體系結(jié)構(gòu),B/S 結(jié)構(gòu)即瀏覽器/服務(wù)器結(jié)構(gòu),B 代表 Browser(瀏覽器),只需處理較少的業(yè)務(wù)邏輯,絕大多數(shù)的業(yè)務(wù)邏輯是在服務(wù)器端實現(xiàn)的。其優(yōu)勢在于用戶無須額外安裝程序,只要有瀏覽器就可以與服務(wù)器進行交互。這樣就減少了客戶端的壓力,因此也被稱為瘦客戶端[3]。
B/S 結(jié)構(gòu)的優(yōu)點在于:客戶端無須安裝,可以直接通過廣域網(wǎng)訪問服務(wù)器;維護方便,只需升級服務(wù)器,而眾多的客戶端無須升級。
本系統(tǒng)整體架構(gòu)如圖3所示,主體分為3層:(1)基礎(chǔ)支撐層為系統(tǒng)的基礎(chǔ),包含了運行環(huán)境和數(shù)據(jù)庫兩部分。系統(tǒng)提供了微信公眾號服務(wù)功能,需要使用騰訊公司提供的微信公眾平臺開發(fā)者API接口。(2)業(yè)務(wù)處理層,符合MVC三層代碼設(shè)計規(guī)范,包含了數(shù)據(jù)層、業(yè)務(wù)層和展示層。數(shù)據(jù)層提供了訪問MySql數(shù)據(jù)庫的各類接口,包括存儲過程的調(diào)用、數(shù)據(jù)的讀寫操作、事務(wù)的處理等;業(yè)務(wù)層實現(xiàn)了各功能的業(yè)務(wù)代碼;展示層提供了GET/POST請求接口,作為數(shù)據(jù)與前端展示層的通道。(3)前端展示層,前端展示層即前端UI,為使用者通過電腦瀏覽器或者是手機微信訪問系統(tǒng)的入口。該層使用了html,JavaScript,css技術(shù),同時PC端報表展示功能使用了百度的echarts開源圖表。
3? ? 結(jié)語
得益于移動互聯(lián)的發(fā)展,智能手機集成的GPS定位功能可以幫助準(zhǔn)確知曉學(xué)生的位置信息,同時,日益進步的數(shù)據(jù)分析和展示功能為統(tǒng)計分析數(shù)據(jù)提供了幫助。本文所設(shè)計的“基于主動式二維碼識別+LBS位置識別技術(shù)的考勤管理系統(tǒng)”較好地解決了課堂考勤工作的信息化管理任務(wù)。本項目方案首先實施便捷,無須額外的硬件投入;其次能保證在短時間內(nèi)高效完成考勤任務(wù);再者,雙重保障能有效識別簽到的真實性。值得在高校進行推廣應(yīng)用,進而也可適用于各類會議考勤管理。
[參考文獻]
[1]車巍.二維碼技術(shù)在高校信息化中的應(yīng)用過研究[J].電子測試,2016(20):65-66.
[2]秦健,邱力軍.一種非接觸式高校學(xué)生上課考勤系統(tǒng)設(shè)計與開發(fā)[J].電子測試,2019(6):58-59.
[3]陳南南.基于LBS的學(xué)生考勤系統(tǒng)設(shè)計[J].信息技術(shù)與信息化,2018(7):67-69.
(編輯 何 琳)