企业人力资源管理系统是一套集成的、全面的管理工具,旨在帮助企业有效地管理其人力资源。该系统涵盖了人力资源的各个方面,包括部门管理、员工管理、员工档案管理、员工考勤管理、请假信息管理、考勤表管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理等。通过使用这个系统,企业可以更有效地管理其员工,提高工作效率,降低成本,提高员工满意度,从而提高企业的竞争力。该企业人力资源管理系统是一个强大的工具,可以帮助企业更好地管理其人力资源,实现其业务目标。
该系统利用Java语言、MySQL数据库,结合目前流行的 B/S架构,将企业人力资源管理的各个方面信息都集中到数据库中,以便于用户的需要。该系统在确保系统稳定的前提下,能够实现多功能模块的设计和应用。该系统由管理员功能模块和员工功能模块组成。不同角色的准入制度是有严格区别的。各功能模块的设计也便于以后的系统升级和维护。该系统采用了软件组件化、精化体系结构、分离逻辑和数据等方法。
关键字:Java;人力资源;MySQL;B/S结构
Enterprise Human Resource management system is a set of integrated, comprehensive management tools designed to help enterprises effectively manage their human resources. The system covers all aspects of human resources, including department management, employee management, employee file management, employee attendance management, leave information management, attendance sheet management, performance appraisal management, employee salary management, resignation application management, contract termination management. By using this system, enterprises can manage their employees more effectively, improve work efficiency, reduce costs, improve employee satisfaction, and thus enhance the competitiveness of enterprises. The enterprise Human Resource Management system is a powerful tool that can help enterprises better manage their human resources and achieve their business goals.
The system uses Java language, MySQL database, combined with the current popular B/S architecture, all aspects of enterprise human resource management information are concentrated in the database, in order to facilitate the needs of users. The system can realize the design and application of multifunctional modules on the premise of ensuring the stability of the system. The system consists of administrator function module and employee function module. The access system for different roles is strictly different. The design of each function module is also convenient for future system upgrade and maintenance. The system adopts the methods of software componentization, refinement architecture, separation of logic and data.
Key words: Java; human resources; MySQL; B/S structure
3.1.1技术可行性分析................................................................................... 9
3.1.2经济可行性分析................................................................................... 9
3.1.3法律可行性分析................................................................................... 9
3.3.1管理员需求分析................................................................................. 10
3.3.2员工需求分析..................................................................................... 11
4.2.1数据库设计原则................................................................................. 13
4.2.3数据库表设计..................................................................................... 14
1绪 论
1.1研究背景与意义
随着科技的进步和市场竞争的激烈,企业对人力资源管理的需求越来越高。传统的人力资源管理方式已经无法满足现代企业的需求,研究并实施企业人力资源管理系统成为了一种迫切的需求。这种系统不仅能够提高企业的管理效率,优化人力资源配置,还能够帮助企业建立完善的人才培养和激励机制,从而提高员工的工作效率和企业的整体竞争力。通过对企业人力资源管理系统的研究和实施,还可以推动相关技术的发展和应用,为社会的科技进步做出贡献。
企业人力资源管理系统的意义在于其极大地提升了企业人力资源管理的便捷性和效率,为各大企业打造了一个全面、高效、便捷的信息服务平台。通过这一系统,员工能够获取员工考勤、请假信息、绩效考核、员工薪酬、离职申请、合同终止等信息,个性化定制功能使得每位用户都能根据自身需求和喜好进行设置,进一步提升了用户体验。企业人力资源管理系统不仅提高了企业人力资源管理的效率和质量,还满足了各企业多样化的需求,对于促进企业人力资源信息化建设具有重要意义。
1.2国内外研究现状
在国内,企业人力资源管理系统的研究现状非常活跃,涉及多个领域。许多学者和研究机构都在关注这一主题,探讨如何通过技术手段提高企业的人力资源管理效率。目前,国内的研究主要集中在系统功能设计、技术实现、数据安全和隐私保护等方面。随着云计算、大数据和人工智能等技术的发展,这些新技术也被广泛应用于企业人力资源管理系统的研究中,以提供更高效、智能的解决方案。国内的研究者还关注于系统的用户体验、可用性和可扩展性等问题,以满足不同类型企业的需求。总的来说,企业人力资源管理系统的国内研究呈现出多元化、深入化的特点,为企业的人力资源管理提供了有力的理论支持和技术指导。
在国外,许多国际知名的学者和研究机构都在这一领域进行了深入的研究,涉及的领域包括系统设计、技术实现、用户体验、数据安全等多个方面。在系统设计方面,国外的研究者注重于系统的灵活性和可扩展性,以满足不同规模和类型企业的需要。在技术实现方面,云计算、大数据、人工智能等前沿技术被广泛应用于企业人力资源管理系统,提高了系统的效率和智能程度。国外的研究者还关注于系统的用户体验和可用性问题,以提高员工的使用满意度。在数据安全和隐私保护方面,由于涉及到敏感的员工信息,国外的研究者也在努力寻找更好的解决方案。总的来说,企业人力资源管理系统的国外研究现状为我们提供了丰富的理论和实践经验,对于我们自己的研究和实践具有重要的参考价值。
1.3本文研究内容
本系统选用Java作为后端开发语言,并采用Spring Boot框架。为了给系统打下坚实的技术基础,本系统采用了 MySQL数据库的架构,在开始这项工作前,首先要设计好要用到的数据库表。在开发工具方面,选用了Eclipse,作为一款成熟的开发工具,带来了丰富的功能和强大的支持。该系统分管理员和员工两个角色,主要包括门管理、员工管理、员工档案管理、员工考勤管理、请假信息管理、考勤表管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理、用户信息等功能进行操作。
2开发技术
2.1 Java介绍
Java语言正式诞生于1995年,是由SUN公司开发研制的OAK语言发展而来的。Java语言继承了OAK语言可跨平台运行的特点,融合了面向对象编程的风格,JAVA以其独有的开放性、跨平台性和面向网络的交互性席卷全球,以其安全性、易用性和开发周期短的特点,迅速从最初的编程语言发展成为全球第一大软件开发平台.广受时下程序开发人员的好评。后来又为了丰富Java语言的用途,提高生产力,将它进行设计和改造,以满足更多地开发和应用场景。经过改造后,它可以满足移动端开发,桌面应用开发和企业级应用开发。Java语言还为用户提供了丰富的类库,在掌握它的特性后,学习特定的工具包,就可以满足很多场景的开发。现在来看,Java语言在这三种平台的应用开发中,都占据了举足轻重的地位。
与其他语言相比,Java语言具有很多的优点,Java语言简单比较容易理解,有c语言的基础很容易就可以学会,中文和英文的学习资源也比较多,而且Java语言经过许多年的沉淀发展,逐渐演变出很多成熟的框架技术。企业还还可以封装自己的框架,让开发变得简单。它还具有跨平台性较其他语言这一个最大的优势,这意味着它只需要一次编译就可以运行在其他平台上。
2.2 MySql简介
它以其优秀的性能、强大的功能以及良好的扩展性受到越来越多的关注。目前,国内已经有很多企业采用了该系统进行管理,取得了很好的效果。随着网络技术的发展。MySQL是最流行的关系型数据库管理系统之一,我的SQL是WEB应用应用程序中最好的RDBMS(Relational Database Management System)应用程序之一。MySQL是一个关系型数据库管理系统,在这个系统中,关系数据库将数据存储在不同的表中,而不是全部存储在一个大仓库中,从而提高了速度和灵活性。
在信息管理中,对于数据库的应用也日益广泛,不仅有效对信息管理的质量进行了提升,也进一步提升了信息管理的安全性,让信息管理更加高效[6]。SQL Server是一种关系数据库管理系统,它能提供超大型系统所需的数据库服务。大型服务器可能有成千上万的用户同时连接到 SQL Server实例[7]。
我的SQL使用的SQL语言是访问数据库最常用的标准化语言。它可以通过简单操作实现复杂查询功能,并且具有良好的可扩展性和可维护性等优点。随着网络技术的不断发展,ASP.NET成为目前互联网上最为流行的Web应用之一。MySQL软件采用双授权政策,分为社区版版本和商业版。由于其体积小,速度快,总体拥有成本低,特别是开放源码,MySQL用作中小型网站发展的网站数据库。
2.3 springboot框架
Spring Boot是由Pivotal的开发团队在2013年开发的一个免费、轻量级、开源的系统框架。SpringBoot的主要设计思想是约定大于配置,因此SpringBoot在设计时几乎达到零配置。SpringBoot集成了业界的开源框架。
SpringBoot是一个非常强大的后台框架,因为SpringBoot的开发基本上不需要写配置文件,所以利用SpringBoot来构建网站的后台环境,在SpringBoot的YML配置文件中写项目启动端口,项目就可以启动了。项目的Java和静态文件由SpringBoot管理。
2.4 B/S架构
B/S(Browser/Server,浏览器/服务器)模式,是一种架构模式,属于WEB发展后的所出现的一种网络构造,而WEB又是主要的浏览器应用商品软件。B/S架构模式不仅将系统的重新开发、维修及利用等简单化,更将其重点放到了服务器上[8]。它使客户端得到了统一,服务器上集中了系统功能的最关键部分。
B/S架构的工作模式是浏览器发出请求后服务器进行相应的响应。Internet上文本、图片、动画等信息主要由Web服务器产生,而用户主要是通过浏览器访问这些信息。在Web服务器上下载程序时,如果在下载过程中遇到某些与数据库相关的指令,可以将这些指令交给数据库服务器来解释、进行执行。B/S架构工作流程图如2-1所示:
图2-1 B/S架构工作流程图
2.5 Vue框架
Js是用于构建用户界面的增量框架。与其他重量级框架不同,Vue使用自下而上的增量开发设计。Vue的核心库只关注视图层,这很容易学习并与其他库或现有项目集成。另一方面,Vue完全能够驱动使用Vue生态系统支持的单个文件组件和库开发的复杂单页应用程序。
Vue.js的目标是使用最简单的API实现响应数据绑定和复合视图组件。
Vue.js本身并不是一个通用框架,它只关注视图层。因此,很容易学习并与其他库或现有项目集成。另一方面,当与相关工具和支持库一起使用时,Vue js还可以驱动复杂的单页应用程序。
3系统分析
需求分析是研发人员经过调研和分析后准确理解客户需求,确定系统需要具备的功能。然后对系统进行可行性和功能分析,确保符合企业人力资源管理系统的实现价值,对后续的系统创建有显著的帮助。
3.1系统可行性分析
3.1.1技术可行性分析
基于B/S架构开发的企业人力资源管理系统,技术方面应用了目前市面上比较主流的springboot框架,数据库采用mysql,以tomcat作为服务器,这些技术非常的成熟,在市面上有非常多成熟使用的案例,从技术角度是没有问题的,并且在学校的学习中对于这些技术就会有了一定的掌握,开发过类似的项目。
3.1.2经济可行性分析
企业人力资源管理系统大都是区域性的管理,系统中维护的范围不会非常大,因此数据并发量不会非常高,在数据并发量不是很高的情况下,系统的资源配置相对较低,用户所需要的客户端普通的电脑即可胜任。并且企业人力资源的管理系统还会提高效率减少纸质物品的使用,节约纸质资源。避免很多的人力消耗和资源浪费。从系统的开发角度分析,此次项目的开发软件全部都是开源且免费的。不需要在开发中投入经济成本,只需要专注于开发的内容即可,不会产生相应的开发费用。系统稳定使用后系统不会有过多的运维成本,投入使用后会在实际工作中发挥出重要的作用。
3.1.3法律可行性分析
企业人力资源管理系统是自己独立设计的,该系统是本人开发出来做毕业设计之用,并不会侵犯他人、集体和国家的利益。该系统使用正版软件开发,所有参考资料都是正规网站查询分析得出,开发的技术完全是开源免费的工具,百分百遵守国家法律法规。不会出现任何违反国家的政策和法律的。
3.2系统性能分析
- 系统安全性
企业人力资源管理系统中,系统的安全性要有一定的保障,不仅要保证系统数据存储足够安全,还要保障数据传输过程安全,还要保证对用户权限管理是合理的。保证一些意外情况发生,导致系统数据缺损时,会有历史数据备份对数据进行还原。
- 可维护性和适应性
世界是在不断进步的,互联网也在不断发展,随着行业发展,对企业人力资源管理系统可能会产生新的需求,好的系统应该具有可扩展性,无论在现在还是未来,都能够满足用户需求,可以长期使用本企业人力资源管理系统。
- 可靠性
企业人力资源管理在发展进步,企业人力资源管理系统会越做越大,到时候系统的访问量就会比现在多很多,企业人力资源管理系统要足够可靠,能够在并发量高的情况下,依旧保持优越的运行速度、容错能力。
3.3功能需求分析
系统的目标是为管理员和员工搭建一个网上沟通平台,保证双方的安全,并使双方的利益最大化。
3.3.1管理员需求分析
管理员端的功能主要是开放给系统的管理人员使用,能够对其他的员工进行管理,主要有部门管理、员工管理、员工档案管理、员工考勤管理、请假信息管理、考勤表管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理、用户信息等功能。并进行查看,修改和删除等操作,对系统整体运行情况进行了解。管理员用例分析图,如图3-1所示。
图3-1管理员用例分析图
3.3.2员工需求分析
员工的功能主要是对个人账号和密码进行更新管理,对员工考勤管理、请假信息管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理、用户信息等功能进行查看详情等操作。员工用例分析图,如图3-2所示。
图3-2员工用例分析图
3.4系统流程分析
在本系统,非本系统的用户要想进行企业人力资源管理就要注册本系统,登录时需要填写相应的资料,如有使用者,则会显示使用者名称已经存在,请再次键入使用者名称的提示框,若使用者不存在,则填写密码、确认密码等资料,并由系统判定密码与确认密码相符,确认无误后,填写使用者所填写的资料,即可进行登记。而且,为了保证系统的安全,只有在登录了本系统以后,才能进入系统后台操作。该系统的工作流程见图3-3所示。
图3-3 程序流程图
系统登录流程,通过输入账号、密码登录,系统会验证账号与密码是否正确,正确时系统会判断账号类型再进入不同的后台;不正确时,会返回到登录的第一步,输入用户重新执行登录流程。该流程如图3-4所示。
图3-4登录流程图
4系统设计
4.1功能模块设计
对本系统进行全面的系统功能的分析,可以得出企业人力资源管理系统的功能模块图,如图4-1所示。
图4-1 系统功能模块图
4.2数据库设计
4.2.1数据库设计原则
要学习程序设计,如果你想了解数据库管理系统或根据要求开发的系统接口,你必须创建一个数据库管理系统模型来存储数据。这样,当您在应用程序编程过程中,就不需要将信息加载到操作系统页面,从而提高整个系统的工作效率。信息库管理系统中存储着许多数据,应该说是管理信息系统建设的中心和基础。信息库管理系统还为管理信息系统的建设提供了添加、删除、更改和搜索的操作功能,使管理信息系统建设能够快速查询所需的数据,而不是直接从程序代码中查找。信息库管理系统通过按照特定的方法将信息表的各个组成部分组合起来,准确地组合、分类并构成信息库管理体系。
4.2.2系统E-R图
本毕业设计的E-R图描述了在系统中各个实体之间的联系,以下是对部分主要的关键实体:将“员工管理、员工档案管理、员工考勤管理、请假信息管理、考勤表管理、绩效考核管理”等作为实体,它们的局部E-R图,如图4-2所示:
图4-2局部E-R图
4.2.3数据库表设计
企业人力资源管理系统的数据以一个个数据表的方式存储在数据库中,这一个个数据表示系统调取数据的基础,在进行系统数据库搭建时,会根据这些设计好的数据表进行优化搭建。系统选用MySQL数据库,对各表进行了详细的说明如下:
表4-1:合同终止
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
hetongwenjian | longtext | 4294967295 | 合同文件 | ||
zhongzhiriqi | date | 终止日期 | |||
beizhuxinxi | longtext | 4294967295 | 备注信息 | ||
dengjiriqi | date | 登记日期 | |||
crossuserid | bigint | 跨表用户id | |||
crossrefid | bigint | 跨表主键id |
表4-2:员工薪酬
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuefen | varchar | 200 | 月份 | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
dixin | int | 底薪 | |||
jixiaojiang | int | 绩效奖 | |||
gangweibutie | int | 岗位补贴 | |||
quanqinjiang | int | 全勤奖 | |||
jiabanfei | double | 加班费 | |||
kouwuxianyijin | double | 扣五险一金 | |||
qitakoukuan | int | 其他扣款 | |||
shifagongzi | double | 实发工资 | |||
gongzibeizhu | longtext | 4294967295 | 工资备注 | ||
dengjiriqi | date | 登记日期 |
表4-3:配置文件
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
name | varchar | 100 | 配置参数名称 | ||
value | varchar | 100 | 配置参数值 | ||
url | varchar | 500 | url |
表4-4:员工考勤
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
dakashijian | datetime | 打卡时间 |
表4-5:部门
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
bumen | varchar | 200 | 部门 |
表4-6:员工档案
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
xingbie | varchar | 200 | 性别 | ||
touxiang | longtext | 4294967295 | 头像 | ||
shoujihaoma | varchar | 200 | 手机号码 | ||
ruzhishijian | date | 入职时间 | |||
zaizhizhuangtai | varchar | 200 | 在职状态 | ||
danganwenjian | longtext | 4294967295 | 档案文件 | ||
dengjiriqi | date | 登记日期 | |||
crossuserid | bigint | 跨表用户id | |||
crossrefid | bigint | 跨表主键id |
表4-7:员工
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
mima | varchar | 200 | 密码 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
xingbie | varchar | 200 | 性别 | ||
nianling | int | 年龄 | |||
shoujihaoma | varchar | 200 | 手机号码 | ||
touxiang | longtext | 4294967295 | 头像 |
表4-8:用户表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
username | varchar | 100 | 用户名 | ||
password | varchar | 100 | 密码 | ||
image | varchar | 200 | 头像 | ||
role | varchar | 100 | 角色 | 管理员 | |
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-9:token表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
userid | bigint | 用户id | |||
username | varchar | 100 | 用户名 | ||
tablename | varchar | 100 | 表名 | ||
role | varchar | 100 | 角色 | ||
token | varchar | 200 | 密码 | ||
addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP | ||
expiratedtime | timestamp | 过期时间 | CURRENT_TIMESTAMP |
表4-10:请假信息
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
qingjiariqi | date | 请假日期 | |||
qingjiatianshu | varchar | 200 | 请假天数 | ||
qingjiashuoming | longtext | 4294967295 | 请假说明 | ||
shenqingshijian | datetime | 申请时间 | |||
sfsh | varchar | 200 | 是否审核 | 待审核 | |
shhf | longtext | 4294967295 | 审核回复 |
表4-11:离职申请
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
lizhishuoming | longtext | 4294967295 | 离职说明 | ||
shenqingshijian | date | 申请时间 | |||
sfsh | varchar | 200 | 是否审核 | 待审核 | |
shhf | longtext | 4294967295 | 审核回复 |
表4-12:考勤表
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
yuefen | varchar | 200 | 月份 | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
chuqintianshu | int | 出勤天数 | |||
queqintianshu | int | 缺勤天数 | |||
chidaocishu | int | 迟到次数 | |||
zaotuicishu | int | 早退次数 | |||
qingjiatianshu | int | 请假天数 | |||
jiabanshizhang | double | 加班时长 | |||
beizhu | longtext | 4294967295 | 备注 | ||
dengjiriqi | date | 登记日期 |
表4-13:绩效考核
字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
id | bigint | 主键 | 主键 | ||
addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
kaoheyuefen | varchar | 200 | 考核月份 | ||
yuangonggonghao | varchar | 200 | 员工工号 | ||
yuangongxingming | varchar | 200 | 员工姓名 | ||
bumen | varchar | 200 | 部门 | ||
gangwei | varchar | 200 | 岗位 | ||
yuangongkaoqin | int | 员工考勤 | |||
gongzuotaidu | int | 工作态度 | |||
yewujineng | int | 业务技能 | |||
gongzuoxiaolv | int | 工作效率 | |||
jixiaozongfen | int | 绩效总分 | |||
kaoheriqi | date | 考核日期 |
5系统实现
5.1管理员功能实现
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。登录界面如图5-1所示。
图5-1管理员登录界面
管理员进入主界面,主要功能包括对系统首页、部门管理、员工管理、员工档案管理、员工考勤管理、请假信息管理、考勤表管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理、用户信息等进行操作。管理员主界面如图5-2所示:
图5-2管理员主界面
员工管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”员工表单。这些员工表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、档案、修改或删除员工信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便员工管理功能可以看到最新的信息或相应的操作反馈。如图5-3所示:
图5-3员工管理界面
员工档案管理功能在视图层(view层)进行交互,比如点击“查询或删除”员工档案表单。这些员工档案表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除员工档案信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便员工档案管理功能可以看到最新的信息或相应的操作反馈。如图5-4所示:
图5-4员工档案管理界面
员工考勤管理功能在视图层(view层)进行交互,比如点击“查询或删除”员工考勤表单。这些员工考勤表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除员工考勤信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便员工考勤管理功能可以看到最新的信息或相应的操作反馈。如图5-5所示:
图5-5员工考勤管理界面
请假信息管理功能在视图层(view层)进行交互,比如点击“查询、删除或审核”请假信息表单。这些请假信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除请假信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便请假信息管理功能可以看到最新的信息或相应的操作反馈。如图5-6所示:
图5-6请假信息管理界面
考勤表管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”考勤表表单。这些考勤表表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除考勤表信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便考勤表管理功能可以看到最新的信息或相应的操作反馈。如图5-7所示:
图5-7考勤表管理界面
绩效考核管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”绩效考核表单。这些绩效考核表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除绩效考核信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便绩效考核管理功能可以看到最新的信息或相应的操作反馈。如图5-8所示:
图5-8绩效考核管理界面
员工薪酬管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”员工薪酬表单。这些员工薪酬表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除员工薪酬信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便员工薪酬管理功能可以看到最新的信息或相应的操作反馈。如图5-9所示:
图5-9员工薪酬管理界面
离职申请管理功能在视图层(view层)进行交互,比如点击“查询、删除或审核”离职申请表单。这些离职申请表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、合同终止、修改或删除离职申请信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便离职申请管理功能可以看到最新的信息或相应的操作反馈。如图5-10所示:
图5-10离职申请管理界面
合同终止管理功能在视图层(view层)进行交互,比如点击“查询、修改或删除”合同终止表单。这些合同终止表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除合同终止信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便合同终止管理功能可以看到最新的信息或相应的操作反馈。如图5-11所示:
图5-11合同终止管理界面
5.2员工功能实现
员工进入主界面,主要功能包括对系统首页、员工考勤管理、请假信息管理、绩效考核管理、员工薪酬管理、离职申请管理、合同终止管理、用户信息等进行操作。员工主界面如图5-12所示:
图5-12员工主界面
员工考勤管理功能在视图层(view层)进行交互,比如点击“查询或添加”员工考勤表单。这些员工考勤表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看员工考勤信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便员工考勤管理功能可以看到最新的信息或相应的操作反馈。如图5-13所示:
图5-13员工考勤管理界面
请假信息管理功能在视图层(view层)进行交互,比如点击“查询、添加或删除”请假信息表单。这些请假信息表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看、修改或删除请假信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便请假信息管理功能可以看到最新的信息或相应的操作反馈。如图5-14所示:
图5-14请假信息管理界面
绩效考核管理功能在视图层(view层)进行交互,比如点击“查询”绩效考核表单。这些绩效考核表单动作被视图层捕获并作为请求发送给相应的控制器层(controller层)。控制器接收到这些请求后,调用服务层(service层)以执行相关的业务逻辑,例如验证输入数据的有效性和与数据库的交互。服务层处理完这些逻辑后,进一步与数据访问对象层(DAO层)交互,后者负责具体的数据操作如查看绩效考核信息,并将操作结果返回给控制器。最终,控制器根据这些结果更新视图层,以便绩效考核管理功能可以看到最新的信息或相应的操作反馈。如图5-15所示:
图5-15绩效考核管理界面
6系统测试
每个系统在经过开发者的设计与研究之后,在真正投入使用之前都需要对该系统进行专业的测试。对系统进行简单的测试可以判断它是否满足说明书中所描述的功能,并且可以找出系统设计中存在的问题以此来优化系统。系统测试的方法很多,对本系统主要采取黑盒测试对系统的功能以及性能进行测试。
6.1系统测试内容
6.1.1 登录测试
登录页面测试,测试用户admin用户名的账号系统,测试结果如表6-1所示。
表6-1 登录测试
1.0 | |
所属模块 | 登录 |
操作步骤 | 在登录输入框中输入本人的密码和用户名,并点击登录按钮执行登录操作。本系统将验证用户输入的登录信息。如果信息无误,它将成功登录并跳转到个人主页,反之则弹出提示框,提示信息无效。 |
预测结果 | 如果错误输入,则会提示登录失败,请检查您的账号重试。 |
实际结果 | 在输入框里输入错误的账号或密码,弹出登录失败,请检查您的账号重试的提示框。 |
6.1.2 角色测试
系统的管理层可在此模块进行以下操作:新增角色;删除角色;修改角色基础信息;给角色设置数据权限。以权限名称:xx,权限字符:admin,菜单权限:系统管理为例对该模块进行测试。对该功能的测试操作如表6-2所示:
表6-2 角色管理测试过程及结果
测试项 | 测试用例 | 测试特性 | 用例描述 | 系统反应 | 测试结果 | |
角色管理 | 权限名称:xx,权限字符:admin 菜单权限:系统管理 | 功能测试 | 添加一个新角色,基础信息与已有角色完全一致 | 添加失败,提示“该角色已存在” | 通过 | |
角色管理 | 权限名称:xx权限字符:admin 菜单权限:系统管理 | 功能测试 | 按关键词搜索角色信息 | 查找成功 | 通过 | |
权限名称:xx,权限字符:admin 菜单权限:系统管理 | 功能测试 | 删除系统中角色 | 删除成功 | 通过 | ||
角色管理 | 权限名称:aa,权限字符:boss 菜单权限:系统管理 | 功能测试 | 添加一个新角色,基础信息与已有角色均有所不同 | 添加成功 | 通过 | |
6.1.3 性能测试
性能测试主要是为了模拟系统在多人使用的运行环境中测试系统的性能最大的承受压力。对关键的技术指标表示支持系统的运行速度,网络顺畅和并发的数量。当多个人使用时,系统不会崩溃。
(1)运行的速度:测试在不同计算机上运行时没有出现死机的情况。
(2)响应的时间:对最快,平均和最大的响应时间。经过测试,局域网应答时限参数能满足用户的需求,属于正常承受范围。
(3)支持并发节点数:系统在并发节点上达到45个时,网络运营的速度波动较大,时间延迟十秒之间,符合客户需求。
6.2测试用例执行结果
根据上述测试用例对系统进行测试。测试结果如表6-3所示。
表6-3 测试用例执行结果
测试项目 | 用例状态 | 测试结果 |
登录界面 | 已执行 | 测试通过 |
角色测试 | 已执行 | 测试通过 |
性能测试 | 已执行 | 测试通过 |
结 论
企业人力资源管理系统在经过系统的开发后,已经成功完成搭建。在搭建过程中,最开始的工作是从查阅相关资料开始的,通过企业人力资源管理系统资料查询和阅读,对整个企业人力资源管理系统有了整体的概念了解,然后对本企业人力资源管理系统进行分析设计,本次企业人力资源管理系统的诉求是实现用户的基本需求,所以在设计时,整个系统功能模块十分简洁,系统为管理员和员工两大模块。在系统具体实现过程中,先把系统数据库搭建,然后进行功能模块的代码编译,最后将所有模块进行整合,形成完整的企业人力资源管理系统。最后对系统进行了测试,测试结果符合预期。
系统仍然存在很多不足,各环节的流程没有做到非常精密的联系,逻辑上还有漏洞。从这些问题中吸取经验教训积累宝贵。
参考文献
[1]张振超,吴杰,陈序蓬.浅谈Java中Mysql数据库的连接与操作[J].信息记录材料,2022,21(02):144-145.
[2]李艳杰.基于MySQL数据库的数据安全应用设计[J].现代信息科技,2023,7(12):151-154.
[3]李洋,刘婷.MySQL数据库安全加固技术的研究[J].科技与创新,2023(13):120-122.
[4]赵将.Java语言在计算机软件开发中的应用[J].数字技术与应用,2023,41(03):160-162.
[5]韩延明.兴趣导向的第三方库案例教学探索与实践——以经管类专业Java程序设计课程为例[J].软件导刊,2023,(06):139-144.
[6]黎科.基于移动互联网和微课的Java程序设计课程教学实践[J].电子技术,2023,(04):184-185.
[7]石坤泉, 杨震伦. 基于MySQL数据库的数据隐私与安全策略研究 [J]. 网络安全技术与应用, 2020(01): 79+81.
[8]牛小宝. 基于MySQL的云数据库设计与实现 [D]. 南京邮电大学, 2020: 23-45.
[9]王晓华. 试析MySQL数据库性能的调优 [J]. 电脑编程技巧与维护, 2020(22): 48+82.
[10]李罡. 计算机网络安全分层评价防护体系研究 [D]. 吉林大学, 2020: 230+245.
[11]Andrew S.Tanenbaum著, 潘爱民译. 计算机网络(第4版) [M]. 北京: 清华大学出版社, 2020: 101-163.
[12]徐鹏涛. 基于Vue的前端开发框架的设计与实现[D]. 山东: 山东大学, 2020.
[13]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.
[14]Zerouali Ahmed,Mens Tom,Decan Alexandre,Gonzalez Barahona Jesus,Robles Gregorio.A multi-dimensional analysis of technical lag in Debian-based Docker images[J].Empirical Software Engineering,2021,26(2):34-39.
[15]Student Career Guidance using Spring Boot[J]. International Journal of Recent Technology and Engineering (IJRTE), 2022, 11 (2):
致 谢
经过几个月的深入学习和努力,我的毕业设计终于按计划顺利完成。本次毕业设计是对我们每天学习的理论的综合评估,也是对理论在实践中应用的调查。
首先,我要感谢我的老师定期检查和指导,使我的毕业设计成为高质量的作品,在整个项目的开发和设计过程中,他为项目的设计提供了宝贵的建议,框架的设计、代码的编写和论文框架的设计,他还向我推荐了许多有用的资料和文件,指导和建议对我有很大的帮助。在老师的指导和指导下,我的论文可以成功完成。
同时,我还要感谢在设计过程中帮助过我的同学们,我也要感谢这所大学多年来对我们的培养。学校教师为我们的课堂和辅导工作不懈努力,使我们掌握专业知识,提高处理实际问题的能力,这是我一生中难忘的经历。
在最后要祝愿学校的领导教师以及和我一起奋斗的同学们工作顺利,事业有成,也要祝愿学校的前景更加辉煌,越来越好!