王蕓琦 蔡建平
摘 ?要: 近年來,電子簽到已成為一種常見的考勤方式。基于位置的電子簽到能夠通過獲取用戶簽到時所處位置來判斷簽到是否成功,由于其反饋的信息更加豐富、實用、有效而備受推崇。設(shè)計開發(fā)了基于位置的簽到系統(tǒng),系統(tǒng)采用Java EE處理簽到情況,前端包括微信小程序端和網(wǎng)頁端。用戶在發(fā)起簽到前可以導(dǎo)入名單,在發(fā)起簽到時可以限制簽到完成的時間、地點、人員,簽到完成后可以導(dǎo)出簽到記錄。
關(guān)鍵詞: 微信小程序; 簽到; 考勤管理; HTML5
中圖分類號:TP311.1 ? ? ? ? ?文獻(xiàn)標(biāo)志碼:A ? ? 文章編號:1006-8228(2019)11-67-03
Abstract: In recent years, electronic sign-in has become a common form of attendance checking. The location-based electronic sign-in can determine whether the sign-in is successful by obtaining the location where the user checked in, which is highly praised for being more informative, practical, and effective. A location-based sign-in system is designed and developed, the system uses Java EE to handle sign-in transaction, and the front-end includes WeChat Mini Program and webpage. The user can import the list before sign-in. When the sign-in is initiated, the time, place, and personnel of the sign-in can be restricted. After the sign-in is completed, the sign-in record can be exported.
Key words: WeChat Mini Program; sign-in; attendance management; HTML5
0 引言
簽到是一項十分常見的活動,人們一直在研究如何提高簽到的發(fā)起效率與管理效率。許多場合(如學(xué)校、醫(yī)院、公司等)仍使用手工填寫模式進行考勤[1],現(xiàn)如今,各類電子技術(shù)發(fā)展迅速,電子簽到躍然成為了一種更省時省力的形式。近十年來,市場上各類手機APP層出不窮,給人們的生活、學(xué)習(xí)和工作帶來了極大的便利[2]。APP可以調(diào)用手機的GPS定位系統(tǒng),對于用戶地理位置的判斷將更加精確[3],但也會有一定的弊端,為了解決APP運營過程中出現(xiàn)的長尾效應(yīng)[4],可以使用微信小程序來開發(fā)應(yīng)用。微信小程序有著即開即用、不占內(nèi)存等優(yōu)點,它提供有豐富的接口,包括位置信息等,可以為用戶帶來良好的使用體驗。
本系統(tǒng)致力于提高日常活動中人員考勤的效率,系統(tǒng)使用微信小程序提供的接口來獲取用戶的當(dāng)前位置,可發(fā)起限定位置的簽到,而需要簽到的用戶使用金數(shù)據(jù)提供的表單來完成簽到。隨后簽到發(fā)起者可以在微信小程序或是網(wǎng)頁中查看簽到完成的情況。網(wǎng)頁端可以導(dǎo)入需要簽到人員的名單,也可以導(dǎo)出簽到結(jié)果。
1 系統(tǒng)總體設(shè)計
用戶可在微信小程序端限定簽到完成的有效時間段。通過調(diào)用地圖組件,還可限定簽到完成的有效位置。也可限定簽到需要完成的用戶群體。
簽到發(fā)布后,用戶可在微信小程序端或是網(wǎng)頁端查看簽到完成的情況。用戶可在網(wǎng)頁端上傳用戶名單,或是下載某個簽到的完成情況。
1.1 系統(tǒng)框架
本系統(tǒng)的小程序端與網(wǎng)頁端的結(jié)構(gòu)圖如圖1所示。
本系統(tǒng)的微信小程序端主要模塊有:注冊登錄模塊、發(fā)起簽到模塊、管理簽到模塊、個人中心模塊;網(wǎng)頁端主要模塊有:注冊登錄模塊、管理發(fā)起模塊、管理參與模塊、管理名單模塊、個人中心模塊。
1.2 功能模塊設(shè)計
注冊登錄模塊:主要實現(xiàn)用戶注冊賬號、登錄賬號功能,系統(tǒng)使用正則表達(dá)式來判斷用戶輸入的手機號是否合法。小程序端流程圖如圖2所示。
發(fā)起簽到模塊:在發(fā)起新的簽到時,用戶可以限定時間、地點與人員,界面如圖3所示。
微信小程序調(diào)用map插件和一系列獲取位置的方法來確認(rèn)地點。
當(dāng)用戶輸入的數(shù)據(jù)無誤時,小程序會將數(shù)據(jù)傳遞給服務(wù)器,服務(wù)器使用一定的方法處理并保存時間信息,并返回該簽到的唯一標(biāo)識符。
簽到設(shè)置成功后,程序跳轉(zhuǎn)至分享簽到界面,并提示來自服務(wù)器的口令,用戶可通過截圖或復(fù)制鏈接的形式來分享簽到,界面如圖4所示。
管理簽到模塊:界面展示簽到名稱、簽到備注、簽到發(fā)起的時間,并具有下拉刷新數(shù)據(jù)的功能。
在展示的簽到列表中,點擊一項,可以具體查看參與簽到的用戶的結(jié)果信息、微信信息、設(shè)備信息等。
在網(wǎng)頁端,服務(wù)器使用HttpSession來分辨用戶,若用戶長時間無操作,則需重新登錄。在登錄信息有效的情況下,用戶可查看或刪除自己發(fā)起的某項簽到,也可以查看簽到詳情與簽到結(jié)果。用戶可以將簽到的完成結(jié)果導(dǎo)出為Excel文件到本地進行保存。
管理參與模塊:進入個人中心后,用戶可查看自己歷史參與的簽到。
用戶并不能看到同樣參與此次簽到的其他用戶的信息。
管理名單模塊:用戶在網(wǎng)頁端可以導(dǎo)入名單,用以在發(fā)起簽到時選擇需要進行簽到的人員列表,界面如圖5所示。
系統(tǒng)通過Form表單將用戶選擇的文件發(fā)至后端,后端確認(rèn)登錄信息有效后,將Excel先存至臨時文件,為避免用戶上傳相同名稱的文件而導(dǎo)致錯誤,系統(tǒng)會對文件進行重命名操作,再將此文件存至服務(wù)器中。之后系統(tǒng)將調(diào)取JXL工具類庫中的方法,對服務(wù)器上的Excel文件進行解析,并依次把數(shù)據(jù)條目存入數(shù)據(jù)庫中。
用戶還可以查看或刪除自己導(dǎo)入的名單,可以查看名單中所有人員的姓名與手機號信息。
個人中心模塊:用戶在微信小程序端與網(wǎng)頁端的個人中心中皆可修改密碼。若系統(tǒng)檢查用戶輸入的原密碼正確,且兩次輸入的新密碼相同并符合規(guī)范,則判斷修改成功。
在網(wǎng)頁端中,若用戶點擊退出登錄,系統(tǒng)會跳轉(zhuǎn)到登錄界面。
微信小程序的個人中心頁頂端會顯示當(dāng)前登錄用戶的手機號。
在微信小程序端與網(wǎng)頁端,皆有本系統(tǒng)的關(guān)于與幫助頁面,用于展示系統(tǒng)的相關(guān)信息。
2 測試數(shù)據(jù)的圖形化展示
2.1 發(fā)起簽到展示
發(fā)起簽到時,用戶設(shè)置具體時間、地點與人員限制的界面如圖6所示。
2.2 查看結(jié)果展示
用戶查看自己發(fā)起的簽到界面如圖7所示,列表展示簽到的名稱、備注、創(chuàng)建時間。
單擊某一項簽到,可以具體查看此項簽到的口令、時間地點人員限制、簽到結(jié)果情況,如圖8所示。
單擊某一用戶時,根據(jù)用戶簽到成功與否,會顯示簽到的詳細(xì)結(jié)果,若用戶簽到失敗,會顯示失敗的原因,如圖9所示。
2.3 導(dǎo)出結(jié)果展示
在網(wǎng)頁端中,用戶導(dǎo)出簽到結(jié)果時,Excel中會顯示姓名、手機號、結(jié)果、用戶簽到時間、簽到地點、簽到姓名信息,如圖10所示。
3 實際位置與簽到位置的偏差
3.1 發(fā)起簽到偏差
在發(fā)起簽到時,若選擇限制位置,微信小程序調(diào)用map插件獲取用戶當(dāng)前位置。此時,若用戶身處室內(nèi)或其他信號不佳的位置,系統(tǒng)獲取到的當(dāng)前位置會有一定的偏差。
此時可以在屏幕上拖動地圖,將目標(biāo)位置拖到屏幕中央,并單擊“選擇地圖中心位置”,再選擇允許簽到的距離范圍,便可實現(xiàn)限制有效簽到的位置在用戶期望的位置范圍內(nèi)。
3.2 完成簽到偏差
在完成簽到時,用戶直接在金數(shù)據(jù)的表單中獲取當(dāng)前位置,自動填寫位置字段。
金數(shù)據(jù)提供的獲取地理位置功能效果較好,在室內(nèi)或其他信號不佳的情況下,也能較為準(zhǔn)確地獲取用戶當(dāng)前所在位置。
4 結(jié)束語
本系統(tǒng)通過簽到活動的電子化,不僅減少了紙張筆墨與人力資源的浪費,更使得簽到活動變得快捷與方便管理,也便于數(shù)據(jù)的歸檔以及后續(xù)的回檔?!靶〕绦?”已經(jīng)可以連接一切,微信小程序作為一款圍繞微信打造的生態(tài)工具,逐漸為更多的行業(yè)與企業(yè)所青睞[5]?;谖恢玫暮灥轿⑿判〕绦?qū)⒛転槿藗兊纳钆c工作帶來極大的便利。而如何提高簽到時對于位置的判定將是需要不斷研究與改進的關(guān)鍵點。
參考文獻(xiàn)(References):
[1] 于莉莉.信息系統(tǒng)在某醫(yī)院考勤管理中的應(yīng)用[J].醫(yī)藥前沿,2018,8(21):354.
[2] 朱雷.基于Android技術(shù)的考勤APP設(shè)計與實現(xiàn)[J].遼寧師專學(xué)報(自然科學(xué)版).2018,20(2):70-72,79.
[3] 王江雨,劉愛華.基于Android的定點簽到獎勵系統(tǒng)分析與實現(xiàn)[J].現(xiàn)代計算機,2017,(33):65-69. DOI:10.3969/j.issn.1007-1423.2017.33.016.
[4] 邢榕珊,匡芳君.微信小程序設(shè)計[J].計算機時代,2018,(8):9-12.DOI:10.16644/j.cnki.cn33-1094/tp.2018.08. 003.
[5] 賀瑜.微信小程序推廣展望[J].電腦知識與技術(shù),2018.14(27):279-280