hr-system/modules/hr-flow.md

50 lines
3.1 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.

# 模块名称: 流程审批模块 (hr-flow)
状态:**一期批次1设计定稿(基线冻结;契约变更须走设计评审)**(agent.develop 定稿记录见 docs/02-develop/dev-notes.md)
所属应用:hr-web(Web版人事系统)
## 1. 模块功能
迭代1通用审批引擎模块,支撑入转调离等人事流程(对应 SRS v3.1 FEAT-B1-01 流程配置/人事流程部分):
| 功能编号 | 功能 | 说明 |
|---|---|---|
| F10 | 流程审批 | 自定义入转调离表单(花名册字段可被审批引用);自定义流程(多条件审批、字段权限设置);审批角色配置(流程范围/操作权限/数据查看范围);人事流程(入职/转正/异动/离职/离职交接审批,通过后自动更新花名册);审批数据查询(按表单/状态/发起人/审批编号/时间搜索与导出);审批在线打印 |
输入/处理/输出/可验收标准见 `docs/00-requirement/iteration1-function-detail.md`(F10 共 7 条验收项)。
批次1范围外(置后):考勤流程联动考勤系统(一期仅表单桩位,无考勤系统,SRS §9-D5);薪酬流程与组合审批在批次2随薪酬模块落地(仍复用本引擎)。
能力边界(任务拆解 §1.3 裁决):迭代1锁定串行节点 + any/all 通过规则 + 节点字段权限 + 抄送;并行分支/条件分支留 flow_node_def JSON 扩展位。
## 2. 仓库(规划地址)
- 仓库 URL:`git@git.opencomputing.cn:yumoqing/hr_flow.git`(规划,建仓时以 PM 确认为准)
- 工作空间目录:`repos/hr-flow`
- 分支:`main`
## 3. 技术栈(ocai 规范,设计已冻结)
- 前端:bricks 组件体系 + dspy 声明式页面(todo_list.ui 待办、inst_detail.ui 动态表单审批单、flow_design.ui 流程配置)
- 后端:ahserver(Python);load_hrflow() 注册 ServerEnv;状态机 running→approved/rejected/cancelled;业务回写经 biz_type+biz_id 关联 + 完成回调 hook(调 hr-roster roster_writeback)
- 数据层:apppublic/sqlor;表单/流程/节点全部 JSON 化配置(fields_json/match_cond_json/field_perm_json),无硬编码;本模块 7 张表(前缀 flow_)
- 模块结构遵循 module-development-spec 标准结构
## 4. 模块依赖
**依赖(本模块 → 其他模块):**
| 依赖模块 | 依赖内容 |
|---|---|
| hr-roster | 审批表单引用花名册字段;审批通过后调用花名册回写能力 |
| hr-org | 审批表单引用组织、职位职级主数据 |
| hr-system | 审批角色的权限基础、操作日志 |
**被依赖(其他模块 → 本模块):**
| 调用方 | 依赖内容 |
|---|---|
| hr-org | F04~F08 全部审批流转(入职/转正/调动/离职/兼岗) |
| hr-contract | F09 合同新签/续签/变更/终止审批 |
## 5. 设计落点(迭代1)
- 总体设计:`docs/01-design/architecture.md` §4.2(引擎与业务解耦规则)、`database-design.md` §4.3、`api-design.md` §2.3(18 个端点)、§3.1 转正调用链、`ui-design.md` §3.6
- 开发任务:T10(引擎核心,关键路径)、T11(审批界面)、T12(查询导出)
## 6. 负责人
待定(迭代启动会指定)。