这是一个面向中小型企业的HR管理系统,旨在替代Excel表格,实现员工信息、考勤、薪资的在线化管理。我负责整个后端接口的开发与数据库设计,并与前端(Vue)联调。
核心功能模块:
组织架构管理:树形结构的部门管理,支持无限层级。
员工管理:员工入职、转正、调岗、离职全生命周期管理,支持分页模糊搜索。
考勤与薪资:考勤数据导入,根据考勤自动计算基本工资、绩效、五险一金扣款,生成月度工资条。
角色权限(RBAC):基于Spring Security + JWT实现。不同角色(超级管理员、HR经理、普通员工)登录看到不同的数据和操作按钮。例如普通员工只能查看自己的薪资,HR可修改。
技术栈:Spring Boot, Spring Security, JWT, MyBatis-Plus, MySQL, EasyExcel。
权限控制:使用自定义注解@PreAuthorize在接口级别控制权限,例如@PreAuthorize(“hasRole(‘HR’)”)。
数据导出:集成EasyExcel,实现员工列表和工资单的动态导出功能,支持百万级数据分页导出。
日志记录:通过AOP切面实现操作日志记录,自动记录“谁、在什么时间、做了什么操作”到数据库。
API文档:使用Knife4j (Swagger增强) 生成规范的在线接口文档,方便与前端协作。