完整版企业人事管理系统人事工资系统毕业设计.docx
《完整版企业人事管理系统人事工资系统毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版企业人事管理系统人事工资系统毕业设计.docx(29页珍藏版)》请在冰豆网上搜索。
完整版企业人事管理系统人事工资系统毕业设计
以下文档格式全部为word格式,下载后您可以任意修改编辑。
设计题目:
企业人事管理系统
系别:
班级:
姓 名:
指导教师:
XXX
20XX年X月X日
摘要
在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。
考虑到当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。
因此根据部分企业提供的需求,设计此企业人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。
本文详细介绍了企业人事管理系统的功能需求,系统设计和具体实现。
并简要介绍了系统开发采用的过程方法。
关键词 企业人事管理系统;CS;员工信息;数据
第1章绪论
1.1应用的目的与意义
人的管理是一切管理工作的核心。
员工代表一个企业的形象,因而人事管理机制设计的好坏,直接影响一个企业的成败。
员工的档案管理是企业人事管理的基础,在企业员工普遍流失的今天,一个准确而及时的人事管理系统,有利于人事部门对员工流动进行分析、编制,为企业所需人员提供了保障。
人力资源部那些重复的,事务性的工作交给HRP(HumanResourcePlanning,人力资源管理系统)来解决,可以省去用户以往人力资源管理工作的繁琐、枯燥;用领先的人力资源管理理念,把人力资源管理的作业流程控制和战略规划设计巧妙地集合于一体;系统重点涉及到人力资源管理工作中的薪资、培训、奖惩、调动、基本信息、用户管理以及用户切换等方面,并有综合的系统安全设置、报表综合管理模块。
可以很好地为用户的人力资源管理部门在对员工的成本管理、知识管理、绩效管理等综合管理给予帮助。
以每个月中所发工资为例,其中包括人事信息变动、奖惩对本月的薪资计算都有影响,为了及时的计算发放工资往往要提前一个星期花费大量时间,加班加点才能及时完成,而这样做无论从工作效率还是准确度方面,都不允许,而且还浪费大量的人力财力。
如果改用HRP管理做到高效、高精度,还可以减少管理时带来的一些繁琐的工作,节约管理带来的开支。
2.2.1数据库的基本概念
SQL(StructuredQueryLanguge)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
SQL语言包括:
数据定义语言、数据操作语言、数据查询语言、数据控制语言四部分。
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所有具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的接口。
它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能。
2.2.2本系统中数据库的访问
本系统的数据库访问过程实现主要通过六个步骤:
(1)建立数据库表,表中存储相应数据。
(2)使用SqlConnection或OleDbConnection类建立数据库应用程序和数据库连接对象。
(3)从数据库指定表中取出感兴趣的记录。
(4)从数据库指定表中取出的感兴趣记录组成一个新表,填充到DataSet类对象中,可填充多个表,并可在DataSet类对象中指定表和表的关系。
取出所感兴趣的记录后,断开数据库连接。
(5)用支持数据库绑定控件(例如DataGrid控件)显示DataSet类对象中的数据,供用户浏览、查询和修改。
(6)及时更新DataSet中内容,并把修改的数据存回源数据库。
本系统中数据库连接部分的具体实现代码如下:
StringMySQLConnectionString=globl:
:
MyPersonnel.Properties.Settings.Defult.MyPersonnelConnectionString;
Strings=”DTBSE=Northwind;SERVER=loclhost;UID=s;PWD=;”
SqlConnectionMyConnection=newSqlConnection(MySQLConnectionString);
MyConnection.Open();
第3章系统分析
3.1需求分析
本系统主要是针对一般企事业单位设计,基于其他企业人工人事管理的不足,本系统完全可以取代人力更好地完成了数据的添加、修改、删除操作。
3.2系统概述
本系统主要针对中小企业的人事管理人员和企业管理人员设计,以帮助其实现企业人事管理的信息化和自动化。
通过本系统,人事管理人员可以实现员工档案管理,员工离职管理,员工薪资的录入、发放和查询管理,员工考勤信息的添加、查询等操作。
由于公司管理人员需要对企业人事信息进行系统的了解,本系统采用了模糊查询的功能,企业管理人员可以清晰地了解部门人员分配、员工年龄、文化程度、婚姻状况等信息。
通过对员工薪金信息的修改,实现工资的发放。
最终实现办公流程的系统化。
在统计方面使用了数据库这样增强了员工信息的安全性,可以实现备份还原功能。
3.3系统目标
根据企业对人事管理的要求,制定企业人事管理系统具体目标如下:
(1)员工基本档案、员工简历、员工家庭成员信息等相关界面的添加、修改、删除操作。
(2)全方位的模糊查询功能的实现。
(3)按相应条件对员工的考勤、工资等进行统计。
(4)员工考勤信息的数字化显示,以方便企业对员工进行年终考核。
(4)界面清晰美观,逻辑性强,操作简单易懂。
(5)系统运行良好,兼容性强。
(6)拥有数据备份还原功能,增强了数据的安全性。
3.4可行性分析
3.4.1经济可行性分析
完成本系统需要硬件和软件两方面的支持。
硬件方面需要开发服务器一台,个人电脑在此可作为服务器使用;软件方面,由于本系统属于小型管理系统,利用VisualStudio2008和SQLServer2008数据库开发工具即可实现,经济成本低,因此在经济上是可行的。
3.4.2技术可行性分析
本系统采用目前被广泛使用的C#开发技术、SQLServer2008数据库技术和WindowsServer2003操作系统进行开发设计。
首先,c#是微软为.NET量身定做的开发语言集合了CC++和VB的双重优点,具有简易型、灵活性、移植性强等特点,同时使用VisualStudio2008作为开发平台,对于开发中小系统来说,这种开发环境是完全没有问题的。
其次,本系统采用SQLServer2008数据库。
到目前为止,SQL数据库仍然是使用最广泛的一种数据库语言,因此本系统采用SQLServer2008,在系统安全性、可用性和高稳定性上又有了很大的提升。
再次,本系统的操作环境采用Windows下的Server2003操作系统,WindowsServer2003是由微软公司推出的服务器操作系统,可以为本系统的开发提供良好的稳定性。
最后,考虑到三者兼容的问题,由于三者都属于微软公司的产品,所以兼容性上不存在问题。
硬件方面,采用标准的服务器硬件配置,能满足本系统的要求。
综上所述,本系统的技术可行性不存在问题。
3.4.3管理可行性分析
本系统的主要应用对象为企业的人事管理人员和企业的高层管理者,由于本系统界面简洁、结构清晰、操作简单,所以在对相应使用人员进行培训的情况下是可以顺利使用本系统的。
3.5系统逻辑结构图及业务流程图设计
3.5.1系统逻辑结构
系统逻辑结构图能够清晰地反映出本系统的结构功能和模块分布,是系统对外介绍的良好窗口。
用户也可以一目了然地了解系统的整体逻辑结构,加深对系统功能的理解。
本系统的逻辑结构图如图3-1所示:
图3-1企业人事管理系统逻辑结构图3.5.2数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
数据字典的作用也正是在软件分析和设计的过程中给人提供了数据的描述信息。
本系统的数据字典如下表所示。
1.部门信息
序号
数据项
数据类型
数据长度
备注
1
部门编号
字符型
2
主键
2
部门名称
字符型
20
2.员工基本信息
序号
数据项
数据类型
数据长度
备注
1
员工号
字符型
5
主键
2
姓名
字符型
8
3
性别
字符型
2
男女
4
出生日期
日期型
8
5
联系电话
字符型
20
6
文化程度
字符型
20
7
毕业院校
字符型
30
8
专业
字符型
20
9
政治面貌
字符型
20
10
民族
字符型
20
11
爱好特长
字符型
100
12
所在部门
字符型
2
外键
13
职位
字符型
20
14
职称
字符型
20
15
状态
字符型
8
在职离职
16
照片
图像型
16
17
备注
字符型
200
3.员工奖惩信息
序号
数据项
数据类型
数据长度
备注
1
奖惩流水号
数字型
8
主键
2
员工号
字符型
5
外键
3
奖惩类型
字符型
8
奖励惩罚
4
奖惩事项
字符型
200
5
奖惩情况
字符型
100
6
奖惩时间
日期型
8
4.员工工作经历信息
序号
数据项
数据类型
数据长度
备注
1
流水号
数字型
8
主键
2
员工号
字符型
5
外键
3
起始时间
日期型
8
4
终止时间
日期型
8
5
工作单位
字符型
50
6
任何职位
字符型
20
7
职称
字符型
20
8
工作内容
字符型
100
9
证明人
字符型
8
5.员工培训进修信息
序号
数据项
数据类型
数据长度
备注
1
流水号
数字型
8
主键
2
员工号
字符型
5
外键
3
起始时间
日期型
8
4
终止时间
日期型
8
5
培训单位
字符型
50
6
培训内容
字符型
20
7
获得证书
字符型
100
8
备注
字符型
200
6.员工调岗信息
序号
数据项
数据类型
数据长度
备注
1
流水号
数字型
8
主键
2
员工号
字符型
5
外键
3
原部门
字符型
2
4
原职位
字符型
20
5
现部门
字符型
2
6
现职位
字符型
20
7
调岗时间
日期型
8
8
调岗原因
字符型
200
7.员工离退职信息
序号
数据项
数据类型
数据长度
备注
1
流水号
数字型
8
主键
2
员工号
字符型
5
外键
3
原部门
字符型
2
4
原职位
字符型
20
5
离职类型
字符型
8
退休休假辞职
6
离职原因
字符型
200
7
离职时间
日期型
8
8.员工薪资信息
序号
数据项
数据类型
数据长度
备注
1
员工号
字符型
5
主键外键
2
基本工资
货币型
8
3
社保基金
货币型
8
4
奖金福利
货币型
8
5
罚款金额
货币型
8
6
其它薪金
货币型
8
9.薪资发放信息
序号
数据项
数据类型
数据长度
备注
1
发放年月
字符型
6
主键
2
员工号
字符型
5
主键,外键
3
基本薪资
货币型
8
4
本月奖金
货币型
8
5
加班补助
货币型
8
6
本月扣款
货币型
8
7
个人所得税
货币型
8
8
备注
文本型
200
10.系统管理员信息
序号
数据项
数据类型
数据长度
备注
1
帐号
字符型
16
主键
2
密码
字符型
16
3
姓名
字符型
8
4
性别
字符型
2
第4章系统数据库设计
4.1数据库概念结构设计
企业人事管理系统的数据库主要用来记录一个企业所有员工的基本信息及考勤、薪资等信息等数据,数据量由企业的员工数量多少决定。
本系统的数据库命名为PersonnelManagement,共用10张数据表来存储相应信息。
数据库概念结构设计作为系统开发的重要组成部分,是根据管理系统的相应需求制定的,数据库的优劣直接影响到系统的后期开发。
本系统中,为了保证系统的安全性,在登录系统的时候用户需要输入正确的用户名和密码,并且为了安全考虑用户的登陆会记录在数据库。
因此,需要一个数据库表用来记录用户的用户名和密码。
登录表的实体E-R图如图4-1所示:
图4-1登录表的实体E-R图
在企业人事管理系统中,员工信息表属于其中最重要的一个表,在这个表中记录了员工的基本信息,因此表中涉及的员工信息字段太多,本实体E-R图只给出了部分字段。
本系统的员工基本信息表E-R图如图4-2所示:
图4-2员工基本信息实体E-R图
在企业中,员工受到奖惩是必不可少的。
在数据库设计中,加入了一个员工奖惩表,以便对员工的奖惩信息进行记录。
奖惩表的实体E-R图如图4-4所示:
图4-3奖惩表实体E-R图
在本系统中,涉及到了员工的培训信息,员工的考培训息是通过数据库进行显示的。
其实体E-R图如图4-4所示:
图4-4员工培训信息表
在本系统中,涉及到了员工的调岗信息,员工的调岗信息是通过数据库进行显示的。
其实体E-R图如图4-5所示:
图4-5员工考勤信息表
人事管理系统离不开对员工的薪资管理,将员工的工资信息动态地录入数据库并且能够随时清晰地查看,是设计此薪资信息表的基本目的。
其E-R图设计如图4-6所示:
图4-6薪资管理表
此外,现金发放表、部门信息、员工离职管理表,实体E-R图设计与其它员工基本信息类似,本论文中不再显示其E-R图设计。
4.2数据库逻辑结构设计
根据上面设计的E-R图,便可以在数据库中创建相应的数据库表,本系统的各数据表的结构如下:
图4-2:
系统架构图
第5章系统各模块的实现
5.1系统架构设计
人事管理系统的架构分为窗体和模块两个部分。
在窗体的部分有以下几个窗体,他们的作用分别是:
“Frm_Login”是登录窗口,是验证系统用户的登陆权限和数据配置;
“Frm_Main”是主窗口,是系统进入的第一个窗口,可以查看登录信息,以及显示功能菜单;
“Frm_Department”是部门管理窗体,对公司部门进行管理;
“Frm_DB”是数据恢复与还原窗口,可以对数据库进行备份与还原;
“Frm_UserInfo”是员工信息主界面,用户可以选择要执行的任务及对员工信息更改;
“Frm_OSInfo”是密码修改,用户可以在此修改自己的密码;
“Frm_Reward”是奖惩信息窗口,用户可以对员工奖惩信息进行操作;
“Frm_Worked”是工作经历窗口,用户可以对员工工作经历进行操作;
“Frm_Study”是培训信息窗口,用户可以对员工培训信息进行操作;
“Frm_Leave”是离退信息窗口,用户可以对员工离退信息进行操作;
“Frm_WageInfo”是薪金信息窗口,用户可以对员工薪金信息进行操作;
“Frm_IO”是调岗信息窗口,用户可以对员工的岗位进行变更操作;
“Frm_UserWage”是薪金发放窗口,用户可以对员工薪金发放进行操作;系统架构说明如图5-1所示:
图5-1:
系统架构图
5.2系统登陆实现
系统用户登录模块主要用于完成对登录系统的用户的验证,只有合法的用户和正确的数据库配置才可以进入系统,否则给与相应的错误提示。
其中采用了windows和MSSQL两种身份验证的方式,可以使不同工作环境的用户登录系统使用。
以及设计了记住用户名和密码的功能,在安全上使用了MD5加密验证。
其设计样式如图5-2所示:
图5-2:
用户登录配置模块图
5.2.1系统登陆窗体的功能
系统用户登录模块中进行了非常人性化的设计,窗体加载时会自动检查是否曾经对系统配置了数据库,如果没有登陆按钮将变为不可以点击状态并给出相应的提示。
在一切配置完成以后,点击登陆时会对配置错误和非法登陆进行不同的错误提示。
如果都正确将成功进入主界面。
在登录远程数据库时需要一定的时间,此时不要着急请喝杯咖啡等待。
(注:
登录默认用户名admin密码123本地数据库服务器名称.默认数据库PersonnelManagement)其主要代码为:
OSInfouser1=newOSInfo();
user1.OSId=name;
user1.OSPsd=password;
OSInfoDALuserDAL=newOSInfoDAL();
DataSetds=userDAL.FindByNameAndPassword(user1);
DataSetda=userDAL.FindAll();
try
{
if(da==null)
{
MessageBox.Show("数据库连接失败,请检查重试!
");
return;
}
if(ds==null)
{
MessageBox.Show("密码或用户名错误,请检查重试!
");
return;
}
elseif(ds.Tables[0].Rows.Count>0)
{
SQLHelp.userInfo[0]=ds.Tables[0].Rows[0].ItemArray[0].ToString();
SQLHelp.userInfo[1]=ds.Tables[0].Rows[0].ItemArray[1].ToString();
SQLHelp.userInfo[2]=ds.Tables[0].Rows[0].ItemArray[2].ToString();
SQLHelp.userInfo[3]=ds.Tables[0].Rows[0].ItemArray[3].ToString();
SQLHelp.userInfo[4]=ds.Tables[0].Rows[0].ItemArray[4].ToString();
SQLHelp.userInfo[5]=ds.Tables[0].Rows[0].ItemArray[5].ToString();
Frm_Mainfrm=newFrm_Main();
this.Hide();
frm.Show();
SQLHelp.CloseDB();
}
}
catch(Exceptionex)
{
MessageBox.Show("数据库连接失败"+ex.Message,"错误");
}
5.3系统主界面设计
在系统主界面中采用了下拉菜单,这样解决了系统按钮菜单的单调性,从而让系统整体看起来美观大方简洁。
在主界面中实现了切换用户、弹出子菜单、用户帮助和当前用户登录信息显示(用户名登录次数上次使用时间)等等。
其设计样式如图5-3所示:
图5-3:
系统主界面设计图
5.4数据导入于备份的实现
在一个系统的使用过程中难免遇到一些突发事件,而导致系统数据的丢失。
所以在设计系统时,必须有对系统数据备份与还原的模块。
在系统功能中我加入了数据备份还原。
其操作简单,在投入实际使用时只需要管理员操作鼠标即可。
其设计样式如图5-4所示:
图5-4:
数据导入于备份设计图
5.5公司部门管理的实现
在一个公司中每个员工都有自己的一个归属,那就是部门。
在系统设计中对部门信息的操作也是必要的。
也由于部门涉及的信息不多,它的设计界面比较简单。
在功能上实现了增、删、改、查的基本数据操作。
在逻辑上进行完善,操作简单、逻辑清晰并且拥有较强抗击用户非法操作的功能。
其设计样式如图5-5所示:
图5-5:
公司部门管理设计图
5.6员工信息管理的设计
在本系统中员工的信息的管理是所有子系统的基本,在功能上不仅实现员工信息的管理,更主要的是利用该模块作为接入员工子系统的跳转。
并集齐员工信息增、删、改、查为一体。
为达到可操作性和便捷性,在设计时使用了多种windows控件,其中包括右键菜单、下拉菜单、打开图片、图片显示、数据表等等。
设计样式如图5-6所示:
图5-6:
员工信息管理设计图
5.6.1员工信息管理的功能
(1)模糊查询:
在工号查询处的文本框中可以输入员工号进行模糊匹配查询。
例如输入“1”就可以查询出员工号中含有1的所有员工数据。
主要实现代码如下:
stringsql="selectuserId,userNamefromuserInfowhereuserIdlike'%"+txt_Select.Text+"%'";
DataSetda=newDataSet();
da=SQLHelp.GetDataSet(sql);
if(da!
=null)
{
dgrdv_User.DataSource=da.Tables[0];
dgrdv_User.Columns[0].HeaderText="员工号";
dgrdv_User.Columns[0].Width=85;
dgrdv_User.Columns[1].HeaderText="员工姓名";
dgrdv_User.Columns[1].Width=91;
}
(2)数据库操作:
可对员工进行增删改的基本操作。
单击添加后在正确的录入员工信息后单击确定,就可以完成员工信息的录入。
在修改员工时首先需要单击员工的数据表,然后点击修改,修改之后单击确定即可完成修改。
在删除员工时首先也需要单击员工的数据表,单击删除,确定操作以后即可删除员工数据。
(提示:
“如员工有其它信息将不能进行删除!
如需要删除必须删除员工的其它信息”。
)如果单击了修改或者添加后又不想进行操作可以点击取消按钮,这样就恢复成初始界面。
(3)刷新:
右键菜单单击刷新按钮可以重新从数据库获取一次数据,用此可以防止数据库数据与客户数据不同步的现象
(4)向数据库写入照片:
你可以选择员工的相片并且录入用户信息以后,修改或添加都可以将用户图片插入到数据库中。
这样我们的数据库就可以存放上用户的一切信息,这样就可以仅通过该系统进行维护操作。
图片插入代码如下所示:
stringP_str=openF.FileName;得到图片的所在路径
FileStreamfs=newFileStream(创建文件流对象
P_str,FileMode.Open,FileAccess.Read);
BinaryReaderbr=newBin