版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> ****工程學院</b></p><p><b> 課程設計報告</b></p><p><b> 企業(yè)人事管理系統(tǒng)</b></p><p> 課 程 計算機綜合應用課程設計</p><p> 姓 名 ***</
2、p><p> 院 (系) 計算機科學與工程學院 </p><p> 專業(yè)年級 計算機科學與技術084班</p><p> 學 號 ***</p><p> 指導教師 *** </p><p> 日 期 2011/12/29</p><p> ****
3、工程學院教務處制</p><p><b> 目 錄</b></p><p><b> 摘要- 3 -</b></p><p> 第1章 概述- 4 -</p><p> 1.1 課程設計的目的- 4 -</p><p> 1.2 課程設計的意義- 5 -&l
4、t;/p><p> 第2章 系統(tǒng)功能設計- 5 -</p><p> 2.1 系統(tǒng)需求分析- 5 -</p><p> 2.2 系統(tǒng)的概要設計- 7 -</p><p> 第3章 管理系統(tǒng)主界面設計開發(fā)- 18 -</p><p> 3.1 程序設計- 18 -</p><p>
5、 3.2功能界面設計- 18 -</p><p> 第4章子系統(tǒng)設計開發(fā)- 21 -</p><p> 4.1員工信息管理子系統(tǒng)頁面及代碼- 21 -</p><p> 4.2 職務信息管理子系統(tǒng)- 24 -</p><p> 4.3出勤信息管理子系統(tǒng)- 29 -</p><p> 4.4 工資
6、信息管理子系統(tǒng)- 31 -</p><p> 4.5 獎懲信息管理子系統(tǒng)- 34 -</p><p> 4.6 福利信息管理子系統(tǒng)- 36 -</p><p> 4.7 管理員界面- 39 -</p><p> 4.8 公司簡介界面- 44 -</p><p> 第5章 系統(tǒng)實施- 45 -<
7、;/p><p> 5.1系統(tǒng)和程序設計調試- 45 -</p><p> 5.2系統(tǒng)的不足及改進方案- 46 -</p><p> 第6章 結束語- 46 -</p><p> 6.1 工個人工作- 46 -</p><p> 參考文獻- 46 -</p><p><b&g
8、t; 摘要</b></p><p> 隨著現在計算機技術的不斷完善,以及現代經濟的不斷發(fā)展,傳統(tǒng)的管理技術不再滿足企業(yè)的需要,越來越多的企業(yè)注重計算機信息管理系統(tǒng),人事信息管理系統(tǒng)是典型的計算機信息管理系統(tǒng)之一,企業(yè)借助于它進行人力資源管理,達到事半功倍。隨著企業(yè)的雇傭人數的增加,有效地管理人員信息成為必然。人事信息管理系統(tǒng)的開發(fā)主要包括后臺數據庫的建立和維護,以及前臺程序開發(fā)兩個方面。本文分析了
9、人事信息管理系統(tǒng)的組成情況以及一些基本功能模塊,包括系統(tǒng)功能框架分析,系統(tǒng)開發(fā)的軟硬件環(huán)境分析,系統(tǒng)的數據庫邏輯設計分析,以及系統(tǒng)的數據流程分析,并且重點對系統(tǒng)的用戶界面開發(fā)和各個子系統(tǒng)開發(fā)作了詳細的介紹。系統(tǒng)主要利用Java語言和編成環(huán)境以及Access2003的主要功能進行設計開發(fā),在文中進行了詳細的介紹。該開發(fā)系統(tǒng)是中型至大型企業(yè)的人事信息管理系統(tǒng),它界面美觀,簡單實用,安全性高,能夠基本上滿足企業(yè)人事信息管理的需要,實現了企業(yè)員
10、工信息的整體化,系統(tǒng)化,規(guī)范化和自動化。</p><p> 關鍵字:信息管理系統(tǒng)、人事信息管理系統(tǒng),Java,Access2003</p><p><b> 第1章 概述</b></p><p> 1.1 課程設計的目的</p><p> 隨著現代經濟的高速發(fā)展,各種企業(yè)的不斷崛起,企業(yè)員工的不斷增加,企業(yè)在管理
11、方面對需求越來越大。伴隨著計算機的迅速發(fā)展和廣泛使用,企業(yè)人事信息管理轉向電子化成為必然。</p><p> 傳統(tǒng)的人事信息管理存在很大的不足:利用人進行信息的增減,容易導致信息的錯誤,而且管理的效率低下,導致資源的可利用性低,勞動力大,安全性也不夠,加上,隨著時間的遞增,信息量不斷增大,對信息的增加、刪除、檢索、查找就會存在很大的問題。因此,隨著企業(yè)的強大和發(fā)展,傳統(tǒng)的管理方式不再適應企業(yè)的需要。</p
12、><p> 應用計算機進行管理信息,有著其手工無法比擬的優(yōu)點。例如:存儲量大、修改方便、檢索快速、安全性高,使用壽命長、成本低、可靠性好等。這些優(yōu)點能夠極大地提高人事信息管理的效率,有助于企業(yè)的發(fā)展。</p><p> 1.2 課程設計的意義</p><p> 人事信息管理系統(tǒng)的開發(fā)需要就Java語言和數據庫兩方面的知識,因此設計一個實用性強的人事信息管理系統(tǒng),對
13、于我們進行課程設計方面知識的提高有很大的推動作用。</p><p> 人事信息管理系統(tǒng)的開發(fā)需要用到多方面的知識,包括數據庫的選用、數據庫的建立和維護、信息的存儲、管理界面的設計。這些對于設計者的知識水平有較高的要求。因此,如何規(guī)劃、設計和開發(fā)好這個人事信息管理系統(tǒng),對于提高我們的Java開發(fā)水平有極大的幫助。同時,在設計開發(fā)過程中,我們可以選用適當的數據庫和數據庫連接驅動程序,建立好合適的數據庫表格和設計好美
14、觀大方的管理界面。</p><p> 第2章 系統(tǒng)功能設計</p><p> 2.1 系統(tǒng)需求分析</p><p> 2.1.1 人事信息管理系統(tǒng)的客戶功能需求</p><p> 該開發(fā)系統(tǒng)的設計主要用于實現以下幾個功能:</p><p> (1) 人事信息管理系統(tǒng)主界面</p><p&
15、gt; 人事信息系統(tǒng)主界面主要包括系統(tǒng)設計,公司結構,員工管理,職務管理,出勤管理,工資管理,獎罰管理,福利管理和幫助等內容,可以進行各種信息的添加、查詢,刪除等操作。</p><p> (2) 員工信息管理子系統(tǒng)</p><p> 員工信息管理子系統(tǒng)主要是對所有員工的個人信息進行登記、刪除、檢索、查找,包括員工的編號,員工的性別,員工的姓名,員工的身份證號碼,員工的聯系電話、聯系方
16、式,員工的入公司時間,照片等記錄。并且還能夠刪除錯誤的員工個人記錄的信息。</p><p> (3) 職務信息管理子系統(tǒng)</p><p> 職務信息管理子系統(tǒng)主要是對所有員工的職務信息進行登記,包括了兩個部分的內容——職務管理和職務變更。</p><p> 職務管理包括員工的編號,員工的姓名以及員工的現任職務,并且能夠刪除錯誤的員工職務記錄的信息。</p
17、><p> 職務變更包括員工的編號,員工的姓名,員工的各種職務以及任職該職務的時間。并且能夠刪除錯誤的員工職務變更記錄的信息。</p><p> (4) 出勤信息管理子系統(tǒng)</p><p> 出勤信息管理子系統(tǒng)主要是對所有員工的出勤信息進行登記,包括了四個部分的內容——上班登記、下班登記、請假登記和加班登記。</p><p> 上班登記主
18、要是對所有員工的上班信息進行登記,包括員工的編號,員工的姓名,員工的上班時間和相應的備注信息,并且能夠刪除錯誤的員工上班時間記錄的信息。</p><p> 下班登記主要是對所有員工的下班信息經行登記,包括員工的編號,員工的姓名,員工的下班時間和相應的備注信息,并且能夠刪除錯誤的員工下班時間記錄的信息。。</p><p> 請假登記主要是對所有員工的請假信息進行登記,包括員工的編號,員工
19、的姓名,員工的請假日期,員工的請假時間,員工的請假原因和相應的備注信息,并能夠刪除錯誤的員工請假記錄的信息。</p><p> 加班登記主要是對所有員工的加班信息進行登記,包括員工的編號,員工的姓名,員工的加班日期,員工的加班時間,員工的加班薪資和相應的備注信息,并能夠刪除錯誤的員工加班記錄的信息。</p><p> (5) 工資信息管理子系統(tǒng)</p><p>
20、 工資信息管理子系統(tǒng)主要是對所有的員工的工資信息進行登記,包括了員工的編號,員工的姓名,員工的基本工資、補貼金、加班費、獎懲金,員工的總工資和相應的備注信息,并且能夠刪除錯誤的員工工資記錄的信息。</p><p> (6) 懲罰信息管理子系統(tǒng)</p><p> 懲罰信息管理子系統(tǒng)主要是對說有的員工的懲罰信息進行登記,包括了員工的編號,員工的姓名,員工的獎勵、懲罰,員工的懲罰說明和相應
21、的備注信息,并且能夠刪除錯誤的員工懲罰記錄的信息。</p><p> (7) 福利信息管理子系統(tǒng)</p><p> 福利信息管理子系統(tǒng)主要是對所有的員工的福利信息進行登記,包括員工的編號,員工的姓名,員工的養(yǎng)老保險金、失業(yè)保險金、工傷保險金,員工的福利總計和相應的備注信息,并且能夠刪除錯誤的員工福利記錄的信息。</p><p> 2.1.2系統(tǒng)開發(fā)和運行環(huán)境&
22、lt;/p><p> (1) 硬件配置及外設設備</p><p> 硬件平臺是指開發(fā)與運行所需要的硬件環(huán)境,主要包括計算機機型及硬件配置。由于本系統(tǒng)是一個MINI管理系統(tǒng),因此對計算機硬件的要求不是很高,成本較低,只要配備如表2-1所示的就可以。</p><p> 表2-1 計算機硬件配備要求表</p><p> (2)開發(fā)運行軟件環(huán)境&
23、lt;/p><p> 軟件平臺是指系統(tǒng)開發(fā)與運行的軟件環(huán)境。本系統(tǒng)在開發(fā)時選用的操作系統(tǒng)是穩(wěn)定性較強的Windows XP中文專業(yè)版,Java程序設計的開發(fā)環(huán)境是JDK 5.0,集成開發(fā)工具是JCreator專業(yè)版,數據庫的設計工具選用的Microsoft公司的Access 2003。 </p><p> Java語言是一種跨平臺、適合于分布式計算機環(huán)境的面向對象編程語言。具體來說,它具有
24、如下特性:簡單性、面向對象、分布式、解釋性、可靠、安全、平臺無關、可移植、多線程、動態(tài)性等。</p><p> Java的開發(fā)環(huán)境大體上分成兩種方式。一種方式是使用JDK(Java Developers Kits)工具集,這是一種命令行的方式。另一種方式是使用集成開發(fā)環(huán)境(Integrated Developing Environment,IDE)。</p><p> 采用JDK開發(fā)J
25、ava程序,能夠很快理解程序中各部分代碼之間的關系,有利于理解Java面向對象的設計思想。JDK的另一個顯著特點是隨著Java 版本的升級而升級。但它的缺點也是非常明顯的就是從事大規(guī)模企業(yè)級Java應用開發(fā)非常困難,不能進行復雜的Java軟件開發(fā),也不利于團體協同開發(fā)。</p><p> JCreator 專業(yè)版是一款適合于各個 Java 語言編程開發(fā)人員的IDE工具。 她為使用者提供了大量強勁的功能,例如:
26、項目管理、工程模板、代碼完成、調試接口、高亮語法編輯、使用向導以及完全可自定義的用戶界面。JCreator 具有無限撤銷、代碼縮進、自動類庫方法提示、安所選職能定位查閱JavaAPI文檔的功能,它支持JSP、Ant、CVS,其.小巧、易用、美觀,是Java初級程序員的理想IDE。 </p><p> Access2003 是一款Window環(huán)境下的數據庫管理軟件,是Office辦公套件中一個極為重要的組成部分,
27、是Microsoft公司于2003年推出的微機數據庫管理系統(tǒng),它不僅解決了以往的Acess中處理中文的麻煩,而且具有了新的優(yōu)點,在功能上做了加強。它具有界面友好、易學易用、開發(fā)簡單、接口靈活等特點,是典型的新一代桌面關系數據庫管理系統(tǒng)。利用它可以方便的實現對信息保存、維護、查詢、統(tǒng)計等,而且它可以十分方便的與Office其他組件交流數據。</p><p> 2.2 系統(tǒng)的概要設計</p><
28、p> 2.1.1 系統(tǒng)的功能框架分析</p><p> 構建一個人事信息管理系統(tǒng),該系統(tǒng)主要由六個子系統(tǒng)組成,分別包括個人信息管理子系統(tǒng),職務信息管理子系統(tǒng),出勤信息管理子系統(tǒng),工資信息管理子系統(tǒng),懲罰信息管理子系統(tǒng)以及福利信息管理子系統(tǒng)。同時,為了增強系統(tǒng)的安全性,首先需要通過用戶權限認證,只有在登陸界面上輸入正確的用戶名和密碼,才能的功能路本系統(tǒng)進行操作。通過了系統(tǒng)功能框架的分析,得到了如圖2-1的
29、系統(tǒng)功能模塊。</p><p> 圖2-1系統(tǒng)功能框架</p><p> 下面簡單說明一下各個框架的功能:</p><p> (1)系統(tǒng)設置模塊:本應用模塊的主要功能是進行管理員設置、返回主頁面、以及系統(tǒng)的安全退出。</p><p> (2)公司結構模塊:本應用模塊的主要功能是進行公司結構的說明,相關部門的管理以及職位的調整。<
30、/p><p> (3)員工管理模塊:本應用模塊的主要功能是實現對員工信息的增加、信息的修改、信息的查詢以及信息的刪除等操作。</p><p> (4)職務管理模塊:本應用模塊的主要功能是實現對員工現任職務、員工植物變更記錄的管理,以及職務的設置。</p><p> (5)出勤管理模塊:本應用模塊的主要功能是實現對員工上下班時間登記,員工請假信息,員工加班信息記錄的
31、管理。</p><p> (6)工資管理模塊:本應用模塊的主要功能是實現對員工工資信息的管理,包括工資的查詢和調整。</p><p> (7)獎懲管理模塊:本應用模塊的主要功能是實現對員工的獎懲信息的管理,包括獎懲的查詢和添加。</p><p> (8)福利管理模塊:本應用模塊的主要功能是實現對員工福利信息的管理,包括福利的查詢和調整。</p>
32、<p> (9)幫助模塊:本應用模塊的主要功能是實現系統(tǒng)幫助,關于系統(tǒng)。</p><p> 2.2.2 系統(tǒng)的數據庫邏輯設計分析</p><p> 數據庫設計是在選定的數據庫管理系統(tǒng)基礎上建立數據庫的過程。數據庫設計除了用戶分析外,還包括概念結構設計、邏輯結構設計和物理結構設計等三個階段。數據庫系統(tǒng)已經成為一門獨立的學科,所以,當我們把數據庫設計原理應用到MIS開發(fā)中,數據
33、庫設計的幾個步驟與系統(tǒng)開發(fā)的各個階段相對應,且融為一體,它們的對應關系如圖2-2所示。</p><p> 圖2-2數據庫設計與系統(tǒng)開發(fā)階段對應關系圖</p><p> (1) 概念模型E-R圖</p><p> 這一設計階段是在邏輯關系分析的基礎上,設計出能夠滿足用戶需求的各種實體,以及他們之間的關系,為后面的數據庫邏輯設計打下基礎。本文根據上面的分析規(guī)劃出的
34、實體有部門設計、員工信息、職務管理、職務變更、上班登記、下班登記、員工請假信息、員工加班信息、員工獎懲信息、員工工資信息、員工福利信息、管理員信息等。實體與實體之間的關系E-R圖如圖2-3至圖2-14所示。</p><p> 圖2-3 部門設計實體E-R 圖</p><p> 圖2-4 員工信息實體E-R圖</p><p> 圖2-5 職務管理實體E-R圖&l
35、t;/p><p> 圖2-6 職務變更實體E-R圖</p><p> 圖2-7 上班登記實體E-R圖</p><p> 圖2-8 下班登記實體E-R圖</p><p> 圖2-9 員工請假實體E-R圖</p><p> 圖2-10 員工加班實體E-R圖</p><p> 圖2-11 員工
36、獎懲實體E-R圖</p><p> 圖2-12 員工工資實體E-R圖</p><p> 圖2-13 員工福實體E-R圖</p><p> 圖2-14 管理員信息實體E-R 圖</p><p><b> (2) 表結構分析</b></p><p> 根據本系統(tǒng)功能需求,數據庫采用Micro
37、soft公司的Access 2003,它完全可以適合工作需求,并且它所支持的數據類型十分豐富,維護簡單,費用比較低,開發(fā)人員技術要求不是很高。根據模塊的設計,以及規(guī)范化的設計要求,為滿足系統(tǒng)需要,本系統(tǒng)共建立12個表分別是:部門設計表,雇員信息表,職務管理表,職務變更表,上班登記表,下班登記表,員工請假信息表,員工加班信息表,員工獎罰信息表,員工工資表,員工福利表,管理員信息表。各個數據表的結構如表2-2至表2-13所示。</p&
38、gt;<p> 表2-2 部門設計表(Department_Infor)</p><p> 表2-3員工信息表(employee_Infor)</p><p> 表2-4 職務管理表(Duty_Infor)</p><p> 表2-5 職務變更表(Duty_Change_Infor)</p><p> 表2-6 上班登
39、記表(Start_Register_Infor)</p><p> 表2-7 下班登記表(Finish_Register_Infor)</p><p> 表2-8 員工請假信息表(On_Leave_Infor)</p><p> 表2-9 員工加班信息表(Over_Time_Infor)</p><p> 表2-10 員工獎懲信息表(
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) 數據字典分析 </p><p>
41、 數據流程圖描述了系統(tǒng)的分解,但沒有對圖中各成分進行說明,數據字典(Data Dictionary,DD)就是為數據流程圖的每個數據流文件加工,以及組成數據流或文件的數據項作出說明,具體見表2-14至表2-18</p><p> 表 2-14 員工管理的數據字典</p><p> 表2-15 職務管理的數據字典</p><p> 表2-16 出勤管理的數據字典
42、</p><p> 表2-17 工資信息查詢的數據字典</p><p> 表2-18 福利信息查詢的數據字典</p><p> 2.2.3數據流程分析</p><p> 總的系統(tǒng)流程圖如圖2-15所示:</p><p> 圖2-15 總的系統(tǒng)流程</p><p> ② 業(yè)務流程圖(T
43、ransaction Flow Diagram,TFD)是一種描述系統(tǒng)內各單位、人員之間業(yè)務關系、作業(yè)順序和管理信息流向的圖表,利用它可以幫助分析人員找出業(yè)務流程中的不合理的流向。通過前面對企業(yè)倉庫管理情況進行的一系列調研與分析,得到如圖2-16所示的業(yè)務流程圖。</p><p> 圖2-16 業(yè)務流程圖</p><p> 人事管理系統(tǒng)的業(yè)務處理過程如下:企業(yè)認識管理系統(tǒng)記錄基本的信息
44、并能對系統(tǒng)的的已有信息進行查詢;信息添加記錄中對基本信息添加;信息輸出記錄對基本信息并能進行查詢。</p><p> ?、?根據業(yè)務流程圖分析,對于其中的數據流向,處理及存儲進行逐層分解,可以得到數據流程圖(Data Flow Diagram,DFD)。數據流程圖是分層次的,繪制是采取自頂向下逐層分解的方法。頂層數據流程圖只有一張,它說明了系統(tǒng)總的處理功能、輸入和輸出。下一步是對頂層數據流程圖中的“處理”進行分解
45、,也就是對第一層數據流程圖的再分解。數據流程圖如圖3-3所示。</p><p> 圖3-3 數據流程圖</p><p> 第3章 管理系統(tǒng)主界面設計開發(fā)</p><p><b> 3.1 程序設計</b></p><p> 3.1.1程序設計思想與原則</p><p> 編寫程序應符合
46、軟件工程化思想。應用軟件的編程工作量極大,而且要經常維護、修改。如果編寫程序不遵守正確的規(guī)律,就會給系統(tǒng)的開發(fā)維護帶來不可逾越的障礙。軟件工程的思想即利用工程化的方法進行軟件開發(fā),通過建立軟件工程環(huán)境來提高軟件開發(fā)效率。</p><p> 自頂向下的模塊化方法描述了大程序設計的原則,在具體編程中,則應采用結構化程序設計方法。這種方法指導人們用良好的思想方法卻設計程序,其特點是采用順序結構、循環(huán)結構和選擇結構三種
47、基本邏輯結構來編寫程序。</p><p> 3.2功能界面設計 </p><p> 雖說程序設計最核心的地方是程序的功能,但程序的界面設計是不可忽視的,它直接影響到程序的易用性。尤其在Windows時代,一個良好的應用界面會給你的程序錦上添花,甚至有畫龍點睛之韻味。一般來說,在完成核心算法的編制后,就要開始精心設計應用界面了。</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)主頁面代碼為:</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)設置 "),</p><p> new JMenu(" 公司結構 "),new JMenu(" 員工管理 "),</p><p> new JMenu(" 職務管理 "), new JMenu(
62、" 出勤情況 "),</p><p> new JMenu(" 工資管理 "), new JMenu(" 獎罰管理 "), </p><p> new JMenu(" 福利管理 "), new JMenu(" 幫助 ")}; </p><p>
63、; final JMenuItem[][] _MenuItem={{new JMenuItem("管理員設置"),new JMenuItem("返回主界面"),new JMenuItem("安全退出")}, {new JMenuItem("公司結構"),new JMenuItem("部門管理"),new JMenuItem("
64、職位調整")},{new JMenuItem("增加員工"),new JMenuItem("信息修改"),new JMenuItem("信息查詢"),new JMenuItem("減少員工")},{new JMenuItem("現任職務查詢"),new JMenuItem("職務變更查詢"),new JMen
65、uItem("職務變更")}, {new JMenuItem("上下班登記"),new JMenuItem("請假管理"),new JMenuItem("加班管理")},{new JMenuItem("工資查詢"),new JMenuItem("工資調整")},{new JMenuItem("獎罰查詢&quo
66、t;),new JMenuItem("添加獎罰")},{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)主頁
79、面</p><p> 第4章子系統(tǒng)設計開發(fā)</p><p> 4.1員工信息管理子系統(tǒng)頁面及代碼</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(" 員工編號: ");</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(" 身份證號碼: ");</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; 聯系電話: ");</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 職務信息管理子系統(tǒng)</p><p> 圖 4-2 現任職務查
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(" 員工編號: ");</p><p> private JTextField idField = new JTextField(10);</p><p> private JLabel nameLabel = new JLabel(" 姓 名: ");</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設計----企業(yè)人事管理系統(tǒng)
- 畢業(yè)設計---企業(yè)人事管理系統(tǒng)
- 畢業(yè)設計----企業(yè)人事管理系統(tǒng)
- 畢業(yè)設計---企業(yè)人事管理系統(tǒng)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計
- 畢業(yè)設計----企業(yè)人事管理系統(tǒng)畢業(yè)設計
- 人事管理畢業(yè)設計---人事管理系統(tǒng)設計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計論文
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計論文
- 畢業(yè)設計(論文)企業(yè)人事管理系統(tǒng)
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計論文
- 畢業(yè)設計---企業(yè)人事管理系統(tǒng) (2)
- 企業(yè)人事管理畢業(yè)設計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計 (2)
- 畢業(yè)設計論文(企業(yè)人事管理系統(tǒng))
- vfp企業(yè)人事管理系統(tǒng)畢業(yè)設計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設計3
- 人事管理系統(tǒng)畢業(yè)設計
評論
0/150
提交評論