人事档案管理系统课程设计报告.docx

上传人:b****4 文档编号:24788618 上传时间:2023-06-01 格式:DOCX 页数:33 大小:781.67KB
下载 相关 举报
人事档案管理系统课程设计报告.docx_第1页
第1页 / 共33页
人事档案管理系统课程设计报告.docx_第2页
第2页 / 共33页
人事档案管理系统课程设计报告.docx_第3页
第3页 / 共33页
人事档案管理系统课程设计报告.docx_第4页
第4页 / 共33页
人事档案管理系统课程设计报告.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

人事档案管理系统课程设计报告.docx

《人事档案管理系统课程设计报告.docx》由会员分享,可在线阅读,更多相关《人事档案管理系统课程设计报告.docx(33页珍藏版)》请在冰豆网上搜索。

人事档案管理系统课程设计报告.docx

人事档案管理系统课程设计报告

 

沈阳航空航天大学

 

课程设计报告

 

课程设计名称:

软件综合课程设计

课程设计题目:

人事档案管理系统

 

院(系):

计算机学院

专业:

班级:

学号:

姓名:

指导教师:

完成日期:

 

1系统分析

1.1需求分析

伴随着企业人事管理系统化的日益完善,企业人事管理系统在企业管理中越来越受到企业管理者的青睐。

企业人事管理系统的功能全面、操作简单,可以快速地为员工建立电子档案,这样做不但便于修改、保存和查看,而且实现了无纸化存档,为企业节省了大量资金和空间。

通过企业人事管理系统,还可以实现对企业员工的个人信息管理、奖惩管理、培训管理、待遇管理和相关信息查询。

1.2编程技术简介

本次课设我主要使用的软件是NetBeansIDE7.1.3和NavicatforMySQL,语言则以Java为主。

NetBeansIDE7.1.3:

NetBeans是开源软件开发集成环境,是一个开放框架,可扩展的开发平台,可以用于Java、C/C++,PHP等语言的开发,本身是一个开发平台,可以通过扩展插件来扩展功能。

在NetBeansPlatform平台中,应用软体是用一系列的软体模组(ModularSoftwareComponents)建构出来。

而这些模组是一个jar档(JavaArchiveFile)它包含了一组Java程式的类别而它们实作全依据依NetBeans定义了的公开界面以及一系列用来区分不同模组的定义描述档(ManifestFile)。

有赖于模组化带来的好处,用模组来建构的应用程式可只要加上新的模组就能进一步扩充。

由于模组可以独立地进行开发,所以由NetBeans平台开发出来的应用程式就能利用着第三方软件,非常容易及有效率地进行扩充。

NavicatforMySQL:

NavicatforMySQL[1]是一款强大的MySQL数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。

NavicatforMySQL基于Windows平台,为MySQL量身订作,提供类似于MySQL的用管理界面工具。

此解决方案的出现,将解放PHP、J2EE等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。

NavicatforMySQL使用了极好的图形用户界面(GUI),可以用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。

用户可完全控制MySQL数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库转移到另一个数据库中(LocaltoRemote、RemotetoRemote、RemotetoLocal),进行档案备份。

NavicatforMySQL支援Unicode,以及本地或远程MySQL服务器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行SQLqueries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援CSV,TXT,DBF和XML档案种类)等。

软件与任何MySQL5.0.x伺服器版本兼容,支援Triggers,以及BINARYVARBINARY/BIT数据种类等的规范。

Java语言:

Java编程语言的风格十分接近C、C++语言。

Java是一个纯粹的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心。

Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。

 

2系统设计

2.1系统模块设计

企业人事管理系统主要包括系统管理信息管理和信息查询三大功能模块用来提供对企业员工的信息管理和查询以及对相关部门的管理,还包括用户的管理。

根据企业对人事管理的要求,本系统需要实现以下目标:

(1)操作简单方便、界面简洁大方。

(2)方便快捷的人员信息管理。

(3)简单实用的奖惩管理。

(4)简单实用的培训管理。

针对企业中不同的待遇标准,实现待遇薪酬管理。

企业人事管理系统的功能结构如图2.1所示

系统管理

信息管理

信息查询

帮助

关于

密码修改

重新等录

添加删除用户

退出系统

员工信息管理

培训信息管理

奖惩信息管理

薪酬信息管理

基本信息管理

部门信息管理

部门信息查询

员工信息查询

基本信息查询

培训信息查询

奖惩信息查询

薪酬信息查询

企业人事管理系统

 

图2.1企业人事管理系统功能模块图

2.2系统预览

企业人事管理系统由多个界面组成,下面仅列出几个典型界面,其他界面效果可参见源程序。

企业人事管理系统的主体界面效果如图2.2所示。

图2.2企业人事管理系统的主体界面

员工信息界面效果如图2.3所示。

图2.3员工信息界面

员工信息查询界面效果如图2.4所示。

图2.4员工信息查询界面

员工薪酬信息管理界面效果如图2.5所示。

图2.5薪酬信息管理界面

2.3主流程图

进入网站时,先输入用户名和密码验证登录,验证成功后,再选择与需求相应的页面,按要求输入相应的信息,页面会自动判断以提供满足用户要求的信息。

如果验证失败,则需要用户添加注册信息。

如图2.6所示。

登录首页

开始

结束

输入用户名,密码

房产出租,出售

房源出租登记

N

房产出售登记

出租

出售

房产信息上传成功

Y

用户注册

Response.Redirect(MM_redirectLoginSuccess)

图2.6系统主流程图

2.4.1数据库设计

企业人事管理系统的需求主要包括对人员信息的管理和查询,其中包括对人员个人信息职位部门的查询添加修改删除;人事奖惩培训信息的管理和人员薪酬信息的管理。

2.4.2数据库概念设计

数据库设计是系统设计过程中的重要组成部分,它是通过管理系统的整体需求而制定的,数据库的好坏直接影响到系统的后期开发。

下面对本系统中具有代表性的数据库设计进行详细说明。

在开发企业人事管理系统时,最重要的是人员信息。

人员信息表实体属性图如图2.7所示。

 

图2.7人员信息表实体属性图

本系统还提供用户信息管理和部门信息管理,下面给出用户信息表和部门信息表的实体属性图如图2.8和2.9所示。

 

图2.8用户表实体属性图图2.9部门表实体属性图

本系统同时也提供培训信息管理和奖惩信息管理,下面给出培训信息表和奖惩信息表的实体属性图如图2.10和2.11所示

 

图2.10信息表实体属性图图2.11奖惩表实体属性图

系统也提供了薪酬信息管理,下面给出薪酬信息表的实体属性图如图2.14所示。

薪酬

编号

姓名

基本工资

奖金

福利

计算方式

实际工资

 

图2.12薪酬信息表实体属性图

2.4.3数据库逻辑设计

在MySQL数据库中,创建名为xiezhenghuip的数据库。

然后在数据库中根据数据表的E-R图创建数据表。

(1)userinformation的结构如表2.1所示。

表2.1userinformation表

字段名

数据类型

长度

是否允许空值

UserName

Varchar

20

Upassword

Varchar

20

uLimit

Int

4

Bak

Varchar

100

(2)employeeinformation的结构如表2.2所示。

表2.2employeeinformation

字段名

数据类型

长度

是否允许空值

E_Number

Int

一五

E_Name

varchar

20

E_Sex

varchar

4

E_BornDate

varchar

10

E_Marriage

varchar

10

E_PoliticsVisage

varchar

20

E_SchoolAge

varchar

20

E_EnterDate

varchar

10

E_InDueFormDate

varchar

10

E_Department

varchar

20

E_Headship

varchar

20

E_Estate

varchar

20

E_DepartureDate

varchar

10

E_Remark

varchar

100

(3)departmentinformation的结构如表2.3所示。

表2.3departmentinformation

字段名

数据类型

长度

是否允许空值

D_Number

Int

一五

D_Name

Varchar

20

D_Count

Varchar

10

(4)encouragementpunishinformation的结构如表2.4所示。

表2.4encouragementpunishinformation

字段名

数据类型

长度

是否允许空值

EP_Number

Int

一五

EP_Name

varchar

20

EP_Date

varchar

10

EP_Address

varchar

50

EP_Causation

varchar

100

EP_Remark

varchar

一五0

(5)traininformation的结构如表2.5所示。

表2.5traininformation

字段名

数据类型

长度

是否允许空值

T_Number

Int

一五

T_Content

varchar

50

T_Name

varchar

20

T_Date

varchar

10

T_Money

varchar

10

(6)wageinformation的结构如表2.6所示

表2.6wageinformation

字段名

数据类型

长度

是否允许空值

W_Number

Int

一五

W_Name

varchar

20

W_BasicWage

Int

10

W_Boon

varchar

20

W_Bonus

Int

10

W_CountMethod

varchar

20

W_FactWage

Int

10

3具体设计

3.1系统登录界面设计

系统用户登录窗体主要用来验证用户的登录信息,完成用户的登录功能,该模块的运行结果如图3.1所示。

图3.1用户登录窗体

登陆系统是验证用户是否可以使用此系统,如果输入的用户名和密码正确,选择身份正确,才可以验证成功,登录此系统进行使用,否则,信息不正确或者身份不争取,都不可以进入此系统。

如图3.2所示

登陆界面

输入用户名,密码,身份

主界面

N

开始

验证信息成功

结束

登录失败

图3.2登录系统流程图

3.2系统主体窗体设计

主窗体是软件系统的一个重要组成部分,是提供人机交互的一个必不可少的操作平台。

通过主窗体,用户可以打开与系统相关的各个子操作模块,完成对软件的操作和使用;另外通过主窗体,用户还可以快速掌握本系统的基本功能。

首先通过菜单栏可以打开本系统所有的子模块,菜单栏的效果如图3.3所示。

图3.3菜单栏

部分实现码:

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

lp1.setFont(newjava.awt.Font("新宋体",1,一八));//NOI一八N

lp1.setText("欢迎使用企业人事管理系统!

");

javax.swing.GroupLayoutpLayout=newjavax.swing.GroupLayout(p);

p.setLayout(pLayout);

pLayout.setHorizontalGroup(

jButton5.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);

jButton5.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);

jButton5.addActionListener(newjava.awt.event.ActionListener(){

publicvoidactionPerformed(java.awt.event.ActionEventevt){

jButton5ActionPerformed(evt);

}

});

jToolBar1.add(jButton5);

systemM.setText("系统管理");

password.setText("密码修改");

password.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

passwordMouseClicked(evt);

}

});

password.addActionListener(newjava.awt.event.ActionListener(){

publicvoidactionPerformed(java.awt.event.ActionEventevt){

passwordActionPerformed(evt);

}

});

systemM.add(password);

land.setText("重新登录");

land.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

landMouseClicked(evt);

}

});

systemM.add(land);

addDelete.setText("添加/删除用户");

addDelete.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

addDeleteMouseClicked(evt);

}

});

systemM.add(addDelete);

exit.setText("退出系统");

exit.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

exitMouseClicked(evt);

}

});

exit.addActionListener(newjava.awt.event.ActionListener(){

publicvoidactionPerformed(java.awt.event.ActionEventevt){

exitActionPerformed(evt);

}

});

systemM.add(exit);

jMenuBar1.add(systemM);

manageM.setText("信息管理");

employeeMM.setText("员工信息管理");

employeeM.setText("基本信息管理");

employeeM.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

employeeMMouseClicked(evt);

}

});

employeeMM.add(employeeM);

trainM.setText("培训信息管理");

trainM.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

trainMMouseClicked(evt);

}

});

employeeMM.add(trainM);

encouragementPunishM.setText("奖罚信息管理");

encouragementPunishM.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

encouragementPunishMMouseClicked(evt);

}

});

employeeMM.add(encouragementPunishM);

wageM.setText("薪资信息管理");

wageM.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

wageMMouseClicked(evt);

}

});

employeeMM.add(wageM);

manageM.add(employeeMM);

departmentM.setText("部门信息管理");

departmentM.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

departmentMMouseClicked(evt);

}

});

manageM.add(departmentM);

jMenuBar1.add(manageM);

selectM.setText("信息查询");

employeeSM.setText("员工信息查询");

employeeS.setText("基本信息查询");

employeeS.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

employeeSMouseClicked(evt);

}

});

employeeSM.add(employeeS);

trainS.setText("培训信息查询");

trainS.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

trainSMouseClicked(evt);

}

});

employeeSM.add(trainS);

encouragementPunishS.setText("奖罚信息查询");

encouragementPunishS.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

encouragementPunishSMouseClicked(evt);

}

});

employeeSM.add(encouragementPunishS);

wageS.setText("薪资信息查询");

wageS.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

wageSMouseClicked(evt);

}

});

employeeSM.add(wageS);

selectM.add(employeeSM);

departmentS.setText("部门信息查询");

departmentS.addMouseListener(newjava.awt.event.MouseAdapter(){

publicvoidmouseClicked(java.awt.event.MouseEventevt){

departmentSMouseClicked(evt);

}

});

selectM.add(departmentS);

jMenuBar1.add(selectM);

helpM.setText("帮助");

jMenuBar1.add(helpM);

aboutM.setText("关于");

jMenuBar1.add(aboutM);

setJMenuBar(jMenuBar1);

工具栏的设计,为了方便用户使用系统,在工具栏中为常用的系统子模块提供了快捷按钮,用户可以快速地进入系统中常用的子模块。

工具栏的效果如图3.4所示。

图3.4工具栏

部分实现代码:

pLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(pLayout.createSequentialGroup()

.addComponent(lp1,javax.swing.GroupLayout.PREFERRED_SIZE,632,javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(0,0,Short.MAX_VALUE))

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1