摘 要
在如今这个人才需求量大的时代,各方企业为了永葆企业的活力与生机,在不断开 拓进取的同时,又广泛纳用人才,为企业的长久发展奠定了基础。于是,各个企业与部 门机构,都不可避免地会接触到人力资源管理的问题。
Hrm 是一款人力资源管理系统,其主要功能模块有员工个人信息修改、请假、员工 的薪资管理、考勤管理、社保管理。其中考勤管理实现了员工考勤状态的修改与员工考 勤月报表的导出,以及通过员工考勤记录的导入来实现员工考勤状态的判断。社保管理, 主要实现了员工社保的计算以及明细的修改。薪资管理,实现了员工工资的调整,以及 员工月工资报表的导出。 本项目采用了前后端分离的技术,前端是基于 Vue+ElementUI+Axios 开发的,后端 则是基于 Spring Boot+MyBatis Plus+ Jwt+Mysql。本项目实现了权限菜单管理,通过员 工的权限动态渲染菜单,并动态生成路由。通过 Jwt token 来判断当前登录的员工以及 员工的登录状态。
1.1选题背景
人力资源管理是企业运营中必不可少的一环,它关系到企业的前途与发展。尤其对 于中小微企业来说,对企业的发展有着举足轻重的作用。随着近年来,政府对创业项目 的大力扶持,我国创业型企业蓬勃发展。据统计,2019 年,我国创业企业数量已达 1810
万余家,占全国企业数的 97%,截止 2020 年,我国创业企业数量达到了 2030 万,同比 增长 10%。虽然我国创业企业的基数在不断增大,但是能够长久存活的企业却少之又少。 在创业初期,随着企业初具规模,大多数创业者开始将主要精力集中在市场调研和 开发产品上,而忽略了团队的内部管理。据调查,中国企业的平均寿命是 7.02 年,但
70%的企业存活不超过 5 年,究其原因有很多,其中最重要的一点就是,人力资源管理 未能有效推动企业向前发展。
1.2选题目的
在传统人事信息管理的模式下,各岗位的人事信息往往是独立,且需要单独分配人 员进行管理,提高了维护信息的成本。由于数据互不相通,所以在进行人事调动的时候 往往做了重复的工作。 通过开发一款人力资源管理系统,大大减少了企业人事管理的劳动力成本,运用大 数据对人力资源进行精准调控和分配。
1.3选题意义
随着计算机技术的不断进步和现代经济的不断发展,传统的管理技术已经不能满足 企业的需要,人力资源管理系统越来越受到企业的重视。 人力资源管理是企业生存发展的关键,它可以改善和加强企业的管理,企业要想进 行一项生产活动和做出一些远景规划,就应该重视人力资源的分配与规划作用。通过一 系列的考核、激励、打卡制度,对员工的工作积极性和业绩进行考察。使得创业者能够 对企业的发展状况有更加细致的了解,并及时做出合理的调整,充分发挥员工的潜力。 无论是企业还是小型机构中,人力资源管理都是一个永远都离不开的话题,其对公 司的发展是极其有意义的。
2.1前端技术
2.1.1 Vue
Vue 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设 计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第 三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,
Vue 也完全能够为复杂的单页应用提供驱动。
2.1.2 Axios
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中,用于前 端向后端发起请求,它拥有全局的请求和响应的拦截,可以非常方便的处理请求异常的 问题。
2.2 后端技术
2.2.1 Spring Boot
Spring Boot 是 Spring 项目下的子项目,旨在快速开发应用,相比于 Spring,Spring Boot 避免了繁重的 xml 配置,它还采用了约定优于配置的软件设计范式,并提供了大量 开箱即用的依赖模块,并且通过少量的配置,就能快速的搭建项目。
2.2.2 MyBatis Plus
MyBatis 是一款优秀的持久层框架,通过 XML 文件或注解配置来完成实体类与数 据库之间的映射,舍弃了传统的 preparedStatement 设置参数操作数据库和使用 resultSet
获取结果集的过程。
MyBatis Plus 是由苞米豆团队开发的一款 MyBatis 增强工具,为简化数据库操作, 提高开发效率为生。在 MyBatis 的基础上提供了常用的 crud 方法,甚至不需要配置
Mapper.xml 文件都能对数据库进行基础的操作。除此之外,MyBatis Plus 还提供了自动 分页、代码生成的功能,通过配置相应的模板,就能一键生成绝大部分的后端代码,真 正做到了简化开发。
2.2.3 JWT
JWT 全称 JSON Web Token,是目前比较流行跨域验证方案。相比于 session,session
生成的用户数据都会保存在服务器端,服务器只给用户的返回一个 sessionId,下次访问 这个网站时,通过 cookie 将 sessionId 传递给服务器,从而得到相关的用户信息。毫无 疑问,在这种情况下,服务器的内存会被大大的消耗,会带来一些性能开销。若服务器 突然宕机,保存在服务器的用户数据就会消失,用户再次访问服务器就会被认为是第一 次登录。 而 JWT 是保存在浏览器本地的,当用户第一次访问服务器,并且登录成功了,服 务器会根据用户的唯一标识信息(比如 id),生成一个加密的 token,并返回用户信息。 只要用户每次访问服务器的时候,在请求头中携带上 token,后端的拦截器获取 token, 验证签证信息通过之后,就允许访问。
2.2.4 Swagger
Swagger 是一款用于生成 Api 接口文档的工具,通过简单的注解配置,就可以将后 端人员编写的接口,以文档的方式呈现。同时它还拥有简单的在线测试功能,相当于一 个小型的 postman。 通过 Swagger 文档,极大地减少了前后端人员的交流成本,将前后端正真的连接起 来。
3.1功能结构设计
本系统主要分四个模块,分别是系统管理和权限管理、薪资管理、考勤管理,系统 管理主要用于日常事务管理管理,权限管理,用于控制员工的访问权限,薪资管理主要 是对员工的五险一金以及社保数据的修改和添加,考勤管理主要是对员工的日常打卡进 行记录和统计。
图 4.1 系统功能结构图
4.1登录
此模块完成了员工的登录功能,员工通过工号和密码进行登录。若员工状态异常则 无法登录。
图 5.1 登录页面
4.2个人信息编辑
此模块实现了员工个人信息的查看与修改,员工可以进行个人头像的修改。
图 5.2 个人信息编辑页面
4.3修改密码
此模块完成了的员工个人密码的修改,若员工修改的密码与上一次密码项目,则提 示修改失败。
图 5.3 密码修改
4.4首页图表展示
首页主要展示了当前员工的一些基本信息,以及个人在当月的考勤情况。另外显示 了系统的一些基本数据。
图 5.4 首页
如需项目源码与文档请私信!!!
标签:Vue,管理,ElementUI,员工,源码,MyBatis,企业,考勤 From: https://blog.csdn.net/m0_74283290/article/details/140908603