基于SpringBoot+Vue的人事管理系统
一、项目概述
1.1 项目背景
在现代化企业运营过程中,人力资源管理涉及招聘、员工档案、考勤加班、培训、绩效薪酬、部门管理等大量业务。传统人工 Excel 登记方式效率低下、数据难以统一汇总,招聘信息无法对外线上展示,求职者不能在线浏览岗位投递简历;人事专员、管理员难以系统化管控全流程人事业务。
为解决企业人事数字化管理需求,开发基于 SpringBoot 的人事管理系统,采用 SpringBoot + Vue 前后端分离架构,搭建面向求职者的前台展示门户与面向企业人事人员、系统管理员的后台管理平台,实现招聘、员工、考勤、绩效、薪酬、培训、公告一体化线上人事管理。
1.2 项目目标
前台求职者门户:浏览招聘岗位信息、查看培训信息、查阅公告、浏览薪酬标准、绩效标准;求职者在线投递简历;进入个人中心管理投递记录。
人事专员角色:管理招聘信息、处理简历投递、维护培训信息、绩效薪酬标准、管理员工档案、处理考勤、加班、请假申请。
超级管理员角色:拥有最高权限,管理部门、所有员工、人事专员账号、全部人事数据、考勤审批、日志管理、公告发布等全部后台功能。
搭建前后端分离架构,页面交互友好,实现人事业务流程线上化、规范化,降低企业人事管理成本。
1.3 技术选型
后端技术栈
核心框架:SpringBoot 2.7.x
持久层框架:MyBatis / MyBatis-Plus
数据库:MySQL 8.0
工具包:Lombok、Hutool
文件上传:简历文件、图片上传管理
权限认证:Token / 会话登录鉴权
项目构建:Maven
前端技术栈
基础框架:Vue2/Vue3 + Vue-CLI
UI 组件库:Element UI / Element Plus
网络请求:Axios
路由:Vue Router
富文本编辑器:用于公告、培训内容编辑
部署环境
SpringBoot 内置 Tomcat;支持 Windows/Linux 服务器部署;前端打包 dist 部署 Nginx,实现前后端分离部署。
1.4 系统角色划分
普通求职者(前台用户)
前台网站注册登录;浏览招聘岗位、培训信息、公告、薪酬绩效标准;在线投递简历;个人中心查看简历投递与面试状态。人事专员
后台登录,负责招聘信息维护、简历筛选、员工信息管理、培训信息维护、绩效薪酬标准维护、处理员工考勤、加班、请假相关业务。超级系统管理员
最高权限账号,管理部门信息、人事专员账号、全部员工档案、考勤审批、操作日志、公告管理,拥有后台全部菜单访问权限。
二、系统功能需求分析
2.1 前台求职者门户功能
顶部导航菜单:首页、薪酬标准、公告信息、培训信息、绩效标准、招聘信息、个人中心
首页模块
顶部轮播 banner;招聘信息推荐卡片展示(岗位名称、薪资待遇、专员信息);培训信息展示板块;提供入口查看更多内容。招聘信息模块
招聘岗位列表:支持岗位名称、专业要求、薪资待遇、专员账号多条件搜索;岗位类型标签筛选
岗位详情页面,查看完整招聘需求
投递简历功能:填写投递表单,上传个人简历附件,提交简历投递,系统自动记录面试状态(未面试 / 面试中 / 录用 / 淘汰)
薪酬标准模块
展示企业薪资制度、薪酬构成相关信息绩效标准模块
展示绩效考核规范、考核标准资料培训信息模块
展示企业员工培训相关公告、培训课程信息公告信息模块
公告列表展示,支持标题检索,查看企业通知公告详情个人中心
求职者查看自己所有简历投递记录、面试反馈状态。
2.2 后台管理系统功能
登录区分管理员、人事专员两种后台角色;求职者单独前台登录页面。
后台左侧菜单栏完整功能:
首页:后台系统欢迎主页
部门管理
维护企业部门数据,新增、修改、删除部门信息;支持名称搜索、查看部门详情。用户管理:管理前台注册求职者账号
人事专员管理:管理员维护人事专员后台登录账号
员工管理 / 人事档案
录入企业在职员工基础档案信息,统一管理员工资料。招聘信息管理
后台维护招聘岗位信息,新增岗位(办公环境图片、岗位名称、岗位类型、学历、薪资、工作时间等),管理所有岗位;查看求职者投递简历、跟进面试状态。培训信息管理
发布、编辑、删除企业培训相关信息。绩效薪酬管理(子菜单)
绩效考核:员工考核记录管理
薪酬标准:维护薪资标准,录入底薪、奖金、五险一金、绩效、全勤奖、扣款等薪酬构成,上传封面图片;支持新增、修改、删除
绩效标准:录入考核标准信息,上传封面、填写备注
工资信息:员工月度工资数据管理
考勤信息管理(子菜单)
打卡信息:员工上下班打卡记录
请假信息:员工请假申请管理、审批
加班申请:员工提交加班申请,专员 / 管理员进行审核回复
岗位调换:员工调岗申请处理
工作记录管理:员工日常工作记录维护
公告管理:后台发布、编辑、删除前台展示的系统公告
操作日志管理:记录后台所有人员操作行为,便于系统追溯
三、数据库核心表设计
(1)user 求职者用户表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键自增 |
| username | varchar | 登录账号(唯一) |
| password | varchar | 登录密码 |
| name | varchar | 姓名 |
| phone | varchar | 手机号 |
| create_time | datetime | 注册时间 |
(2)admin 超级管理员表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| username | varchar | 管理员账号 |
| password | varchar | 密码 |
| real_name | varchar | 管理员姓名 |
(3)hr_admin 人事专员表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| username | varchar | 专员账号 |
| password | varchar | 密码 |
| hr_name | varchar | 专员名称 |
| phone | varchar | 联系电话 |
(4)department 部门表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| dept_name | varchar | 部门名称 |
| remark | varchar | 备注信息 |
(5)employee 员工人事档案表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| emp_no | varchar | 员工工号 |
| emp_name | varchar | 员工姓名 |
| dept_id | bigint | 所属部门 id |
| position | varchar | 岗位 |
| phone | varchar | 联系电话 |
| entry_time | date | 入职时间 |
(6)recruit_position 招聘岗位表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| position_name | varchar | 岗位名称 |
| position_type | varchar | 岗位类型 |
| major_require | varchar | 专业要求 |
| edu_require | varchar | 学历要求 |
| salary | varchar | 薪资待遇 |
| work_time | varchar | 工作时间 |
| office_img | varchar | 办公环境图片 |
| hr_id | bigint | 所属人事专员 id |
| hr_name | varchar | 专员名称 |
(7)resume_deliver 简历投递表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| position_id | bigint | 招聘岗位 id |
| user_id | bigint | 求职者 id |
| deliver_time | datetime | 投递时间 |
| resume_file | varchar | 简历文件地址 |
| interview_status | varchar | 面试状态:未面试 / 面试中 / 录用 / 淘汰 |
(8)salary_standard 薪酬标准表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| title | varchar | 标准标题 |
| cover_img | varchar | 封面图片 |
| base_salary | decimal | 底薪 |
| bonus | decimal | 奖金 |
| insurance | varchar | 五险一金 |
| performance | decimal | 绩效 |
| full_attendance | decimal | 全勤奖 |
| deduct | decimal | 扣款 |
| remark | text | 备注 |
(9)performance_standard 绩效标准表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| std_name | varchar | 标准名称 |
| cover_img | varchar | 封面图片 |
| remark | text | 备注内容 |
(10)overtime_apply 加班申请表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| emp_id | bigint | 员工 id |
| emp_no | varchar | 员工工号 |
| emp_name | varchar | 员工姓名 |
| overtime_time | varchar | 加班时间 |
| remark | text | 加班备注 |
| apply_time | datetime | 申请时间 |
| hr_id | bigint | 处理专员 id |
| reply | text | 专员回复内容 |
| audit_status | varchar | 审核状态 |
(11)notice 公告信息表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| title | varchar | 公告标题 |
| cover_img | varchar | 封面图片 |
| content | text | 公告正文 |
| publish_date | date | 发布日期 |
(12)train_info 培训信息表
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 |
| title | varchar | 培训标题 |
| content | text | 培训内容 |
| img_url | varchar | 配图地址 |
| create_time | datetime | 创建时间 |
四、系统业务流程设计
4.1 求职者前台访问流程
访问人事系统首页,浏览招聘推荐、培训信息
导航进入招聘信息列表,筛选岗位、查看岗位详情
选择意向岗位,填写表单、上传简历完成投递
浏览薪酬标准、绩效标准、公告、培训资讯
登录个人中心,查看所有简历投递记录与面试状态
4.2 后台人事专员操作流程
使用人事专员账号登录后台
维护招聘岗位信息,查看求职者投递简历,更新面试状态
录入薪酬标准、绩效标准信息
管理员工档案,处理员工加班申请、请假申请、考勤相关业务
发布培训信息、公告内容
4.3 超级管理员操作流程
管理员账号登录后台
管理部门、人事专员账号、全部员工档案
查看所有考勤、加班、请假申请,拥有终审权限
查看系统操作日志,管理全部公告、招聘、培训数据
五、页面原型说明(结合截图)
5.1 前台求职者门户页面
前台首页
顶部导航栏,首页轮播大图;招聘信息推荐卡片展示区、培训信息展示区。招聘信息列表页
多条件搜索框;岗位类型标签筛选;岗位卡片列表展示岗位名称、薪资、人事专员信息。简历投递页面
表单录入岗位信息、上传办公环境图,填写学历、薪资、工作时间;支持上传个人简历附件,选择面试状态,保存投递记录。公告 & 培训信息页面
标题搜索框,图文卡片列表展示公告 / 培训资讯,点击查看详情。
5.2 后台管理页面
后台登录页面
区分【管理员】【人事专员】角色登录入口;人事专员支持注册账号;求职者拥有独立前台登录页面。后台主布局
左侧垂直菜单栏、顶部标签栏,右侧表格操作区域;统一 CRUD 操作:新增、修改、删除、搜索、详情。部门管理页面
表格展示所有部门名称,支持搜索、新增部门、查看详情。绩效标准管理页面
表格展示标准名称、封面、备注;支持新增、修改、删除。新增薪酬标准弹窗
表单录入标题、上传封面图片;填写底薪、奖金、五险一金、绩效、全勤奖、扣款、备注,提交保存薪酬标准。加班申请管理页面
表格展示员工工号、姓名、加班时间、申请时间、专员回复、审核状态;支持专员回复与详情查看。
六、核心接口设计
6.1 用户登录注册接口
POST /api/user/register 求职者前台注册 POST /api/user/login 求职者前台登录 POST /api/admin/login 管理员/人事专员后台登录6.2 招聘岗位 & 简历投递接口
GET /api/recruit/list 前台获取招聘岗位列表(搜索+筛选) GET /api/recruit/{id} 获取岗位详情 POST /api/resume/save 求职者投递简历 GET /admin/resume/list 后台查询简历投递记录 PUT /admin/resume/status 修改面试状态6.3 薪酬绩效接口
GET /api/salary/list 前台获取薪酬标准列表 POST /admin/salary/save 后台新增薪酬标准 GET /api/performance/list 前台获取绩效标准 POST /admin/performance/save 后台新增绩效标准6.4 考勤加班接口
POST /api/overtime/apply 员工提交加班申请 GET /admin/overtime/list 后台查询加班申请列表 PUT /admin/overtime/audit 专员/管理员审核加班申请6.5 公告 & 培训接口
GET /api/notice/list 前台公告分页+标题搜索 POST /admin/notice/save 后台新增公告 GET /api/train/list 前台培训信息列表 POST /admin/train/save 后台新增培训信息6.6 部门 & 员工接口
GET /admin/dept/list 获取部门列表 POST /admin/dept/save 新增部门 GET /admin/employee/list 获取员工人事档案列表 POST /admin/employee/save 新增员工档案七、系统部署方案
数据库部署
安装 MySQL8.0,执行项目 SQL 脚本,初始化数据表、测试账号。后端部署
SpringBoot 项目打包 Jar 包,java -jar xxx.jar启动;yml 配置数据库连接地址、文件上传路径。前端部署
Vue 项目执行npm run build打包 dist 静态资源,部署 Nginx;配置反向代理转发后端接口,解决跨域问题。文件存储
简历附件、各类图片默认本地存储,可扩展为 OSS 云存储。
八、系统测试要点
功能测试
求职者注册登录、岗位浏览、简历投递完整流程;后台人事专员、管理员可以完成招聘、薪酬、考勤、部门的新增修改删除;所有搜索、分页、图片 / 文件上传正常。权限测试
求职者无法访问后台地址;人事专员不能操作管理员专属菜单;未登录用户不能提交简历投递。兼容性测试
前台门户适配 Chrome、Edge 主流浏览器;后台管理系统适配 PC 端。
九、系统扩展方向
增加在线打卡模块,实现员工手机上下班打卡
接入消息通知,加班、请假审核结果短信推送员工
增加员工绩效自动计算、工资自动核算模块
增加可视化数据看板:招聘入职统计、部门人员统计、考勤统计
开发微信小程序版本,员工移动端查看工资、提交请假加班申请
增加简历筛选、自动匹配岗位智能功能
十、项目总结
基于 SpringBoot 的人事管理系统采用前后端分离架构,分为前台求职者门户和企业后台管理系统两大模块。系统划分求职者、人事专员、超级管理员三类角色,覆盖企业招聘、员工档案、考勤加班、绩效薪酬、培训公告、部门管理全流程人事业务。
系统实现招聘信息线上对外展示、简历在线投递、内部人事业务数字化审批,替代传统线下 Excel 管理模式,规范企业人力资源管理流程,降低人事管理工作量,具备良好的实用性与商业落地价值。
十一、项目资料
👇🏻 精彩专栏推荐订阅👇🏻 在下方专栏👇🏻不然下次找不到哟
《Java精品推荐项目》
《springboot+vue项目100套》
《ssm项目100套》
《微信小程序合集》