馮長寶,韓忠偉,孫沫麗,王佳婧(吉林動畫學院,長春 130012)
?
基于GPS定位技術的移動平臺考勤系統設計
馮長寶,韓忠偉,孫沫麗,王佳婧
(吉林動畫學院,長春 130012)
摘 要:隨著移動網絡的發展,移動設備軟硬件技術不斷成熟,基于移動網絡的應用軟件深受廣大用戶的青睞。本文實現了一個基于GPS定位技術的移動平臺考勤系統的設計與實現方法,摘要包括系統部署、移動設備和web服務交互方案、系統主要功能和實現部分。主要完成服務器與移動設備之間如何進行游戲交互。
關鍵詞:GPS;web服務;考勤
當今是互聯網是時代,手機app軟件已經深入到人民生活的方方面面,從各個角度服務著社會。目前國內外考勤系統仍然存在許多弊端和不便,不論技術含量高低都有一個共同點,那就是考勤的人必須要到考勤系統的終端附近完成一次考勤過程。而且,現狀工作形式也有非常大的變化,給考勤帶來困難,例如,如何對出差在外的員工考勤,如何對業務人員考勤等等。現在,隨著智能手機和互聯網的廣泛普及,考勤方式發生了變化,例如考勤設備可以用智能手機代替,用手機定位替代現場考勤等。因此本文要設計一個基于GPS定位技術的手機考勤系統。整個系統分為兩部分:系統服務平臺和手機終端平臺。使用戶可以通過手機終端登陸考勤系統完成一次考勤操作,手機終端將所在位置的物理坐標(即經緯度)和考勤人員的登錄信息(員工編號,姓名、部門和考勤時間)通過GPRS網絡、3G網絡或者WiFi(無線局域網絡)發生到服務系統,系統服務平臺能夠根據手機終端將手機終端發送過來的考勤信息保持到數據存儲系統,并能夠形成各種統計分析數據及圖表。
2.1 系統部署
本文的方法是利用GPS技術和無線網絡技術搭建一個多用戶的實時交互系統。本系統的執行步驟:
第1步:用戶通過他們的移動設備登錄;
第2步:每個移動設備連接到全球定位系統來捕捉每個用戶自己的位置信息;第3步:每個移動設備連接到無線網絡的位置信息發送到服務器;第4步:服務器獲取所有登錄用戶的位置信息,并把它們轉化為二維坐標,并產生一個相應的數字地圖;
第5步:服務器發送到用戶的移動設備一個顯示用戶的位置的數字地圖;
第6步:移動設備用戶的位置更新的條件下,重復步驟2,3,4,5;
第7步:當用戶的新位置符合要求的條件觸發一個虛擬的互動,執行和完成的相互作用。
步驟7中所描述的虛擬互動的觸發條件是用戶之間發生碰撞,即用戶之間的距離是小于服務器預先設定的距離范圍。
2.2 系統實現方案
本系統架構是一種利用多用戶移動位置的實時交互移動應用技術,是一個多用戶系統。圖1顯示了這一技術方法的具體步驟。我們將假設P1作為主動方,P2作為被動方。以下是兩個用戶在本架構下交互的演變過程。
步驟1:游戲的客戶端安裝在M1和[M’1…M’m]上,作為[M1…Mm]的子集對應的是[P’1…P’m]的移動設備,接收GPS衛星定位返饋數據,即M1和[M’1..M’m]的坐標(經度,緯度)。
步驟2:游戲的客戶程序調用M1和[M’1…M’m]的無線通信模塊,接著通過英特網發送各自的位置數據(經度,緯度)給游戲的服務器。
步驟3:服務器接到的GPS坐標(經度,緯度)為二維坐標(xi, yi),然后發送給Mi。每個二維坐標對應的動態位置Li[L1... Lm]由服務器確定。
步驟4:施動用戶P1可能在終端設備M1上的數字地圖觀察到被動的用戶。P1為了完成I1任務,直接從L1走到L’1。
步驟5:游戲的客戶程序調用嵌入在M1上的定位模塊并且接收從GPS衛星傳來的新的設備M1地理位置的信息(經度,緯度)。
步驟6:M1設備實時的傳遞位置數據給游戲的網頁服務器。服務器通過二維的算法的轉換決定施動用戶的位置在L’1的更新。
步驟7:服務器執行判斷的過程,并且發送通知給M1的客戶端去觸發虛擬社交I1.
步驟8:服務器驗證I1是否執行成功。
被動用戶可以通過他們的終端設備[M’1….M’m]上的數字地圖觀察到主動用戶接近L’1.這樣會有兩種結果:
一種情況是,被動用戶的M’j(j∈[1…m])同時改變自身的位置為P1,這樣將導致虛擬交互I1失敗。服務器會發送信息給客戶端M1告知失敗的信息。主動用戶也會被通知他的交互I1執行失敗的信息。
另外的一種情況是,被動用戶沒有改變物理位置,而這就意味著他是在有效的位置范圍內,這樣的結果是交互I1成功的執行。服務器會發送信息給客戶端M1和M2(被I1影響的客戶端)。主動用戶和被動用戶會被通知交互事件I1成功的執行。
(1)服務端包括權限管理、系統管理、用戶管理、查詢統計、請假管理等5大功能模塊、系統公告。其中:
1)權限管理包含定義角色例如系統管理員、員工、人力績效管理員、各級領導,以及每個角色對于的功能范圍。系統管理員只能登陸服務端,主要對系統進行一些設置,例如設定考勤范圍,可以在百度地圖上為某機構確定一個有效考勤的范圍;員工是指被考勤的對象,只能登陸客戶端;人力績效管理員是日常使用服務端查詢統計考勤信息的工作人員,是服務端的主要使用者;各級領導主要使用服務端的查詢統計功能以及請假審批功能。
2)系統管理主要包括考勤范圍設置、設定各種用戶角色并分配功能權限功能。
3)用戶管理主要包括用戶的注冊審核、查詢、添加、修改、刪除等功能。
4)查詢統計主要包括查詢和統計功能。可以按姓名、性別、所在部門等條件查詢某人的考勤情況。按日、月、年、直屬科室和部門等幾個維度統計考勤信息,生成統計表,也可以按考勤地點統計考勤信息,分析用戶考勤習慣。
5)請假管理主要包括請假審批功能,不論是語音、電子請假申請單,還是撥打系統電話,都要給予批復意見。
6)系統公告功能主要是向已經注冊的用戶推送公告軟文。(2)終端系統主要包括用戶管理、定位考勤、用戶提醒、查詢和請假功能。其中:
1)用戶管理功能主要包括用戶注冊、修改密碼、更換頭像等基本操作和登錄功能。
2)考勤功能主要包括定位考勤功能,記錄當前的時間、地點的經緯度信息,并發送服務器。
3)用戶提醒功能主要是對用戶提示一些貼心提醒服務,例如天氣、考勤提醒等。
4)查詢功能主要是查詢自己當天、當月、當年的考勤或者缺勤的信息及統計信息,以及考勤地點分布信息。
5)請假功能主要是提交請假單或語音請假留言、直接撥打請假電話等功能。
系統采用B/S結構。客戶端可以采用html5技術,結合jQuery技術實現。html5技術可以跨平臺發布成Android和IOS客戶端,也可以用網頁形式支持所有PC和移動端系統。也可以用Android或者IOS技術實現。
用戶當前地位位置信息的獲取,可以通過手機的GPS模塊獲取,GPS定位技術受周圍環境局限,在室內或者大型遮擋物旁誤差較大,在室外誤差基本在10~30米。在獲取定位信息時,尤其要注意,最初獲得的一些坐標非常不穩定,跳躍幅度較大,需要把用2秒后的數據,因此在考勤時,最好做一個異步線程完成此功能。
服務端采用J2EE技術實現,J2EE使用多層分布式模型,應用邏輯按功能劃分成組件。J2EE的三層體系結構,即表現層,業務邏輯層和數據持久層。表現層主要指用戶界面,我們已經用html5實現客戶端;業務邏輯層主要是出來業務數據,系統復雜性主要體現在這里;數據持久層主要完成業務數據存儲和有關數據安全、完整性控制、數據一致性和并發操作。采用J2EE技術能夠降低維護成本,簡化管理,適應大規模和復雜的應用要求,可以適應需求的改變,訪問異構數據庫,提供系統安全性。
應用MVC模式,即模型-視圖-控制器的簡稱,在模型部分實現業務邏輯,通常用JavaBean或EJB實現;客戶端的部分就是視圖部分,提供用戶交互功能;控制器是模型和視圖溝通的橋梁,將模型與視圖匹配在一起,共同完成用戶請求。數據庫使用mysql實現,輕量級數據庫,性價比高。
參考文獻:
[1]夏敬潮.葉世榕Wi-Fi輔助下附有高程信息的GPS定位[J].武漢大學學報(信息科學版),2011(01).
[2]劉正,陳強.基于Android的GPS應用中的研究與開發[J].中國西部科技,2010(32).
[3]張麗娜,楊志強.手持式GPS定位誤差的研究[J].工程地球物理學報,2006(12).
[4]劉靖桐.面向Web2.0的web應用前端開發框架的設計與實現[D].北京郵電大學,2014(01).
[5]呂昕.基于Web的富客戶端跨平臺移動應用開發技術研究[D].云南大學,2015(04).
DOI:10.16640/j.cnki.37-1222/t.2016.02.228