|
基于Spring Boot+Vue+ElementUI的人力资源管理系统,,整合了Activiti,实现工作流的请假审批
项目概述
本项目是一款基于Spring Boot+Vue+ElementUI的人力资源管理系统,有权限管理、财务管理、系统管理、考勤管理等功能模块。
技术栈
前端
Vue、Axios、ElementUI、Vue-Router、Vuex、ECharts
后端
Spring Boot、Jwt、MyBatis-Plus、MySQL、Hutool、Spring Security、Redis、Activiti
系统设计
功能模块
本系统主要分四个模块,分别是权限管理、财务管理、系统管理、考勤管理。
系统展示
首页
首页主要展示了员工以及系统的一些基本信息。 请假
在请假面板中,员工可以进行请假。在右侧的请假记录中可以查看以往的请假申请,或对当前未被审核的申请进行撤销。
对员工的请假进行审批,比如通过或驳回。员工申请请假之后,等待相关人员进行审批。如果审批通过,则将员工休假时间段的考勤状态设置为休假(但当请假类型是调休时,考勤状态要设为调休)。 五险一金
实现了对员工的五险一金进行管理,以及员工五险一金报表的导出。 薪资管理
实现了对员工的薪资进行管理,以及员工月薪资报表的导出。 考勤表现
实现了考勤数据的导入,以及月考勤报表的导出,员工考勤状态的查看与修改。
通过导入员工的考勤记录表,系统就会将员工的上下班时间与员工所在部门规定的上班时间进行比对,判断员工是否迟到、早退、旷工。 (这是数据导入的模板,需要按照此格式填写数据。系统只会读取上下班时间的时间部分,并以考勤日期作为打卡日期) 另外,介绍一下考勤规则: - 若考勤日期对应的是周末,则不判读员工考勤状态,默认为休假。
- 若考勤日期对应的是员工请假的日期,则员工考勤状态设为休假。
- 若考勤日期对应的是员工调休的日期,则员工考勤状态设为调休。
- 若员工的四个打卡时间,只要有一个为空,则员工考勤状态设为旷工。
- 若员工既迟到又早退,则员工考勤状态设为旷工。
- 若员工迟到,则员工考勤状态设为迟到。
- 若员工早退,则员工考勤状态设为早退。
- 若不是以上任何情况,则员工考勤状态设为正常。 考勤数据导入模板
加班详情
实现了加班数据的导入,以及月加班报表的导出,员工加班状态的查看与加班信息的修改。
通过导入员工的加班记录表(导入数据时,数据项有缺失的加班记录会被直接丢弃),系统会首先计算员工当天的加班总时长,然后再根据员工所在部门的加班规则等信息,对员工的加班状态进行判断。 加班类型: - 节假日加班:根据国家的节假日安排来判断当天是否是节假日。
- 休息日加班:将周末视为休息日;如果是休息日加班,部门可以选择不调休或者调休;当选择调休时,只有当员工当天的总加班时长不少于8个小时时,才可以获得一天的调休,否则没有调休。
- 工作日加班:工作日就是周一到周五。
加班费计算方式: - 以小时为单位:员工当天的总加班时长不能少于2小时,否则没有加班费;加班费 = 时薪 x 时长 x 倍数 + 奖金
- 以日为单位:员工当天的总加班时长不能少于8个小时,否则没有加班费;加班费 = 日薪 x 倍数 + 奖金
加班状态: - 若当天是休息日加班,部门选择了调休,并且员工当天的加班总时长不少于8个小时,则员工获得一天的调休,当天的加班状态设置为调休。
- 其他情况下,若员工当天的加班时长大于0,当天的加班状态设置为加班。
- 若不是以上任何情况,则员工加班状态设置为正常。
项目搭建
项目配置
前端 在.env文件中 - # 修改端口号,此端口号与在application.yml中配置的端口号相同
- VUE_APP_PORT = 8888
[color=rgb(51, 102, 153) !important]复制代码
后端 在application.yml中进行相关的配置 - # 这是后端项目的运行端口,可自行修改
- server:
- port: 8888
- # 配置多数据源,hrm是主数据库,保存系统业务信息;hrm_activiti是从数据库,保存工作流信息
- datasource:
- master:
- jdbc-url: jdbc:mysql://127.0.0.1:3306/hrm?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2b8
- username: root
- password: 123456
- driver-class-name: com.mysql.cj.jdbc.Driver
- type: com.zaxxer.hikari.HikariDataSource
- activiti:
- jdbc-url: jdbc:mysql://127.0.0.1:3306/hrm_activiti?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2b8
- username: root
- password: 123456
- driver-class-name: com.mysql.cj.jdbc.Driver
- type: com.zaxxer.hikari.HikariDataSource
- # redis配置
- redis:
- host: localhost
- port: 6379
- password: 123456
- database: 0
- lettuce:
- pool:
- max-idle: 16
- max-active: 32
- min-idle: 8
- # 因为此项目涉及到了文件上传与下载,此路径用来存储上传的文件。
- file-path: E:/project/idea/hrm/file/ # 修改为自己的路径
- # 因为每年的法定节假日是不确定的,这里我只列举了2024年的节假日,其他年份的可根据个人需要添加即可
- holidays:
- - 2024-01-01
- - 2024-02-10
- - 2024-02-11
- - 2024-02-12
- - 2024-02-13
- - 2024-02-14
- - 2024-02-15
- - 2024-02-16
- - 2024-02-17
- - 2024-04-04
- - 2024-04-05
- - 2024-04-06
- - 2024-05-01
- - 2024-05-02
- - 2024-05-03
- - 2024-05-04
- - 2024-05-05
- - 2024-06-08
- - 2024-06-09
- - 2024-06-10
- - 2024-09-15
- - 2024-09-16
- - 2024-09-17
- - 2024-10-01
- - 2024-10-02
- - 2024-10-03
- - 2024-10-04
- - 2024-10-05
- - 2024-10-06
- - 2024-10-07
[color=rgb(51, 102, 153) !important]复制代码
项目启动
以下内容需要积分高于 2 才可浏览
链接:https://pan.baidu.com/s/1FflUUCBlVvfDiKk8-u-bZA
提取码下载:
|
|
|