版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 編號(hào):( )字 號(hào)</p><p><b> 本科生畢業(yè)設(shè)計(jì)</b></p><p> 題目: </p><p> 姓名: 學(xué)號(hào): </p><p>
2、; 班級(jí): </p><p><b> 二〇一一年六月</b></p><p><b> 畢業(yè)設(shè)計(jì)任務(wù)書</b></p><p> 任務(wù)下達(dá)日期: 2011年 1 月 11 日</p><p> 畢業(yè)設(shè)計(jì)日
3、期: 2011年 2月 21日 至 2011年 6 月 15日</p><p> 畢業(yè)設(shè)計(jì)題目: 礦井人員定位與考勤系統(tǒng)</p><p> 畢業(yè)設(shè)計(jì)專題題目: </p><p> 畢業(yè)設(shè)計(jì)主要內(nèi)容和要求:</p><p> 使用Visual C++ 6.0和SQL Server 2005進(jìn)行系統(tǒng)開發(fā)</p><
4、;p><b> 實(shí)現(xiàn)人員定位功能</b></p><p> 實(shí)現(xiàn)人員考勤功能,包括考勤信息的查詢、統(tǒng)計(jì)匯總等</p><p> 實(shí)現(xiàn)用戶、職工管理的功能</p><p><b> 實(shí)現(xiàn)職工請(qǐng)假的功能</b></p><p> 實(shí)現(xiàn)職務(wù)、工種、假種的管理</p><
5、p><b> 提供友好的人機(jī)界面</b></p><p> 院長簽字: 指導(dǎo)教師簽字:摘 要</p><p> 摘要:近年來,礦井事故頻繁發(fā)生,事故發(fā)生時(shí)的救援工作十分重要,有效的救援首先需要定位出事故發(fā)生時(shí)的人員位置,具有定位功能的礦井人員定位系統(tǒng)便隨之產(chǎn)生,它可以實(shí)現(xiàn)對(duì)井下工作人員的定位跟蹤,一旦礦井發(fā)生事故,可對(duì)
6、搶險(xiǎn)救災(zāi)的人員統(tǒng)計(jì)、定位等起準(zhǔn)確的指導(dǎo)作用,使地面監(jiān)控中心實(shí)時(shí)掌握井下人員的位置,這對(duì)于提高生產(chǎn)安全和工作效率,具有十分重要的意義。另外,隨著現(xiàn)代科學(xué)技術(shù)的發(fā)展,越來越多的煤礦對(duì)職工的考勤都實(shí)行了信息化管理,使用計(jì)算機(jī)代替復(fù)雜的手工方式來管理考勤事務(wù),可以有效地管理公司員工的出勤情況。綜合看來,定位與考勤系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)有著十分重要的意義。</p><p> 系統(tǒng)的開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立,維護(hù)以及前端應(yīng)用
7、程序的開發(fā),主要模塊包括系統(tǒng)用戶管理模塊,職工管理模塊,人員定位模塊,考勤信息管理模塊和考勤信息統(tǒng)計(jì)查詢模塊。該系統(tǒng)使用Visual C++ 6.0作為工具,數(shù)據(jù)庫為SQL Server 2005。系統(tǒng)采用目前比較流行的ADO數(shù)據(jù)訪問技術(shù),并將每個(gè)數(shù)據(jù)庫表的字段和操作封裝到類中,使程序更加易于維護(hù),將面向?qū)ο蟮某绦蛟O(shè)計(jì)思想應(yīng)用到數(shù)據(jù)庫應(yīng)用程序中。</p><p> 關(guān)鍵詞: C++;SQL Server 200
8、5;ADO;人員定位;考勤管理</p><p><b> ABSTRACT</b></p><p> In recent years, mine accident occurs frequently. The relief effort has become more and more important. An effective effort needs to
9、 locate the workers’ locations when the accident happens, whereupon personnel location systems under mines have been produced, which could locate the locations of the workers under the mine. It would help a lot for the r
10、escue once the accident happens. And the monitoring center could keep abreast of the workers’ locations in real time, which has significant importan</p><p> The Development of the system mainly includes the
11、 establishment and maintenance of the database, and the program. Main Modules include user management module, staff management module, personnel location module, check on work attendance module, and the information stati
12、stic and data query module. This system use Visual C++ 6.0 as development tools, use SQL Server 2005 as database and it adopts the Date Access Technology through ADO. Every table’s strings and operations are encapsulated
13、 in class, </p><p> Keywords:C++; SQL Server 2005; ADO; Personnel location; Attendance Management</p><p><b> 目 錄</b></p><p><b> 1 緒論1</b></p>&
14、lt;p> 1.1系統(tǒng)開發(fā)背景1</p><p> 1.2系統(tǒng)開發(fā)意義1</p><p> 1.3系統(tǒng)實(shí)現(xiàn)目標(biāo)2</p><p> 1.4開發(fā)環(huán)境簡介2</p><p><b> 2 系統(tǒng)分析4</b></p><p> 2.1可行性分析4</p>
15、<p> 2.1.1技術(shù)可行性分析4</p><p> 2.1.2經(jīng)濟(jì)可行性分析4</p><p> 2.1.3操作可行性分析4</p><p><b> 2.2需求分析4</b></p><p> 2.2.1 系統(tǒng)整體需求概述4</p><p> 2.2.2
16、具體的功能需求4</p><p><b> 3 概要設(shè)計(jì)10</b></p><p> 3.1系統(tǒng)總體架構(gòu)10</p><p> 3.2模塊功能設(shè)計(jì)10</p><p> 3.2.1 職工管理模塊11</p><p> 3.2.2 人員定位模塊11</p>
17、<p> 3.2.3 職工考勤信息匯總模塊12</p><p> 3.2.4 職工考勤信息匯總模塊12</p><p> 3.2.5 用戶信息管理模塊13</p><p> 3.3 數(shù)據(jù)庫設(shè)計(jì)13</p><p> 3.3.1 數(shù)據(jù)庫表的設(shè)計(jì)13</p><p> 3.3.2 邏輯結(jié)構(gòu)設(shè)
18、計(jì)14</p><p> 4 詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)18</p><p> 4.1系統(tǒng)公共類的設(shè)計(jì)與實(shí)現(xiàn)18</p><p> 4.1.1 數(shù)據(jù)庫操作類ADOConn的設(shè)計(jì)與實(shí)現(xiàn)18</p><p> 4.2 系統(tǒng)登錄模塊的設(shè)計(jì)與實(shí)現(xiàn)20</p><p> 4.2.1功能說明20</p>
19、<p> 4.2.2設(shè)計(jì)說明20</p><p> 4.3職工管理模塊的設(shè)計(jì)與實(shí)現(xiàn)20</p><p> 4.3.1功能說明20</p><p> 4.3.2設(shè)計(jì)說明21</p><p> 4.3.3核心代碼21</p><p> 4.4 人員定位模塊的設(shè)計(jì)與實(shí)現(xiàn)22<
20、/p><p> 4.4.1功能說明22</p><p> 4.4.2設(shè)計(jì)說明22</p><p> 4.5職工考勤查詢模塊的設(shè)計(jì)與實(shí)現(xiàn)22</p><p> 4.5.1功能說明23</p><p> 4.6職工考勤匯總模塊的設(shè)計(jì)與實(shí)現(xiàn)23</p><p> 4.6.1
21、功能說明23</p><p> 4.6.2核心代碼23</p><p> 4.7 用戶信息管理模塊的設(shè)計(jì)與實(shí)現(xiàn)26</p><p> 4.7.1 功能說明26</p><p> 4.7.2 設(shè)計(jì)說明26</p><p> 4.7.3核心代碼26</p><p> 4.
22、8 工種設(shè)置模塊27</p><p> 4.9 GUI界面的設(shè)計(jì)與實(shí)現(xiàn)27</p><p> 4.9.1功能說明27</p><p> 4.9.2設(shè)計(jì)說明27</p><p><b> 5系統(tǒng)測試32</b></p><p> 5.1 測試目的32</p>&l
23、t;p> 5.2程序的測試方法32</p><p> 5.3測試內(nèi)容與結(jié)果33</p><p> 5.3.1 單元測試33</p><p> 5.3.2 集成測試37</p><p> 5.3.3 系統(tǒng)測試40</p><p> 5.4 系統(tǒng)評(píng)價(jià)41</p><p>
24、;<b> 總結(jié)42</b></p><p><b> 參考文獻(xiàn)43</b></p><p><b> 翻譯部分44</b></p><p><b> 英文原文44</b></p><p><b> 中文譯文52</b&
25、gt;</p><p><b> 致 謝58</b></p><p><b> 1 緒論</b></p><p><b> 系統(tǒng)開發(fā)背景</b></p><p> 煤炭作為基礎(chǔ)能源,長期以來為我國的經(jīng)濟(jì)增長做出了巨大貢獻(xiàn),我國能源消耗的70%來自煤炭,在整個(gè)國民經(jīng)濟(jì)
26、發(fā)展中一直占據(jù)著主導(dǎo)地位。但是煤礦生產(chǎn)作業(yè)環(huán)境惡劣,常伴有瓦斯煤塵爆炸、火災(zāi)、水患等自然災(zāi)害,嚴(yán)重地威脅著礦工的生命安全。從大量的案例分析中得出,造成事故的原因是有共性的,除了安全設(shè)施投入不足,從業(yè)人員素質(zhì)較低外,另一個(gè)重要的原因就是:對(duì)下井人員管理措施不力,人員監(jiān)督檢查不到位。</p><p> 如何加強(qiáng)安全生產(chǎn)的防范措施,如何正確處理安全與生產(chǎn)、安全與效益的關(guān)系,如何準(zhǔn)確、實(shí)時(shí)、快速履行煤礦安全監(jiān)測職能,保
27、證搶險(xiǎn)救災(zāi)、安全救護(hù)的高效運(yùn)作等一系列的問題,擺到了國家各級(jí)主管部門和領(lǐng)導(dǎo)的面前。</p><p> 2006年3月5日溫家寶總理在政府工作報(bào)告中坦言安全生產(chǎn)形勢嚴(yán)峻,煤礦、交通等重特大事故頻繁發(fā)生,給人民群眾生命財(cái)產(chǎn)造成嚴(yán)重?fù)p失。據(jù)統(tǒng)計(jì),2005年全國煤礦事故遇難5986人,據(jù)有關(guān)專家說: 我國煤炭企業(yè)僅54個(gè)重點(diǎn)煤礦企業(yè)安全設(shè)施欠帳就達(dá)689億元。2005年到2008年國家計(jì)劃每年拿出30億元投入煤炭行業(yè)安
28、全生產(chǎn)的技術(shù)改造,企業(yè)將投入更多的資金用于安全生產(chǎn)的技術(shù)改造。</p><p> 隨著國家對(duì)煤礦安全的日益重視和監(jiān)管力度的不斷加強(qiáng),我國大中型煤礦及眾多小煤礦均已大量裝備了煤礦安全生產(chǎn)監(jiān)控系統(tǒng),極大地改善了我國煤礦安全生產(chǎn)狀況,有效遏制了重特大瓦斯煤塵爆炸事故的發(fā)生。但目前煤礦井下還普遍存在井下人員管理困難,井上管理人員難以及時(shí)準(zhǔn)確掌握井下人員的分布及作業(yè)情況等一系列的問題,一旦發(fā)生事故,搶險(xiǎn)救災(zāi)、安全救護(hù)的效
29、率低,特別是事故發(fā)生后對(duì)井下人員的搶救缺乏可靠的位置信息。因此,煤礦現(xiàn)場利用相應(yīng)的礦井人員跟蹤定位設(shè)備,全天24小時(shí)對(duì)井下人員進(jìn)行實(shí)時(shí)自動(dòng)跟蹤定位和考勤,隨時(shí)掌握每個(gè)員工在井下的位置及活動(dòng)軌跡、全礦井人員的位置分布情況等很有必要。</p><p> 另外,考勤管理在生產(chǎn)管理過程中也充當(dāng)著一個(gè)十分重要角色,考勤管理的效率對(duì)企業(yè)工作效率的提高起著舉足輕重的作用。長期以來,繁瑣的考勤記錄整理,統(tǒng)計(jì),查詢等工作,一直困
30、擾著企業(yè)行政部門的工作人員。</p><p> 為此我們開發(fā)了井下人員定位和考勤系統(tǒng),實(shí)現(xiàn)人員定位和考勤,加強(qiáng)對(duì)人員的管理。為煤礦的安全生產(chǎn)提供保障,大大提高了企業(yè)效率。</p><p><b> 系統(tǒng)開發(fā)意義</b></p><p> 當(dāng)前由于礦井所處的環(huán)境惡劣,礦井生產(chǎn)安全一直是人們十分關(guān)注的問題。如果能夠?qū)崿F(xiàn)對(duì)井下工作人員的定位跟蹤
31、, 一旦礦井發(fā)生透水、火災(zāi)等災(zāi)害事故,可對(duì)搶險(xiǎn)救災(zāi)的人員統(tǒng)計(jì)、定位等起準(zhǔn)確的指導(dǎo)作用,使地面監(jiān)控中心實(shí)時(shí)掌握井下人員的位置,隨時(shí)保持聯(lián)系,實(shí)現(xiàn)人員的調(diào)度,這對(duì)于提高生產(chǎn)安全和工作效率,具有十分重要的意義。</p><p> 考勤管理是企業(yè)管理的重要部分,面對(duì)大量的人員信息,采用人力處理將浪費(fèi)大量的時(shí)間、人力和物力,而且統(tǒng)計(jì)數(shù)據(jù)麻煩。因此,開發(fā)一個(gè)界面友好,易于操作的考勤管理軟件進(jìn)行自動(dòng)化處理變得十分重要。<
32、;/p><p><b> 系統(tǒng)實(shí)現(xiàn)目標(biāo)</b></p><p> 對(duì)于系統(tǒng)的開發(fā),首先就是要設(shè)定好實(shí)現(xiàn)的目標(biāo),確定開發(fā)的環(huán)境。有個(gè)合理的設(shè)計(jì)目標(biāo)使得開發(fā)者在設(shè)計(jì)過程中不會(huì)茫然,思路更清晰,編碼就不用花費(fèi)太多的時(shí)間。而一個(gè)好的前期設(shè)計(jì)對(duì)提高開發(fā)的效率起著很重要的作用。</p><p> 實(shí)現(xiàn)一個(gè)具備以下功能的系統(tǒng):</p><
33、;p> a) 實(shí)現(xiàn)一個(gè)簡潔的易操作的GUI界面;</p><p><b> b) 人員定位;</b></p><p><b> c) 人員考勤;</b></p><p> d) 人員考勤信息統(tǒng)計(jì)匯總;</p><p><b> e) 職工管理;</b></
34、p><p> f) 系統(tǒng)用戶信息管理;</p><p><b> g) 人員請(qǐng)假;</b></p><p> h) 工種、部門、假種設(shè)置;</p><p><b> i) 人員請(qǐng)假;</b></p><p><b> j) 用戶切換;</b><
35、;/p><p><b> 開發(fā)環(huán)境簡介</b></p><p> 1) Visual C++6.0簡介</p><p> Visual C++6.0 是微軟公司1998年推出的產(chǎn)品,是基于Windows操作系統(tǒng)的編程工具,是Microsoft Visual Studio 6.0的組件之一,具有功能強(qiáng)大的可視化開發(fā)環(huán)境,為程序員開發(fā)軟件提供了方
36、便的條件,并且VisualC++6.0集程序的代碼編輯、編譯、連接、調(diào)試等功能與一體,給程序員提供一個(gè)完整、全面而又方便的開發(fā)環(huán)境。它采用一種巧妙的方法將Windows的編程復(fù)雜性封裝起來,編程者可以比較輕松地進(jìn)行Windows應(yīng)用程序的設(shè)計(jì)。Visual C++ 6.0繼承了以前版本的優(yōu)點(diǎn),為用戶提供了更為友好的可視化開發(fā)環(huán)境。它提供了強(qiáng)大的編譯能力以及良好的界面操作性,具有功能強(qiáng)大、通用性強(qiáng)和易于擴(kuò)充等特點(diǎn),越來越多的被用來當(dāng)作客戶
37、/服務(wù)器應(yīng)用程序的前臺(tái)應(yīng)用工具,而且能夠?qū)indows NT、Windows 2000 以及Windows XP 下的C++程序設(shè)計(jì)提供完善的編程環(huán)境。同時(shí)Visual C++6.0 對(duì)網(wǎng)絡(luò)、數(shù)據(jù)庫等方面的編程也都提供相應(yīng)的環(huán)境支持。隨著可視化編程的蓬勃發(fā)展,越來越多的程序員開始使用可視化編程技術(shù)。</p><p> Visual C++6.0擁有兩種編程方式:</p><p> 一
38、種是傳統(tǒng)的基于Windows API的C編程方式,雖然代碼效率較高,但開發(fā)難度與開發(fā)工作量也隨著增高,目前使用這種編程方式的用戶已經(jīng)很少。</p><p> 另一種是基于MFC的C++編程方式,雖然代碼運(yùn)行效率相對(duì)較低,但開發(fā)難度小,開發(fā)工作量小,源代碼效率高,已經(jīng)成為Visual C++開發(fā)windows應(yīng)用程序的主流。本系統(tǒng)選擇的就是基于MFC的C++編程方式。</p><p>
39、2) SQL Server 2005 簡介</p><p> SQL Server 是一個(gè)全面的、集成的數(shù)據(jù)解決方案,它為企業(yè)中的用戶提供了一個(gè)安全、可靠和高效的平臺(tái)用于企業(yè)數(shù)據(jù)管理和商業(yè)智能應(yīng)用。</p><p> SQL Server 2005 減少了在從移動(dòng)設(shè)備到企業(yè)數(shù)據(jù)系統(tǒng)的多平臺(tái)上創(chuàng)建、部署、管理及使用企業(yè)數(shù)據(jù)和分析應(yīng)用程序的復(fù)雜度。 </p><p>
40、; 通過全面的功能集、和現(xiàn)有系統(tǒng)的集成性、以及對(duì)日常任務(wù)的自動(dòng)化管理能力,SQL Server 2005 為不同規(guī)模的企業(yè)提供了一個(gè)完整的數(shù)據(jù)解決方案。</p><p> SQL SERVER 2005的應(yīng)用功能:</p><p> SQL Server 2005是一個(gè)全面的數(shù)據(jù)庫平臺(tái),除了數(shù)據(jù)庫功能外還結(jié)合了分析、報(bào)表、集成和通知功能:</p><p>
41、a) .net framework集成</p><p> 可以利用.net framework類庫和現(xiàn)代編程語言來開發(fā)數(shù)據(jù)庫。</p><p> b) Web services </p><p> 可以開發(fā)數(shù)據(jù)庫層的XML web services;可以使用http直接訪問SQL Server;SQL語句、調(diào)用函數(shù)和過程,查詢結(jié)果可以用XML格式返回。<
42、/p><p> c) ADO.NET</p><p> 從針對(duì)SQL Types的新增支持能力到多維活動(dòng)結(jié)果集(MARS),SQL Server 2005中的ADO.NET將完善數(shù)據(jù)集的訪問與操作方式,從而實(shí)現(xiàn)更高的伸縮性與靈活性。</p><p><b> d) 快照隔離支持</b
43、></p><p> SQL Server 2005將在數(shù)據(jù)庫級(jí)別上提供新的快照隔離(SI)級(jí)別。借助SI特性,用戶可以利用數(shù)據(jù)庫的事務(wù)一致性視圖來訪問最新提交的數(shù)據(jù)行。這項(xiàng)功能將提供更高的可伸縮性。 </p><p> e) SQL管理對(duì)象(SMO)</p><p> SMO是SQL Server 2005
44、的管理對(duì)象模型。SMO 在SQL Server管理對(duì)象模型上有顯著的設(shè)計(jì)和結(jié)構(gòu)上的提升。它是一個(gè)簡單易用的,有著豐富的基于.NET Framework托管代碼的對(duì)象模型。SMO 是開發(fā)數(shù)據(jù)庫管理應(yīng)用程序的主要的工具。SQL Server 管理工具集的每一個(gè)功能都可以用SMO來實(shí)現(xiàn)。 </p><p><b> f) XML</b></p><p> 擴(kuò)展標(biāo)記語言(
45、XML)是一項(xiàng)通過本地網(wǎng)絡(luò)和Internet在不同應(yīng)用間散布數(shù)據(jù)的重要標(biāo)準(zhǔn)。SQL Server 2005具備針對(duì)XML文檔存儲(chǔ)與查詢的內(nèi)建支持能力。 </p><p><b> 3) ADO簡介</b></p><p> ADO (ActiveX Data Objects)是Microsoft數(shù)據(jù)庫應(yīng)用程序開發(fā)的新接口
46、,是建立在OLEDB之上的高層數(shù)據(jù)庫訪問技術(shù)。它被設(shè)計(jì)用來同新的數(shù)據(jù)訪問層OLEDB Provider一起協(xié)同工作,以提供通用數(shù)據(jù)訪問(Universal Data Access)。OLEDB是一個(gè)低層的數(shù)據(jù)訪問接口,用它可以訪問各種數(shù)據(jù)源,包括傳統(tǒng)的關(guān)系型數(shù)據(jù)庫,以及電子郵件系統(tǒng)及自定義的商業(yè)對(duì)象。</p><p> ADO向我們提供了一個(gè)熟悉的,高層的對(duì)OLEDB的Automation封裝接口。對(duì)那些熟悉R
47、DO的程序員來說,你可以把OLEDB比作是ODBC驅(qū)動(dòng)程序。如同RDO對(duì)象是ODBC驅(qū)動(dòng)程序接口一樣,ADO對(duì)象是OLEDB的接口;如同不同的數(shù)據(jù)庫系統(tǒng)需要它們自己的ODBC驅(qū)動(dòng)程序一樣,不同的數(shù)據(jù)源需要它們自己的OLEDB提供者(OLEDB provider)。</p><p><b> 2 系統(tǒng)分析</b></p><p><b> 2.1可行性分析
48、</b></p><p> 可行性研究實(shí)質(zhì)上是一次很大程度上簡化了的系統(tǒng)分析的過程,也就是在較高層次上以較抽象的方式進(jìn)行的系統(tǒng)分析過程。它的目的不是解決問題,而是確定問題是否值得去解決。</p><p> 2.1.1技術(shù)可行性分析</p><p> 根據(jù)系統(tǒng)的需求,通過對(duì)本設(shè)計(jì)所需要的技術(shù)進(jìn)行全面的分析,該系統(tǒng)可以采用C++語言實(shí)現(xiàn),用SQL Se
49、rver2005作為后臺(tái)數(shù)據(jù)庫支持,用ADO技術(shù)實(shí)現(xiàn)數(shù)據(jù)庫的連接。依據(jù)自己目前的實(shí)力還不足以把系統(tǒng)做的完好,但是我會(huì)積極認(rèn)真地學(xué)習(xí)技術(shù)方面的相關(guān)知識(shí),盡可能地、更好地完成整個(gè)系統(tǒng)。</p><p> 2.1.2經(jīng)濟(jì)可行性分析</p><p> 從開發(fā)這個(gè)系統(tǒng)所需的軟硬件設(shè)施不需要在現(xiàn)有基礎(chǔ)上額外添加,所以它也就不存在經(jīng)濟(jì)方面的問題。</p><p> 因此該軟
50、件的編寫在經(jīng)濟(jì)方面是可行的。</p><p> 2.1.3操作可行性分析</p><p> 該系統(tǒng)將設(shè)計(jì)出用戶友好的GUI界面,使得系統(tǒng)在操作方式上很容易讓用戶接受,和用戶有良好的可交互性,在操作上對(duì)沒有計(jì)算機(jī)操作經(jīng)驗(yàn)的人來說也不會(huì)有難度,因此在操作上也是行得通的。</p><p><b> 2.2需求分析</b></p>
51、<p> 2.2.1 系統(tǒng)整體需求概述</p><p> 該系統(tǒng)需要滿足:能夠?qū)θ藛T進(jìn)行實(shí)時(shí)定位,對(duì)員工進(jìn)行上下班考勤,進(jìn)行職工請(qǐng)假管理,并且能對(duì)員工和用戶的基本信息進(jìn)行管理如增加、刪除等。具體需求如下:</p><p> 2.2.2 具體的功能需求</p><p> 基于系統(tǒng)整體的需求分析,該系統(tǒng)需要實(shí)現(xiàn)以下基本功能:</p>&l
52、t;p><b> 1) 用戶登錄</b></p><p> 用戶輸入用戶名和用戶密碼后進(jìn)入系統(tǒng),每個(gè)用戶具有不同的權(quán)限,不同的權(quán)限可以使用不同的功能。此系統(tǒng)包含兩種用戶:一種是超級(jí)用戶,一種是普通用戶。超級(jí)用戶擁有系統(tǒng)提供的所有功能, 普通用戶則有一定的功能限制。</p><p><b> 2) 人員定位功能</b></p>
53、;<p> 這個(gè)功能是本系統(tǒng)的主要功能。</p><p> 當(dāng)數(shù)據(jù)采集完畢之后,通過本系統(tǒng)可以顯示出井下人員的位置和分布情況,還可以查詢出某個(gè)人在某段時(shí)間內(nèi)的運(yùn)動(dòng)軌跡。</p><p> 以下是該模塊所涉及的用例圖:</p><p> 圖2-1 人員定位模塊用例圖</p><p><b> 3) 考勤功能&l
54、t;/b></p><p> 考勤功能也是本系統(tǒng)一個(gè)很重要的功能。</p><p> 此模塊可以按部門查詢出每個(gè)員工的一段時(shí)間內(nèi)或者某個(gè)月份的出勤情況,可以顯示單個(gè)職工的考勤情況,該模塊還可以對(duì)考勤進(jìn)行匯總,以報(bào)表的形式顯示出來匯總信息,另外還可以將匯總后的信息導(dǎo)入Excel表格中。</p><p><b> 其用例圖如下所示:</b&g
55、t;</p><p> 圖2-2 考勤模塊用例圖</p><p><b> 其流程圖如下所示:</b></p><p> 圖2-3 考勤模塊流程圖</p><p> 4) 職工基本信息管理</p><p> a)增加職工:當(dāng)某個(gè)新員工加入后,人事部分應(yīng)該給他分配員工號(hào)并且需要把此員工的信
56、息增加到公司的員工信息庫中;</p><p> b)刪除職工:當(dāng)某個(gè)員工離開后,應(yīng)該把這個(gè)員工的信息刪除,并且要求把他的所有的考勤信息也刪除;</p><p> c)修改職工信息:由于某種原因需要修改員工的信息,比如員工號(hào)重新分配,這時(shí)就需要提供修改功能,以便能夠及時(shí)對(duì)員工信息進(jìn)行更新;</p><p> d)查詢職工信息:根據(jù)員工編號(hào)和姓名進(jìn)行查詢員工的基本
57、信息。</p><p> 涉及的業(yè)務(wù)實(shí)體以及它們之間的關(guān)系如圖所示:</p><p> 圖2-4 職工基本信息管理模塊類圖</p><p> 以下是該模塊所涉及的用例圖:</p><p> 圖2-5 職工基本信息管理模塊用例圖</p><p><b> 5) 職工請(qǐng)假</b></p
58、><p> 該模塊的功能是職工請(qǐng)假,當(dāng)員工因故不能出勤的時(shí)候使用此功能。</p><p><b> 其流程圖如下所示:</b></p><p> 圖2-6 職工請(qǐng)假流程圖</p><p><b> 6) 用戶信息管理</b></p><p> a) 增加用戶:當(dāng)有新的管
59、理員加入的時(shí)候進(jìn)行信息的添加;</p><p> b) 刪除用戶;當(dāng)管理員離開此單位的時(shí)候使用此功能;</p><p> c) 修改用戶密碼。</p><p> 涉及的業(yè)務(wù)實(shí)體以及它們之間的關(guān)系如圖所示:</p><p> 圖2-7 用戶信息管理類圖</p><p> 以下是該模塊所涉及的用例圖:</p
60、><p> 圖2-8 用戶信息管理用例圖</p><p><b> 7) 部門設(shè)置</b></p><p><b> a) 增加部門;</b></p><p><b> b) 刪除部門。</b></p><p> 以下是該模塊所涉及的用例圖:<
61、;/p><p> 2-9 部門設(shè)置用例圖</p><p><b> 8) 工種設(shè)置</b></p><p><b> a) 增加工種;</b></p><p><b> b) 刪除工種。</b></p><p> 以下是該模塊所涉及的用例圖:<
62、;/p><p> 2-10 工種設(shè)置用例圖</p><p><b> 9) 假種設(shè)置</b></p><p><b> a) 增加假種;</b></p><p><b> b) 刪除假種。</b></p><p> 以下是該模塊所涉及的用例圖:&l
63、t;/p><p> 2-11 假種設(shè)置用例圖</p><p><b> 10) 用戶切換</b></p><p> 當(dāng)需要更換用戶的時(shí)候使用此功能。</p><p><b> 3 概要設(shè)計(jì)</b></p><p><b> 系統(tǒng)總體架構(gòu)</b>&l
64、t;/p><p> 系統(tǒng)的結(jié)構(gòu)圖如下圖所示:</p><p> 圖3-1系統(tǒng)整體架構(gòu)圖</p><p><b> 模塊功能設(shè)計(jì)</b></p><p> 本系統(tǒng)分用戶信息管理和職工管理,人員定位,職工考勤查詢,考勤信息匯總等模塊,每個(gè)模塊又由若干個(gè)子模塊構(gòu)成,其中用戶管理模塊主要包括:用戶添加、刪除、密碼復(fù)位等子模塊
65、。職工管理模塊主要包括:職工基本信息管理、部門設(shè)置、職工請(qǐng)假等子模塊。人員定位模塊包括:顯示當(dāng)前井下人員的位置和分布情況,顯示某個(gè)員工某段時(shí)間的運(yùn)動(dòng)軌跡等等。職工考勤包括:顯示某個(gè)部門或某單個(gè)員工某段時(shí)間內(nèi)的出勤情況,考勤信息匯總則可以以報(bào)表的形式顯示某個(gè)部門的整體出勤情況,便于最終的統(tǒng)計(jì)。主要模塊的詳細(xì)功能設(shè)計(jì)如下:</p><p> 3.2.1 職工管理模塊</p><p> 圖3
66、-2職工信息管理模塊功能圖</p><p> 3.2.2 人員定位模塊</p><p> 圖3-3人員定位模塊功能圖</p><p> 3.2.3 職工考勤信息匯總模塊</p><p> 圖3-4 職工考勤信息匯總模塊功能圖</p><p> 3.2.4 職工考勤信息匯總模塊</p><p
67、> 圖3-5 職工考勤查詢模塊功能圖</p><p> 3.2.5 用戶信息管理模塊</p><p> 圖3-6 用戶管理模塊功能圖</p><p><b> 3.3 數(shù)據(jù)庫設(shè)計(jì)</b></p><p> 進(jìn)入設(shè)計(jì)階段,抽象地分析數(shù)據(jù),理解數(shù)據(jù)之間的關(guān)系,對(duì)數(shù)據(jù)庫進(jìn)行概念結(jié)構(gòu)設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì)。由于SQL
68、 Server 2005能夠以極高的效率完成各種數(shù)據(jù)庫查詢,并能方便的使用存儲(chǔ)過程,同時(shí)它的圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。</p><p> 3.3.1 數(shù)據(jù)庫表的設(shè)計(jì)</p><p> 該數(shù)據(jù)庫包括以下基本表:</p><p> 用戶權(quán)限信息表、日志信息表、煤礦信息表、區(qū)域信息表、分站信息表、讀卡機(jī)信息表、讀卡機(jī)故障信息表、讀卡機(jī)下發(fā)
69、通知信息表、班次制式信息表、班次信息表、部門信息表、工種信息表、歷史數(shù)據(jù)信息表、考勤歷史數(shù)據(jù)信息表、電池歷史欠壓信息表。各個(gè)表包含以下基本內(nèi)容:</p><p> 用戶權(quán)限信息表:用戶名稱、用戶密碼、用戶類型等日志信息表:用戶名稱、用戶類型、登錄時(shí)間、退出系統(tǒng)時(shí)間等;</p><p> 區(qū)域信息表:區(qū)域編號(hào)、區(qū)域名稱、是否顯示、核定人數(shù)等;</p><p>
70、分站信息表:分站編號(hào),分站位置;</p><p> 讀卡機(jī)信息表:唯一編碼、是否有效、讀卡機(jī)編號(hào)、讀機(jī)位置x、讀機(jī)位置y、區(qū)域名稱、分站編號(hào)、安裝位置、優(yōu)先級(jí)、讀卡機(jī)類型、通訊端口、通訊狀態(tài)、發(fā)送命令、發(fā)送命令時(shí)間、當(dāng)前狀態(tài)、是否顯示、讀卡機(jī)外部編號(hào)、IP地址等;</p><p> 區(qū)域方向信息表:區(qū)域編號(hào)、讀卡機(jī)1、讀卡機(jī)2等班次制式信息表:班次制式編號(hào)、班制名稱、超時(shí)時(shí)長、移出升井
71、時(shí)長、間隔時(shí)長等;</p><p> 班次信息表:班次編號(hào)、班次名稱、班次制式編號(hào)、班次井下時(shí)間、班次最早下井時(shí)間、班次最晚下井時(shí)間、班次名稱簡稱、班次順延、班次誤差時(shí)間等;</p><p> 部門信息表:部門編號(hào)、部門名稱等;</p><p> 工種信息表:工種編號(hào)、工種名稱、干部標(biāo)識(shí)等;</p><p> 人員信息表:唯一編碼、是
72、否有效、編碼卡編號(hào)、編碼卡類型、用戶ID、用戶名、性別、出生日期、電話、住址、部門編號(hào)、工種編號(hào)、班次制式編號(hào)、聯(lián)系人、聯(lián)系電話、相片、添加時(shí)間、讀卡機(jī)編號(hào)、讀卡機(jī)類型、編碼卡狀態(tài)、發(fā)送通知、進(jìn)入時(shí)間、離開時(shí)間、下井時(shí)間、電池狀態(tài)、發(fā)送通知、發(fā)送通知時(shí)間、(status)、跟蹤標(biāo)記、電池欠壓時(shí)間、是否可見、(isinregion)等;</p><p> 歷史數(shù)據(jù)信息表:編碼卡編號(hào)、讀卡機(jī)編號(hào)、進(jìn)入或離開讀卡機(jī)時(shí)
73、間、編碼卡狀態(tài)、電池狀態(tài)、存儲(chǔ)時(shí)間等;</p><p> 考勤歷史數(shù)據(jù)信息表:自增編號(hào)、編碼卡唯一編碼、部門編號(hào)、班次制式編號(hào)、入井時(shí)間、升井時(shí)間、考勤數(shù)據(jù)類型、創(chuàng)建時(shí)間、備注信息等;</p><p> 電池歷史欠壓信息表:編碼卡唯一編碼、開始時(shí)間、結(jié)束時(shí)間等;</p><p> 員工所在區(qū)域信息表:編碼卡唯一編碼、區(qū)域編號(hào)等。</p><
74、p> 3.3.2 邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 1) M_ClassType 班制信息表</p><p> 表 名: M_ClassType</p><p> 功能: 存放班制信息</p><p> 鍵 值: ClassTypeID</p><p><b> 保存期限: 長期</b&
75、gt;</p><p> 表3-1 班制信息表</p><p> 說明:每條記錄描述一個(gè)班制,間隔時(shí)長是指同一個(gè)人連續(xù)兩次下井,如果這兩次下井的時(shí)間間隔小于設(shè)定的間隔時(shí)長,那么認(rèn)為這兩次下井為一個(gè)班次的兩次下井,如果大于設(shè)定的間隔時(shí)長,那么認(rèn)為這兩次下井屬于不同的班次。</p><p> 2) M_Class 班次信息表</p><p>
76、; 表 名: M_Class</p><p> 功能: 存放班次信息</p><p> 鍵 值: ClassId</p><p><b> 保存期限: 長期</b></p><p> 表3-2 班次信息表</p><p> 3) M_Dep部門信息表</p><p&
77、gt; 表 名: M_Dep</p><p> 功能: 存放部門信息</p><p> 鍵 值: DepId</p><p><b> 保存期限: 長期</b></p><p> 表3-3 部門信息表</p><p> 4) M_Duty 工種信息表</p><p&
78、gt; 表 名: M_Duty</p><p> 功能: 存放工種信息</p><p> 鍵 值: DutyId</p><p><b> 保存期限: 長期</b></p><p> 表3-4 工種信息表</p><p> 5) M_RfId人員信息表</p><p
79、> 表 名: M_RfId</p><p> 功能: 存放人員信息及狀態(tài)信息</p><p> 鍵 值: RfNum</p><p><b> 保存期限: 長期</b></p><p> 表3-5 人員信息表</p><p> 說明:每條記錄描述一個(gè)編碼卡以及編碼卡相關(guān)聯(lián)的人員信
80、息</p><p> 6) M_User 用戶信息表</p><p><b> 表名:M_User</b></p><p> 功能:存放系統(tǒng)用戶信息</p><p> 表3-6 用戶信息表</p><p> 7) M_KaoQinInfo 考勤歷史數(shù)據(jù)表</p><p
81、> 表 名: M_KaoQinInfo</p><p> 功能: 存放考勤歷史數(shù)據(jù)</p><p><b> 鍵 值: KQID</b></p><p><b> 保存期限: 長期</b></p><p> 表3-7 考勤歷史數(shù)據(jù)表</p><p> 說明:
82、一個(gè)記錄代表一次入井和出井記錄,通過這些記錄可以得到員工的考勤情況</p><p><b> 4 詳細(xì)設(shè)計(jì)及實(shí)現(xiàn)</b></p><p> 概要設(shè)計(jì)階段完成了軟件的結(jié)構(gòu)設(shè)計(jì),劃分了模塊,并規(guī)定了各個(gè)模塊的功能及他們之間的聯(lián)系。在此之后,進(jìn)入系統(tǒng)的詳細(xì)設(shè)計(jì)階段。該階段的根本目標(biāo)是確定應(yīng)該怎樣具體設(shè)計(jì)所要求的系統(tǒng),給出軟件各個(gè)模塊的具體描述。這里將系統(tǒng)主要模塊的設(shè)計(jì)及
83、實(shí)現(xiàn)給予介紹。</p><p> 4.1系統(tǒng)公共類的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 本節(jié)介紹系統(tǒng)使用的公共類,如數(shù)據(jù)庫訪問通用類等。編寫公共類可以在其他頁面中直接調(diào)用公共類的方法、屬性,避免重復(fù)代碼的編寫,有利于系統(tǒng)代碼的維護(hù)和日后系統(tǒng)的升級(jí)。</p><p> 4.1.1 數(shù)據(jù)庫操作類ADOConn的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 1)
84、 初始化—連接數(shù)據(jù)庫</p><p> void ADOConn::OnInitADOConn()</p><p><b> {</b></p><p> // 初始化OLE/COM庫環(huán)境 </p><p> ::CoInitialize(NULL);</p><p><b>
85、 try</b></p><p><b> {</b></p><p> // 創(chuàng)建Connection對(duì)象</p><p> m_pConnection.CreateInstance("ADODB.Connection");</p><p> // 設(shè)置連接字符串,必須是BST
86、R型或者_(dá)bstr_t類型</p><p> _bstr_t strConnect = "Data Source=MineOrientation;Persist Security Info=True;User ID=sa;Password=45854618;Unicode=True;providerName=SQLOLEDB.1;";</p><p> m_pCon
87、nection->CursorLocation=adUseClient; //游標(biāo)類型 </p><p> m_pConnection->Open(strConnect,"","",adModeUnknown);</p><p><b> }</b></p><p><b>
88、// 捕捉異常</b></p><p> catch(_com_error e)</p><p><b> {</b></p><p><b> // 顯示錯(cuò)誤信息</b></p><p> AfxMessageBox(e.Description());</p>&
89、lt;p><b> }</b></p><p><b> }。</b></p><p><b> 2) 執(zhí)行查詢語句</b></p><p> _RecordsetPtr& ADOConn::GetRecordSet(_bstr_t bstrSQL)</p>&l
90、t;p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> // 連接數(shù)據(jù)庫,如果Connection對(duì)象為空,則重新連接數(shù)據(jù)庫</p><p> if(m_pConnection==NULL)
91、</p><p> OnInitADOConn();</p><p> // 創(chuàng)建記錄集對(duì)象</p><p> m_pRecordset.CreateInstance(__uuidof(Recordset));</p><p> // 取得表中的記錄</p><p> m_pRecordset->Ope
92、n(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);</p><p><b> }</b></p><p><b> // 捕捉異常</b></p><p> catch(_com_error e)&l
93、t;/p><p><b> {</b></p><p><b> // 顯示錯(cuò)誤信息</b></p><p> AfxMessageBox(e.Description());</p><p><b> }</b></p><p><b>
94、 // 返回記錄集</b></p><p> return m_pRecordset;</p><p><b> }</b></p><p> 3) 執(zhí)行SQL語句,Insert Update _variant_t</p><p> BOOL ADOConn::ExecuteSQL(_bstr_t b
95、strSQL)</p><p><b> {</b></p><p> //_variant_t RecordsAffected;</p><p><b> try</b></p><p><b> {</b></p><p> // 是否已
96、經(jīng)連接數(shù)據(jù)庫</p><p> if(m_pConnection == NULL)</p><p> OnInitADOConn();</p><p> // Connection對(duì)象的Execute方法:(_bstr_t CommandText, </p><p> // VARIANT * RecordsAffected, lon
97、g Options ) </p><p> // 其中CommandText是命令字串,通常是SQL命令。</p><p> // 參數(shù)RecordsAffected是操作完成后所影響的行數(shù), </p><p> // 參數(shù)Options表示CommandText的類型:adCmdText-文本命令;adCmdTable-表名</p><p
98、> // adCmdProc-存儲(chǔ)過程;adCmdUnknown-未知</p><p> m_pConnection->Execute(bstrSQL,NULL,adCmdText);</p><p> return true;</p><p><b> }</b></p><p> catch(_
99、com_error e)</p><p><b> {</b></p><p> AfxMessageBox(e.Description());</p><p> return false;</p><p><b> }</b></p><p><b>
100、}</b></p><p><b> 4) 關(guān)閉連接</b></p><p> void ADOConn::ExitConnect()</p><p><b> {</b></p><p> // 關(guān)閉記錄集和連接</p><p> if (m_pRec
101、ordset != NULL)</p><p> m_pRecordset->Close();</p><p> m_pConnection->Close();</p><p><b> // 釋放環(huán)境</b></p><p> ::CoUninitialize();</p><p
102、><b> }</b></p><p> 4.2 系統(tǒng)登錄模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 系統(tǒng)登錄是使用該系統(tǒng)的第一步。用戶只要輸入正確的用戶名和密碼即可登錄系統(tǒng)。其中主要的問題就是用戶名和密碼的檢測。</p><p><b> 功能說明</b></p><p> 當(dāng)用戶輸入用戶
103、名和密碼之后,將輸入數(shù)據(jù)同數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行比較,一致的話即可進(jìn)入系統(tǒng)進(jìn)行相關(guān)操作,否則重新輸入直到輸入正確為止。</p><p><b> 設(shè)計(jì)說明</b></p><p> 針對(duì)用戶名和密碼建立相關(guān)的編輯框變量,當(dāng)用戶輸入完畢之后,刷新登錄對(duì)話框變量值,取得輸入的值,將其同數(shù)據(jù)庫中的記錄進(jìn)行比對(duì),如果一致即可登錄系統(tǒng),否則輸入提示信息以便下一次的登錄。<
104、/p><p> 職工管理模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 職工管理是人事管理的重要工具,也是該系統(tǒng)的重要組成部分之一。</p><p><b> 功能說明</b></p><p> 該模塊包含職工基本信息的添加、修改、刪除以及查詢,職工請(qǐng)假管理,還可以進(jìn)行部門和工種的設(shè)置,如添加、刪除等操作。</p>
105、<p><b> 設(shè)計(jì)說明</b></p><p> 職工信息的添加、修改操作可以在一個(gè)對(duì)話框里實(shí)現(xiàn),系統(tǒng)根據(jù)不同的標(biāo)志來確定進(jìn)行的是添加還是修改操作,具體的添加和修改操作可以使用一條簡單的SQL語句來實(shí)現(xiàn),其中信息的修改包含員工部門的調(diào)轉(zhuǎn),職工信息的查詢可以通過輸入姓名或者編號(hào)來進(jìn)行。部門和工種的設(shè)置可以參照職工的添加和刪除實(shí)現(xiàn)。</p><p>&
106、lt;b> 核心代碼</b></p><p> //管理員編輯好信息之后點(diǎn)擊OK按鈕的代碼實(shí)現(xiàn)</p><p> void CEmpEditDlg::OnOK() </p><p><b> {</b></p><p> // TODO: Add extra validation here&l
107、t;/p><p> UpdateData(TRUE);</p><p> CM_RfId emp;</p><p> //將用戶輸入的數(shù)據(jù)賦值到對(duì)象dep中,為更新數(shù)據(jù)庫做準(zhǔn)備</p><p> emp.SetUserName(m_EmpName);</p><p><b> ……</b>&
108、lt;/p><p> int index1;//設(shè)置班制</p><p> index1 = m_Class.GetCurSel();</p><p> if (index1 == 0)</p><p> emp.SetClassTypeID("A02");</p><p> else if
109、(index1 == 1)</p><p> emp.SetClassTypeID("A01");</p><p> else if (index1 == 2)</p><p> emp.SetClassTypeID("A07"); </p><p> CM_Duty duty;</p&g
110、t;<p> DutyID=atoi(m_Duty.GetBoundText());</p><p> emp.SetDutyId(DutyID);</p><p> Cm_dep dep;</p><p> DepId=m_DepName.GetBoundText();</p><p> emp.SetDepId(D
111、epId);</p><p> CEmpInfoDlg dlg;</p><p> if (RfNum == "0") //表示插入數(shù)據(jù)</p><p><b> {</b></p><p> //判斷輸入是否正確</p><p> //判斷人員是否存在</p
112、><p><b> ……</b></p><p> emp.sql_insert();//不存在則插入</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b>&l
113、t;/p><p> emp.sql_update(m_Rfnum);</p><p><b> }</b></p><p> CDialog::OnOK();</p><p><b> }</b></p><p> //實(shí)現(xiàn)添加操作的代碼</p><
114、p> void CM_RfId::sql_insert()</p><p><b> {</b></p><p> //設(shè)置INSERT語句</p><p> CString strDutyId;</p><p> strDutyId.Format("%d", DutyId);<
115、;/p><p> _bstr_t vSQL;</p><p> vSQL="INSERTINTOM_RfId(Address,BatteryState,RfType,DepId,UserName,RfNum, Rfid, InnerRfid, AddTime, BirthDate, RelationName,";</p><p> vSQL =
116、 vSQL + "RelationPhone,ClassTypeID, Phone, UserIC, UserSex,IsValid,IsShow,DutyId) VALUES('";</p><p> vSQL = vSQL + Address +"','" + BatteryState +"','" + Rf
117、Type +"','" + DepId +"','" + UserName +"','" + RfNum +"','" + InnerRfid + "','" + InnerRfid + "','" + AddTime +
118、"','" + BirthDate + "','"; </p><p> vSQL = vSQL + RelationName + "','" + RelationPhone + "','" + ClassTypeID;</p><p> vS
119、QL = vSQL + "','" + Phone + "','" + UserIC + "','"+ UserSex +"','"+ IsValid+ "','"+ IsShow+"',"+ strDutyId + ")
120、";</p><p> //執(zhí)行INSERT語句</p><p> m_AdoConn.ExecuteSQL(vSQL);</p><p> //斷開與數(shù)據(jù)庫的連接</p><p><b> }</b></p><p> 人員定位模塊的設(shè)計(jì)與實(shí)現(xiàn)</p>&l
121、t;p> 人員定位模塊是本系統(tǒng)的主要模塊,這個(gè)模塊的最主要的功能是查詢當(dāng)前井下的人員位置及分布情況。</p><p><b> 功能說明</b></p><p> 該模塊使得系統(tǒng)能夠?qū)崟r(shí)顯示出當(dāng)前井下人員的位置及分布,并且可以查詢某個(gè)人某段時(shí)間內(nèi)的移動(dòng)軌跡。</p><p><b> 設(shè)計(jì)說明</b><
122、/p><p> 人員定位的重點(diǎn)在于確定具體到每個(gè)員工進(jìn)行當(dāng)前時(shí)間定位的時(shí)間點(diǎn),因?yàn)閮H僅利用當(dāng)前這一個(gè)時(shí)間點(diǎn)是不夠的,因?yàn)椴豢赡苊總€(gè)人在每個(gè)時(shí)間點(diǎn)都會(huì)有記錄,僅僅利用當(dāng)前的時(shí)間點(diǎn)進(jìn)行定位的話肯定會(huì)有疏漏,所以要針對(duì)每個(gè)人確定出一個(gè)距當(dāng)前時(shí)間最近的時(shí)間點(diǎn),以至于找到這個(gè)人當(dāng)前的位置。當(dāng)然這個(gè)時(shí)間還需要有一定的上限,因?yàn)?,假如某個(gè)職工在距現(xiàn)在很長一段時(shí)間內(nèi)沒有出勤,那么他的上一條記錄肯定沒有必要出現(xiàn)在當(dāng)前的定位記錄里面。
123、</p><p> 職工考勤查詢模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 職工考勤查詢模塊可以按部門或單個(gè)職工的標(biāo)記信息顯示一段時(shí)間的考勤記錄。</p><p><b> 功能說明</b></p><p> 該模塊可以按部門或單個(gè)職工顯示某段時(shí)間內(nèi)的考勤數(shù)據(jù)。</p><p> 職工考勤匯總模
124、塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 該模塊是系統(tǒng)極為重要的組成部分,它可以對(duì)考勤記錄原始數(shù)據(jù)進(jìn)行加工處理得到匯總后的考勤情況,使得考勤人員很方便地了解出勤情況,便于相關(guān)部門進(jìn)行后期的統(tǒng)計(jì)。</p><p><b> 功能說明</b></p><p> 該模塊的考勤數(shù)據(jù)是經(jīng)過后臺(tái)代碼處理過的,可以使管理者一目了然,能夠很方便的看出部門員工的出
125、勤、請(qǐng)假等情況,除此之外,還可以根據(jù)月份統(tǒng)計(jì)某個(gè)部門整個(gè)月的考勤情況,以報(bào)表的形式體現(xiàn)出來??梢詫?shù)據(jù)導(dǎo)入Excel表格,繼而對(duì)考勤數(shù)據(jù)進(jìn)行備份或者打印等處理。</p><p><b> 核心代碼</b></p><p> //當(dāng)用戶選中部門之后即可進(jìn)行考勤的統(tǒng)計(jì),下面是OnChangeDepname消息觸發(fā)的事件。</p><p> v
126、oid CMonthKaoqinDlg::OnChangeDepname() </p><p><b> {</b></p><p> // TODO: Add your control notification handler code here</p><p> m_Prog.SetPos(0);</p><p&g
127、t; UpdateData(TRUE);</p><p> while ( m_list.DeleteColumn (0));//這里要清除一下之前的列</p><p> for(int j=m_list.GetItemCount()-1; j>=0;j--) //清除所有行</p><p> m_list.DeleteItem(j); </p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 礦井通風(fēng)畢業(yè)論文(含外文翻譯)
- 礦山機(jī)電畢業(yè)論文(含外文翻譯)煤礦井下人員位置監(jiān)測系統(tǒng)的設(shè)計(jì)
- gps定位系統(tǒng)計(jì)-畢業(yè)論文外文翻譯
- 在線考試系統(tǒng)畢業(yè)論文(含外文翻譯)
- 郵件系統(tǒng)畢業(yè)論文(含外文翻譯)
- 管道監(jiān)測系統(tǒng)畢業(yè)論文(含外文翻譯)
- 全球定位系統(tǒng)概述-畢業(yè)論文外文翻譯
- cancan總線系統(tǒng)設(shè)計(jì)畢業(yè)論文(含外文翻譯)
- flash畢業(yè)論文(含外文翻譯)
- 網(wǎng)上選課系統(tǒng)畢業(yè)論文(含外文翻譯)
- 電子點(diǎn)菜系統(tǒng)畢業(yè)論文(含外文翻譯)
- 網(wǎng)上花店管理系統(tǒng)畢業(yè)論文(含外文翻譯)
- 學(xué)生信息查詢系統(tǒng)畢業(yè)論文(含外文翻譯)
- 汽車銷售管理系統(tǒng)畢業(yè)論文(含外文翻譯)
- 人員定位系統(tǒng)的畢業(yè)論文
- 考勤系統(tǒng)畢業(yè)論文
- 人事管理系統(tǒng)畢業(yè)論文(含外文翻譯)
- 物流專業(yè)畢業(yè)論文(含外文翻譯)
- 礦山機(jī)電畢業(yè)論文(含外文翻譯)礦井提升機(jī)變頻調(diào)速控制系統(tǒng)設(shè)計(jì)
- 網(wǎng)上成績查詢系統(tǒng)畢業(yè)論文(含外文翻譯)
評(píng)論
0/150
提交評(píng)論