hr-system/docs/00-requirement/requirement-spec.md

398 lines
46 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 人事系统一期 需求规格说明书(SRS)
- 文档编号:HR-SRS-2026-001
- 版本:v3.1(2026-08-18,针对 QC 退回意见复核修订:修正批次条目计数、统一模块文档引用口径、补充中文标题命名;v3.0 补齐全部规格内容并落仓)
- 状态:提交评审(agent.requirement 正式交付件;本文档即《人事系统一期需求规格说明书》)
- 迭代:人事系统-初始迭代(ID:k1bIV7ab0-_EHo6E680kv),单迭代交付
- 需求来源:《开元云100人钉钉睿人事报价方案》功能清单(工作空间 `xlsx_dump.txt` / `docs/需求来源_钉钉睿人事功能清单.md`)
- 功能基线:已批准功能 29 项(见 `docs/00-requirement/approved-features.md`,含 feature ID 与优先级)
- 追溯矩阵:`docs/00-requirement/requirement-traceability.md`
- 配套文档:应用 `apps/hr-web.md`;模块 `modules/hr-org|hr-roster|hr-flow|hr-contract|hr-report|hr-system|hr-salary|hr-recruit.md`;设计基线 `docs/01-design/*`(迭代1组织人事底座 F01~F15)
- 技术口径:ocai 规范 —— 前端 bricks 组件体系 + dspy 声明式页面,后端 ahserver(Python),数据层 apppublic/sqlor(MariaDB)
---
## 1. 项目概述
### 1.1 背景
开元云拟采购对标「钉钉睿人事」的人事管理系统,账号规模 100 人,预算方案含组织人事(必选底座)、薪酬管理、招聘管理三大模块及部署服务。为摆脱按年付费的 SaaS 依赖,决定自研 Web 版人事系统(应用代号 **hr-web**),**一期(初始迭代)交付组织人事、薪酬管理、招聘管理三大模块的本地功能闭环**;所有外部系统对接(钉钉、税局、招聘平台、电子签、硬件等)统一放二期。
### 1.2 项目目标
1. 交付 100 人账号规模可用的组织人事 + 薪酬 + 招聘本地闭环系统。
2. 员工主数据(花名册)成为全系统唯一事实来源,入转调离全流程线上闭环。
3. 薪酬本地算税算薪(累计预扣法),工资条在线发放确认。
4. 招聘从职位/需求 → 简历/人才库 → 流程(初筛/面试/offer/入职)本地闭环。
5. 全部外部依赖留桩,二期可平滑接入。
### 1.3 一期范围总览(29 项已批准功能)
| 域 | 功能项数 | P0 | P1 | P2 |
|---|---|---|---|---|
| 组织人事(底座) | 12 | 5 | 6 | 1 |
| 薪酬管理 | 10 | 4 | 4 | 2 |
| 招聘管理 | 7 | 1 | 3 | 3 |
| 合计 | **29** | **10** | **13** | **6** |
**一期明确不做(范围外)**:钉钉通讯录/智能人事同步、考勤系统、电子签、视频面试、身份证硬件读卡、税局在线申报缴纳、招聘平台/猎企第三方真实对接、招聘官网对外公网发布(内网部署形态)、浏览器插件助手、AI 算薪公式解析(提供基础公式编辑器)。以上均在一期做**字段/接口/流程桩位预留**(见 §9)。
### 1.4 交付批次建议(同属一个迭代,分三批开发组织)
> 一期功能量大(29 feature),建议按依赖关系分三批滚动开发、分批验收,整体仍在「人事系统-初始迭代」内交付。
| 批次 | 内容 | feature 数 | 进入条件 |
|---|---|---|---|
| 批次1:底座+组织人事 | 系统管理与权限基座、组织管理、职位职级、花名册(含兼岗)、入职、转正与调动、离职、合同管理、员工服务与工作台、编制管理、项目式组织、人事报表 | 12 | 迭代启动即开始 |
| 批次2:薪酬 | 薪资档案与岗酬体系、薪资方案与算薪规则引擎、定调薪、发薪活动与薪资核算、薪资校验/锁定/发薪审批、个税(本地)、社保公积金、工资条、薪酬报表、成本与预算 | 10 | 批次1花名册/组织/流程/报表基线完成 |
| 批次3:招聘 | 招聘职位与需求、人才库与简历、招聘流程、招聘邮件与消息提醒、招聘渠道与猎企(本地)、招聘报表与面试登记、招聘官网与内推官网 | 7 | 批次1基线完成;批次2、3可并行(批次2 先行约 2 周以稳定算薪基线) |
批次依赖:批次2/3 均依赖批次1的「花名册员工主数据 + hr-flow 审批引擎 + 权限/日志基座 + 消息提醒通道」。
---
## 2. 用户角色与权限
### 2.1 角色定义
| 角色 | 代码 | 职责与权限概要 |
|---|---|---|
| 系统管理员 | admin | 角色/管理员/数据范围配置、操作日志、全部数据与配置、系统管理基座 |
| 人事(HR) | hr | 组织/花名册/入转调离/合同/薪酬核算/招聘全流程操作、流程配置、报表 |
| 部门经理 | manager | 数据范围内入转调离与薪酬/招聘审批、团队统计、下属关怀提醒;招聘中可作为用人经理/面试官 |
| 员工(自助) | employee | 个人档案查看与自助修改、发起人事审批、待办处理、工资条查看确认、企业政策/公告、招聘中可作为内推人 |
| 招聘扩展角色(批次3) | — | 招聘负责人(唯一,职位全权限)、招聘协助人(多位)、用人经理、面试官、候选人(仅官网/内推投递与登记表填写,无需系统账号) |
### 2.2 权限模型(可验收)
1. **管理角色**:admin 可创建角色并配置菜单/操作权限;未注册路径默认拒绝。
2. **数据范围**:支持「组织维度(部门集合含子树)」与「花名册字段维度(可见字段集合)」两类范围叠加;查询、报表、导出全部强制叠加数据范围。
3. **管理员管理**:admin 可创建管理员并授权角色与数据范围。
4. **敏感脱敏**:身份证号全角色脱敏(前3后3)、手机号(前3后4);薪资/职级等敏感字段仅 admin/hr 可见(字段定义 sensitive 标记驱动)。
5. **操作日志**:全量写操作留痕(操作人、时间、IP、前后值对比),可按时间/类型查询。
6. 招聘模块角色(批次3):职位级授权(招聘负责人/协助人/用人经理/面试官),数据范围与职位绑定。
---
## 3. 功能需求(29 项,输入/处理/输出/验收标准)
> 编号规则:FEAT-<批次>-<序号>;P0/P1/P2 为已批准 feature 基线优先级。
### 3.1 批次1:底座 + 组织人事(12 项)
#### FEAT-B1-01 系统管理与权限基座(流程引擎/权限/日志/API)[P0]
- **输入**:表单定义(字段引用花名册字段)、流程定义(节点/条件/审批角色)、角色与数据范围配置、操作行为。
- **处理**:①自定义入转调离等表单,花名册字段可被审批引用,多条件审批、节点字段权限;②审批角色管理(范围/操作/数据查看三维配置);③预置四类流程模板:人事流程(入职/转正/异动/离职/离职交接——一期落地)、考勤流程(桩位,表单可建但不联动考勤系统)、薪酬流程(定薪/调薪/发薪——批次2落地)、组合审批(入职定薪/转正调薪/异动调薪——批次2落地);审批通过自动回写花名册/薪资档案;④审批数据按表单/状态/发起人/编号/时间多条件查询、导出、在线打印;⑤权限管理(管理角色/人员范围/管理员);⑥操作日志前后对比;⑦API 开放接口一期仅预留鉴权与端点规范(外部集成对接二期)。
- **输出**:可配置表单/流程、流转中审批单、回写后的花名册与薪资数据、审批查询结果与打印件、日志记录。
- **验收标准**:①不写代码配置出入转调离 4 类审批流并完整流转;②审批通过自动更新花名册对应字段(状态/部门/职位/转正日期等);③数据范围外用户查询/导出不可见该数据;④敏感字段按角色脱敏展示;⑤任意写操作可在日志中查到前后值;⑥审批单可打印为 A4 版式。
#### FEAT-B1-02 组织管理(组织架构/时间轴/合同公司)[P0]
- **输入**:组织信息(编码、名称、类型、负责人、上级、生效时间、自定义字段)、Excel 导入模板、历史日期(架构图回溯)。
- **处理**:组织树查看/筛选;新建/编辑/变更/停用/移动组织;Excel 模板批量导入;组织字段自定义;组织架构图按层级/根节点展开、自定义显示内容、**按选定日期查看历史架构并导出图片**;时间轴记录节点新增/删除/拆分/合并/修改;合同公司管理(名称、统一社会信用代码等)。
- **输出**:组织树、历史架构图(图片导出)、变更时间轴、合同公司台账。
- **验收标准**:①三级以上组织树 CRUD 与移动生效且引用联动(员工任职部门随组织移动);②批量导入 ≥200 行成功率 100%(模板校验提示错误行);③选择任意历史日期可查看并导出当时架构图;④每次结构变更在时间轴留痕;⑤合同公司可被合同模块与入职流程引用。
#### FEAT-B1-03 职位职级体系(职位/职务/职级/职等/序列)[P0]
- **输入**:职位(编码/应用部门/职务/序列/类别/描述)、职务、职级(层级/类别/起止职等)、职等、序列(类别/名称/关联职级类别)定义;Excel 文件。
- **处理**:五套体系独立 CRUD、停用/启用、Excel 批量导入导出;体系间关联校验(职位→职务/序列,职级→职等)。
- **输出**:五套体系台账、导入导出文件、供花名册/薪酬引用的 options 数据。
- **验收标准**:①五套体系可独立维护且相互关联引用正确;②停用后不可被新业务引用,存量引用不受影响;③批量导入导出往返数据一致;④花名册任职信息引用职位/职级选项来自本体系。
#### FEAT-B1-04 花名册管理(含兼岗)[P0]
- **输入**:字段定义(文本/数字/选项/日期/附件等)、分组、员工数据、导入模板、员工自助修改申请。
- **处理**:①字段自定义与分组管理(工作信息/个人信息/绩效/培训等);②在线查看(附件预览、字段拖拽排序);③工号多规则自动生成(如子公司独立前缀);④员工自助修改(可配置可改范围与审核环节);⑤时间轴查看/编辑全周期信息;⑥员工分类规则(正式工/临时工等不同必填规则);⑦个性化搜索筛选;⑧批量导入(新增+修改)与自定义导出(指定数据日期/字段/顺序);⑨兼岗:一人多条兼岗记录(起止日期、兼岗职位),兼岗审批通过自动同步。
- **输出**:员工主数据(唯一事实源)、花名册视图、导入导出结果、时间轴、兼岗记录。
- **验收标准**:①字段增删改即时生效于列表/详情/导入导出模板;②工号按规则唯一生成,冲突报错;③自助修改走审核后生效并留痕;④导入 ≥500 行员工数据正确(含更新匹配),导出字段与顺序与配置一致;⑤兼岗审批通过后兼岗信息即时可用于查看与后续薪酬核算;⑥敏感字段按 §2.2 脱敏。
#### FEAT-B1-05 入职管理 [P0]
- **输入**:候选人信息(审批入职单/手动录入/登记表)、入职条件(人员类型/合同公司/办公地点)、黑名单库。
- **处理**:①审批入职:自定义入职审批单,按员工类型/部门匹配审批流,通过自动关联花名册;②手动入职:批量快速添加;③批量邀请待入职员工填写自定义入职登记表,上传完善信息;④**身份证信息一期手工录入**(字段:姓名/号码/有效期等,读卡硬件二期);⑤复职:离职员工再入职自动查找关联原任职记录;⑥黑名单校验:入职自动匹配拦截,待入职界面高亮标注;⑦入职通知/欢迎模板(数据自动填充,站内消息渠道)。⑧扫码入职:一期**降级**为系统内生成入职登记链接/二维码(内网可访问),候选人扫码填表进审批流(对外渠道二维码二期)。
- **输出**:待入职名单、审批流、转正后的花名册员工、入职通知。
- **验收标准**:①三种入职方式(审批/手动/登记表邀请)均走通并落花名册;②黑名单命中 100% 拦截且高亮提示;③复职自动关联历史任职记录;④登记表字段可配置、必填校验生效;⑤身份证手工录入保存并在档案展示(脱敏)。
#### FEAT-B1-06 转正与调动管理 [P1]
- **输入**:转正申请(员工自助/主管/管理员代发)、调动申请(类型:晋升/降级/调岗/组织架构调整)、批量人员名单、预计转正日期。
- **处理**:转正审批/手动转正,通过自动更新花名册状态与转正日期;按预计转正日期提前提醒管理员与直属主管(默认提前 7 天可配);调动查询(待确定/已确定/已取消 + 类型/生效日期筛选)、调动审批通过后关联员工档案、批量调动一单多人。
- **输出**:转正/调动记录、更新后的花名册、提醒消息、调动查询结果。
- **验收标准**:①转正/调动审批通过自动联动花名册与时间轴;②转正提醒按配置日期准确触达;③批量调动一次审批处理 ≥20 人且逐人生效正确;④调动记录可按状态/类型/日期完整检索。
#### FEAT-B1-07 离职管理 [P1]
- **输入**:离职申请(员工自助/主管/管理员代发)、离职原因、交接清单、黑名单操作。
- **处理**:①审批离职:通过后进入待离职名单,离职日期到达后员工状态转离职;②手动离职:管理员直接添加离职记录;③离职交接:审批、管理职责、团队信息交接,支持离职流程与交接的自动化规则(**钉钉资源交接二期**,交接项字段已含占位);④离职员工信息存储:可查可改,离职后仍可参与薪酬计算与报表;⑤离职证明自动开具,员工自助下载;⑥黑名单:离职人员一键加入黑名单,入职校验联动拦截。
- **输出**:待离职/已离职名单、交接记录、离职证明(PDF)、黑名单库。
- **验收标准**:①离职全流程闭环(申请→审批→交接→离职生效);②离职证明按模板自动生成并可下载;③一键加入黑名单后再入职被拦截;④离职员工数据保留且报表/薪酬可引用;⑤交接项完成率可视化。
#### FEAT-B1-08 合同管理(电子签除外)[P1]
- **输入**:合同台账记录(员工、合同公司、类型、起止日期)、合同类型定义、合同模板、审批单、提醒规则。
- **处理**:①台账在线管理,新增与批量导入;②合同类型自定义(劳动合同/保密协议/竞业协议等);③模板管理(为二期电子签自动生成合同文件预留,一期支持按模板生成合同文本供打印/下载);④合同审批:新签/续签/变更/终止;⑤到期提醒:自定义规则(提前天数、提醒对象:本人或管理人员)。
- **输出**:合同台账、审批记录、合同文本文件、到期提醒消息。
- **验收标准**:①台账 CRUD 与批量导入正常;②四类合同审批闭环;③到期提醒按规则准确触发(误差 ≤1 天);④合同关联员工与合同公司主数据;⑤esign_stub 桩接口与 esign_status 字段预留可查。
#### FEAT-B1-09 员工服务与工作台 [P1]
- **输入**:员工/经理/管理员登录会话、关怀文案配置、政策/公告文档、提醒规则配置。
- **处理**:①员工工作台:个人档案、工资条、个人绩效(桩位,绩效系统二期)、发起人事审批、待处理/已处理/我发起/我收到的审批管理;②经理工作台:权限范围内入转调离数据及审批、团队人事统计、关怀提醒(考勤/团队绩效桩位);③管理员工作台:权限范围内入转调离、合同、人事统计、关怀提醒;④生日/周年关怀:个性化文案到期自动推送;⑤企业政策发布(适用范围/查阅范围/下载权限);⑥企业公告在线查询预览;⑦多场景到期提醒:入职/转正/离职/退休/合同到期/健康证到期/社保缴纳等,自定义内容与时间,推送管理员或员工。
- **输出**:三类工作台页面、关怀与提醒消息、政策/公告库。
- **验收标准**:①三类工作台按角色与数据范围展示,越权不可见;②生日/入职周年当天按配置文案自动推送;③政策可设查阅范围与下载权限,范围外不可见/不可下载;④≥6 类提醒场景可配置并按期触发。
#### FEAT-B1-10 编制管理 [P1]
- **输入**:编制方案(周期:年度/季度/月度)、占编范围条件(员工类型/状态/职位/职级/自定义字段)、细分编制数量、人员异动事件。
- **处理**:多套编制方案;占编范围多条件筛选;编制细分并设定数量;实时计算超编/缺编及细分情况;人员异动(入职/离职/调动)联动编制自动校验并管控提醒(超编预警,一期为提醒不硬拦截);历史编制按时间查询。
- **输出**:编制方案台账、编制状态看板(超编/缺编)、管控提醒、历史编制快照。
- **验收标准**:①编制数据实时准确(异动生效后 1 分钟内刷新可见);②异动触发管控校验提醒;③历史任意时间点编制可回溯;④多套方案并行互不干扰。
#### FEAT-B1-11 项目式组织架构管理 [P1]
- **输入**:项目式组织定义(属性/编码/负责人/时间范围)、横向职务体系定义。
- **处理**:多维度多层级项目式组织创建,纵向部门与横向项目组/业务线自由组合;横向组织信息维护;横向组织职务体系维护并可被人事管理、薪资核算引用。
- **输出**:项目式组织台账、横向职务数据。
- **验收标准**:①项目组织可建可维护,员工可同时挂纵向部门与横向项目;②横向职务信息能被花名册/薪酬模块引用;③项目时间范围到期状态自动标识。
#### FEAT-B1-12 人事报表 [P2]
- **输入**:花名册、入转调离异动数据、维度配置。
- **处理**:①花名册信息分析:按员工类型/状态/年龄/学历/办公地点/性别等多维度分布,维度可自定义;②入职分析:按部门/地区/岗位多维度的数量与趋势;③转正分析:数量趋势 + 近期待转正数据;④调岗分析:近期调动数据;⑤离职分析:待离职人数、离职原因、离职率、同环比。数据全部受数据范围控制,可导出。
- **输出**:报表看板(图表)、明细列表、导出文件。
- **验收标准**:①五类分析齐备且维度可配置;②报表数据与花名册/异动数据实时一致(延迟 ≤5 分钟);③导出与页面数据一致;④数据范围外数据不出现在任何报表。
### 3.2 批次2:薪酬管理(10 项)
#### FEAT-B2-01 薪资档案与岗酬体系 [P0]
- **输入**:薪资档案字段定义(基本工资/岗位工资/固定补贴等,文本/数字/选项)、薪资标准(按职位/职级/序列匹配,固定值或带宽)、薪资包结构(按员工类型/岗位/签约主体)。
- **处理**:薪资档案字段自定义;薪资标准匹配与管控(固定值/带宽强弱管控);薪资包搭建并关联薪资标准;每字段可设管控规则(带宽管控、试用期折算比例、公式维护)。
- **输出**:员工薪资档案、岗酬标准库、薪资包模板。
- **验收标准**:①档案字段可配置并参与后续算薪;②定薪时按职位/职级自动匹配标准;③超出带宽的定薪按强/弱管控分别拦截或告警;④试用期折算比例自动生效。
#### FEAT-B2-02 薪资方案与算薪规则引擎 [P0]
- **输入**:薪资方案(薪资组分类、可复制创建)、算薪周期、核算项目与公式(计算因子:员工信息/手工数据)、手动录入数据。
- **处理**:①多薪资组统一设置,支持复制创建;②自定义算薪周期;③算薪规则:核算方式=系统自动集成/自定义公式/手动录入;公式引擎提供常用 Excel 函数与薪资专用函数(支持司龄补助、高温补贴、节假日补贴等场景),员工信息(部门/职位/司龄/学历/职称/职级)可作计算因子;薪资项备注;④薪酬累加器:累加同月同类薪资数据(合并计税);⑤离职结薪:按人员范围/离职日期选取结算;⑥薪资分段计算:人事信息/薪资数据变动自动分段(月中转正/异动),各段匹配对应规则。(AI 公式解析为增强项,一期提供基础公式编辑器。)
- **输出**:薪资方案、算薪规则、分段后的算薪结果。
- **验收标准**:①规则可配置且公式计算正确(抽样 20 组用例与 Excel 基准一致);②月中转正/异动分段计算结果准确;③同月多笔同类数据累加正确;④离职结薪可按条件选人结算。
#### FEAT-B2-03 定调薪管理 [P0]
- **输入**:定/调薪申请(生效时间/薪资包/明细)、审批流配置、批量人员名单。
- **处理**:①手工定/调薪直接改档案;②审批定/调薪(自定义样式/流程/发起人)通过后自动更新薪资档案;③批量定/调薪一单多人;④自动匹配薪资体系并联动薪资包管控规则,异常薪资报错提醒;⑤人事流程合并:转正调薪/调岗调薪等异动与调薪合并审批;⑥调薪历史完整记录。
- **输出**:薪资档案更新、审批记录、调薪历史。
- **验收标准**:①三种定调薪方式闭环;②管控校验与报错生效;③调薪历史可追溯(含操作人/时间/前后值);④转正调薪合并审批一次完成双回写。
#### FEAT-B2-04 发薪活动与薪资核算 [P0]
- **输入**:核算组选人条件(组织架构/员工类型/合同公司主体)、发薪活动定义、手动导入数据表格、算薪周期。
- **处理**:①核算组管理;②一月多次发薪,一人可在多个活动算薪,多结果合并计税;③人员核对:按入离职时间与周期自动生成算薪名单,比对上月入职/离职/差异名单,当月调薪人员校验提醒;④兼岗核对:展示兼岗周期与算薪周期匹配名单;⑤数据接入:一期手动导入(自动解析表格、识别内容、一键导入),考勤/绩效/审批/宜搭同步**二期钉钉对接,一期预留数据接入接口与导入模板**;⑥算税算薪:结合规则与本地个税计算得出个税明细与薪资结果(税局申报二期);⑦薪资结果一键导出 Excel。
- **输出**:算薪名单、算薪结果(含个税明细)、导出文件。
- **验收标准**:①算薪名单自动生成准确(与花名册入离职一致);②导入数据自动解析入库并与人员匹配;③算薪结果与公式引擎基准一致;④一月多次发薪合并计税正确;⑤导出 Excel 与页面一致。
#### FEAT-B2-05 薪资校验、锁定与发薪审批 [P1]
- **输入**:校验规则(与上月/固定值按差额或比例对比)、锁定操作、发薪审批配置。
- **处理**:①每项薪资数据可配校验规则;②智能校验:差异分析、异常识别、汇总异常人员名单;③薪资锁定:锁定后不可修改,解锁可更正(留痕);④发薪审批:自定义审批内容自动生成一键发送,审批内嵌薪资明细表在线预览。
- **输出**:异常名单、锁定状态、发薪审批单。
- **验收标准**:①校验规则命中异常并出名单(差额/比例两种模式);②锁定后写操作被拒绝,解锁留痕;③发薪审批含明细可在线预览并通过。
#### FEAT-B2-06 个税管理(本地计算,税局对接除外)[P1]
- **输入**:报税主体定义、员工个税档案(专项附加扣除手工维护)、工资数据、税后工资(倒算场景)。
- **处理**:①多报税主体在线管理及验证;②单一主体多地经营报税;③一人多主体报税管理;④员工增减员申报的**本地记录管理**(在线报送税务系统二期);⑤本地个税计算:累计预扣法自动计算,专项附加扣除手工维护(税局自动获取二期);⑥个税倒算:税后工资反算个税与当期收入额;⑦申报/缴纳记录管理(在线申报缴纳二期)。
- **输出**:个税明细、申报/缴纳记录台账、倒算结果。
- **验收标准**:①多主体场景数据隔离正确;②累计预扣法结果与税法计算一致(抽样 30 组用例含跨月累计);③倒算误差 ≤0.01 元;④专项附加扣除参与计算正确。
#### FEAT-B2-07 社保公积金管理 [P1]
- **输入**:企业社保账单文件、参保方案(地区/险种/基数范围/缴纳比例/取整规则)、员工社保档案。
- **处理**:①导入企业社保账单用于薪资计算;②参保方案按地区分别设置;③参保管理:在线维护员工社保档案(参保基数/险种/起止月份),可被算薪引用。
- **输出**:账单解析数据、参保方案、员工社保档案。
- **验收标准**:①账单导入解析正确(字段映射可配置);②参保方案计算准确(基数上下限与取整规则生效);③社保数据作为计算因子参与薪资核算正确。
#### FEAT-B2-08 工资条管理 [P1]
- **输入**:工资条内容配置(项目/备注/隐藏空项)、发放名单与时间、员工操作(查看/确认/签名/反馈)。
- **处理**:①工资条设置:自定义内容、单项备注、隐藏空数据项;阅后即焚、手写签名确认、员工反馈、自动确认;推送样式/背景图/关怀文案;②发放:匹配员工一对一发送(站内消息),分类定时发送,实时追踪查看/确认/签名状态;③查询:员工端查询,二次加密与水印;④留档:确认签字情况线上留档,导出 PDF。
- **输出**:工资条消息、确认/签名记录、留档 PDF。
- **验收标准**:①工资条一对一准确发放,状态追踪实时;②二次加密与水印显示生效;③签名确认后留档并可导出 PDF;④定时发送按配置时间执行。
#### FEAT-B2-09 薪酬报表 [P2]
- **输入**:薪资结果数据、维度配置。
- **处理**:①人员薪资明细表:任意周期(月/季/半年/年/自定义),按部门/职能/员工类型筛选;②成本拆分:按项目/门店/生产小组等自定义维度;③同岗位薪酬分析:对比同岗位/同职级薪酬带宽;④薪酬总量分析:按部门/职能/地区/合同主体多维度总量;⑤人均薪酬分析(层级/类型对比)。(人效分析依赖产出数据,一期仅预留指标位。)
- **输出**:薪酬报表看板、明细与导出。
- **验收标准**:①五类分析齐备;②数据与薪资核算结果一致;③全程受数据范围与薪资敏感权限控制(仅 admin/hr)。
#### FEAT-B2-10 成本与预算管理 [P2]
- **输入**:成本中心定义、成本方案(维度/成本项目/汇总逻辑)、拆分规则、预算方案与填报数据。
- **处理**:①成本中心架构搭建(属性自定义);②成本方案按部门/成本中心等多维度统计,成本项目关联薪资数据;③拆分规则(按人事信息/项目投入等多逻辑,一人多规则、成本项目单独拆解);④成本明细报表多维度联动薪酬总成本自动拆分统计;⑤预算方案多视角多周期;⑥预算在线填报与执行自动追踪;⑦预算分析(执行明细/成本占比)。
- **输出**:成本拆分结果、成本报表、预算执行追踪与分析。
- **验收标准**:①成本拆分结果可与薪资总额核对一致;②预算执行数据实时追踪;③多维度报表数据一致。
> 批次2合计 10 项(含薪酬报表、成本与预算两个 P2)。
### 3.3 批次3:招聘管理(7 项)
#### FEAT-B3-01 招聘职位与招聘需求管理 [P1]
- **输入**:职位信息(名称/部门/类型/级别/HC/招聘流程/负责人设置)、招聘需求(人数/要求)、审批流。
- **处理**:①职位审批:创建职位审批流程,HR/管理员发起,审批操作与结果页面展示;②职位发布:新建职位,设置招聘状态/招聘流程/关联 HC;负责人设置(招聘负责人唯一,拥有职位全部权限;协助人多可多位);③职位下四类角色账号:招聘负责人/招聘协助人/用人经理/面试官;④职位类型、级别设置;⑤招聘需求:单个/多个创建(HR/用人经理),需求审批(选审批流/发起/查看),需求状态调整(草稿/未进行中/已完成)。
- **输出**:职位台账、需求台账、审批记录、职位角色授权。
- **验收标准**:①职位与需求审批闭环;②HC 关联正确(需求→职位→候选人占用);③职位级角色权限生效(负责人唯一且全权限);④状态流转(草稿→进行中→完成)可操作可查询。
#### FEAT-B3-02 人才库与简历管理 [P1]
- **输入**:简历数据(手工录入/文件导入/登记表)、标签、字段定义、筛选规则、人才库分类。
- **处理**:①企业人才库:分类管理在职/离职/淘汰人才,站内消息/邮件(配置后)激活库内人选;②简历设置:简历关联职位、敏感信息对用人经理可见性控制、来源管理;③标签管理(手动/职位/简历标签;智能标签一期为基础规则标签);④简历导出:按字段配置导出并**带水印**;⑤筛选规则:评分/筛选/运算规则与条件动作;⑥字段管理:自定义简历字段(基本信息/求职意向/工作/教育/项目/语言/附件/培训/自我描述);⑦标准简历编辑与导出;⑧申请/应聘表设置:官网/内推投递信息收集登记表;⑨面试登记表:扫码填写(内网二维码),签到牌/登记表/候选人端。
- **输出**:人才库、简历库、标签体系、筛选命中结果、登记表数据。
- **验收标准**:①人才库分类与激活可用;②简历手工录入与文件导入入库正确;③筛选规则命中正确;④导出带水印(含查看者标识);⑤登记表扫码填写入库并关联候选人。
#### FEAT-B3-03 招聘流程管理(初筛/面试/offer/自动化)[P0]
- **输入**:招聘阶段与流程配置、候选人、面试安排与评价、offer 信息、自动化规则、锁定配置。
- **处理**:①全流程节点管理:初筛→面试→offer→入职/转正,阶段与流程可配置;②面试管理:面试评价、轮次、反馈、面试官评价、添加评价(**视频面试二期,一期降级为线下面试记录**:面试时间/地点/参与人/结论字段);③offer 管理:字段管理、审批管理、规则设置、审批 offer、候选人满意度评价;④自动化设置:按筛选/面试结果自动进入下一阶段或人才库、自动淘汰进淘汰库、自动转正(含预设日期)、重新分配职位后原流程自动淘汰、全员协助招聘开关、简历入库自动推给用人经理、offer 确认后自动进入待入职、用人经理上传简历自动推给上传者、offer 有效期;⑤锁定:候选人/流程锁定,锁定天数/人数/动作、自动解除;⑥其他:激活候选人、通知、保温期提醒、推荐给用人部门;⑦评价模板(面试官/候选人);⑧归档原因管理(淘汰/离职/拒绝面试/拒绝 offer);⑨招聘目标设置(月/周目标与显示规则)。
- **输出**:候选人流程看板、面试评价记录、offer 审批单、自动化流转日志、目标完成率。
- **验收标准**:①流程可配置可流转(阶段自定义 + 状态机正确);②自动化规则按配置触发并留痕;③锁定与自动解除按天数生效;④评价模板/归档原因可配置;⑤目标统计与实际流程数据一致。
#### FEAT-B3-04 招聘邮件与消息提醒 [P1]
- **输入**:邮箱收发配置(SMTP,可选)、邮件模板、提醒规则(时机/渠道/接收角色)。
- **处理**:①邮件设置:配置收发邮箱;②邮件模板:候选人面试、offer、激活、通知候选人/面试官、叫号面试模板,变量替换;③消息及提醒:覆盖简历、初筛、面试、offer、职位、审批、@我的等场景,可配提醒时机、发送渠道(站内必选/邮件可选/短信二期)、接收角色。
- **输出**:邮件、站内消息、提醒记录。
- **验收标准**:①邮件可配置发送,模板变量替换正确;②提醒按角色触达;③未配置邮件时站内渠道兜底不丢消息。
#### FEAT-B3-05 招聘渠道与猎企管理(本地管理)[P2]
- **输入**:猎企信息、渠道定义(系统渠道/自定义渠道)、简历来源标记。
- **处理**:①猎企管理:渠道分类管理,自动查重避免重复推荐,猎头质量数据追踪;②渠道配置:系统渠道、自定义渠道管理(第三方渠道真实对接二期,预留渠道接入接口);③简历来源标记与渠道效果统计基础数据。
- **输出**:猎企台账、渠道台账、带来源的简历、渠道统计。
- **验收标准**:①猎企 CRUD 与查重生效(同名/同联系方式拦截提示);②简历带渠道来源可统计;③渠道台账可增删改查。
#### FEAT-B3-06 招聘报表与面试登记 [P2]
- **输入**:招聘流程数据、报表/图表配置、面试到访候选人。
- **处理**:①招聘报表:招聘概览、候选人质量、职位360、HR效率、面试分析、offer 分析、渠道分析看板;添加报表/图表、全流程数据导出、授权管理;②面试登记:无纸化面试登记(扫码登记),部门协作共享签到信息。
- **输出**:招聘看板、导出报表、面试签到记录。
- **验收标准**:①看板数据与招聘流程数据实时一致;②图表可自定义、导出与授权生效;③面试登记扫码可用并共享签到信息。
#### FEAT-B3-07 招聘官网与内推官网 [P2]
- **输入**:官网配置(基本信息/样式/在招职位/投递限制)、内推规则(认证/保护期/邀请码)、内推奖励规则、员工内推操作。
- **处理**:①招聘官网搭建:基本信息、样式设置、分享(链接/二维码)、在招职位展示、投递限制;②内推官网:网站搭建与分享、职位设置、投递设置、内推规则(认证设置、内容保护期、淘汰原因展示、认证时效、员工注册信息、内推邀请码);③内推奖励:基础奖励规则(积分/现金)、特殊奖励规则(叠加于基础,职位先关联基础再关联特殊)、奖励必填项;④内推人及奖励统计:总发放/已兑换/未兑换积分、总发放/已提取/未提取现金。(一期为**内网部署形态**,公网域名/证书二期补齐后对外。)
- **输出**:官网页面、投递数据入库、内推链路记录、奖励统计。
- **验收标准**:①官网可配置发布并接收投递(投递自动入人才库并关联职位);②内推链路(邀请码→投递→奖励)闭环;③奖励统计四类数值准确;④投递限制规则生效。
> 批次3合计 7 项。
---
## 4. 业务流程
### 4.1 员工入职主流程
```
候选人(审批入职单/登记表邀请/手动) → 黑名单校验(命中拦截高亮)
→ 入职审批(hr-flow, 按员工类型/部门匹配) → 通过
→ [直接入花名册 | 进待入职名单→完善信息→入职]
→ 生成工号(规则引擎) → 花名册建档 → 入职通知/欢迎(站内)
→ 试用期 → 转正(审批/手动) → 花名册状态更新(可联动调薪, 批次2)
```
### 4.2 异动流程(调动/离职)
```
调动:发起(单/批量) → 调动审批 → 通过 → 花名册任职信息更新 + 时间轴留痕 → (编制校验提醒)
离职:发起(员工自助/代发) → 离职审批 → 待离职名单 → 离职交接(审批/管理职责)
→ 离职生效 → 离职证明自动开具(可下载) → [可选]一键加入黑名单
复职:再入职 → 自动关联原任职记录
```
### 4.3 薪酬月度核算流程(批次2)
```
发薪活动创建(核算组选人) → 算薪名单自动生成(比对上月入离职/调薪差异提醒)
→ 数据接入(手动导入/兼岗核对) → 算税算薪(公式引擎+本地累计预扣法, 分段计算)
→ 薪资校验(规则命中异常名单) → 修正 → 薪资锁定
→ 发薪审批(内嵌明细在线预览) → 工资条发放(一对一, 状态追踪)
→ 员工确认/签名留档 → 薪资结果导出/薪酬报表
```
### 4.4 招聘主流程(批次3)
```
招聘需求创建(HR/用人经理) → 需求审批 → 职位发布(职位审批, 关联HC, 负责人设置)
→ 渠道(本地猎企/内推/官网投递) → 简历入库(人才库, 筛选规则命中)
→ 初筛 → 面试(多轮, 评价; 线下面试记录) → offer(字段/审批/规则; 确认后进待入职)
→ 自动化规则(进下一阶段/人才库/淘汰/锁定) → 候选人入职(联动批次1入职流程)
→ 招聘报表/目标统计
```
### 4.5 审批通用流程(hr-flow 引擎)
```
发起(表单引用花名册字段) → 流程匹配(多条件) → 节点审批(串行, any/all 通过规则, 字段权限, 抄送)
→ 通过/驳回/撤销 → 通过回调 hook 回写业务(花名册/薪资档案/合同/招聘状态) → 全程留痕(操作日志)
```
---
## 5. 数据需求
### 5.1 核心实体模型(批次1已在设计中落 43 张表,批次2/3 为规划)
| 域 | 核心实体 | 表前缀 | 说明 |
|---|---|---|---|
| 组织 | org_unit(组织+变更/字段)、org_job/position/sequence/grade_level/grade_rank、org_contract_company、org_blacklist | org_ | 已设计 18 表(database-design.md §4.1) |
| 花名册 | roster_employee(主表)、roster_field_def/value(EAV 自定义字段)、roster_field_group、roster_empno_rule、roster_timeline、roster_type_rule、org_concurrent_post(兼岗) | roster_ | 已设计 7 表;员工主数据唯一事实源 |
| 流程 | flow_form_def、flow_def、flow_node_def、flow_role、flow_instance、flow_task、flow_op_log | flow_ | 已设计 7 表 |
| 合同 | contract_type、contract_template、contract_info、contract_remind_rule | contract_ | 已设计 4 表 |
| 系统 | sys_role/sys_user_role、sys_data_scope、sys_audit_log、sys_message、sys_remind_rule、sys_announcement、sys_policy、sys_care_config | sys_ | 已设计 7 表 |
| 薪酬(批次2,规划) | 薪资档案/薪资包/薪资标准/定调薪记录/薪资方案/算薪规则/发薪活动/算薪结果(分段)/个税主体与计算记录/社保方案与档案/工资条/成本中心与拆分/预算 | sal_ | 约 25~30 表,设计阶段细化 |
| 招聘(批次3,规划) | 职位/招聘需求/人才库/简历(+自定义字段EAV)/标签/流程阶段与候选人流转/面试评价/offer/渠道与猎企/邮件模板/内推与奖励/面试登记 | rcrt_ | 约 30~35 表,设计阶段细化 |
### 5.2 数据规则
1. 员工主数据唯一事实源 = 花名册;入转调离审批通过后经唯一回写入口(roster_writeback)写入。
2. 全表统一主键/创建修改时间/操作人字段;删除以状态标记为主,物理删除仅 admin 且留审计。
3. 敏感字段(身份证/手机/薪资)字段级标记 + 角色脱敏。
4. 数据初始化:系统初始化内置 admin 账号、四类角色、基础审批流模板、组织/职位职级空体系、花名册基础字段集;支持从旧 staff-mgr 员工数据一次性迁移(见 database-design.md §6)。
## 6. 接口需求(一期边界)
1. **内部接口**:全部为 `.dspy` 端点(`/{module}/api/{name}.dspy`),session 鉴权 + rbac 路径级控制,查询强制叠加数据范围。批次1端点清单见 `docs/01-design/api-design.md`(约 30+16+其余端点)。
2. **模块间服务内调用**:hr-flow 完成回调 → hr-roster 回写;hr-org/hr-contract → hr-system 权限与日志。
3. **对外接口(一期全部预留桩位,二期实现)**:钉钉通讯录/智能人事同步、考勤/绩效/审批/宜搭数据同步、税局个税申报、电子签平台、招聘平台简历同步、身份证读卡硬件、视频面试服务、短信网关。预留方式:桩端点(如 `esign_stub.dspy`)+ 状态字段 + 接口规范文档。
4. **API 开放能力**:一期仅定义鉴权与端点规范,不交付第三方集成。
## 7. 非功能需求(可量化)
| # | 类别 | 需求 |
|---|---|---|
| NFR-1 | 性能 | 列表页查询 ≤500ms(100 人规模、1000 条以内数据集);报表聚合 ≤3s;批量导入 500 行 ≤30s |
| NFR-2 | 容量 | 账号规模 100 人;并发在线 ≥30;简历库 ≥2 万份、花名册 ≥2000 条(含离职) |
| NFR-3 | 可用性 | 单实例部署,月度可用率 ≥99%(工作时间);服务异常自动重启(systemd) |
| NFR-4 | 安全 | session 鉴权+rbac;未注册路径默认拒绝;全量写操作审计留痕;敏感字段脱敏;SQL 全部参数绑定;密码加盐哈希存储 |
| NFR-5 | 备份 | MariaDB 每日全量备份,保留 ≥30 天;附件随应用数据一并备份 |
| NFR-6 | 兼容性 | Chrome/Edge 最近 2 个大版本;员工自助页面移动端浏览器兼容(ResponsableBox 自适应) |
| NFR-7 | 可维护 | ocai 规范模块结构;配置化(表单/流程/字段 JSON 化,不写代码可配);每模块 load_xxx() 装配 |
| NFR-8 | 数据迁移 | 旧 staff-mgr 员工数据一次性迁移脚本,迁移核对报告(总数/抽样一致) |
## 8. 部署环境需求(已由任务明确)
| 项 | 测试环境 | 生产环境 |
|---|---|---|
| 主机 | hrstest@192.168.16.12:22(免密已验证) | hrs@192.168.16.10:22 |
| 应用端口 | 9182(Web + ahserver 统一入口) | 9182 |
| 数据库 | MariaDB 本地,账号 test/test123,库名 hrs | 同库配置(生产账号口令部署时另行安全配置) |
| 会话依赖 | Redis(本地) | Redis(本地,仅内网) |
| 域名/证书 | 无(IP 直连) | **待补**(见 §11 问题清单 Q1) |
| 备份 | 无要求 | 每日全量备份,保留 ≥30 天 |
| 监控告警 | — | 进程存活 + 端口探活 + 备份结果告警(基础项;详细方案待设计阶段明确) |
> 注:此前设计文档(architecture.md)中 dev/test 8080 / ahserver 9080 / prod 443 的端口口径,以本任务明确口径为准:**测试/生产应用端口统一 9182**。apps/hr-web.md 已同步更新。
## 9. 一期降级项说明(逐项)
| # | 原始功能(需求来源) | 一期降级方案 | 二期恢复方式 |
|---|---|---|---|
| D1 | 身份证硬件读卡(入职) | 手工录入身份证信息字段 | 读卡硬件接入后回填同一字段 |
| D2 | 视频面试(招聘) | 线下面试记录(时间/地点/参与人/结论字段) | 视频面试服务对接后扩展面试记录类型 |
| D3 | 钉钉同步(组织/人员/智能人事/离职资源交接) | 不同步;离职交接项保留占位字段 | 钉钉开放平台对接迭代 |
| D4 | 电子签(合同) | 模板生成合同文本供打印/下载;esign_stub.dspy + esign_status 字段预留 | 电子签平台对接 |
| D5 | 考勤/绩效/审批/宜搭数据一键同步(算薪) | 手动导入数据表格;数据接入接口与导入模板预留 | 钉钉对接迭代 |
| D6 | 税局在线申报/缴纳/专项附加自动获取 | 本地累计预扣法计算 + 申报缴纳记录手工管理 | 税局接口对接 |
| D7 | 第三方招聘渠道真实对接、浏览器插件简历解析 | 本地渠道台账 + 手工/文件导入简历 | 渠道 API 对接 |
| D8 | AI 自动解析生成算薪公式 | 基础公式编辑器(Excel 函数 + 薪资专用函数) | AI 解析增强 |
| D9 | 短信通知渠道 | 站内消息兜底(邮件渠道可配置) | 短信网关对接 |
| D10 | 官网公网发布 | 内网部署形态,配置项预留 | 域名/证书补齐后对外 |
## 10. 验收标准总纲
1. 29 项 feature 的验收标准(§3)全部通过为迭代验收基线;P0 必须 100%,P1/P2 按批次验收计划执行。
2. 每批次交付提供:功能验收记录(逐项)、性能抽测记录(NFR-1)、权限与脱敏抽测记录。
3. 数据迁移(staff-mgr)核对报告通过。
4. 部署验证:测试环境全链路冒烟通过后,方可进入生产部署。
## 11. 待明确问题清单(需向用户/PM 确认)
| # | 问题 | 影响 | 状态 |
|---|---|---|---|
| Q1 | 生产环境域名与 HTTPS 证书何时提供?一期是否接受 9182 端口 HTTP 直连交付? | 部署形态、官网对外 | 待明确 |
| Q2 | 生产 MariaDB 账号口令由谁提供/如何交接(任务参数中生产为「同库配置」)? | 部署安全 | 待明确 |
| Q3 | 旧 staff-mgr 员工数据迁移范围(仅在职?含历史?)与切换时间点? | 数据迁移 | 待明确 |
| Q4 | 薪酬历史数据是否需要初始化导入(影响累计预扣法跨期计算)? | 个税计算 | 待明确 |
| Q5 | 招聘官网一期是否必须内网可用,还是可推迟至批次3末期? | 批次3排期 | 待明确 |
| Q6 | 邮件 SMTP 服务(发件账号)由谁提供?未提供时是否接受仅站内消息? | 招聘邮件 | 待明确 |
| Q7 | 100 人账号中 manager/employee 之外的 admin/hr 数量规模(影响授权设计验证)? | 权限测试 | 待明确 |
| Q8 | 生产环境监控告警接收渠道(邮件/钉钉群 webhook)? | 运维 | 待明确 |
## 12. 文档索引
| 文档 | 路径 |
|---|---|
| 需求规格说明书(本文档) | docs/00-requirement/requirement-spec.md |
| 已批准功能清单(29 项基线) | docs/00-requirement/approved-features.md |
| 需求追溯矩阵(xlsx→feature→模块→批次) | docs/00-requirement/requirement-traceability.md |
| 需求来源(原始功能清单) | 工作空间 docs/需求来源_钉钉睿人事功能清单.md、xlsx_dump.txt |
| 应用定义 | apps/hr-web.md |
| 模块定义 | modules/hr-org.md、hr-roster.md、hr-flow.md、hr-contract.md、hr-report.md、hr-system.md、hr-salary.md、hr-recruit.md |
| 迭代1组织人事底座设计 | docs/01-design/*.md(F01~F15) |