بدون توضیح

zbLiuLiu 1613a6e3e0 first commit 7 ساعت پیش
.github 1613a6e3e0 first commit 7 ساعت پیش
backend 1613a6e3e0 first commit 7 ساعت پیش
deploy 1613a6e3e0 first commit 7 ساعت پیش
docs 1613a6e3e0 first commit 7 ساعت پیش
frontend 1613a6e3e0 first commit 7 ساعت پیش
scripts 1613a6e3e0 first commit 7 ساعت پیش
tests 1613a6e3e0 first commit 7 ساعت پیش
.gitignore 1613a6e3e0 first commit 7 ساعت پیش
AGENTS.md 1613a6e3e0 first commit 7 ساعت پیش
README.md 1613a6e3e0 first commit 7 ساعت پیش

README.md

组织人事管理平台

这是一个面向内部软件测评模拟检测的企业人力资源管理系统样本程序。项目采用单企业、单租户、前后端分离、模块化单体架构,覆盖员工档案、招聘、入离职、考勤、薪酬、绩效、权限审计、报表导出、接口集成等业务。

技术栈

  • 后端:Java 21、Spring Boot 3.5、Spring Web、Validation、Security、Data JPA、Actuator、Flyway、PostgreSQL、Redis、RabbitMQ
  • 前端:Vue 3、TypeScript、Vite、Pinia、Vue Router、Element Plus
  • 测试:JUnit 5、Testcontainers、Playwright、k6、ZAP API Scan
  • 部署:Dockerfile、Docker Compose、GitHub Actions

启动方式

scripts/dev-up.sh

启动后访问:

停止:

scripts/dev-down.sh

默认账号

默认密码均为 ChangeMe123!

账号 角色
sys_admin SYSTEM_ADMIN
hr_admin HR_ADMIN
recruiter_01 RECRUITER
manager_01 DEPT_MANAGER
payroll_admin PAYROLL_ADMIN
employee_0001 EMPLOYEE_SELF
auditor_01 AUDITOR
integration_client INTEGRATION_CLIENT

登录页不提供账号密码快捷填充。完整功能验收建议手动输入 sys_admin;人事权限边界测试建议使用 hr_admin;薪酬、审计、集成等模块请分别使用对应角色账号验证最小权限。

模块清单

  • 员工档案:部门树、岗位、员工主档、编辑、转岗、离职流程、归档、附件元数据、敏感字段脱敏。
  • 招聘:招聘需求、候选人、面试安排、面试通过/不通过/未参加、Offer 接受/拒绝、转入职、未到岗。
  • 入离职:后台新建入职单和离职单、清单勾选、账号激活、离职交接、账号停用、流程取消。
  • 考勤:班次、签到签退、异常识别、请假申请、同意/拒绝审批、考勤记录修正、CSV 导入任务。
  • 薪酬:期间、薪资项目、部门/员工薪酬变量、公式核算、复核、审批、锁定、工资单发布。
  • 绩效:周期发布与编辑、模板权重校验、目标、自评、经理评分、绩效记录修正、分布统计。
  • 权限审计:JWT、Refresh Token、登录锁定、角色权限、数据范围、审计 hash 链。
  • 报表导出:人员结构、招聘漏斗、考勤汇总、薪酬汇总、绩效分布、CSV/XLSX 异步导出;前端下载使用带令牌的文件请求。
  • 接口集成:受限查询、签名校验、幂等键、Webhook 事件。
  • 权限管理:角色、权限、角色权限关系、数据范围配置。
  • 任务监控:导入任务、导出任务、集成事件、失败任务摘要。

测试方式

后端单元测试:

cd backend
./mvnw test

前端构建:

cd frontend
npm ci
npm run build

冒烟测试:

scripts/run-smoke.sh

性能测试:

scripts/run-k6.sh tests/perf/login.js
scripts/run-k6.sh tests/perf/employee-search.js

安全扫描:

scripts/run-zap-api-scan.sh

故障注入

lab profile 支持通过环境变量控制故障点:

  • LAB_EXPORT_DELAY_MS:导出额外延迟
  • LAB_PAYROLL_DELAY_MS:薪酬核算额外延迟
  • LAB_WEBHOOK_FORCE_5XX:Webhook 接收端返回失败
  • LAB_FORMULA_EXCEPTION:薪酬公式异常
  • LAB_CACHE_DISABLED:关闭幂等键缓存写入

备份恢复

scripts/backup.sh
scripts/restore.sh storage/backups/backup.sql

常见问题

  • 首次启动会生成 2000 名员工、500 名候选人和 180 天考勤数据,初始化需要一些时间。
  • 如果端口被占用,请修改 deploy/docker-compose.yml 的端口映射。
  • 如果 Docker 未启动,后端可用本地 Maven 构建,前端可用本地 Node 构建。