人力资源管理基于JEE的网新恒天人事管理系统的设计与实现Word文档下载推荐.docx
《人力资源管理基于JEE的网新恒天人事管理系统的设计与实现Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《人力资源管理基于JEE的网新恒天人事管理系统的设计与实现Word文档下载推荐.docx(27页珍藏版)》请在冰豆网上搜索。
3.3.1软件环境10
3.3.2硬件环境10
4系统设计10
4.1数据库设计10
4.1.1实体类抽象11
4.1.2系统ER图11
4.1.3数据库连接配置配置文件11
4.2数据库的选择11
4.3数据库表的设计12
4.4系统详细设计14
4.4.1登录模块设计14
4.4.2HR新增用户、员工离职、升职模块设计15
4.4.3员工工时填写模块设计16
4.4.4员工请假、加班模块设计17
5系统实现18
5.1登录界面及主界面模块的实现18
5.2员工管理模块的实现21
5.3员工工时填写模块的实现25
5.4员工请假加班模块的实现26
6系统测试31
6.1登录模块的测试31
6.2员工管理模块的测试32
6.3工时管理模块的测试33
6.4测试总结34
总结35
参考文献36
1系统概述
1.1系统的研究现状
随着人类迈入21世纪,计算机技术、通信技术、网络技术为代表的现代信息技术的飞跃发展,人类正在从工业时代向信息时代迈进,人们越来越重视信息资源的开发与利用,“信息化”已成为一个国家经济和社会发展的关键环节,信息化水平的高低已成为衡量一个国家现代化水平和综合国力的重要标志。
信息化的实质是使信息这一社会的主导资源充分发挥作用,可以说推广信息技术是手段,真正利用信息是目的,信息化则是利用信息的过程。
我国自1983年大力推广微型计算机应用以来,在管理信息领域,无论在理论方面还是在实践方面,都有了很大的发展。
当今社会计算机技术发展飞速,无论在工厂,商场,公司或者企业当中,计算机的应用越来越普及,利用计算机实现企业人事管理势在必行。
对于中型规模以上的企业来说,利用计算机提高企业人事管理的效率,是适应现代企业制度要求、推动企业人事管理走向科学化、规范化的必要条件。
而基本信息管理是一项琐碎、复杂而又十分细致的工作,公司人员数量多,而且流动频繁,到外面招聘来的人员增多,公司内部职工的部门,职务经常调整,职工档案的更新等。
如果没有适当的工具来管理这些日常工作,就会耗费工作人员大量的时间和精力。
利用B/S结构制作的人事管理系统对职工各种信息进行记录、统计,准确率快速提高,另外,可具有检索迅速、查找方便、可靠性高、存储量大、保密性好等优点。
这些优点能极大地提高企业管理的效率,因此,开发这样一套管理系统成为很有必要的事情,它能够具体化、合理化的管理单位的人事信息,用结构化的思维方式,运用计算机解决实际工作和生活中遇到的问题。
1.2发展趋势
信息作为生产力中最活跃的因素,很早就在人类生活中发挥着不可替代的作用,现在许多发展中国家对人力资源的战略性意义都有了深刻的认识,并开始付诸行动。
世界公认,21世纪将是人力资源的世纪,人力资源问题将主导整个21世纪甚至更为遥远。
引起这个状况的变化,主要有以下几个方面。
竞争压力:
目前,世界经济趋向全球化。
世界经济的全球化过程和国家的开放过程,要求组织的管理部门降低管理成本以减少竞争压力和增强竞争能力。
而对于不同的组织,人力资源成本在总成本中的比例是不一样的。
技术革新:
无论是现在还是将来,工业的发展越来越多地取决于科学和技术、知识与技能。
高新科技产业更是如此。
这不仅要求员工尤其是技术人员掌握新的科学知识和技术能力,而且更重要的在于要求员工深入而快捷地掌握和应用这些知识和技能。
这就导致了两个问题。
第一,随着这种技术革新的发展和知识更新速度的加快,人们有更多的职业选择机会。
第二,伴随着这种发展以及职业选择机会的增多,人力资源管理活动和频繁程度加剧;
而且这种活动对科学技术的要
求与它的反应程度也更高了,进而提高了人力资源成本。
工作目标和价值观的改变:
随着社会政治和经济的发展,人们的工作目标和价值观也都发生了重要的变化。
这就对人事管理部门和管理人员提出了新的要求和新的问题,不得不考虑诸如工作类型设计、岗位分析、充分尊重员工以及为他们提供良好的个人发展和自我价值实现的环境与条件等问题。
这样,人力资源管理就派上了用场。
1.3系统的开发方法
系统采用B/S体系结构,利用JavaEEVelocity和MySQL5.5进行开发的,具有简单、易用性、用户界面友好等特点。
系统开发的目标主要是:
(1)界面设计简洁、友好、美观大方;
(2)操作简单、快捷方便;
(3)数据存储安全、可靠;
(4)信息分类清晰、准确;
(5)强大的查询功能,保证数据查询的灵活性;
(6)对于用户输入的数据系统进行严格的数据校验,尽可能排除人为出错。
2系统需求分析
2.1系统功能分析
本课题所研究的“JavaEE网新恒天人事管理系统”主要由客户端和管理端组成。
客户端主要由新增员工模块、员工离职模块、员工升职模块、请假模块、加班模块、数据分析模块等组成,管理端主要由员工管理模块、工时管理模块、绩效管理模块、数据分析模块等组成。
运行本系统先由登录界面窗口进入用户权限认证窗口,通过用户名和口令验证的用户方可进入系统主窗口进行浏览与操作。
客户端:
(1)新增员工模块:
只有HR与领导可以查看所有的员工信息,并且HR可以在此模块中,新增新入职的员工信息。
(2)员工离职模块:
所有员工都可以看到此菜单,但是只能查看到与自己有关的离职流程。
其他流程不能查看与修改。
员工提出离职的申请,并提交给其领导进行审核。
(3)员工升职模块:
所有员工都可以看到此菜单,但是只能查看到与自己有关的升职流程。
员工提出升职的申请,并提交给其领导进行审核。
(4)请假模块:
所有员工都可以看到此菜单,但是只能查看到与自己有关的请假流程。
员工提出请假的日期与申请,并提交给其领导进行审核。
(5)加班模块:
所有员工都可以看到此菜单,但是只能查看到与自己有关的加班流程。
员工在前一天或这个月内,有加班的情况,可以提出加班申请,交由其领导进行核实,如果加班申请通过,则本月的工时,有相应的增加。
(6)数据分析模块:
领导可以查看此菜单,领导可以通过图表的形式,查看到公司最近动态与相应的数据动态。
管理端:
(1)员工管理模块:
HR与领导对员工的添加、修改、查看和删除。
(2)工时管理模块:
工时的填写、修改、查看和删除。
(3)绩效管理模块:
绩效的查看、新增和删除。
(4)数据分析管理模块:
领导查看。
2.2系统功能结构
根据2.1节的系统功能分析可知“网新恒天人事管理系统”包括新增员工模块、员工离职模块、员工升职模块、请假模块、加班模块、数据分析模块等模块,其功能结构图如图2.1所示。
图2.1系统功能结构图
2.3功能描述和用例分析
用例用于表示系统所提供的服务,它定义了系统是如何被参与者所使用的,它描述的是参与者为了使用系统所提供的某一完整功能而与系统之间发生的一段对话。
根据分析,下面将列出本系统的系统用例图。
2.3.1系统用例图
系统用例图主要是用来描述系统的总体结构,为了确保系统的安全,只能是注册用户才能访问前台,其中该模块主要功能是HR可以将员工录入到系统中;
员工可以申请离职、升职、加班与请假;
领导可以审核各种流程与查看公司报表数据。
如下图所示:
只能是领导才能访问后台,进行员工申请的流程进行查询、删除与审核并查看相关数据。
该系统用例图如图2.2所示。
图2.2系统用例图
2.3.2员工管理
(1)功能介绍
员工管理:
为了确保系统的安全,只能是系统管理员才能对用户进行管理,
对用户进行修改密码、修改用户名、添加系统用户、用户管理,注销退出。
(2)活动图如图2.3所示。
图2.3系统员工管理活动图
2.3.3工时管理
工时管理:
系统管理员登录系统后,可以对工时进行填写和查看和修改。
(2)活动图如图2.4所示。
图2.4工时管理活动图
2.3.4绩效管理
绩效管理:
主要是对绩效进行添加,修改和查看。
(2)活动图如图2.5所示。
图2.5绩效管理活动图
2.3.5数据分析
数据分析:
主要是对员工的数据进行系统的分析,通过饼图、树状图,让人一目了然。
(2)活动图如图2.6所示。
图2.6数据分析管理活动图
2.3.6流程管理
流程管理:
主要根据员工提出请假、加班、离职、升职的申请,HR和领导可以进行审核。
(2)活动图如图2.7所示。
图2.7流程管理活动图
2.4系统性能需求
本课题主要是解决网新恒天人事管理系统的日常管理中所涉及到的基本信息,目标是使企业人事管理系统在管理上做到数据的信息化、快速化和网络化。
本系统主要包括员工管理、工时管理、绩效管理、数据分析、流程管理等模块。
下面详细介绍这几部分模块的作用及所实现的功能。
(1)员工管理,员工信息的录入、查询、修改、删除,离职与升职的申请。
(2)工时管理,可以进行工时的填写,请假与加班的申请。
(3)绩效管理,员工可以查询自己的绩效,管理员可以进行绩效的审核、修改。
(4)数据分析,数据查看功能。
(5)流程管理,HR和领导对流程进行审核。
2.4.1时间需求
(1)查询的最长等待时间不超过5秒;
(2)更新信息的时间不超过5秒;
(3)数据上传的时间不超过5秒;
2.4.2空间需求
(1)支持的终端数:
<
=1000;
(2)支持的并行操作的使用者数:
=300;
(3)处理的记录数:
<
=10000;
2.5安全性和可靠性
(1)每个角色只能看到相应的菜单,进行相应的操作,无法越权处理。
(2)在设计过程中尽量避免在VM页面上写代码,提高系统的安全性。
优化代码,提高系统的性能。
3系统分析
3.1系统开发
Velocity是一个基于Java的模板引擎技术,提供的模板语言可以使用在Java中定义的对象和变量上。
Velocity是Apache基金会的项目,开发的目标是分离MVC模式中的持久化层和业务层。
但是在实际应用过程中,Velocity不仅仅被用在了MVC的架构中,还可以被用在以下一些场景中。
(1)Web应用:
开发者在不使用JSP的情况下,可以用Velocity让HTML
具有动态内容的特性。
(2)源代码生成:
Velocity可以被用来生成Java代码、SQL或者
PostScript。
有很多开源和商业开发的软件是使用Velocity来开发的。
(3)自动Email:
很多软件的用户注册、密码提醒或者报表都是使用Velocity来自动生成的。
使用Velocity可以在文本文件里面生成邮件内容,
而不是在Java代码中拼接字符串。
(4)转换xml:
Velocity提供一个叫Anakia的ant任务,可以读取XML文件并让它能够被Velocity模板读取。
一个比较普遍的应用是将xdoc文档转换成带样式的HTML文件。
JavaBean是用Java语言编写的可重用软件组件,类似于Microsoft的COM组件,可以通过可视化的构建工具来创建。
JavaBean可以嵌入到Applet小程序、应用程序、Servlet和复合组件中。
编写JavaBean组件的方法同编写其他Java类一样,可以利用已有的组件、Applet程序或者Java类,并把它们转换为JavaBean。
由于JavaBean是基于Java语言的,因此JavaBean不依赖平台。
它具有独立性、易编写、易使用、易维护,可以在任何安装了Java运行环境的平台下使用,而不需要重新编译等特点。
“JavaEE企业人事管理系统”选择采用的是JavaBean+servle技术。
本系统中Process、RoleEmp、Role、User等servle,来通过对业务的访问并进行处理,然后将处理结果返回,并根据返回的字符串,跳转到相应的vm页面;
或返回相应的对象,通过相应的技术,将对象转换成相应的JSON字符串,交与前面进行解析,显示出需要显示的数据。
3.2系统开发需求
(1)性能要求
整个系统应当操作简便,界面友好,维护简便。
数据库要求运行稳定,执行速度快,数据安全性高。
软件系统本身运行对计算机硬件平台和操作系统平台要求适中。
(2)安全和保密要求
系统对不同权限的用户提供不同的功能模块,对历史数据的更改和新数据的添加只有管理员才能进行操作,一般的用户只能进行查看。
对数据库的关键数据应要保密。
3.3系统开发与运行环境设计
3.3.1软件环境
(1)操作系统:
Windows2000/XP/2003或更高版本
(2)数据库:
MySQL5.7
(3)WEB容器:
Tomcat7.0JDK1.7或更高版本
3.3.2硬件环境
(1)运行内存:
256MB或更高
(2)磁盘容量:
512MB或更高
(3)其它:
鼠标、键盘。
4系统设计
4.1数据库设计
MySQL是一种开放源代码的关系型数据库管理系统,MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言进行数据库管理。
它在WEB应用方面MySQL是最好的RDBM应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一
特点,一般中小型网站的开发都选择MySQL作为网站数据库。
4.1.1实体类抽象
本系统设计的实体包括:
员工信息、角色、流程、工时管理、工资管理,将它们以及它们之间的关系抽象出来,并绘制成ER图,如图4.1所示。
4.1.2系统ER图
系统的实体包括:
员工信息、角色、流程、工时管理、工资管理,系统ER图如图4.1所示。
图4.1系统ER图
4.1.3数据库连接配置配置文件
(1)数据库的配置参数(#表示注释,DBConn.java)#加载驱动Class.forName(“com.mysql.jdbc.Driver”);
#连接数据库jdbc.url=jdbc:
mysql:
//127.0.0.1:
3306/fanghu#用户名
jdbc.username=fanghu#登录密码jdbc.password=123456
4.2数据库的选择
本系统使用MySQL关系型数据库,MySQL5.7能提供中小型系统所需要的数据库服务。
MySQL拥有一个非常快速而且稳定的基于线程的内存分配系统,可以
持续使用面不必担心其稳定性。
它可以运行在不同的操作系统下,提高了系统的可移植性。
MySQL的核心程序采用完全的多线程编程。
线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。
4.3数据库表的设计
数据库表有员工表、员工等级表、员工基本薪资、员工的工作时表和请假表。
数据表如表4.1-4.5所示。
(1)员工表(emp)如表4.1所示。
表4.1员工表(emp)
名称
类型
是否为空
默认
值
属性
备注
emp_id
int(11)
Notnull
无
AUTO_INCREMENT
员工ID
emp_name
Varchar(50)
null
员工姓名
emp_sex
char
(1)
员工性别
emp_status
员工状态
emp_idcode
Varchar(18)
员工身份证
号码(18位)
emp_teleph
one
varchar(13)
员工手机号
emp_addres
s_p
varchar(50)
员工地址(省
份)
员工地址(市)
s_c
emp_type
char
(1)
员工类型
emp_passwo
rd
员工z登录
密码
emp_leader
_id
领导人ID
(2)员工等级表(emp_grade)如表4.2所示。
表4.2员工等级表(emp_grade)
是否为
空
默认值
emp_grade_id
Not
AUTO_IN
CREMENT
员工等级ID
emp_grade_a
员工等级A(A:
高级;
B:
中级;
C:
低级)
emp_grade_b
员工等级B
emp_grade_ut
员工等级更新时间
(yyyy-MM-dd)
(3)员工基本薪资(emp_salary)如表4.3所示。
emp_salary_id
员工薪资表ID
emp_salary
double(11,2)
员工基本薪资
表4.3员工基本薪资(emp_salary)
(4)员工的工作时表(emp_work_time)如表4.4所示。
表4.4员工的工作时表(emp_work_time)
emp_work_time
工作时间ID
wrok_date_y
varchar(4)
工作时间
work_date_m
varchar
(2)
work_time
double(6,1)
员工工作时间
(5)请假表(leave_time)如表4.5所示。
表4.5请假表(leave_time)
leave_time_id
unique
请假表
ID
leave_time_date_y
请假时
间(年)
leave_time_date_m
间(月)
leave_times
double(10,2)
请假小
时
leave_des
varchar(1024)
请假理
由
status
varchar
(1)
未发货
是否有
效
end_time
结束时
间
start_time
起始时
process_id
流程ID
4.4系统详细设计
4.4.1登录模块设计
用户登录,用户可以对自己的信息进行查看、修改,查看自己的流程。
整个过程如图4.2所示。
图4.2用户程序流程图
4.4.2HR新增用户、员工离职、升职模块设计
新增用户模板主要是HR完成用户的新增过程。
用户首先登录网站,验证是否注册,若未注册需要HR新增该用户,若已注册便可以登录,如果该用户的角色是HR,那么该用户就可以看到用户管理的页面,并可以进行新增用户的操作。
在用户新增界面中,HR可以填写需要新增用户的基本信息与该用户的领导。
整个过程如图4.3所示。
图4.3HR新增用户流程图
员工个人可以进入系统,进入流程管理的界面,并提交离职流程,提交给员工对应的领导,整个过程如图4.4所示。
图4.4员工离职流程图
员工个人可以进入系统,进入流程管理的界面,并提交升职流程,提交给员工对应的领导,整个流程如图4.5所示。
图4.5员工升职流程图
4.4.3员工工时填写模块设计
员工个人可以进入系统,并进入工时填写页面,可能填写本月的工时信息,并提交给领导进行审核。
具体过程如图4.6所示。
图4.6员工工时填写流程图
4.4.4员工请假、加班模块设计
员工个人可以进入系统,进入流程管理的界面,并提交请