公司人事管理系统的设计与实现

摘要:以前的员工人事管理相对较落后,采取人力处理的方法,这样对于查找和保存就出现了很大的问题,而且效率不是很好,容易造成数据损失,出错等问题,给公司带来很大的损失。随着社会不断的进步,科技推进,计算机也成了管理员工一个新突破点,员工管理系统就此问世。使用计算机管理系统管理员工,能够更加明显,更加有效的解决员工之间出现的问题。在现在常见的大多数系统都是适用于大公司的,而对于中小型企业公司没有过多的考虑。本次设计是一个适合中小型企业的员工股管理系统,主要使用B/S结构,这样就能够方便维护,而且成本相对较低,具备常见的一些功能,如员工的工资管理、奖罚管理、员工的基本信息管理等。
关键词:员工管理系统;B/S结构;组合条件查询
1绪论
1.1 课题背景
提高企业的管理水平在于选择一个可靠的适合本企业的人事管理系统,还要有以人为本的观念。由于人员本身的复杂性和组织的特殊性使得人事管理出现了很多的问题,因此,人事管理系统(Human Resource Management System,HRMS)才能够成为企业的重要组成部分。由于人事管理系统具备规划人力资源和建立人事档案的作用,所以它的出现能够使得查询和调用人事档案的速度得到了很大的改进和提升,也使得分析大量员工的技术能力以及经验等方面都有所提升。因此,实现企业内人事管理系统的标准化、科学化、数字化和网络化是很有必要的。
1.2 国内外研究现状
企业对于员工的管理要求很高,管理员工是一项很有实践性、技术性、理论性的工作。一名合格的人事管理人员,要对员工的心理、技能、喜好,对国家的政策要及时了解,这样就能够更好的完成对员工基本信息和工作情况的获取、对员工的协调、促进员工之间的关系、调整员工岗位、软件开发等方面的工作。目前,我国企业水平尽管有所改进,但是,更多的是对大企业的改进,对中小型企业的员工管理相对还是较低的。
1.3 目的和意义
企业人事管理系统日益网络化和系统化,受到很多企业者的青睐。人事管理系统具有功能全面、操作简单的特点,能够存放员工的基本信息、职务、考勤、工作进度和状态等,这不仅能够降低人事管理系统的人力和成本,而且能够提高人事管理系统的效率。这样就能够实现企业管理人力资源网络化和系统化。
1.4 系统设计思想
人事管理系统是企业和政府等部门不可缺少的组成部分,对于人事管理员也有很高的要求。对于人事管理系统应具备以下几个特性:
(1)高技术性:本系统主要以Java语言作为开发语言,以MyEclipse开发工具和Mysql 数据库结合的

方式实现,再采用SSH框架进行设计。
(2)实用性:从用户的角度出发,满足客户的要求,尽量满足不同客户的不同要求。
(3)灵活性:使用SSH框架设计,对于减少代码与页面的重复性和冗余性有很大的好处,更能对软件得灵活性有所提升。
(4)可维护性:为了方便维护,本系统采用SSH框架、软硬件稳定性都比较较高的环境设计。
(5)复用性:对系统模块的设计尽量做到高内聚,低耦合的地步,进一步提高系统的复用性。
1.5 系统开发环境和运行平台
(1)系统开发环境及工具:Eclipse 4.32,Tomcats 7.0.5.3,Navicat for MySql, mysql数据库,Microsoft Visio 2010。
(2)软件环境及运行平台:JDK1.6.0_43和Windows 7操作系统需下载的jar包:struts-2.XXX-all.zip,Hibernate Core.zip,spring-framework-2.5.x.zip.
本系统使用目前网络界很受欢迎的PC平台,能够支持多种操作系统的运行,具备较强的适应性,能够更好的满足用户的需求。
(3)系统结构模型:本系统在结构模型方面主要使用的是B/S(Browser/Server)结构,即浏览器/服务器模式,目前这种模型的使用非常广泛。在Internet技术不断改进的时代,B/S结构的改进程度也不小,但是它的本质并没有多大的改变,即还是以前的三层结构C/S(客户机/服务器)模式。对于这种结构,用户利用浏览器来实现主要工作,对于前端的实现,少部分是由服务器实现的,不但形成了三层结构,更加简化了计算机的载荷,降低了用户维护计算机和系统的成本,对于用户来说这种三层结构使用起来更加方便和划算,如图1.1所示。
图1.1 三级结构模型图
1.6 MyEclipse数据库简介
在数据库管理系统中,应用程序想要获取所需的数据,首先要把请求提交给DBMS,由DBMS查找并提供给应用程序,而不是直接从存储介质上获取。所以,对于数据库来说,它就是一个应用程序和数据之间的接口。在设计数据库的时候必须把概念结构转化成逻辑结构进行设计,概念结构是不依赖于数据结构而存在的,而且要把不同实体转化成相应的数据表进行设计。比如把员工岗位管理实体转化成员工的岗位表、把员工基本信息实体转化成员工的基本信息表、把员工的招聘实体转化成员工招聘表、把员工的薪资实体转化成员工工资统计表、把员工的考勤实体转化成员工上下班考勤表、把员工的奖罚实体转化成员工奖罚表等。这些表主要记录员工的不同信息,对与企业来说是直接体现员工概况的信息来源。
通过现代化网络的管理,不仅有利于增强员工之间的相互交流和沟通,而且更有利于促进员工在工作中的协作关系,还能够加强企业对于员工考勤情况细致、全面、具体的了解,更加能够更加

合理的制订员工考勤方案,更能体现对员工的人性化管理。在人事管理系统设计的时候,主要工作是设计数据的连接、信息模块的组成、模块功能的实现,系统的应用意义等方面,这样才有利于系统的设计。在设计系统的时候,达到数据的高效性以及冗余性才能让系统更加完善,系统的数据库使用Mysql数据库。
系统开发使用的开发技术是Java,使用的软件是MyEclipse。Java是一种高级编程语言,也是一门软件技术。使用Java技术更加能够体现出对数据库的开发以及应用程序服务器的整合等方面的效率的提高。MyEclipse5.6不仅有高效、便捷的可视化界面,而且能够持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。MyEclipse包括了完备的编码、调试、测试和发布等功能。
Mysql数据库是基于SQL Server 2000技术优势构建的,更是微软公司下一代数据库的管理与分析软件,对于企业数据的分析与应用的创建、管理和部署方面有很大的作用。对设计方案的伸缩新、可用性、安全性方面都有很大的帮助。对系统的安全性、可靠性、性能方面都能有所提高,所以本系统使用Mysql数据库。
2系统的可行性和需求分析
2.1 可行性分析
2.1.1经济可行性
人事管理系统是每个企业很重要的一个组成部分,对于一个企业来说,人事管理系统不仅仅是一个系统那么简单,它更是影响着企业的发展。充分发挥人事管理系统的优势、合理安排企业员工、给企业创造一个良好的发展前景是人事管理部门的主要工作。这样才能够合理的分配企业人才,提高人才利用率。
2.1.2技术可行性
本系统在选择开发环境的时候选择了MyEclipse,在存储库的选择方面使用了Mysql数据库再加以SSH框架进行设计,使系统更加合理、安全、可靠。
为了满足系统设计开发的存储,本系统开发设计使用了2G的内存,320G的硬盘,这样使得系统的运行速度更加流畅。
2.1.3操作可行性
本系统设计具备良好的操作界面,系统的功能和内容能够简单明了的显示,操作者不需要经过专业的培训,只需要短时间的实际操作就能够熟练的掌握使用,对加快公司的人事管理和提高工作效率都有所提升。
经过分析和研究,本系统开发目标明确,技术选择和经济成本方面都是能够正常进行,在软件开发阶段的投入少,见效快,所以系统的开发是完全可行的。
2.2需求分析
所谓“需求分析”,是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。
2.2.1人事管理系统的规划
基于Internet的MIS系统,被广泛的应用在企业的高层和普通的商务管理,更加能够弥补传统MIS系统的缺陷,更能

够体现现代网络的特性。在Internet基础上的MIS系统是网络时代的新一代管理信息系统,它的发展前景很不错。
因为本系统为企业人事管理系统,也属于一种先进的管理信息系统,所以在本系统中也充分利用了MIS的理论概念。可以更好的为企业制定企业规划,并带来更高的效益。
2.2.2人事管理系统的需求分析
系统开发阶段需求分析很重要,它能够让我们明白设计的系统能够做些什么,通过对用户需求的分析和数据库的设计,这对系统功能的完善和稳定有很大的影响,这个阶段分析人员要确定系统的功能要求,通过现实和抽象来构建模型。
3系统设计
之前已经对系统中软件的设计成本、技术开发、运行的可行性、功能设计等方面进行了全面的分析,这对于系统的设计十分重要,对后面的设计实现具有不可或缺的作用,更是给后续的设计具有支撑作用。
3.1系统模块和系统类图设计
3.1.1系统模块设计
本系统用户登录界面的设置,主要包括8个功能模块,分别是企业管理、岗位管理、部门管理、员工管理、工资管理、考勤管理、培训管理以及招聘管理,如图3.1所示。
图3.1 系统模块设计图
本系统设计这要使用层次图来说明各个模块之间的相互关系,采用树形结构来进一步描绘数据的结构,这样就使得整个系统更有层次,数据的结构更加明显清晰。在树形结构的顶层使用一个矩形框来表示数据的完整结构,一次往下就是各个层次的矩形框表示的数据的不同子集,最底层则是矩形框表示的实际数据元素,即不可再分割的最小的元素。结构简单明了,层次图对数据的描述恰当到位,这种模式适合需求分析阶段的需要。从顶层的信息分类,沿着树形结构不断的进行细化,直到能够确定数据结构的细节为止。
在本系统的8个组成模块中,每个模块访问数据库的模式都相差无几,只是在访问数据库数据表的时候有所差异,每个模块都是相互关联的。对于每个模块的制作相当严格,都是按照收集的资料不断的完善编排完成制作的。系统8大模块的设计如下:
(1)岗位管理中有添加、删除、查看3个小模块。
(2)员工管理中有添加员工的基本信息、删除员工基本信息、查看员工信息3个小的模块。
(3)考勤管理操作的作用主要是用来对员工每天的上班和下班做出统计,对于员工的一天、一月甚至一年的工作情况做出明确而清晰的记录,为了以后的薪资管理工作打下良好的基础。有记录、删除、查看和详细的考勤计划4个模块。
(4)培训管理操作主要是对于企业新招聘的人员进行入职前的岗位熟悉和了解。它主要包括培训人员的记录、人员培训信息的删除、

人员信息的查看和对培训计划的具体阐述等。
(5)薪资管理主要是对企业中员工的工资进行核算统计,有记录、删除、查看等模块。
(6)招聘管理实现企业的人员招聘以及对招聘计划的记录、删除、查看等。
(7)能进入人事管理系统的人员主要有系统管理员和普通用户,系统管理员除了能够修改自身的密码之外,还能对普通用户进行添加和删除操作,而普通用户只是对自己的密码能够进行修改,没有权限进行其他的操作。
(8)部门管理主要是实现部门分类的设定,能够创建、删除、查询部门。
3.1.2系统类图
类图(Class diagram)是显示了模型的静态结构,它只是显示类以及类的内部结构与其它类之间的关系,如图3.2所示。
图3.2 系统类图
3.2数据库的E-R图设计
通过对系统的需求分析、数据库以及系统模块的设计,再根据实体和数据表之间的相互关系,总结得出本系统的整体设计。对于公司的结构、具备哪些部门,某个部门具有哪些岗位,某个员工属于哪个岗位,这个员工有哪些培训内容、是否具有奖罚情况、工资情况如何等问题都有详细的体现,如图3.3所示。
图3.3 系统E-R图
通过需求分析就能够看出实体分别是:系统管理员管理、公司部门结构、员工工资信息、员工上下班的考勤情况、岗位信息、培训信息、企业信息、员工信息8个。
(1)系统管理员管理实体中有编号、用户名和用户密码3个属性,如图3.4所示。
图3.4 管理员管理实体图
(2)在部门管理实体中有编号、部门名称、创建时间、更新时间、是否被删除5个属性,如图3.5所示。
图3.5 部门管理实体图
(3)在工资信息实体中有个人所得税、因个人原因导致延误的误工费、作为良好考察的奖金、个人保险费、考勤状况的费用、个人实际所发得工资、员工编号、月份、基本工资、加班费、工龄费等属性,如图3.6所示。
图3.6 工资管理实体图
(4)在考勤奖罚实体中有奖罚员工编号、奖罚金额、奖罚员工姓名、奖罚备注、奖罚项目、奖罚时间等属性,如图3.7所示。
图3.7 考勤奖罚实体图
(5)在岗位信息中有个人所在岗位的编号、所在岗位的具体名称、对于岗位的描述、上一级岗位的编号等属性,如图3.8所示。
图3.8 岗位信息实体图
(6)在培训实体中有详细的培训内容、培训的具体时间、培训所参加的人数、进行培训的人、培训的主题、培训宗旨等属性,如图3.9所示。
图3.9 培训信息实体图
(7)企业信息实体中有企业编号、企业名、企业分类、企业地址、联系人等属性,如图3.10所示。
图3.10 企业信息实体图
(8)企业获取员工信息的方式主要是查看员工在企业人事管理系统中

员工管理模块的记录,对企业来说员工信息是非常重要的,员工信息主要包括所在部门编号、员工岗位编号、TEL、QQ、电子邮件、员工经历、学历、住址、年龄、性别、姓名等,如图3.11所示。
图3.11 员工信息实体图
3.3数据表的设计
(1)管理员信息表:主要是企业中管理员信息存放的位置,如表3-1所示。
表3-1 t_admin(管理员信息表)
字段名 数据类型 是否为空 是否主键 默认值 描述
id int(11) No Yes ID(自动编号)
username varchar(20) No 管理员账号
userpw varchar(20) No 管理员密码
(2)员工信息表:它的主要作用是对于收集到的员工信息进行存放,对与这些基本信息进行一定的操作等,如表3-2所示。
表3-2 t_yuangong(员工信息表)
字段名 数据类型 是否为空 是否主键 默认值 描述
yuangong_id int(11) No Yes ID(自动编号)
yuangong_name varchar(50) No 员工姓名
yuangong_sex varchar(50) No 员工性别
yuangong_age int(11) No 员工年龄
yuangong_xueli varchar(50) No 学历
yuangong_zhiwei varchar(50) No 职位
yuangong_address varchar(50) No 住址
yuangong_tel varchar(20) No NULL 电话
yuangong_email varchar(20) No NULL Email
yuangong_org_id Int(11) No 员工岗位ID
del Varchar(20) No 是否被删除
type Varchar(50) No 查询类型
(3)薪资信息表:主要是用来统计员工薪资信息,并将其存放。包括字段名、数据类型、是否为空、默认值、描述等,如表3-3所示。
字段名 数据类型 是否为空 是否主键 默认值 描述
id int No Yes ID(自动编号)
yuangong_id int(11) No 员工id
yuefen varchar(50) No 工资月份
jibengongzi int(11) No 基本工资
jiabanfei int(11) No 加班费
gonglingfei int(11) No 工龄费
kaoqinfei int(11) No 考勤费
baoxianfei int(11) No 保险费
jiangjin int(11) No 奖金
gerenshui int(11) No 个人所得税
shifagongzi int(11) No 实发工资
del Varchar(20) No 是否删除
表3-3 t_gongzi(薪资信息表)
(4)部门信息表:主要用来存储部门信息,包括字段名、数据类型、是否为空、默认值、描述等,如表3-4所示。
表3-4 t_bumen(部门信息表)
字段名 数据类型 是否为空 是否主键 默认值 描述
id int(11) No Yes ID(自动编号)
yuangong_id Int(11) No 员工id
name varchar(20) No 部门名称
Created_time varchar(20) No 创建时间
Updated_time varchar(20) No 更新时间
del varchar(20) No 是否被删除
(5)奖惩信息表:企业中对员工的奖罚也是非常重要的,直接和员工的工资挂钩。主要用来存储员工奖惩信息,包括字段名、数据类型、是否为空、默认值、描述等,如表3-5所示。
表3-5 t_jiangcheng(奖惩信息表)
字段名 数据类型 是否为空 是否主键 默认值 描述
Jiangcheng_id Int(11) No Yse 奖惩ID(自动编号)
Jiangcheng_date varchar(50) No

相关文档
最新文档