版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> ****工程學(xué)院</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p><b> 企業(yè)人事管理系統(tǒng)</b></p><p> 課 程 計(jì)算機(jī)綜合應(yīng)用課程設(shè)計(jì)</p><p> 姓 名 ***</
2、p><p> 院 (系) 計(jì)算機(jī)科學(xué)與工程學(xué)院 </p><p> 專業(yè)年級(jí) 計(jì)算機(jī)科學(xué)與技術(shù)084班</p><p> 學(xué) 號(hào) ***</p><p> 指導(dǎo)教師 *** </p><p> 日 期 2011/12/29</p><p> ****
3、工程學(xué)院教務(wù)處制</p><p><b> 目 錄</b></p><p><b> 摘要- 3 -</b></p><p> 第1章 概述- 4 -</p><p> 1.1 課程設(shè)計(jì)的目的- 4 -</p><p> 1.2 課程設(shè)計(jì)的意義- 5 -&l
4、t;/p><p> 第2章 系統(tǒng)功能設(shè)計(jì)- 5 -</p><p> 2.1 系統(tǒng)需求分析- 5 -</p><p> 2.2 系統(tǒng)的概要設(shè)計(jì)- 7 -</p><p> 第3章 管理系統(tǒng)主界面設(shè)計(jì)開(kāi)發(fā)- 18 -</p><p> 3.1 程序設(shè)計(jì)- 18 -</p><p>
5、 3.2功能界面設(shè)計(jì)- 18 -</p><p> 第4章子系統(tǒng)設(shè)計(jì)開(kāi)發(fā)- 21 -</p><p> 4.1員工信息管理子系統(tǒng)頁(yè)面及代碼- 21 -</p><p> 4.2 職務(wù)信息管理子系統(tǒng)- 24 -</p><p> 4.3出勤信息管理子系統(tǒng)- 29 -</p><p> 4.4 工資
6、信息管理子系統(tǒng)- 31 -</p><p> 4.5 獎(jiǎng)懲信息管理子系統(tǒng)- 34 -</p><p> 4.6 福利信息管理子系統(tǒng)- 36 -</p><p> 4.7 管理員界面- 39 -</p><p> 4.8 公司簡(jiǎn)介界面- 44 -</p><p> 第5章 系統(tǒng)實(shí)施- 45 -<
7、;/p><p> 5.1系統(tǒng)和程序設(shè)計(jì)調(diào)試- 45 -</p><p> 5.2系統(tǒng)的不足及改進(jìn)方案- 46 -</p><p> 第6章 結(jié)束語(yǔ)- 46 -</p><p> 6.1 工個(gè)人工作- 46 -</p><p> 參考文獻(xiàn)- 46 -</p><p><b&g
8、t; 摘要</b></p><p> 隨著現(xiàn)在計(jì)算機(jī)技術(shù)的不斷完善,以及現(xiàn)代經(jīng)濟(jì)的不斷發(fā)展,傳統(tǒng)的管理技術(shù)不再滿足企業(yè)的需要,越來(lái)越多的企業(yè)注重計(jì)算機(jī)信息管理系統(tǒng),人事信息管理系統(tǒng)是典型的計(jì)算機(jī)信息管理系統(tǒng)之一,企業(yè)借助于它進(jìn)行人力資源管理,達(dá)到事半功倍。隨著企業(yè)的雇傭人數(shù)的增加,有效地管理人員信息成為必然。人事信息管理系統(tǒng)的開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù),以及前臺(tái)程序開(kāi)發(fā)兩個(gè)方面。本文分析了
9、人事信息管理系統(tǒng)的組成情況以及一些基本功能模塊,包括系統(tǒng)功能框架分析,系統(tǒng)開(kāi)發(fā)的軟硬件環(huán)境分析,系統(tǒng)的數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)分析,以及系統(tǒng)的數(shù)據(jù)流程分析,并且重點(diǎn)對(duì)系統(tǒng)的用戶界面開(kāi)發(fā)和各個(gè)子系統(tǒng)開(kāi)發(fā)作了詳細(xì)的介紹。系統(tǒng)主要利用Java語(yǔ)言和編成環(huán)境以及Access2003的主要功能進(jìn)行設(shè)計(jì)開(kāi)發(fā),在文中進(jìn)行了詳細(xì)的介紹。該開(kāi)發(fā)系統(tǒng)是中型至大型企業(yè)的人事信息管理系統(tǒng),它界面美觀,簡(jiǎn)單實(shí)用,安全性高,能夠基本上滿足企業(yè)人事信息管理的需要,實(shí)現(xiàn)了企業(yè)員
10、工信息的整體化,系統(tǒng)化,規(guī)范化和自動(dòng)化。</p><p> 關(guān)鍵字:信息管理系統(tǒng)、人事信息管理系統(tǒng),Java,Access2003</p><p><b> 第1章 概述</b></p><p> 1.1 課程設(shè)計(jì)的目的</p><p> 隨著現(xiàn)代經(jīng)濟(jì)的高速發(fā)展,各種企業(yè)的不斷崛起,企業(yè)員工的不斷增加,企業(yè)在管理
11、方面對(duì)需求越來(lái)越大。伴隨著計(jì)算機(jī)的迅速發(fā)展和廣泛使用,企業(yè)人事信息管理轉(zhuǎn)向電子化成為必然。</p><p> 傳統(tǒng)的人事信息管理存在很大的不足:利用人進(jìn)行信息的增減,容易導(dǎo)致信息的錯(cuò)誤,而且管理的效率低下,導(dǎo)致資源的可利用性低,勞動(dòng)力大,安全性也不夠,加上,隨著時(shí)間的遞增,信息量不斷增大,對(duì)信息的增加、刪除、檢索、查找就會(huì)存在很大的問(wèn)題。因此,隨著企業(yè)的強(qiáng)大和發(fā)展,傳統(tǒng)的管理方式不再適應(yīng)企業(yè)的需要。</p
12、><p> 應(yīng)用計(jì)算機(jī)進(jìn)行管理信息,有著其手工無(wú)法比擬的優(yōu)點(diǎn)。例如:存儲(chǔ)量大、修改方便、檢索快速、安全性高,使用壽命長(zhǎng)、成本低、可靠性好等。這些優(yōu)點(diǎn)能夠極大地提高人事信息管理的效率,有助于企業(yè)的發(fā)展。</p><p> 1.2 課程設(shè)計(jì)的意義</p><p> 人事信息管理系統(tǒng)的開(kāi)發(fā)需要就Java語(yǔ)言和數(shù)據(jù)庫(kù)兩方面的知識(shí),因此設(shè)計(jì)一個(gè)實(shí)用性強(qiáng)的人事信息管理系統(tǒng),對(duì)
13、于我們進(jìn)行課程設(shè)計(jì)方面知識(shí)的提高有很大的推動(dòng)作用。</p><p> 人事信息管理系統(tǒng)的開(kāi)發(fā)需要用到多方面的知識(shí),包括數(shù)據(jù)庫(kù)的選用、數(shù)據(jù)庫(kù)的建立和維護(hù)、信息的存儲(chǔ)、管理界面的設(shè)計(jì)。這些對(duì)于設(shè)計(jì)者的知識(shí)水平有較高的要求。因此,如何規(guī)劃、設(shè)計(jì)和開(kāi)發(fā)好這個(gè)人事信息管理系統(tǒng),對(duì)于提高我們的Java開(kāi)發(fā)水平有極大的幫助。同時(shí),在設(shè)計(jì)開(kāi)發(fā)過(guò)程中,我們可以選用適當(dāng)?shù)臄?shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序,建立好合適的數(shù)據(jù)庫(kù)表格和設(shè)計(jì)好美
14、觀大方的管理界面。</p><p> 第2章 系統(tǒng)功能設(shè)計(jì)</p><p> 2.1 系統(tǒng)需求分析</p><p> 2.1.1 人事信息管理系統(tǒng)的客戶功能需求</p><p> 該開(kāi)發(fā)系統(tǒng)的設(shè)計(jì)主要用于實(shí)現(xiàn)以下幾個(gè)功能:</p><p> (1) 人事信息管理系統(tǒng)主界面</p><p&
15、gt; 人事信息系統(tǒng)主界面主要包括系統(tǒng)設(shè)計(jì),公司結(jié)構(gòu),員工管理,職務(wù)管理,出勤管理,工資管理,獎(jiǎng)罰管理,福利管理和幫助等內(nèi)容,可以進(jìn)行各種信息的添加、查詢,刪除等操作。</p><p> (2) 員工信息管理子系統(tǒng)</p><p> 員工信息管理子系統(tǒng)主要是對(duì)所有員工的個(gè)人信息進(jìn)行登記、刪除、檢索、查找,包括員工的編號(hào),員工的性別,員工的姓名,員工的身份證號(hào)碼,員工的聯(lián)系電話、聯(lián)系方
16、式,員工的入公司時(shí)間,照片等記錄。并且還能夠刪除錯(cuò)誤的員工個(gè)人記錄的信息。</p><p> (3) 職務(wù)信息管理子系統(tǒng)</p><p> 職務(wù)信息管理子系統(tǒng)主要是對(duì)所有員工的職務(wù)信息進(jìn)行登記,包括了兩個(gè)部分的內(nèi)容——職務(wù)管理和職務(wù)變更。</p><p> 職務(wù)管理包括員工的編號(hào),員工的姓名以及員工的現(xiàn)任職務(wù),并且能夠刪除錯(cuò)誤的員工職務(wù)記錄的信息。</p
17、><p> 職務(wù)變更包括員工的編號(hào),員工的姓名,員工的各種職務(wù)以及任職該職務(wù)的時(shí)間。并且能夠刪除錯(cuò)誤的員工職務(wù)變更記錄的信息。</p><p> (4) 出勤信息管理子系統(tǒng)</p><p> 出勤信息管理子系統(tǒng)主要是對(duì)所有員工的出勤信息進(jìn)行登記,包括了四個(gè)部分的內(nèi)容——上班登記、下班登記、請(qǐng)假登記和加班登記。</p><p> 上班登記主
18、要是對(duì)所有員工的上班信息進(jìn)行登記,包括員工的編號(hào),員工的姓名,員工的上班時(shí)間和相應(yīng)的備注信息,并且能夠刪除錯(cuò)誤的員工上班時(shí)間記錄的信息。</p><p> 下班登記主要是對(duì)所有員工的下班信息經(jīng)行登記,包括員工的編號(hào),員工的姓名,員工的下班時(shí)間和相應(yīng)的備注信息,并且能夠刪除錯(cuò)誤的員工下班時(shí)間記錄的信息。。</p><p> 請(qǐng)假登記主要是對(duì)所有員工的請(qǐng)假信息進(jìn)行登記,包括員工的編號(hào),員工
19、的姓名,員工的請(qǐng)假日期,員工的請(qǐng)假時(shí)間,員工的請(qǐng)假原因和相應(yīng)的備注信息,并能夠刪除錯(cuò)誤的員工請(qǐng)假記錄的信息。</p><p> 加班登記主要是對(duì)所有員工的加班信息進(jìn)行登記,包括員工的編號(hào),員工的姓名,員工的加班日期,員工的加班時(shí)間,員工的加班薪資和相應(yīng)的備注信息,并能夠刪除錯(cuò)誤的員工加班記錄的信息。</p><p> (5) 工資信息管理子系統(tǒng)</p><p>
20、 工資信息管理子系統(tǒng)主要是對(duì)所有的員工的工資信息進(jìn)行登記,包括了員工的編號(hào),員工的姓名,員工的基本工資、補(bǔ)貼金、加班費(fèi)、獎(jiǎng)懲金,員工的總工資和相應(yīng)的備注信息,并且能夠刪除錯(cuò)誤的員工工資記錄的信息。</p><p> (6) 懲罰信息管理子系統(tǒng)</p><p> 懲罰信息管理子系統(tǒng)主要是對(duì)說(shuō)有的員工的懲罰信息進(jìn)行登記,包括了員工的編號(hào),員工的姓名,員工的獎(jiǎng)勵(lì)、懲罰,員工的懲罰說(shuō)明和相應(yīng)
21、的備注信息,并且能夠刪除錯(cuò)誤的員工懲罰記錄的信息。</p><p> (7) 福利信息管理子系統(tǒng)</p><p> 福利信息管理子系統(tǒng)主要是對(duì)所有的員工的福利信息進(jìn)行登記,包括員工的編號(hào),員工的姓名,員工的養(yǎng)老保險(xiǎn)金、失業(yè)保險(xiǎn)金、工傷保險(xiǎn)金,員工的福利總計(jì)和相應(yīng)的備注信息,并且能夠刪除錯(cuò)誤的員工福利記錄的信息。</p><p> 2.1.2系統(tǒng)開(kāi)發(fā)和運(yùn)行環(huán)境&
22、lt;/p><p> (1) 硬件配置及外設(shè)設(shè)備</p><p> 硬件平臺(tái)是指開(kāi)發(fā)與運(yùn)行所需要的硬件環(huán)境,主要包括計(jì)算機(jī)機(jī)型及硬件配置。由于本系統(tǒng)是一個(gè)MINI管理系統(tǒng),因此對(duì)計(jì)算機(jī)硬件的要求不是很高,成本較低,只要配備如表2-1所示的就可以。</p><p> 表2-1 計(jì)算機(jī)硬件配備要求表</p><p> (2)開(kāi)發(fā)運(yùn)行軟件環(huán)境&
23、lt;/p><p> 軟件平臺(tái)是指系統(tǒng)開(kāi)發(fā)與運(yùn)行的軟件環(huán)境。本系統(tǒng)在開(kāi)發(fā)時(shí)選用的操作系統(tǒng)是穩(wěn)定性較強(qiáng)的Windows XP中文專業(yè)版,Java程序設(shè)計(jì)的開(kāi)發(fā)環(huán)境是JDK 5.0,集成開(kāi)發(fā)工具是JCreator專業(yè)版,數(shù)據(jù)庫(kù)的設(shè)計(jì)工具選用的Microsoft公司的Access 2003。 </p><p> Java語(yǔ)言是一種跨平臺(tái)、適合于分布式計(jì)算機(jī)環(huán)境的面向?qū)ο缶幊陶Z(yǔ)言。具體來(lái)說(shuō),它具有
24、如下特性:簡(jiǎn)單性、面向?qū)ο蟆⒎植际?、解釋性、可靠、安全、平臺(tái)無(wú)關(guān)、可移植、多線程、動(dòng)態(tài)性等。</p><p> Java的開(kāi)發(fā)環(huán)境大體上分成兩種方式。一種方式是使用JDK(Java Developers Kits)工具集,這是一種命令行的方式。另一種方式是使用集成開(kāi)發(fā)環(huán)境(Integrated Developing Environment,IDE)。</p><p> 采用JDK開(kāi)發(fā)J
25、ava程序,能夠很快理解程序中各部分代碼之間的關(guān)系,有利于理解Java面向?qū)ο蟮脑O(shè)計(jì)思想。JDK的另一個(gè)顯著特點(diǎn)是隨著Java 版本的升級(jí)而升級(jí)。但它的缺點(diǎn)也是非常明顯的就是從事大規(guī)模企業(yè)級(jí)Java應(yīng)用開(kāi)發(fā)非常困難,不能進(jìn)行復(fù)雜的Java軟件開(kāi)發(fā),也不利于團(tuán)體協(xié)同開(kāi)發(fā)。</p><p> JCreator 專業(yè)版是一款適合于各個(gè) Java 語(yǔ)言編程開(kāi)發(fā)人員的IDE工具。 她為使用者提供了大量強(qiáng)勁的功能,例如:
26、項(xiàng)目管理、工程模板、代碼完成、調(diào)試接口、高亮語(yǔ)法編輯、使用向?qū)б约巴耆勺远x的用戶界面。JCreator 具有無(wú)限撤銷、代碼縮進(jìn)、自動(dòng)類庫(kù)方法提示、安所選職能定位查閱JavaAPI文檔的功能,它支持JSP、Ant、CVS,其.小巧、易用、美觀,是Java初級(jí)程序員的理想IDE。 </p><p> Access2003 是一款Window環(huán)境下的數(shù)據(jù)庫(kù)管理軟件,是Office辦公套件中一個(gè)極為重要的組成部分,
27、是Microsoft公司于2003年推出的微機(jī)數(shù)據(jù)庫(kù)管理系統(tǒng),它不僅解決了以往的Acess中處理中文的麻煩,而且具有了新的優(yōu)點(diǎn),在功能上做了加強(qiáng)。它具有界面友好、易學(xué)易用、開(kāi)發(fā)簡(jiǎn)單、接口靈活等特點(diǎn),是典型的新一代桌面關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。利用它可以方便的實(shí)現(xiàn)對(duì)信息保存、維護(hù)、查詢、統(tǒng)計(jì)等,而且它可以十分方便的與Office其他組件交流數(shù)據(jù)。</p><p> 2.2 系統(tǒng)的概要設(shè)計(jì)</p><
28、p> 2.1.1 系統(tǒng)的功能框架分析</p><p> 構(gòu)建一個(gè)人事信息管理系統(tǒng),該系統(tǒng)主要由六個(gè)子系統(tǒng)組成,分別包括個(gè)人信息管理子系統(tǒng),職務(wù)信息管理子系統(tǒng),出勤信息管理子系統(tǒng),工資信息管理子系統(tǒng),懲罰信息管理子系統(tǒng)以及福利信息管理子系統(tǒng)。同時(shí),為了增強(qiáng)系統(tǒng)的安全性,首先需要通過(guò)用戶權(quán)限認(rèn)證,只有在登陸界面上輸入正確的用戶名和密碼,才能的功能路本系統(tǒng)進(jìn)行操作。通過(guò)了系統(tǒng)功能框架的分析,得到了如圖2-1的
29、系統(tǒng)功能模塊。</p><p> 圖2-1系統(tǒng)功能框架</p><p> 下面簡(jiǎn)單說(shuō)明一下各個(gè)框架的功能:</p><p> (1)系統(tǒng)設(shè)置模塊:本應(yīng)用模塊的主要功能是進(jìn)行管理員設(shè)置、返回主頁(yè)面、以及系統(tǒng)的安全退出。</p><p> (2)公司結(jié)構(gòu)模塊:本應(yīng)用模塊的主要功能是進(jìn)行公司結(jié)構(gòu)的說(shuō)明,相關(guān)部門的管理以及職位的調(diào)整。<
30、/p><p> (3)員工管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工信息的增加、信息的修改、信息的查詢以及信息的刪除等操作。</p><p> (4)職務(wù)管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工現(xiàn)任職務(wù)、員工植物變更記錄的管理,以及職務(wù)的設(shè)置。</p><p> (5)出勤管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工上下班時(shí)間登記,員工請(qǐng)假信息,員工加班信息記錄的
31、管理。</p><p> (6)工資管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工工資信息的管理,包括工資的查詢和調(diào)整。</p><p> (7)獎(jiǎng)懲管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工的獎(jiǎng)懲信息的管理,包括獎(jiǎng)懲的查詢和添加。</p><p> (8)福利管理模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)對(duì)員工福利信息的管理,包括福利的查詢和調(diào)整。</p>
32、<p> (9)幫助模塊:本應(yīng)用模塊的主要功能是實(shí)現(xiàn)系統(tǒng)幫助,關(guān)于系統(tǒng)。</p><p> 2.2.2 系統(tǒng)的數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)分析</p><p> 數(shù)據(jù)庫(kù)設(shè)計(jì)是在選定的數(shù)據(jù)庫(kù)管理系統(tǒng)基礎(chǔ)上建立數(shù)據(jù)庫(kù)的過(guò)程。數(shù)據(jù)庫(kù)設(shè)計(jì)除了用戶分析外,還包括概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)等三個(gè)階段。數(shù)據(jù)庫(kù)系統(tǒng)已經(jīng)成為一門獨(dú)立的學(xué)科,所以,當(dāng)我們把數(shù)據(jù)庫(kù)設(shè)計(jì)原理應(yīng)用到MIS開(kāi)發(fā)中,數(shù)據(jù)
33、庫(kù)設(shè)計(jì)的幾個(gè)步驟與系統(tǒng)開(kāi)發(fā)的各個(gè)階段相對(duì)應(yīng),且融為一體,它們的對(duì)應(yīng)關(guān)系如圖2-2所示。</p><p> 圖2-2數(shù)據(jù)庫(kù)設(shè)計(jì)與系統(tǒng)開(kāi)發(fā)階段對(duì)應(yīng)關(guān)系圖</p><p> (1) 概念模型E-R圖</p><p> 這一設(shè)計(jì)階段是在邏輯關(guān)系分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體,以及他們之間的關(guān)系,為后面的數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)打下基礎(chǔ)。本文根據(jù)上面的分析規(guī)劃出的
34、實(shí)體有部門設(shè)計(jì)、員工信息、職務(wù)管理、職務(wù)變更、上班登記、下班登記、員工請(qǐng)假信息、員工加班信息、員工獎(jiǎng)懲信息、員工工資信息、員工福利信息、管理員信息等。實(shí)體與實(shí)體之間的關(guān)系E-R圖如圖2-3至圖2-14所示。</p><p> 圖2-3 部門設(shè)計(jì)實(shí)體E-R 圖</p><p> 圖2-4 員工信息實(shí)體E-R圖</p><p> 圖2-5 職務(wù)管理實(shí)體E-R圖&l
35、t;/p><p> 圖2-6 職務(wù)變更實(shí)體E-R圖</p><p> 圖2-7 上班登記實(shí)體E-R圖</p><p> 圖2-8 下班登記實(shí)體E-R圖</p><p> 圖2-9 員工請(qǐng)假實(shí)體E-R圖</p><p> 圖2-10 員工加班實(shí)體E-R圖</p><p> 圖2-11 員工
36、獎(jiǎng)懲實(shí)體E-R圖</p><p> 圖2-12 員工工資實(shí)體E-R圖</p><p> 圖2-13 員工福實(shí)體E-R圖</p><p> 圖2-14 管理員信息實(shí)體E-R 圖</p><p><b> (2) 表結(jié)構(gòu)分析</b></p><p> 根據(jù)本系統(tǒng)功能需求,數(shù)據(jù)庫(kù)采用Micro
37、soft公司的Access 2003,它完全可以適合工作需求,并且它所支持的數(shù)據(jù)類型十分豐富,維護(hù)簡(jiǎn)單,費(fèi)用比較低,開(kāi)發(fā)人員技術(shù)要求不是很高。根據(jù)模塊的設(shè)計(jì),以及規(guī)范化的設(shè)計(jì)要求,為滿足系統(tǒng)需要,本系統(tǒng)共建立12個(gè)表分別是:部門設(shè)計(jì)表,雇員信息表,職務(wù)管理表,職務(wù)變更表,上班登記表,下班登記表,員工請(qǐng)假信息表,員工加班信息表,員工獎(jiǎng)罰信息表,員工工資表,員工福利表,管理員信息表。各個(gè)數(shù)據(jù)表的結(jié)構(gòu)如表2-2至表2-13所示。</p&
38、gt;<p> 表2-2 部門設(shè)計(jì)表(Department_Infor)</p><p> 表2-3員工信息表(employee_Infor)</p><p> 表2-4 職務(wù)管理表(Duty_Infor)</p><p> 表2-5 職務(wù)變更表(Duty_Change_Infor)</p><p> 表2-6 上班登
39、記表(Start_Register_Infor)</p><p> 表2-7 下班登記表(Finish_Register_Infor)</p><p> 表2-8 員工請(qǐng)假信息表(On_Leave_Infor)</p><p> 表2-9 員工加班信息表(Over_Time_Infor)</p><p> 表2-10 員工獎(jiǎng)懲信息表(
40、Award_Punish_Infor)</p><p> 表2-11 員工工資信息表(Wage_Infor)</p><p> 表2-12員工福利表(Welfare_Infor)</p><p> 表2-13管理員信息表(Manager_Infor)</p><p> (3) 數(shù)據(jù)字典分析 </p><p>
41、 數(shù)據(jù)流程圖描述了系統(tǒng)的分解,但沒(méi)有對(duì)圖中各成分進(jìn)行說(shuō)明,數(shù)據(jù)字典(Data Dictionary,DD)就是為數(shù)據(jù)流程圖的每個(gè)數(shù)據(jù)流文件加工,以及組成數(shù)據(jù)流或文件的數(shù)據(jù)項(xiàng)作出說(shuō)明,具體見(jiàn)表2-14至表2-18</p><p> 表 2-14 員工管理的數(shù)據(jù)字典</p><p> 表2-15 職務(wù)管理的數(shù)據(jù)字典</p><p> 表2-16 出勤管理的數(shù)據(jù)字典
42、</p><p> 表2-17 工資信息查詢的數(shù)據(jù)字典</p><p> 表2-18 福利信息查詢的數(shù)據(jù)字典</p><p> 2.2.3數(shù)據(jù)流程分析</p><p> 總的系統(tǒng)流程圖如圖2-15所示:</p><p> 圖2-15 總的系統(tǒng)流程</p><p> ?、?業(yè)務(wù)流程圖(T
43、ransaction Flow Diagram,TFD)是一種描述系統(tǒng)內(nèi)各單位、人員之間業(yè)務(wù)關(guān)系、作業(yè)順序和管理信息流向的圖表,利用它可以幫助分析人員找出業(yè)務(wù)流程中的不合理的流向。通過(guò)前面對(duì)企業(yè)倉(cāng)庫(kù)管理情況進(jìn)行的一系列調(diào)研與分析,得到如圖2-16所示的業(yè)務(wù)流程圖。</p><p> 圖2-16 業(yè)務(wù)流程圖</p><p> 人事管理系統(tǒng)的業(yè)務(wù)處理過(guò)程如下:企業(yè)認(rèn)識(shí)管理系統(tǒng)記錄基本的信息
44、并能對(duì)系統(tǒng)的的已有信息進(jìn)行查詢;信息添加記錄中對(duì)基本信息添加;信息輸出記錄對(duì)基本信息并能進(jìn)行查詢。</p><p> ?、?根據(jù)業(yè)務(wù)流程圖分析,對(duì)于其中的數(shù)據(jù)流向,處理及存儲(chǔ)進(jìn)行逐層分解,可以得到數(shù)據(jù)流程圖(Data Flow Diagram,DFD)。數(shù)據(jù)流程圖是分層次的,繪制是采取自頂向下逐層分解的方法。頂層數(shù)據(jù)流程圖只有一張,它說(shuō)明了系統(tǒng)總的處理功能、輸入和輸出。下一步是對(duì)頂層數(shù)據(jù)流程圖中的“處理”進(jìn)行分解
45、,也就是對(duì)第一層數(shù)據(jù)流程圖的再分解。數(shù)據(jù)流程圖如圖3-3所示。</p><p> 圖3-3 數(shù)據(jù)流程圖</p><p> 第3章 管理系統(tǒng)主界面設(shè)計(jì)開(kāi)發(fā)</p><p><b> 3.1 程序設(shè)計(jì)</b></p><p> 3.1.1程序設(shè)計(jì)思想與原則</p><p> 編寫程序應(yīng)符合
46、軟件工程化思想。應(yīng)用軟件的編程工作量極大,而且要經(jīng)常維護(hù)、修改。如果編寫程序不遵守正確的規(guī)律,就會(huì)給系統(tǒng)的開(kāi)發(fā)維護(hù)帶來(lái)不可逾越的障礙。軟件工程的思想即利用工程化的方法進(jìn)行軟件開(kāi)發(fā),通過(guò)建立軟件工程環(huán)境來(lái)提高軟件開(kāi)發(fā)效率。</p><p> 自頂向下的模塊化方法描述了大程序設(shè)計(jì)的原則,在具體編程中,則應(yīng)采用結(jié)構(gòu)化程序設(shè)計(jì)方法。這種方法指導(dǎo)人們用良好的思想方法卻設(shè)計(jì)程序,其特點(diǎn)是采用順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和選擇結(jié)構(gòu)三種
47、基本邏輯結(jié)構(gòu)來(lái)編寫程序。</p><p> 3.2功能界面設(shè)計(jì) </p><p> 雖說(shuō)程序設(shè)計(jì)最核心的地方是程序的功能,但程序的界面設(shè)計(jì)是不可忽視的,它直接影響到程序的易用性。尤其在Windows時(shí)代,一個(gè)良好的應(yīng)用界面會(huì)給你的程序錦上添花,甚至有畫(huà)龍點(diǎn)睛之韻味。一般來(lái)說(shuō),在完成核心算法的編制后,就要開(kāi)始精心設(shè)計(jì)應(yīng)用界面了。</p><p><b>
48、 登陸界面的代碼:</b></p><p> public class HRM_App </p><p><b> {</b></p><p> public static void main (String[] args) </p><p><b> {</b></p&
49、gt;<p> Login _Login=new Login();</p><p><b> }</b></p><p><b> }</b></p><p><b> 系統(tǒng)主頁(yè)面代碼為:</b></p><p> import java.awt.*;&
50、lt;/p><p> import javax.swing.*;</p><p> import javax.sql.*;</p><p> import java.awt.event.*;</p><p> public class AppMain extends JFrame</p><p><b>
51、 {</b></p><p> private JMenuBar barMain = new JMenuBar();</p><p> private MenuBarListener _MenuBarListener = new MenuBarListener();</p><p> public final JDesktopPane deskt
52、op = new JDesktopPane();</p><p> public static DbConnection connetion=new DbConnection();</p><p> private int i,j;</p><p> public AppMain() </p><p><b> {<
53、/b></p><p> super("人事管理系統(tǒng)");</p><p> Container container = getContentPane();</p><p> container.add(desktop,BorderLayout.CENTER);</p><p> MenuBarListene
54、r.setDeskTop(desktop);</p><p> BuildBarMain();</p><p> this.setJMenuBar(barMain); setSize(900,700);</p><p> int w = (Toolkit.getDefaultToolkit().getScreenSize().width - 900) / 2;
55、 </p><p> int h = (Toolkit.getDefaultToolkit().getScreenSize().height - 700) / 2; </p><p> setLocation(w, h);setVisible(true);</p><p> addWindowListener(new WindowAdapter()</p
56、><p><b> {</b></p><p> public void windowClosing(WindowEvent event)</p><p><b> {</b></p><p> int result = JOptionPane.showOptionDialog(null,&qu
57、ot;是否真的退出人事信息管理系統(tǒng)?","系統(tǒng)提示", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE,</p><p> null,new String[] {"確定","取消"},"取消");</p
58、><p> if (result == JOptionPane.YES_OPTION) </p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> AppMain.con
59、netion.connection.close();</p><p><b> }</b></p><p> catch(java.sql.SQLException sql)</p><p><b> {</b></p><p> sql.printStackTrace();</p&g
60、t;<p><b> }</b></p><p> System.exit(0); </p><p> }} }); } </p><p> private JMenuBar BuildBarMain()</p><p><b> {</b></p>
61、<p> final JMenu[] _Menu = {new JMenu(" 系統(tǒng)設(shè)置 "),</p><p> new JMenu(" 公司結(jié)構(gòu) "),new JMenu(" 員工管理 "),</p><p> new JMenu(" 職務(wù)管理 "), new JMenu(
62、" 出勤情況 "),</p><p> new JMenu(" 工資管理 "), new JMenu(" 獎(jiǎng)罰管理 "), </p><p> new JMenu(" 福利管理 "), new JMenu(" 幫助 ")}; </p><p>
63、; final JMenuItem[][] _MenuItem={{new JMenuItem("管理員設(shè)置"),new JMenuItem("返回主界面"),new JMenuItem("安全退出")}, {new JMenuItem("公司結(jié)構(gòu)"),new JMenuItem("部門管理"),new JMenuItem("
64、職位調(diào)整")},{new JMenuItem("增加員工"),new JMenuItem("信息修改"),new JMenuItem("信息查詢"),new JMenuItem("減少員工")},{new JMenuItem("現(xiàn)任職務(wù)查詢"),new JMenuItem("職務(wù)變更查詢"),new JMen
65、uItem("職務(wù)變更")}, {new JMenuItem("上下班登記"),new JMenuItem("請(qǐng)假管理"),new JMenuItem("加班管理")},{new JMenuItem("工資查詢"),new JMenuItem("工資調(diào)整")},{new JMenuItem("獎(jiǎng)罰查詢&quo
66、t;),new JMenuItem("添加獎(jiǎng)罰")},{new J</p><p> final String[][] MenuItemName={{"setmanager_sysMenu","MainInterface_sysMenu","exit_sysMenu"}, {"company_
67、structure_Menu","manageDepartment_Menu","setduty_Menu"}, {"add_employeeMenu","updata_employeeMenu","select_employeeMenu","delete
68、_employeeMenu"}, {"duty_dutyMenu","select_dutyMenu","change_dutyMenu"}, {"start_attendance","finish_attendance"
69、;,"askforleave_attendance","Over_Time_attendance"},</p><p> {"select_wageMenu","change_wageMenu"}, {"select_award_punishMenu"
70、;,"add_award_punishMenu"}, {"select_welfareMenu","updata_welfareMenu"},</p><p> {"help_helpMenu","about_helpMenu"}};
71、</p><p> for(j=0;j<_Menu.length;j++) </p><p><b> { </b></p><p> _Menu[j].setFont(new Font("TimesRoman",Font.PLAIN,14));</p><p> for
72、(i=0;i<_MenuItem[j].length;i++)</p><p><b> {</b></p><p> _MenuItem[j][i].setFont(new</p><p> Font("TimesRoman",Font.PLAIN,12));</p><p> _Me
73、nuItem[j][i].addActionListener(new ActionListener()</p><p><b> {</b></p><p> public void actionPerformed(ActionEvent e) </p><p><b> {</b></p><p
74、> _MenuBarListener.setEventName(MenuItemName[j][i]);</p><p><b> }});</b></p><p> _MenuItem[j][i].addActionListener(_MenuBarListener);</p><p> _Menu[j].add(_MenuI
75、tem[j][i]);</p><p><b> }</b></p><p> barMain.add(_Menu[j]);</p><p><b> } </b></p><p> _MenuItem[0][1].addActionListener(new ActionListe
76、ner()</p><p><b> {</b></p><p> public void actionPerformed(ActionEvent e) </p><p><b> {</b></p><p> dispose();</p><p> }});
77、 </p><p> return barMain;</p><p><b> }</b></p><p> public static void main (String[] args) </p><p><b> {</b></p><p> AppMai
78、n appmain=new AppMain();</p><p> appmain.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);</p><p><b> }}</b></p><p> 系統(tǒng)主界面如圖3-2所示:</p><p> 圖3-2 系統(tǒng)主頁(yè)
79、面</p><p> 第4章子系統(tǒng)設(shè)計(jì)開(kāi)發(fā)</p><p> 4.1員工信息管理子系統(tǒng)頁(yè)面及代碼</p><p> 圖4-1 員工信息管理子系統(tǒng)界面</p><p><b> 該界面代碼為:</b></p><p> import java.awt.*;</p><p
80、> import java.awt.event.*;</p><p> import javax.sql.*;</p><p> import java.util.*;</p><p> import javax.swing.*;</p><p> import javax.swing.table.*;</p>
81、<p> public class select_employee_Managment extends View_Model </p><p><b> {</b></p><p> private JLabel idLabel = new JLabel(" 員工編號(hào): ");</p><p> pr
82、ivate JTextField idField = new JTextField(10);</p><p> private JLabel nameLabel = new JLabel(" 姓 名: ");</p><p> private JTextField nameField = new JTextField(10);</p><
83、;p> private JLabel sexLabel = new JLabel(" 性 別: ");</p><p> private final String[] sexString = {" 男 "," 女 "};</p><p> private JComboBox sexComboBox =
84、 new JComboBox(sexString);</p><p> private JLabel ageLabel = new JLabel(" 年 齡: ");</p><p> private JTextField ageField = new JTextField(10);</p><p> private JLab
85、el departLabel = new JLabel(" 部 門: ");</p><p> private JTextField departField = new JTextField(10);</p><p> private JLabel dutyLabel = new JLabel(" 職 位: ");</p
86、><p> private JTextField dutyField = new JTextField(10);</p><p> private JLabel sfzLabel = new JLabel(" 身份證號(hào)碼: ");</p><p> private JTextField sfzField = new JTextField(1
87、0);</p><p> private JLabel addLabel = new JLabel(" 地址: ");</p><p> private JTextField addField = new JTextField(10);</p><p> private JLabel telLabel = new JLabel(&quo
88、t; 聯(lián)系電話: ");</p><p> private JTextField telField = new JTextField(10);</p><p> Icon icon = new ImageIcon("./photo.jpg");</p><p> private JLabel photoLabel = new
89、JLabel(icon,SwingConstants.CENTER);</p><p> private JLabel bzLabel = new JLabel(" 備注: ");</p><p> private JTextArea bzArea = new JTextArea(5,25); </p><p> priva
90、te JButton renovateButton = new JButton("刷新");</p><p> private JButton selectAllButton = new JButton("查看全部");</p><p> private JButton selectButton = new JButton("查詢&qu
91、ot;);</p><p> private JButton addButton = new JButton("添加");</p><p> private JButton updateButton = new JButton("修改");</p><p> private JButton deleteButton =
92、new JButton("刪除");</p><p> private JButton saveButton = new JButton("保存");</p><p> private JButton exitButton = new JButton("退出");</p><p> private R
93、esultSetTableModel tableModel;</p><p> private String Query_Sql = "select * from employee_Infor" ;</p><p> public select_employee_Managment() </p><p><b> { <
94、/b></p><p><b> super();</b></p><p><b> try </b></p><p><b> {</b></p><p> tableModel = new ResultSetTableModel(Query_Sql); <
95、;/p><p> Box box = Box.createVerticalBox();</p><p> box.add( new InforPanel() );</p><p> box.add(new JLabel(" "));</p><p> box.add( OperateBox() );</p>
96、<p> box.add(new JLabel(" "));</p><p> JTable resultTable = new JTable( tableModel );</p><p> JScrollPane tableScrollPane = new JScrollPane(resultTable); </p>
97、<p> Container container = getContentPane(); </p><p> container.add( box, BorderLayout.NORTH );</p><p> container.add( new JScrollPane( tableScrollPane ), BorderLayout.CENTER );
98、</p><p> setSize( 800, 600 );</p><p> setResizable(false);</p><p> setVisible( true ); </p><p><b> }</b></p><p> catch ( ClassNotFoundEx
99、ception classNotFound ) {</p><p> JOptionPane.showMessageDialog( null, </p><p> "Cloudscape driver not found", "Driver not found",</p><p> JOptionPane.ERROR_M
100、ESSAGE );</p><p> System.exit( 1 );</p><p><b> }</b></p><p> catch(java.sql.SQLException sqlException ) </p><p><b> {</b></p><p&g
101、t; JOptionPane.showMessageDialog( null, sqlException.getMessage(), </p><p> "Database error", JOptionPane.ERROR_MESSAGE );</p><p> tableModel.disconnectFromDatabase();</p>&l
102、t;p> System.exit( 1 );</p><p><b> }</b></p><p> setDefaultCloseOperation( DISPOSE_ON_CLOSE ); </p><p><b> } </b></p><p> private cla
103、ss InforPanel extends JPanel</p><p><b> {</b></p><p> public InforPanel()</p><p><b> {</b></p><p><b> super();</b></p>&
104、lt;p> Box box1 = Box.createHorizontalBox();</p><p> box1.add(idLabel);box1.add(idField);</p><p> Box box10 = Box.createHorizontalBox();</p><p> box10.add(nameLabel);box10.add
105、(nameField);</p><p> Box box2 = Box.createHorizontalBox();</p><p> box2.add(sexLabel);box2.add(sexComboBox);</p><p> box2.add(ageLabel);box2.add(ageField);</p><p>
106、Box box3 = Box.createHorizontalBox();</p><p> box3.add(sexLabel);box3.add(sexComboBox);</p><p> box3.add(ageLabel);box3.add(ageField);</p><p> Box box4 = Box.createHorizontalBox(
107、);</p><p> box4.add(sfzLabel);box4.add(sfzField);</p><p> Box box5 = Box.createHorizontalBox();</p><p> box5.add(departLabel);box5.add(departField);</p><p> box5.ad
108、d(dutyLabel);box5.add(dutyField);</p><p> Box box6 = Box.createHorizontalBox();</p><p> box6.add(telLabel);box6.add(telField);</p><p> Box box9 = Box.createHorizontalBox();</p
109、><p> box9.add(addLabel);box9.add(addField);</p><p> Box box7 = Box.createHorizontalBox();</p><p> box7.add(bzLabel);</p><p> box7.add(new JScrollPane(bzArea));</p&
110、gt;<p> Box leftBox = Box.createVerticalBox();</p><p> leftBox.add(new JLabel(" "));leftBox.add(new JLabel(" "));</p><p> leftBox.add(box1);leftBox.add(new JLabel(&
111、quot; "));</p><p> leftBox.add(box10);leftBox.add(new JLabel(" "));</p><p> leftBox.add(box2);</p><p> leftBox.add(box3);leftBox.add(new JLabel(" "));<
112、;/p><p> leftBox.add(box4);leftBox.add(new JLabel(" "));</p><p> leftBox.add(box4);leftBox.add(new JLabel(" "));</p><p> leftBox.add(box6);leftBox.add(new JLabel
113、(" "));</p><p> leftBox.add(box9);</p><p> Box box8 = Box.createVerticalBox();</p><p> box8.add(new JLabel(" "));box8.add(new JLabel(" "));</p>
114、;<p> Box photobox = Box.createHorizontalBox();</p><p> photobox.add(new JLabel(" "));</p><p> photobox.add(photoLabel);</p><p> box8.add(photobox
115、);</p><p> box8.add(new JLabel(" "));</p><p> box8.add(box7);</p><p> Box mainBox = Box.createHorizontalBox();</p><p> mainBox.add(leftBox);</p>&l
116、t;p> mainBox.add(new JLabel(" "));</p><p> mainBox.add(new JLabel(" "));</p><p> mainBox.add(new JLabel(" "));</p><p> mainBox.add(box8
117、);add(mainBox);</p><p><b> }</b></p><p><b> }</b></p><p> private Box OperateBox()</p><p><b> {</b></p><p> Box bo
118、x = Box.createHorizontalBox();</p><p> box.add(renovateButton);</p><p> box.add(selectAllButton);</p><p> box.add(selectButton);</p><p> box.add(addButton);</p&g
119、t;<p> box.add(updateButton);</p><p> box.add(deleteButton);</p><p> box.add(saveButton);</p><p> box.add(exitButton);</p><p> exitButton.addActionListener(
120、new exit_actionAdapter(this));</p><p> return box;</p><p><b> }</b></p><p><b> }</b></p><p> 4.2 職務(wù)信息管理子系統(tǒng)</p><p> 圖 4-2 現(xiàn)任職務(wù)查
121、詢界面</p><p> 以下為該界面的代碼:</p><p> import java.awt.*;</p><p> import java.awt.event.*;</p><p> import javax.sql.*;</p><p> import java.util.*;</p>
122、<p> import javax.swing.*;</p><p> import javax.swing.table.*;</p><p> public class change_Duty extends View_Model </p><p><b> {</b></p><p> priva
123、te JLabel idLabel = new JLabel(" 員工編號(hào): ");</p><p> private JTextField idField = new JTextField(10);</p><p> private JLabel nameLabel = new JLabel(" 姓 名: ");</p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)----企業(yè)人事管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---企業(yè)人事管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)----企業(yè)人事管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---企業(yè)人事管理系統(tǒng)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 人事管理畢業(yè)設(shè)計(jì)---人事管理系統(tǒng)設(shè)計(jì)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)(論文)企業(yè)人事管理系統(tǒng)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)---企業(yè)人事管理系統(tǒng) (2)
- 企業(yè)人事管理畢業(yè)設(shè)計(jì)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)論文(企業(yè)人事管理系統(tǒng))
- vfp企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計(jì)3
- 人事管理系統(tǒng)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論