01 · 模块定位
安全合规中心
越权用户无法查看敏感字段;授权撤回后人脸数据不可继续使用;关键操作可追溯。业务目标
覆盖数据分级、字段脱敏、访问控制、审计、人脸合规、学员账号保护和备份恢复。
使用终端
PC Web 安全合规后台,覆盖所有端和接口的权限、审计与数据安全。
验收主线
越权用户无法查看敏感字段;授权撤回后人脸数据不可继续使用;关键操作可追溯。
02 · 范围边界
明确本模块负责什么、依赖什么、不负责什么
边界清晰后,原型、接口和数据库设计才能避免重复建设。模块内范围
- 数据分级
- 字段脱敏
- 导出审批
- 人脸授权
- 操作审计
- 备份恢复
- 敏感字段查看审批
- 临时授权
- 授权过期回收
- 查看水印审计
上游依赖
- 组织校区与账号权限
- 课程/客户/合同等主数据
- 审批流、消息模板、文件中心
- 必要的第三方接口密钥
下游输出
- 业务状态和待办
- 消息通知和审批记录
- 报表指标和数据快照
- 审计日志和接口回执
03 · 确认口径、后台配置与默认实施规则
安全合规中心必须承接的已确认规则
本章节来自待决策与澄清清单的收口结果,已经转为本模块 PRD 的正式需求、配置项或默认实施规则。| 分类 | 事项 | 本模块落地要求 | 责任方 |
|---|---|---|---|
| 默认实施规则 | 接口设计说明书组织方式 | 采用单独 HTML 文件集中管理接口协议;模块 PRD 保留模块级接口摘要,避免每个模块重复写通用协议。 | 产品/研发 |
| 默认实施规则 | 数据库分区与归档策略 | 设备事件、直播互动、接口日志、视频会话、操作审计按时间分区和归档,交易主表保留业务索引和审计快照。 | DBA/后端 |
| 默认实施规则 | 接口错误码与重试中间件 | 所有外部接口和内部异步任务统一错误码、幂等键、重试次数、告警阈值和回执归档策略。 | 后端/测试/运维 |
04 · 业务流程
安全合规中心主流程
流程用于指导原型图的页面顺序、按钮状态和异常分支。数据按普通、敏感、财务、人脸、未成年人数据分级
手机号、身份证、人脸、工资、利润等敏感字段脱敏
导出审批需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
人脸授权需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
操作审计需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
备份恢复需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
敏感字段查看审批需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。
手机号、人脸、合同、票据、薪资等敏感字段需要支持明文查看审批、临时授权、授权过期自动回收、查看水印和审计留痕。
05 · 功能清单
按子模块拆到可设计、可开发、可测试的颗粒度
每一行功能都需要在原型中体现入口、状态、按钮、字段和反馈。| 一级功能 | 二级功能 | 功能说明 | 规则/验收 |
|---|---|---|---|
| 数据分级 | 安全配置与审计 | 数据分级支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 数据分级 | 业务处理 | 数据按普通、敏感、财务、人脸、未成年人数据分级 | 必须联动状态、权限、消息、审批和指标 |
| 数据分级 | 异常闭环 | 高危导出处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 字段脱敏 | 安全配置与审计 | 字段脱敏支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 字段脱敏 | 业务处理 | 手机号、身份证、人脸、工资、利润等敏感字段脱敏 | 必须联动状态、权限、消息、审批和指标 |
| 字段脱敏 | 异常闭环 | 授权撤回处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 导出审批 | 安全配置与审计 | 导出审批支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 导出审批 | 业务处理 | 导出审批需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 导出审批 | 异常闭环 | 恢复演练失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 人脸授权 | 安全配置与审计 | 人脸授权支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 人脸授权 | 业务处理 | 人脸授权需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 人脸授权 | 异常闭环 | 敏感查看越权处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 操作审计 | 安全配置与审计 | 操作审计支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 操作审计 | 业务处理 | 操作审计需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 操作审计 | 异常闭环 | 临时授权过期处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 备份恢复 | 安全配置与审计 | 备份恢复支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 备份恢复 | 业务处理 | 备份恢复需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 备份恢复 | 异常闭环 | 审批原因缺失处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 敏感字段查看审批 | 安全配置与审计 | 敏感字段查看审批支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 敏感字段查看审批 | 业务处理 | 敏感字段查看审批需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 敏感字段查看审批 | 异常闭环 | 水印生成失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 临时授权 | 安全配置与审计 | 临时授权支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 临时授权 | 业务处理 | 手机号、人脸、合同、票据、薪资等敏感字段需要支持明文查看审批、临时授权、授权过期自动回收、查看水印和审计留痕。 | 必须联动状态、权限、消息、审批和指标 |
| 临时授权 | 异常闭环 | 高危导出处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 授权过期回收 | 安全配置与审计 | 授权过期回收支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 授权过期回收 | 业务处理 | 授权过期回收需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 授权过期回收 | 异常闭环 | 授权撤回处理 | 失败原因可见、可重试、可转人工、可追溯 |
| 查看水印审计 | 安全配置与审计 | 查看水印审计支持规则配置、审批、授权、回收、审计查询和异常告警。 | 敏感字段、导出、删除、授权和高危操作必须留痕 |
| 查看水印审计 | 业务处理 | 查看水印审计需覆盖入口、字段、状态、权限、审批/消息、异常处理、审计和指标统计,并与上下游模块保持数据一致。 | 必须联动状态、权限、消息、审批和指标 |
| 查看水印审计 | 异常闭环 | 恢复演练失败处理 | 失败原因可见、可重试、可转人工、可追溯 |
功能到数据对象/接口/表映射
| 功能域 | 承接对象 | 核心表 | 代表接口 | 状态机/状态字段 | 研发落地校验 |
|---|---|---|---|---|---|
| 数据分级 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/01 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 字段脱敏 | SensitiveFieldPolicy | sec_sensitive_field_policy | 接口资源组 /api/v1/sec/features/02 | biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 导出审批 | ExportApproval | sec_export_approval | POST/GET /api/v1/audit/export | export_biz_type、approval_status | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 人脸授权 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/04 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 操作审计 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/05 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 备份恢复 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/06 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 敏感字段查看审批 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/07 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 临时授权 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/08 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 授权过期回收 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/09 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
| 查看水印审计 | PermissionPolicy、SensitiveFieldPolicy、SensitiveAccessApproval、ExportApproval | sec_permission_policy、sec_sensitive_field_policy、sec_sensitive_access_approval、sec_export_approval | 接口资源组 /api/v1/sec/features/10 | terminal_type、biz_type、approval_status、export_biz_type | 新增/编辑/删除/审批/导出/回调均需校验租户、校区、角色、数据范围、逻辑删除、幂等和审计 |
06 · 原子级功能需求
用于研发任务拆分和测试用例追踪
需求编号可直接进入项目管理工具。| 编号 | 需求描述 | 入口页面 | 关键动作 | 输入校验 | 输出结果 | 异常处理 | 验收标准 |
|---|---|---|---|---|---|---|---|
| FR-SEC-001 | 数据按普通、敏感、财务、人脸、未成年人数据分级 | 敏感字段查看审批 | 明文查看申请、临时授权或过期回收 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 审批原因缺失、越权查看或水印生成失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-002 | 手机号、身份证、人脸、工资、利润等敏感字段脱敏 | 电子工资条/薪资核算 | 薪资核算、工资条发布或员工确认 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 工资条未发布、显示配置缺失或员工异议超期 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-003 | 导出、删除、金额变更、权限变更需审批或留痕 | 敏感访问申请 | 明文查看审批 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 恢复演练失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-004 | 人脸采集需家长授权并支持撤回和删除 | 敏感字段查看审批 | 明文查看申请、临时授权或过期回收 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 审批原因缺失、越权查看或水印生成失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-005 | 定期备份业务数据、合同文件、票据、回执和授权记录 | 敏感字段查看审批 | 明文查看申请、临时授权或过期回收 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 审批原因缺失、越权查看或水印生成失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-006 | 手机号、人脸、合同、票据、薪资等敏感字段需要支持明文查看审批、临时授权、授权过期自动回收、查看水印和审计留痕。 | 电子工资条/薪资核算 | 薪资核算、工资条发布或员工确认 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 工资条未发布、显示配置缺失或员工异议超期 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
| FR-SEC-007 | 敏感字段明文查看需按字段级权限、业务原因、审批结果、有效期和下载限制控制。 | 敏感字段查看审批 | 明文查看申请、临时授权或过期回收 | 校验租户、校区、角色、数据范围、状态前置、必填、唯一和敏感操作授权 | 生成业务记录、状态流转、消息通知、审计日志、指标快照和必要的第三方任务 | 审批原因缺失、越权查看或水印生成失败 | 主流程、异常流、权限流、接口失败和数据一致性均可通过测试 |
07 · 关联闭环补充需求
安全合规中心在跨模块闭环中的责任边界
本章节承接最终闭环核对清单,明确本模块需要补齐的页面、接口对象、异常兜底和验收口径。| 闭环项 | 本模块责任 | 关键场景 | 页面/功能补充 | 关联对象/接口 | 验收口径 |
|---|---|---|---|---|---|
| 跨模块闭环主责 | 提供跨模块流程的审计、权限、敏感操作审批和责任追溯 | 补课、合同、财务、设备、直播、工资条等跨模块异常 | 审计日志、敏感操作审批、异常追溯、责任矩阵查看 | AuditLog、SensitiveAccessApproval、ClosureOwnershipMatrix | 闭环关键动作必须有操作人、时间、前后值、来源端和审批记录 |
| 合同补充协议 | 负责补充协议签署、下载、导出和查看中的权限、脱敏、水印与审计 | 家长、顾问、财务、法务查看或导出合同附件 | 敏感文件访问、导出审批、审计水印、合同附件权限 | Contract/Order/Payment、SensitiveAccessApproval | 合同附件访问必须受数据范围、授权和水印审计控制 |
| 工资条撤回重发 | 负责工资条敏感字段、查看水印、导出审批和撤回重发审计 | 员工查看薪资、社保、公积金或提交异议 | 工资条访问审计、敏感字段配置、导出审批 | PayrollPayslip/SalaryItem、AuditLog | 工资条所有查看、撤回、重发、确认和异议均需审计 |
08 · 页面与原型设计说明
页面清单、布局要求、按钮字段和状态
原型图设计需要覆盖列表、详情、表单、弹窗、空状态、异常状态和权限状态。| 终端 | 页面 | 用户 | 页面目标 | 布局结构 | 关键按钮 | 关键字段 | 异常状态 | 原型备注 |
|---|---|---|---|---|---|---|---|---|
| PC Web | 安全审计 | 系统管理员 | 查询操作日志、导出审批、人脸授权和恢复记录 | 设备页按校区、设备、人员、事件四层组织,识别流水支持照片、置信度、课次匹配和异常处理入口。 | 新增设备、人员下发、查看心跳、确认异常、撤回授权、重试下发、查看回执 | 设备编号、设备品牌、所属校区、人员编号、人脸照片、置信度、匹配课次、删除回执、操作人、敏感字段 | 设备离线、人员下发失败、低置信度、跨校区识别、模板删除失败、回执缺失 | 需覆盖设备在线/离线、人员模板下发、识别异常确认、家长撤回授权、设备离线延迟删除和隐私审计。 建议 Figma Frame:SEC-安全审计;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web | 敏感字段查看审批 | 全角色/安全管理员 | 申请查看手机号、人脸、合同、票据、薪资等敏感字段明文,审批通过后限时授权并加水印审计 | 设备页按校区、设备、人员、事件四层组织,识别流水支持照片、置信度、课次匹配和异常处理入口。 | 新增设备、人员下发、查看心跳、确认异常、撤回授权、重试下发、查看回执 | 设备编号、设备品牌、所属校区、人员编号、人脸照片、置信度、匹配课次、删除回执、操作人、敏感字段 | 设备离线、人员下发失败、低置信度、跨校区识别、模板删除失败、回执缺失 | 需覆盖设备在线/离线、人员模板下发、识别异常确认、家长撤回授权、设备离线延迟删除和隐私审计。 建议 Figma Frame:SEC-敏感字段查看审批;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 敏感访问申请 | 系统管理员/安全审计员 | 围绕敏感数据完善敏感访问申请的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-敏感访问申请;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 导出审批 | 系统管理员/安全审计员 | 围绕敏感数据完善导出审批的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-导出审批;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 审计日志 | 系统管理员/安全审计员 | 围绕敏感数据完善审计日志的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-审计日志;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 高危操作弹窗 | 系统管理员/安全审计员 | 围绕高危操作完善高危操作弹窗的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-高危操作弹窗;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 审批流 | 系统管理员/安全审计员 | 围绕高危操作完善审批流的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-审批流;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 审计详情 | 系统管理员/安全审计员 | 围绕高危操作完善审计详情的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-审计详情;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 异常追溯 | 系统管理员/安全审计员 | 围绕跨模块追责完善异常追溯的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-异常追溯;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 责任矩阵 | 系统管理员/安全审计员 | 围绕跨模块追责完善责任矩阵的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-责任矩阵;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
| PC Web/审计后台 | 处理任务 | 系统管理员/安全审计员 | 围绕跨模块追责完善处理任务的入口、字段、状态、异常提示、处理进度和验收反馈 | 安全页按操作对象、敏感字段、审批单和风险等级检索,详情展示水印、前后值、授权时效和审计链路。 | 申请明文查看、审批授权、临时授权、导出审批、撤回授权、查询审计、下载水印文件 | 操作人、敏感字段、业务对象、审批原因、授权时长、水印编号、导出范围、风险等级、审批对象、审计结果 | 越权查看、审批原因缺失、授权过期、水印生成失败、导出被驳回、审计缺失 | 需覆盖明文查看、脱敏展示、临时授权、导出审批、水印追踪、删除/作废高危操作和审计留痕。 建议 Figma Frame:SEC-处理任务;需补齐正常、空态、加载、无权限、处理中、成功和失败状态。 |
09 · 页面到接口的前后端闭环矩阵
把原型页面、后端接口、数据对象、状态和消息审批绑定到一起
设计原型时,每个关键页面必须能解释前端展示什么、后端提交什么、状态怎么变、异常怎么处理。| 原型页面 | 关键接口 | 关联对象 | 状态流 | 审批/权限触发 | 消息/待办触达 | 原型验收要求 |
|---|---|---|---|---|---|---|
| 安全审计 | POST/GET /api/v1/audit/export | PermissionPolicy | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 敏感字段查看审批 | POST/GET /api/v1/audit/export | SensitiveFieldPolicy | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 敏感访问申请 | POST/GET /api/v1/audit/export | SensitiveAccessApproval | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 导出审批 | POST/GET /api/v1/audit/export | ExportApproval | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 审计日志 | POST/GET /api/v1/audit/export | HighRiskOperation | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 高危操作弹窗 | POST/GET /api/v1/audit/export | BackupRecord | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 审批流 | POST/GET /api/v1/audit/export | PermissionPolicy | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 审计详情 | POST/GET /api/v1/audit/export | SensitiveFieldPolicy | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 异常追溯 | POST/GET /api/v1/audit/export | SensitiveAccessApproval | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 责任矩阵 | POST/GET /api/v1/audit/export | ExportApproval | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
| 处理任务 | POST/GET /api/v1/audit/export | HighRiskOperation | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 无审批时仍需写操作审计,敏感操作按安全中心规则触发审批 | 数据导出审批 -> 审批人 | 原型需展示入口、主按钮、禁用原因、提交中、成功、失败、无权限、空状态和异常转人工入口 |
10 · 原型、UI、研发、测试交付补充
把关键闭环补强为下一阶段可执行任务
本章节为正式 PRD 的交付要求,面向原型图、UI、开发、联调和测试分工。| 能力域 | 功能补充要求 | 原型交付要求 | UI 交互要求 | 研发实现要求 | 测试验收要求 |
|---|---|---|---|---|---|
| 敏感数据 | 补齐明文查看申请、临时授权、水印、导出审批、过期回收和审计。 | 敏感访问申请、导出审批、审计日志 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;敏感数据每次查看和导出都有审批或授权记录。 |
| 高危操作 | 补齐二次确认、审批触发、前后值快照、恢复入口和影响范围提示。 | 高危操作弹窗、审批流、审计详情 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;高危动作可追溯、可解释,必要时可恢复。 |
| 跨模块追责 | 补齐责任矩阵、异常归因、审计链路和关闭标准。 | 异常追溯、责任矩阵、处理任务 需要在原型中拆到列表、详情、表单、弹窗、空状态、失败态、无权限态和处理进度。 | UI 需清晰呈现状态标签、流程节点、主次按钮、危险操作确认、移动/平板/TV 适配和错误提示;PC 管理端遵循统一框架,仅输出信息架构和交互说明。 | 后端需提供接口幂等、权限校验、状态机、审计日志、消息/审批触发、异步补偿和跨模块数据一致性保障。 | 测试需覆盖主流程、异常流、权限流、重复提交、批量部分失败和数据一致性;跨模块异常不会停留在无法定位责任的状态。 |
11 · 数据对象与字段字典
明确页面、接口、数据库共同使用的数据语言
字段涉及敏感、人脸、财务、绩效时,原型需体现脱敏、授权和审计。核心对象
| 对象 | 说明 |
|---|---|
| PermissionPolicy | 菜单、按钮、字段和接口权限策略;落地表:sec_permission_policy |
| SensitiveFieldPolicy | 敏感字段脱敏策略;落地表:sec_sensitive_field_policy |
| SensitiveAccessApproval | 敏感数据查看审批;落地表:sec_sensitive_access_approval |
| ExportApproval | 敏感数据导出审批;落地表:sec_export_approval |
| HighRiskOperation | 高危操作留痕与二次确认;落地表:sec_high_risk_operation |
| BackupRecord | 数据备份与恢复记录;落地表:sec_backup_record |
关联引用对象
| 对象 | 说明 |
|---|---|
| Organization | 集团、区域、校区、部门组织树;引用来源:FND / sys_organization |
| User/Employee | 统一登录账号;引用来源:FND / sys_user |
| Employee | 员工基础档案;引用来源:FND / sys_employee |
| Role | 角色定义;引用来源:FND / sys_role |
| ApprovalFlow | 审批流配置;引用来源:FND / sys_approval_flow |
| MessageTemplate | 消息模板与多端触达配置;引用来源:FND / sys_message_template |
| AuditLog | 全平台操作审计日志;引用来源:FND / sys_audit_log |
| IntegrationLog | 接口调用日志;引用来源:OPEN / int_integration_log |
| Lead | 销售线索主表;引用来源:CRM / crm_lead |
| Contract | 合同主表;引用来源:CON / con_contract |
| PayrollPayslip | 电子工资条;引用来源:HR / hr_payslip |
| Invoice | 报销发票与 OCR 结果;引用来源:FIN / exp_invoice |
| FacePerson | 人脸人员库;引用来源:FAC / dev_face_person |
完整字段字典
| 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|
| PermissionPolicy | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| PermissionPolicy | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| PermissionPolicy | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| PermissionPolicy | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| PermissionPolicy | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| PermissionPolicy | created_at | DATETIME | 是 | 创建时间 | 普通 |
| PermissionPolicy | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| PermissionPolicy | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| PermissionPolicy | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| PermissionPolicy | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| PermissionPolicy | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| PermissionPolicy | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| PermissionPolicy | policy_code | VARCHAR(64) | 是 | 策略编码,唯一 | 普通 |
| PermissionPolicy | role_id | BIGINT | 是 | 角色 ID | 普通 |
| PermissionPolicy | terminal_type | VARCHAR(32) | 是 | PC/App/小程序/H5/TV/大屏 | 普通 |
| PermissionPolicy | resource_policy | JSON | 是 | 资源权限配置 | 普通 |
| PermissionPolicy | field_policy | JSON | 否 | 字段权限配置 | 普通 |
| PermissionPolicy | enabled | TINYINT | 是 | 是否启用 | 普通 |
| SensitiveFieldPolicy | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| SensitiveFieldPolicy | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| SensitiveFieldPolicy | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| SensitiveFieldPolicy | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| SensitiveFieldPolicy | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| SensitiveFieldPolicy | created_at | DATETIME | 是 | 创建时间 | 普通 |
| SensitiveFieldPolicy | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| SensitiveFieldPolicy | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| SensitiveFieldPolicy | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| SensitiveFieldPolicy | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| SensitiveFieldPolicy | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| SensitiveFieldPolicy | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| SensitiveFieldPolicy | field_code | VARCHAR(128) | 是 | 字段编码,唯一 | 普通 |
| SensitiveFieldPolicy | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| SensitiveFieldPolicy | mask_rule | VARCHAR(64) | 是 | 脱敏规则 | 普通 |
| SensitiveFieldPolicy | view_requires_approval | TINYINT | 是 | 明文查看是否需审批 | 普通 |
| SensitiveFieldPolicy | watermark_required | TINYINT | 是 | 是否加水印 | 普通 |
| SensitiveAccessApproval | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| SensitiveAccessApproval | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| SensitiveAccessApproval | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| SensitiveAccessApproval | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| SensitiveAccessApproval | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| SensitiveAccessApproval | created_at | DATETIME | 是 | 创建时间 | 普通 |
| SensitiveAccessApproval | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| SensitiveAccessApproval | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| SensitiveAccessApproval | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| SensitiveAccessApproval | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| SensitiveAccessApproval | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| SensitiveAccessApproval | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| SensitiveAccessApproval | request_no | VARCHAR(64) | 是 | 申请编号,唯一 | 普通 |
| SensitiveAccessApproval | applicant_id | BIGINT | 是 | 申请人 ID | 普通 |
| SensitiveAccessApproval | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| SensitiveAccessApproval | biz_id | BIGINT | 是 | 业务 ID | 普通 |
| SensitiveAccessApproval | field_scope | JSON | 是 | 申请查看字段 | 普通 |
| SensitiveAccessApproval | access_reason | VARCHAR(512) | 是 | 查看原因 | 普通 |
| SensitiveAccessApproval | expire_at | DATETIME | 否 | 授权过期时间 | 普通 |
| SensitiveAccessApproval | approval_status | VARCHAR(32) | 否 | 审批状态,未发起为空 | 普通 |
| SensitiveAccessApproval | approval_instance_id | BIGINT | 否 | 关联审批实例 ID | 普通 |
| ExportApproval | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| ExportApproval | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| ExportApproval | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| ExportApproval | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| ExportApproval | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| ExportApproval | created_at | DATETIME | 是 | 创建时间 | 普通 |
| ExportApproval | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| ExportApproval | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| ExportApproval | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| ExportApproval | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| ExportApproval | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| ExportApproval | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| ExportApproval | export_no | VARCHAR(64) | 是 | 导出编号,唯一 | 普通 |
| ExportApproval | applicant_id | BIGINT | 是 | 申请人 ID | 普通 |
| ExportApproval | export_biz_type | VARCHAR(64) | 是 | 导出业务类型 | 普通 |
| ExportApproval | filter_snapshot | JSON | 是 | 导出筛选条件快照 | 普通 |
| ExportApproval | file_id | BIGINT | 否 | 导出文件 ID | 普通 |
| ExportApproval | download_expire_at | DATETIME | 否 | 下载过期时间 | 普通 |
| ExportApproval | approval_status | VARCHAR(32) | 否 | 审批状态,未发起为空 | 普通 |
| ExportApproval | approval_instance_id | BIGINT | 否 | 关联审批实例 ID | 普通 |
| HighRiskOperation | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| HighRiskOperation | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| HighRiskOperation | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| HighRiskOperation | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| HighRiskOperation | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| HighRiskOperation | created_at | DATETIME | 是 | 创建时间 | 普通 |
| HighRiskOperation | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| HighRiskOperation | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| HighRiskOperation | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| HighRiskOperation | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| HighRiskOperation | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| HighRiskOperation | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| HighRiskOperation | operation_no | VARCHAR(64) | 是 | 操作编号,唯一 | 普通 |
| HighRiskOperation | operator_id | BIGINT | 是 | 操作人 ID | 普通 |
| HighRiskOperation | operation_type | VARCHAR(64) | 是 | 删除/作废/红冲/批量导出/权限变更 | 普通 |
| HighRiskOperation | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| HighRiskOperation | biz_id | BIGINT | 否 | 业务 ID | 普通 |
| HighRiskOperation | confirm_payload | JSON | 否 | 二次确认内容 | 普通 |
| HighRiskOperation | operation_status | VARCHAR(32) | 是 | 待确认/已执行/已取消/失败 | 普通 |
| BackupRecord | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| BackupRecord | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| BackupRecord | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| BackupRecord | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| BackupRecord | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| BackupRecord | created_at | DATETIME | 是 | 创建时间 | 普通 |
| BackupRecord | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| BackupRecord | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| BackupRecord | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| BackupRecord | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| BackupRecord | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| BackupRecord | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| BackupRecord | backup_no | VARCHAR(64) | 是 | 备份编号,唯一 | 普通 |
| BackupRecord | backup_scope | JSON | 是 | 备份范围 | 普通 |
| BackupRecord | storage_location | VARCHAR(512) | 是 | 备份存储位置 | 普通 |
| BackupRecord | backup_started_at | DATETIME | 是 | 开始时间 | 普通 |
| BackupRecord | backup_finished_at | DATETIME | 否 | 结束时间 | 普通 |
| BackupRecord | backup_status | VARCHAR(32) | 是 | 进行中/成功/失败/已过期 | 普通 |
引用对象字段字典
| 引用表 | 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|---|
| sys_organization | Organization | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_organization | Organization | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_organization | Organization | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_organization | Organization | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_organization | Organization | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_organization | Organization | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_organization | Organization | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_organization | Organization | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_organization | Organization | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_organization | Organization | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_organization | Organization | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_organization | Organization | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_organization | Organization | org_code | VARCHAR(64) | 是 | 组织编码,租户内唯一 | 普通 |
| sys_organization | Organization | org_name | VARCHAR(128) | 是 | 组织名称 | 普通 |
| sys_organization | Organization | org_type | VARCHAR(32) | 是 | 集团/区域/校区/部门/法人主体 | 普通 |
| sys_organization | Organization | parent_id | BIGINT | 否 | 上级组织 ID,根节点为空 | 普通 |
| sys_organization | Organization | sort_no | INT | 否 | 同级排序 | 普通 |
| sys_organization | Organization | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_user | User/Employee | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_user | User/Employee | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_user | User/Employee | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_user | User/Employee | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_user | User/Employee | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_user | User/Employee | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_user | User/Employee | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_user | User/Employee | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_user | User/Employee | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_user | User/Employee | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_user | User/Employee | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_user | User/Employee | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_user | User/Employee | user_no | VARCHAR(64) | 是 | 账号编号,唯一 | 普通 |
| sys_user | User/Employee | login_name | VARCHAR(64) | 是 | 登录名,唯一 | 普通 |
| sys_user | User/Employee | mobile | VARCHAR(32) | 否 | 手机号,敏感脱敏展示 | 敏感 |
| sys_user | User/Employee | password_hash | VARCHAR(255) | 否 | 密码哈希,禁止前端返回 | 高敏 |
| sys_user | User/Employee | user_type | VARCHAR(32) | 是 | 员工/学员/家长/外部账号 | 普通 |
| sys_user | User/Employee | login_status | VARCHAR(32) | 是 | 正常/锁定/停用/待激活 | 普通 |
| sys_employee | Employee | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_employee | Employee | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_employee | Employee | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_employee | Employee | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_employee | Employee | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_employee | Employee | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_employee | Employee | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_employee | Employee | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_employee | Employee | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_employee | Employee | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_employee | Employee | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_employee | Employee | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_employee | Employee | employee_no | VARCHAR(64) | 是 | 工号,唯一 | 普通 |
| sys_employee | Employee | user_id | BIGINT | 否 | 关联账号 ID | 普通 |
| sys_employee | Employee | employee_name | VARCHAR(64) | 是 | 员工姓名 | 普通 |
| sys_employee | Employee | primary_campus_id | BIGINT | 否 | 主校区 ID | 普通 |
| sys_employee | Employee | job_title | VARCHAR(64) | 否 | 岗位名称 | 普通 |
| sys_employee | Employee | hire_status | VARCHAR(32) | 是 | 在职/试用/离职/停用 | 普通 |
| sys_role | Role | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_role | Role | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_role | Role | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_role | Role | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_role | Role | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_role | Role | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_role | Role | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_role | Role | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_role | Role | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_role | Role | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_role | Role | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_role | Role | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_role | Role | role_code | VARCHAR(64) | 是 | 角色编码,唯一 | 普通 |
| sys_role | Role | role_name | VARCHAR(128) | 是 | 角色名称 | 普通 |
| sys_role | Role | role_level | VARCHAR(32) | 是 | 总部/区域/校区/个人 | 普通 |
| sys_role | Role | data_scope_type | VARCHAR(32) | 是 | 数据范围类型 | 普通 |
| sys_role | Role | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_approval_flow | ApprovalFlow | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_approval_flow | ApprovalFlow | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_approval_flow | ApprovalFlow | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_approval_flow | ApprovalFlow | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_approval_flow | ApprovalFlow | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_approval_flow | ApprovalFlow | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_approval_flow | ApprovalFlow | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_approval_flow | ApprovalFlow | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_approval_flow | ApprovalFlow | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_approval_flow | ApprovalFlow | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_approval_flow | ApprovalFlow | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_approval_flow | ApprovalFlow | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_approval_flow | ApprovalFlow | flow_code | VARCHAR(64) | 是 | 审批流编码,唯一 | 普通 |
| sys_approval_flow | ApprovalFlow | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sys_approval_flow | ApprovalFlow | flow_name | VARCHAR(128) | 是 | 审批流名称 | 普通 |
| sys_approval_flow | ApprovalFlow | condition_json | JSON | 否 | 触发条件 | 普通 |
| sys_approval_flow | ApprovalFlow | node_json | JSON | 是 | 节点、审批人和超时规则 | 普通 |
| sys_approval_flow | ApprovalFlow | version_no | INT | 是 | 审批流版本号 | 普通 |
| sys_approval_flow | ApprovalFlow | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_message_template | MessageTemplate | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_message_template | MessageTemplate | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_message_template | MessageTemplate | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_message_template | MessageTemplate | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_message_template | MessageTemplate | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_message_template | MessageTemplate | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_message_template | MessageTemplate | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_message_template | MessageTemplate | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_message_template | MessageTemplate | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_message_template | MessageTemplate | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_message_template | MessageTemplate | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_message_template | MessageTemplate | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_message_template | MessageTemplate | template_code | VARCHAR(64) | 是 | 模板编码,唯一 | 普通 |
| sys_message_template | MessageTemplate | template_name | VARCHAR(128) | 是 | 模板名称 | 普通 |
| sys_message_template | MessageTemplate | channel | VARCHAR(32) | 是 | 站内信/短信/微信小程序/企微/Push | 普通 |
| sys_message_template | MessageTemplate | receiver_rule | JSON | 是 | 接收人规则 | 普通 |
| sys_message_template | MessageTemplate | content_template | TEXT | 是 | 模板内容 | 普通 |
| sys_message_template | MessageTemplate | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sys_audit_log | AuditLog | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sys_audit_log | AuditLog | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sys_audit_log | AuditLog | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sys_audit_log | AuditLog | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sys_audit_log | AuditLog | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sys_audit_log | AuditLog | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sys_audit_log | AuditLog | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sys_audit_log | AuditLog | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sys_audit_log | AuditLog | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sys_audit_log | AuditLog | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sys_audit_log | AuditLog | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sys_audit_log | AuditLog | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sys_audit_log | AuditLog | operator_id | BIGINT | 是 | 操作人 ID | 普通 |
| sys_audit_log | AuditLog | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sys_audit_log | AuditLog | biz_id | BIGINT | 否 | 业务主键 ID | 普通 |
| sys_audit_log | AuditLog | action_code | VARCHAR(64) | 是 | 操作编码 | 普通 |
| sys_audit_log | AuditLog | before_snapshot | JSON | 否 | 变更前快照 | 普通 |
| sys_audit_log | AuditLog | after_snapshot | JSON | 否 | 变更后快照 | 普通 |
| sys_audit_log | AuditLog | ip_address | VARCHAR(64) | 否 | 操作 IP | 普通 |
| int_integration_log | IntegrationLog | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| int_integration_log | IntegrationLog | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| int_integration_log | IntegrationLog | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| int_integration_log | IntegrationLog | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| int_integration_log | IntegrationLog | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| int_integration_log | IntegrationLog | created_at | DATETIME | 是 | 创建时间 | 普通 |
| int_integration_log | IntegrationLog | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| int_integration_log | IntegrationLog | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| int_integration_log | IntegrationLog | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| int_integration_log | IntegrationLog | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| int_integration_log | IntegrationLog | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| int_integration_log | IntegrationLog | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| int_integration_log | IntegrationLog | request_id | VARCHAR(128) | 是 | 请求 ID,幂等键 | 普通 |
| int_integration_log | IntegrationLog | system_code | VARCHAR(64) | 是 | 外部系统编码 | 普通 |
| int_integration_log | IntegrationLog | api_path | VARCHAR(512) | 是 | 接口路径 | 普通 |
| int_integration_log | IntegrationLog | biz_type | VARCHAR(64) | 否 | 业务类型 | 普通 |
| int_integration_log | IntegrationLog | biz_id | BIGINT | 否 | 业务 ID | 普通 |
| int_integration_log | IntegrationLog | request_payload | JSON | 否 | 请求报文,敏感字段脱敏 | 敏感 |
| int_integration_log | IntegrationLog | response_payload | JSON | 否 | 响应报文 | 普通 |
| int_integration_log | IntegrationLog | call_status | VARCHAR(32) | 是 | 成功/失败/超时/重试中 | 普通 |
| crm_lead | Lead | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| crm_lead | Lead | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| crm_lead | Lead | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| crm_lead | Lead | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| crm_lead | Lead | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| crm_lead | Lead | created_at | DATETIME | 是 | 创建时间 | 普通 |
| crm_lead | Lead | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| crm_lead | Lead | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| crm_lead | Lead | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| crm_lead | Lead | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| crm_lead | Lead | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| crm_lead | Lead | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| crm_lead | Lead | lead_no | VARCHAR(64) | 是 | 线索编号,唯一 | 普通 |
| crm_lead | Lead | source_channel | VARCHAR(64) | 是 | 来源渠道 | 普通 |
| crm_lead | Lead | campaign_id | BIGINT | 否 | 来源活动 ID | 普通 |
| crm_lead | Lead | guardian_mobile | VARCHAR(32) | 是 | 家长手机号,敏感 | 敏感 |
| crm_lead | Lead | student_name | VARCHAR(64) | 否 | 学员姓名 | 普通 |
| crm_lead | Lead | intent_course_id | BIGINT | 否 | 意向课程 | 普通 |
| crm_lead | Lead | owner_id | BIGINT | 否 | 当前归属销售/顾问 | 普通 |
| crm_lead | Lead | protect_until | DATETIME | 否 | 保护期截止时间 | 普通 |
| crm_lead | Lead | duplicate_status | VARCHAR(32) | 是 | 未查重/疑似重复/已合并/已忽略 | 普通 |
| crm_lead | Lead | biz_status | VARCHAR(32) | 是 | 业务状态,取值来自状态机字典 | 普通 |
| crm_lead | Lead | remark | VARCHAR(512) | 否 | 业务备注,敏感内容按权限脱敏 | 普通 |
| con_contract | Contract | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| con_contract | Contract | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| con_contract | Contract | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| con_contract | Contract | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| con_contract | Contract | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| con_contract | Contract | created_at | DATETIME | 是 | 创建时间 | 普通 |
| con_contract | Contract | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| con_contract | Contract | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| con_contract | Contract | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| con_contract | Contract | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| con_contract | Contract | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| con_contract | Contract | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| con_contract | Contract | contract_no | VARCHAR(64) | 是 | 合同编号,唯一 | 普通 |
| con_contract | Contract | student_id | BIGINT | 是 | 学员 ID | 普通 |
| con_contract | Contract | family_id | BIGINT | 否 | 客户家庭 ID | 普通 |
| con_contract | Contract | template_id | BIGINT | 是 | 合同模板 ID | 普通 |
| con_contract | Contract | employee_id | BIGINT | 否 | 创建合同的销售/市场/课程顾问员工 ID | 普通 |
| con_contract | Contract | source_terminal | VARCHAR(32) | 是 | 来源终端,教师端 App/小程序或 PC 管理端 | 普通 |
| con_contract | Contract | simulation_id | BIGINT | 否 | 关联优惠试算 ID | 普通 |
| con_contract | Contract | extra_discount_apply_id | BIGINT | 否 | 关联额外折扣申请 ID | 普通 |
| con_contract | Contract | hand_sign_status | VARCHAR(32) | 是 | 待手写签字/已手写签字/签字作废 | 普通 |
| con_contract | Contract | sign_status | VARCHAR(32) | 是 | 待家长签署/已手写签字/已作废 | 普通 |
| con_contract | Contract | payment_status | VARCHAR(32) | 是 | 待支付/支付中/支付成功/支付失败/已关闭 | 普通 |
| con_contract | Contract | enterprise_seal_status | VARCHAR(32) | 是 | 未触发/盖章中/已盖章/盖章失败/已归档 | 普通 |
| con_contract | Contract | contract_status | VARCHAR(32) | 是 | 草稿/生效/履约中/已终止/已退费 | 普通 |
| con_contract | Contract | supervision_status | VARCHAR(32) | 否 | 监管报送状态 | 普通 |
| con_contract | Contract | currency | VARCHAR(8) | 是 | 币种,默认 CNY | 普通 |
| con_contract | Contract | amount | DECIMAL(18,2) | 是 | 含税金额,必须大于等于 0 | 普通 |
| con_contract | Contract | tax_amount | DECIMAL(18,2) | 否 | 税额,按发票或税率计算 | 普通 |
| con_contract | Contract | approval_status | VARCHAR(32) | 否 | 审批状态,未发起为空 | 普通 |
| con_contract | Contract | approval_instance_id | BIGINT | 否 | 关联审批实例 ID | 普通 |
| hr_payslip | PayrollPayslip | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| hr_payslip | PayrollPayslip | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| hr_payslip | PayrollPayslip | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| hr_payslip | PayrollPayslip | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| hr_payslip | PayrollPayslip | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| hr_payslip | PayrollPayslip | created_at | DATETIME | 是 | 创建时间 | 普通 |
| hr_payslip | PayrollPayslip | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| hr_payslip | PayrollPayslip | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| hr_payslip | PayrollPayslip | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| hr_payslip | PayrollPayslip | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| hr_payslip | PayrollPayslip | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| hr_payslip | PayrollPayslip | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| hr_payslip | PayrollPayslip | payslip_no | VARCHAR(64) | 是 | 工资条编号,唯一 | 普通 |
| hr_payslip | PayrollPayslip | batch_id | BIGINT | 是 | 薪酬批次 ID | 普通 |
| hr_payslip | PayrollPayslip | employee_id | BIGINT | 是 | 员工 ID | 普通 |
| hr_payslip | PayrollPayslip | gross_salary | DECIMAL(18,2) | 是 | 应发工资 | 普通 |
| hr_payslip | PayrollPayslip | net_salary | DECIMAL(18,2) | 是 | 实发工资 | 普通 |
| hr_payslip | PayrollPayslip | show_social_insurance | TINYINT | 是 | 是否显示社保信息 | 普通 |
| hr_payslip | PayrollPayslip | show_housing_fund | TINYINT | 是 | 是否显示公积金信息 | 普通 |
| hr_payslip | PayrollPayslip | confirm_status | VARCHAR(32) | 是 | 待确认/已确认/有异议 | 普通 |
| exp_invoice | Invoice | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| exp_invoice | Invoice | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| exp_invoice | Invoice | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| exp_invoice | Invoice | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| exp_invoice | Invoice | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| exp_invoice | Invoice | created_at | DATETIME | 是 | 创建时间 | 普通 |
| exp_invoice | Invoice | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| exp_invoice | Invoice | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| exp_invoice | Invoice | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| exp_invoice | Invoice | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| exp_invoice | Invoice | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| exp_invoice | Invoice | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| exp_invoice | Invoice | invoice_no | VARCHAR(64) | 是 | 发票号码 | 普通 |
| exp_invoice | Invoice | invoice_code | VARCHAR(64) | 否 | 发票代码 | 普通 |
| exp_invoice | Invoice | invoice_type | VARCHAR(32) | 是 | 专票/普票/电子票/其他 | 普通 |
| exp_invoice | Invoice | seller_tax_no | VARCHAR(64) | 否 | 销售方税号 | 敏感 |
| exp_invoice | Invoice | buyer_tax_no | VARCHAR(64) | 否 | 购买方税号 | 敏感 |
| exp_invoice | Invoice | ocr_result | JSON | 否 | OCR 识别结果 | 普通 |
| exp_invoice | Invoice | duplicate_status | VARCHAR(32) | 是 | 未查重/重复/未重复 | 普通 |
| dev_face_person | FacePerson | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| dev_face_person | FacePerson | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| dev_face_person | FacePerson | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| dev_face_person | FacePerson | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| dev_face_person | FacePerson | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| dev_face_person | FacePerson | created_at | DATETIME | 是 | 创建时间 | 普通 |
| dev_face_person | FacePerson | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| dev_face_person | FacePerson | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| dev_face_person | FacePerson | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| dev_face_person | FacePerson | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| dev_face_person | FacePerson | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| dev_face_person | FacePerson | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| dev_face_person | FacePerson | person_no | VARCHAR(64) | 是 | 人员编号,唯一 | 普通 |
| dev_face_person | FacePerson | person_type | VARCHAR(32) | 是 | 学员/教师/员工 | 普通 |
| dev_face_person | FacePerson | person_id | BIGINT | 是 | 业务人员 ID | 普通 |
| dev_face_person | FacePerson | photo_file_id | BIGINT | 是 | 人脸照片文件 ID | 高敏 |
| dev_face_person | FacePerson | valid_until | DATETIME | 否 | 授权有效期 | 普通 |
| dev_face_person | FacePerson | sync_status | VARCHAR(32) | 是 | 待下发/已下发/失败/已撤销 | 普通 |
JSON 字段结构与校验
| 表名 | 对象 | 字段 | 结构编码 | 结构定义 | 校验规则 | 示例 |
|---|---|---|---|---|---|---|
| sec_permission_policy | PermissionPolicy | resource_policy | PERMISSION_POLICY | {menus:string[], buttons:string[], fields:{fieldCode:string, action:string}[], dataScope:object} | 权限变更写审计并刷新缓存 | {"menus":["CRM_LEAD"],"dataScope":{"scopeType":"SELF"}} |
| sec_permission_policy | PermissionPolicy | field_policy | PERMISSION_POLICY | {menus:string[], buttons:string[], fields:{fieldCode:string, action:string}[], dataScope:object} | 权限变更写审计并刷新缓存 | {"menus":["CRM_LEAD"],"dataScope":{"scopeType":"SELF"}} |
| sec_sensitive_access_approval | SensitiveAccessApproval | field_scope | ORG_SCOPE | {scopeType:string, orgIds:number[], campusIds:number[], includeChildren:boolean} | 组织和校区必须在当前租户授权范围内 | {"scopeType":"CAMPUS","campusIds":[101,102],"includeChildren":false} |
| sec_export_approval | ExportApproval | filter_snapshot | AUDIT_SNAPSHOT | {before?:object, after?:object, changedFields:string[], maskPolicy:string} | 敏感字段必须按脱敏策略写入,不允许存储明文密码或密钥 | {"changedFields":["owner_id"],"maskPolicy":"MOBILE_MASK"} |
| sec_high_risk_operation | HighRiskOperation | confirm_payload | SUPERVISION_PAYLOAD | {bizType:string, contractNo:string, amount:number, student:object, attachments:number[]} | 报送字段必须满足教育局/监管账户配置的必填规则 | {"bizType":"CONTRACT","contractNo":"DNC20260628001","amount":6800} |
| sec_backup_record | BackupRecord | backup_scope | BACKUP_SCOPE | {databases:string[], tables:string[], retentionDays:number, encrypt:boolean} | 备份范围必须包含关键交易表和附件索引 | {"databases":["dinuo_core"],"retentionDays":30,"encrypt":true} |
状态/枚举标准字典
| 表名 | 对象 | 字段 | 枚举编码 | 取值 | 终态/流转规则 | 字段说明 |
|---|---|---|---|---|---|---|
| sec_permission_policy | PermissionPolicy | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_permission_policy | PermissionPolicy | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_permission_policy | PermissionPolicy | terminal_type | TERMINAL_TYPE | PC_WEB、WECHAT_MINI_PROGRAM、IOS_APP、IPAD_APP、ANDROID_APP、ANDROID_TABLET、H5、MACOS_TAURI、WINDOWS_TAURI、MACOS_ELECTRON、WINDOWS_ELECTRON、ANDROID_TV、BIG_SCREEN | 非终态,可按状态机或字典规则流转 | PC/App/小程序/H5/TV/大屏 |
| sec_permission_policy | PermissionPolicy | enabled | ENABLED_STATUS | 0 停用、1 启用 | 非终态,可按状态机或字典规则流转 | 是否启用 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | biz_type | BIZ_TYPE | LEAD 线索、CUSTOMER 客户、CONTRACT 合同、ORDER 订单、PAYMENT 收款、REFUND 退费、LESSON 课次、CONSUMPTION 课消、EXPENSE 报销、VOUCHER 凭证、INVOICE 发票、LIVE 直播、PATROL 巡课、DEVICE 设备、MATERIAL 物料、PAYROLL 工资 | 非终态,可按状态机或字典规则流转 | 业务类型 |
| sec_sensitive_access_approval | SensitiveAccessApproval | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_sensitive_access_approval | SensitiveAccessApproval | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_sensitive_access_approval | SensitiveAccessApproval | biz_type | BIZ_TYPE | LEAD 线索、CUSTOMER 客户、CONTRACT 合同、ORDER 订单、PAYMENT 收款、REFUND 退费、LESSON 课次、CONSUMPTION 课消、EXPENSE 报销、VOUCHER 凭证、INVOICE 发票、LIVE 直播、PATROL 巡课、DEVICE 设备、MATERIAL 物料、PAYROLL 工资 | 非终态,可按状态机或字典规则流转 | 业务类型 |
| sec_sensitive_access_approval | SensitiveAccessApproval | field_scope | FIELD_SCOPE | MOBILE 手机号、ID_CARD 身份证号、FACE_PHOTO 人脸照片、PAYROLL 工资字段、INVOICE 发票字段、CONTRACT 合同附件、BANK_ACCOUNT 银行账号 | 非终态,可按状态机或字典规则流转 | 申请查看字段 |
| sec_sensitive_access_approval | SensitiveAccessApproval | approval_status | APPROVAL_STATUS | NOT_STARTED 未发起、PENDING 审批中、APPROVED 已通过、REJECTED 已驳回、REVOKED 已撤回 | 非终态,可按状态机或字典规则流转 | 审批状态,未发起为空 |
| sec_export_approval | ExportApproval | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_export_approval | ExportApproval | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_export_approval | ExportApproval | export_biz_type | EXPORT_BIZ_TYPE | LEAD_EXPORT 线索导出、CUSTOMER_EXPORT 客户导出、CONTRACT_EXPORT 合同导出、FINANCE_EXPORT 财务导出、PAYROLL_EXPORT 工资导出、AUDIT_EXPORT 审计导出 | 非终态,可按状态机或字典规则流转 | 导出业务类型 |
| sec_export_approval | ExportApproval | approval_status | APPROVAL_STATUS | NOT_STARTED 未发起、PENDING 审批中、APPROVED 已通过、REJECTED 已驳回、REVOKED 已撤回 | 非终态,可按状态机或字典规则流转 | 审批状态,未发起为空 |
| sec_high_risk_operation | HighRiskOperation | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_high_risk_operation | HighRiskOperation | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_high_risk_operation | HighRiskOperation | operation_type | OPERATION_TYPE | 删除、作废、红冲、批量导出、权限变更 | 非终态,可按状态机或字典规则流转 | 删除/作废/红冲/批量导出/权限变更 |
| sec_high_risk_operation | HighRiskOperation | biz_type | BIZ_TYPE | LEAD 线索、CUSTOMER 客户、CONTRACT 合同、ORDER 订单、PAYMENT 收款、REFUND 退费、LESSON 课次、CONSUMPTION 课消、EXPENSE 报销、VOUCHER 凭证、INVOICE 发票、LIVE 直播、PATROL 巡课、DEVICE 设备、MATERIAL 物料、PAYROLL 工资 | 非终态,可按状态机或字典规则流转 | 业务类型 |
| sec_high_risk_operation | HighRiskOperation | operation_status | OPERATION_STATUS | 待确认、已执行、已取消、失败 | 包含终态,终态禁止直接编辑,需走变更/红冲/撤回流程 | 待确认/已执行/已取消/失败 |
| sec_backup_record | BackupRecord | tenant_id | TENANT_ID | 集团、租户隔离字段 | 非终态,可按状态机或字典规则流转 | 集团/租户隔离字段,所有查询必须带租户上下文 |
| sec_backup_record | BackupRecord | is_deleted | BOOL_DELETED | 0 未删除、1 已删除 | 非终态,可按状态机或字典规则流转 | 是否已删除,0 未删除,1 已删除 |
| sec_backup_record | BackupRecord | backup_scope | BACKUP_SCOPE | FULL_DATABASE 全库、CORE_TABLE 核心表、LOG_TABLE 日志表、FILE_INDEX 附件索引、CONFIG_ONLY 配置数据 | 非终态,可按状态机或字典规则流转 | 备份范围 |
| sec_backup_record | BackupRecord | backup_status | BACKUP_STATUS | 进行中、成功、失败、已过期 | 包含终态,终态禁止直接编辑,需走变更/红冲/撤回流程 | 进行中/成功/失败/已过期 |
敏感字段与数据安全策略
| 来源 | 表名 | 对象 | 字段 | 数据级别 | 脱敏/返回策略 | 明文查看条件 | 导出策略 | 审计要求 | 端侧展示规则 |
|---|---|---|---|---|---|---|---|---|---|
| 本模块对象 | sec_sensitive_field_policy | SensitiveFieldPolicy | mask_rule | 普通 | BIZ_FIELD_MASK | 按字段权限、数据范围和业务角色展示;明文查看按敏感字段审批规则执行 | 导出时按数据级别触发审批、水印、下载有效期和日志 | 查看、修改、删除、导出、下载和审批均记录操作审计 | 默认遵循总部、区域、校区、团队、本人数据范围和端侧最小可见原则 |
| 本模块对象 | sec_sensitive_access_approval | SensitiveAccessApproval | expire_at | 普通 | BIZ_FIELD_MASK | 按字段权限、数据范围和业务角色展示;明文查看按敏感字段审批规则执行 | 导出时按数据级别触发审批、水印、下载有效期和日志 | 查看、修改、删除、导出、下载和审批均记录操作审计 | 默认遵循总部、区域、校区、团队、本人数据范围和端侧最小可见原则 |
| 本模块对象 | sec_high_risk_operation | HighRiskOperation | confirm_payload | 普通 | PAYLOAD_DESENSITIZE | 接口报文、快照和文件地址默认脱敏;排障查看需运维/安全授权 | 导出日志或报文时自动清理手机号、证件号、密钥、票据和人脸字段 | 查看报文、下载附件、失败重放和人工补偿均记录审计 | 业务端展示摘要和状态,完整报文仅运维/安全后台查看 |
| 引用对象 | sys_user | User/Employee | mobile | 敏感 | MOBILE_MASK | 默认展示 138****0000;明文查看需字段权限或敏感字段查看审批 | 导出手机号必须触发导出审批、下载水印和有效期控制 | 明文查看、复制、导出和批量下载均写入 SensitiveAccessLog | PC 管理端按字段权限展示;移动端仅展示本人授权范围内脱敏信息 |
| 引用对象 | sys_user | User/Employee | password_hash | 高敏 | NEVER_RETURN | 禁止接口返回明文;仅密钥中心/鉴权服务按服务身份读取密钥引用 | 禁止导出;配置导出只允许导出脱敏引用和启停状态 | 配置新增、修改、启停、轮换和失败读取均记录安全审计 | 前端只展示已配置/未配置、到期时间和连通性状态,不展示密钥值 |
| 引用对象 | int_integration_log | IntegrationLog | request_payload | 敏感 | PAYLOAD_DESENSITIZE | 接口报文、快照和文件地址默认脱敏;排障查看需运维/安全授权 | 导出日志或报文时自动清理手机号、证件号、密钥、票据和人脸字段 | 查看报文、下载附件、失败重放和人工补偿均记录审计 | 业务端展示摘要和状态,完整报文仅运维/安全后台查看 |
| 引用对象 | int_integration_log | IntegrationLog | response_payload | 普通 | PAYLOAD_DESENSITIZE | 接口报文、快照和文件地址默认脱敏;排障查看需运维/安全授权 | 导出日志或报文时自动清理手机号、证件号、密钥、票据和人脸字段 | 查看报文、下载附件、失败重放和人工补偿均记录审计 | 业务端展示摘要和状态,完整报文仅运维/安全后台查看 |
| 引用对象 | crm_lead | Lead | guardian_mobile | 敏感 | MOBILE_MASK | 默认展示 138****0000;明文查看需字段权限或敏感字段查看审批 | 导出手机号必须触发导出审批、下载水印和有效期控制 | 明文查看、复制、导出和批量下载均写入 SensitiveAccessLog | PC 管理端按字段权限展示;移动端仅展示本人授权范围内脱敏信息 |
| 引用对象 | crm_lead | Lead | remark | 普通 | BIZ_FIELD_MASK | 按字段权限、数据范围和业务角色展示;明文查看按敏感字段审批规则执行 | 导出时按数据级别触发审批、水印、下载有效期和日志 | 查看、修改、删除、导出、下载和审批均记录操作审计 | 默认遵循总部、区域、校区、团队、本人数据范围和端侧最小可见原则 |
| 引用对象 | con_contract | Contract | tax_amount | 普通 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | hr_payslip | PayrollPayslip | payslip_no | 普通 | PAYROLL_MASK | 默认仅本人和授权人力/财务可见;社保、公积金字段按后台开关展示 | 工资条批量导出必须走高敏审批并限制下载次数 | 发布、撤回、重发、查看、确认、异议、导出全链路审计 | 教师/员工端仅查看本人电子工资条;PC 按岗位与审批展示 |
| 引用对象 | hr_payslip | PayrollPayslip | gross_salary | 普通 | PAYROLL_MASK | 默认仅本人和授权人力/财务可见;社保、公积金字段按后台开关展示 | 工资条批量导出必须走高敏审批并限制下载次数 | 发布、撤回、重发、查看、确认、异议、导出全链路审计 | 教师/员工端仅查看本人电子工资条;PC 按岗位与审批展示 |
| 引用对象 | hr_payslip | PayrollPayslip | net_salary | 普通 | PAYROLL_MASK | 默认仅本人和授权人力/财务可见;社保、公积金字段按后台开关展示 | 工资条批量导出必须走高敏审批并限制下载次数 | 发布、撤回、重发、查看、确认、异议、导出全链路审计 | 教师/员工端仅查看本人电子工资条;PC 按岗位与审批展示 |
| 引用对象 | exp_invoice | Invoice | invoice_no | 普通 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | exp_invoice | Invoice | invoice_code | 普通 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | exp_invoice | Invoice | invoice_type | 普通 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | exp_invoice | Invoice | seller_tax_no | 敏感 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | exp_invoice | Invoice | buyer_tax_no | 敏感 | TAX_INVOICE_MASK | 默认按税号/发票号局部脱敏;发票原图、OCR 结果和国税回执按财务权限查看 | 财务导出需审批并加水印;国税官方回执随业务单归档 | OCR、核验、查重、人工校正、导出和付款阻断均留痕 | 移动端可上传和查看本人报销结果,不展示其他人员票据明文 |
| 引用对象 | dev_face_person | FacePerson | photo_file_id | 高敏 | FACE_IMAGE_PROTECTED | 默认只返回受控文件 ID/缩略图;人脸照片查看、下发、删除需授权和审计 | 禁止常规导出;仅设备下发、授权撤回和合规取证场景允许 | 人脸采集、下发、识别、撤回、删除、失败重试全链路留痕 | 未授权端不展示原图;设备端按任务有效期拉取 |
| 引用对象 | dev_face_person | FacePerson | valid_until | 普通 | BIZ_FIELD_MASK | 按字段权限、数据范围和业务角色展示;明文查看按敏感字段审批规则执行 | 导出时按数据级别触发审批、水印、下载有效期和日志 | 查看、修改、删除、导出、下载和审批均记录操作审计 | 默认遵循总部、区域、校区、团队、本人数据范围和端侧最小可见原则 |
核心数据表完整字段
| 表名 | 对象 | 字段 | 类型 | 必填 | 规则 | 数据级别 |
|---|---|---|---|---|---|---|
| sec_permission_policy | PermissionPolicy | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_permission_policy | PermissionPolicy | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_permission_policy | PermissionPolicy | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_permission_policy | PermissionPolicy | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_permission_policy | PermissionPolicy | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_permission_policy | PermissionPolicy | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_permission_policy | PermissionPolicy | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_permission_policy | PermissionPolicy | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_permission_policy | PermissionPolicy | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_permission_policy | PermissionPolicy | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_permission_policy | PermissionPolicy | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_permission_policy | PermissionPolicy | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_permission_policy | PermissionPolicy | policy_code | VARCHAR(64) | 是 | 策略编码,唯一 | 普通 |
| sec_permission_policy | PermissionPolicy | role_id | BIGINT | 是 | 角色 ID | 普通 |
| sec_permission_policy | PermissionPolicy | terminal_type | VARCHAR(32) | 是 | PC/App/小程序/H5/TV/大屏 | 普通 |
| sec_permission_policy | PermissionPolicy | resource_policy | JSON | 是 | 资源权限配置 | 普通 |
| sec_permission_policy | PermissionPolicy | field_policy | JSON | 否 | 字段权限配置 | 普通 |
| sec_permission_policy | PermissionPolicy | enabled | TINYINT | 是 | 是否启用 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | field_code | VARCHAR(128) | 是 | 字段编码,唯一 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | mask_rule | VARCHAR(64) | 是 | 脱敏规则 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | view_requires_approval | TINYINT | 是 | 明文查看是否需审批 | 普通 |
| sec_sensitive_field_policy | SensitiveFieldPolicy | watermark_required | TINYINT | 是 | 是否加水印 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | request_no | VARCHAR(64) | 是 | 申请编号,唯一 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | applicant_id | BIGINT | 是 | 申请人 ID | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | biz_id | BIGINT | 是 | 业务 ID | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | field_scope | JSON | 是 | 申请查看字段 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | access_reason | VARCHAR(512) | 是 | 查看原因 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | expire_at | DATETIME | 否 | 授权过期时间 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | approval_status | VARCHAR(32) | 否 | 审批状态,未发起为空 | 普通 |
| sec_sensitive_access_approval | SensitiveAccessApproval | approval_instance_id | BIGINT | 否 | 关联审批实例 ID | 普通 |
| sec_export_approval | ExportApproval | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_export_approval | ExportApproval | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_export_approval | ExportApproval | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_export_approval | ExportApproval | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_export_approval | ExportApproval | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_export_approval | ExportApproval | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_export_approval | ExportApproval | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_export_approval | ExportApproval | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_export_approval | ExportApproval | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_export_approval | ExportApproval | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_export_approval | ExportApproval | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_export_approval | ExportApproval | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_export_approval | ExportApproval | export_no | VARCHAR(64) | 是 | 导出编号,唯一 | 普通 |
| sec_export_approval | ExportApproval | applicant_id | BIGINT | 是 | 申请人 ID | 普通 |
| sec_export_approval | ExportApproval | export_biz_type | VARCHAR(64) | 是 | 导出业务类型 | 普通 |
| sec_export_approval | ExportApproval | filter_snapshot | JSON | 是 | 导出筛选条件快照 | 普通 |
| sec_export_approval | ExportApproval | file_id | BIGINT | 否 | 导出文件 ID | 普通 |
| sec_export_approval | ExportApproval | download_expire_at | DATETIME | 否 | 下载过期时间 | 普通 |
| sec_export_approval | ExportApproval | approval_status | VARCHAR(32) | 否 | 审批状态,未发起为空 | 普通 |
| sec_export_approval | ExportApproval | approval_instance_id | BIGINT | 否 | 关联审批实例 ID | 普通 |
| sec_high_risk_operation | HighRiskOperation | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_high_risk_operation | HighRiskOperation | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_high_risk_operation | HighRiskOperation | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_high_risk_operation | HighRiskOperation | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_high_risk_operation | HighRiskOperation | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_high_risk_operation | HighRiskOperation | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_high_risk_operation | HighRiskOperation | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_high_risk_operation | HighRiskOperation | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_high_risk_operation | HighRiskOperation | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_high_risk_operation | HighRiskOperation | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_high_risk_operation | HighRiskOperation | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_high_risk_operation | HighRiskOperation | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_high_risk_operation | HighRiskOperation | operation_no | VARCHAR(64) | 是 | 操作编号,唯一 | 普通 |
| sec_high_risk_operation | HighRiskOperation | operator_id | BIGINT | 是 | 操作人 ID | 普通 |
| sec_high_risk_operation | HighRiskOperation | operation_type | VARCHAR(64) | 是 | 删除/作废/红冲/批量导出/权限变更 | 普通 |
| sec_high_risk_operation | HighRiskOperation | biz_type | VARCHAR(64) | 是 | 业务类型 | 普通 |
| sec_high_risk_operation | HighRiskOperation | biz_id | BIGINT | 否 | 业务 ID | 普通 |
| sec_high_risk_operation | HighRiskOperation | confirm_payload | JSON | 否 | 二次确认内容 | 普通 |
| sec_high_risk_operation | HighRiskOperation | operation_status | VARCHAR(32) | 是 | 待确认/已执行/已取消/失败 | 普通 |
| sec_backup_record | BackupRecord | id | BIGINT | 是 | 主键,雪花或号段生成,禁止复用 | 普通 |
| sec_backup_record | BackupRecord | tenant_id | BIGINT | 是 | 集团/租户隔离字段,所有查询必须带租户上下文 | 普通 |
| sec_backup_record | BackupRecord | org_id | BIGINT | 否 | 所属组织,集团级或公共配置为空 | 普通 |
| sec_backup_record | BackupRecord | campus_id | BIGINT | 否 | 所属校区,跨校区或总部级数据为空 | 普通 |
| sec_backup_record | BackupRecord | created_by | BIGINT | 是 | 创建人账号 ID | 普通 |
| sec_backup_record | BackupRecord | created_at | DATETIME | 是 | 创建时间 | 普通 |
| sec_backup_record | BackupRecord | updated_by | BIGINT | 否 | 最后更新人账号 ID | 普通 |
| sec_backup_record | BackupRecord | updated_at | DATETIME | 否 | 最后更新时间 | 普通 |
| sec_backup_record | BackupRecord | is_deleted | TINYINT | 是 | 是否已删除,0 未删除,1 已删除 | 普通 |
| sec_backup_record | BackupRecord | deleted_at | DATETIME | 否 | 删除时间,未删除为空 | 普通 |
| sec_backup_record | BackupRecord | deleted_by | BIGINT | 否 | 删除人账号 ID,未删除为空 | 普通 |
| sec_backup_record | BackupRecord | version | INT | 是 | 乐观锁版本号,写操作必须校验 | 普通 |
| sec_backup_record | BackupRecord | backup_no | VARCHAR(64) | 是 | 备份编号,唯一 | 普通 |
| sec_backup_record | BackupRecord | backup_scope | JSON | 是 | 备份范围 | 普通 |
| sec_backup_record | BackupRecord | storage_location | VARCHAR(512) | 是 | 备份存储位置 | 普通 |
| sec_backup_record | BackupRecord | backup_started_at | DATETIME | 是 | 开始时间 | 普通 |
| sec_backup_record | BackupRecord | backup_finished_at | DATETIME | 否 | 结束时间 | 普通 |
| sec_backup_record | BackupRecord | backup_status | VARCHAR(32) | 是 | 进行中/成功/失败/已过期 | 普通 |
数据表与对象映射
| 表名 | 对象 | 用途 | 完整字段 | 索引建议 |
|---|---|---|---|---|
| sec_permission_policy | PermissionPolicy | 菜单、按钮、字段和接口权限策略 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、policy_code(VARCHAR(64),必填)、role_id(BIGINT,必填)、terminal_type(VARCHAR(32),必填)、resource_policy(JSON,必填)、field_policy(JSON)、enabled(TINYINT,必填) | uk_policy_code、idx_role_terminal |
| sec_sensitive_field_policy | SensitiveFieldPolicy | 敏感字段脱敏策略 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、field_code(VARCHAR(128),必填)、biz_type(VARCHAR(64),必填)、mask_rule(VARCHAR(64),必填)、view_requires_approval(TINYINT,必填)、watermark_required(TINYINT,必填) | uk_field_code、idx_biz |
| sec_sensitive_access_approval | SensitiveAccessApproval | 敏感数据查看审批 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、request_no(VARCHAR(64),必填)、applicant_id(BIGINT,必填)、biz_type(VARCHAR(64),必填)、biz_id(BIGINT,必填)、field_scope(JSON,必填)、access_reason(VARCHAR(512),必填)、expire_at(DATETIME)、approval_status(VARCHAR(32))、approval_instance_id(BIGINT) | uk_request_no、idx_status |
| sec_export_approval | ExportApproval | 敏感数据导出审批 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、export_no(VARCHAR(64),必填)、applicant_id(BIGINT,必填)、export_biz_type(VARCHAR(64),必填)、filter_snapshot(JSON,必填)、file_id(BIGINT)、download_expire_at(DATETIME)、approval_status(VARCHAR(32))、approval_instance_id(BIGINT) | uk_export_no、idx_status |
| sec_high_risk_operation | HighRiskOperation | 高危操作留痕与二次确认 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、operation_no(VARCHAR(64),必填)、operator_id(BIGINT,必填)、operation_type(VARCHAR(64),必填)、biz_type(VARCHAR(64),必填)、biz_id(BIGINT)、confirm_payload(JSON)、operation_status(VARCHAR(32),必填) | uk_operation_no、idx_operator_type |
| sec_backup_record | BackupRecord | 数据备份与恢复记录 | id(BIGINT,必填)、tenant_id(BIGINT,必填)、org_id(BIGINT)、campus_id(BIGINT)、created_by(BIGINT,必填)、created_at(DATETIME,必填)、updated_by(BIGINT)、updated_at(DATETIME)、is_deleted(TINYINT,必填)、deleted_at(DATETIME)、deleted_by(BIGINT)、version(INT,必填)、backup_no(VARCHAR(64),必填)、backup_scope(JSON,必填)、storage_location(VARCHAR(512),必填)、backup_started_at(DATETIME,必填)、backup_finished_at(DATETIME)、backup_status(VARCHAR(32),必填) | uk_backup_no、idx_status |
12 · 状态机与业务规则
约束业务对象如何流转、何时可编辑、何时触发审批
原型需要把状态标签、可操作按钮和禁用原因展示清楚。| 对象 | 状态 | 触发与说明 |
|---|---|---|
| 线索 | 新建 -> 已分配 -> 跟进中 -> 已邀约 -> 已试听 -> 待签约 -> 已成交 -> 已流失 | 顾问跟进、试听反馈、合同创建、流失原因 |
| 合同 | 草稿 -> 待审批 -> 待签署 -> 已签署 -> 已备案 -> 已收款 -> 履约中 -> 已结课 -> 已退费 -> 已作废 | 优惠审批、电子签、监管备案、收款、课消、退费 |
| 人脸授权 | 未授权 -> 待采集 -> 已授权 -> 已下发 -> 撤回中 -> 已撤回 -> 已删除 | 家长授权、照片采集、设备下发、撤回授权 |
| 监管报送 | 待生成 -> 待报送 -> 报送中 -> 成功 -> 失败 -> 待重报 -> 人工处理 | 合同备案、收款、课消、退费报送与回执 |
| 退费单 | 草稿 -> 待学管确认 -> 待校长审批 -> 待财务复核 -> 监管退款中 -> 已退款 -> 已驳回 -> 已取消 | 退费测算、审批、退款回执和凭证冲销 |
| 报销单 | 草稿 -> 待 OCR -> 待核验 -> 待审批 -> 已通过 -> 待付款 -> 已付款 -> 已驳回 -> 已作废 | 员工填单、票据识别、发票核验、查重、审批、付款归档 |
| 作业草稿 | 无草稿 -> 编辑中 -> 自动保存中 -> 已保存 -> 待提交 -> 已提交 -> 已删除 -> 已过期 -> 冲突待恢复 | 学员进入作业后可自动或手动保存草稿,提交成功后关闭草稿;删除、过期和多端冲突必须可提示、可审计、可恢复到安全状态 |
| 电子工资条 | 待生成 -> 待审核 -> 待发布 -> 已发布 -> 员工已查看 -> 异议中 -> 已确认 -> 已归档 | 薪资核算、审批、发布、员工查看确认、异议处理和归档 |
| 人脸授权撤回 | 已提交 -> 家长已确认 -> 设备删除中 -> 部分失败 -> 已删除 -> 人工处理 -> 已关闭 | 家长撤回、人脸模板删除任务、设备回执、失败重试和审计 |
| 敏感字段查看 | 待审批 -> 已授权 -> 已查看 -> 已过期 -> 已撤回 -> 已驳回 | 敏感字段明文查看申请、审批、限时授权、水印和审计 |
| 合同补充协议 | 草稿 -> 待审批 -> 待签署 -> 待备案 -> 已生效 -> 已驳回 -> 已作废 | 合同变更、补充协议、作废重签、监管备案和财务调整 |
| 工资条撤回重发 | 已发布 -> 撤回中 -> 已撤回 -> 重发待审核 -> 已重发 -> 待重新确认 -> 已确认 -> 已归档 | 工资条发布错误后撤回、重发、员工重新确认和版本留痕 |
| 付款失败补偿 | 付款失败 -> 待重试 -> 重试中 -> 换账户中 -> 撤销审批中 -> 线下付款登记 -> 已补偿 -> 人工关闭 | 报销、采购、退款、工资付款失败后的统一补偿 |
| 教师端工作台任务 | 待处理 -> 处理中 -> 已完成 -> 已驳回 -> 已超时 -> 已取消 | 课程、批改、审批、培训、报销、工资条和直播任务统一进入工作台待办,并按业务模块回写处理状态。 |
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
安全合规中心涉及该规则时,必须在前端提示、后端校验、审计日志和测试用例中同时覆盖。
13 · 权限、审批与消息
动作权限、数据范围、审批触发和消息触达必须闭环
权限需要覆盖菜单、按钮、字段、接口和导出。动作权限
- 配置分级:需映射菜单、按钮、接口和字段权限
- 字段脱敏:需映射菜单、按钮、接口和字段权限
- 明文查看审批:需映射菜单、按钮、接口和字段权限
- 临时授权:需映射菜单、按钮、接口和字段权限
- 导出审批:需映射菜单、按钮、接口和字段权限
- 授权撤回:需映射菜单、按钮、接口和字段权限
- 审计查询:需映射菜单、按钮、接口和字段权限
- 备份恢复:需映射菜单、按钮、接口和字段权限
数据范围
- 总部全量
- 区域辖区
- 校区本地
- 部门/岗位
- 本人负责
- 授权班级/学员
审批配置
| 审批名称 | 触发条件 | 流程 | 结果 | 留痕 |
|---|---|---|---|---|
| 合同优惠审批 | 折扣低于总部配置阈值或赠课超过上限 | 顾问提交 -> 销售主管 -> 校长 -> 财务抄送 | 通过后合同可签署,驳回后返回报价草稿 | 保留优惠前后金额和审批意见 |
| 退费审批 | 任意退费或转课产生金额冲减 | 学管师确认 -> 校长审批 -> 财务复核 | 通过后进入监管退款,驳回后关闭退费单 | 保留测算明细、附件和退款回执 |
| 报销审批 | 员工提交费用报销或发票查重命中风险 | 员工提交 -> 部门主管 -> 校长/预算负责人 -> 财务复核 | 通过后进入付款,驳回后返回报销人修改 | 保留票据影像、OCR 结果、核验结果、查重结果和审批意见 |
| 账套反结账审批 | 已结账期间需要反结账或更正税务资料 | 校区财务提交 -> 总部财务复核 -> 财务负责人终审 | 通过后解锁期间并记录调整原因 | 保留反结账前后凭证、税表和审批说明 |
| 物料采购审批 | 采购金额超过阈值、跨校区采购或固定资产采购 | 申请人 -> 校区负责人 -> 采购/财务 -> 总部审批 | 通过后生成采购订单和到货验收任务 | 保留预算、供应商、报价和采购合同附件 |
| 固定资产报废审批 | 固定资产、图书或高价值物料需要报废 | 责任人提交 -> 校区负责人 -> 资产管理员 -> 财务复核 | 通过后出库、报废并生成财务核销记录 | 保留照片、盘点记录、处置说明和残值 |
| 转校审批 | 学员权益跨校区转移 | 原校区校长 -> 目标校区校长 -> 财务确认 | 权益和服务归属迁移 | 记录转出转入校区和余额 |
| 合同作废审批 | 已签署或已收款合同作废 | 顾问提交 -> 校长 -> 财务 | 合同作废并回滚相关权益 | 保留作废原因和关联订单 |
消息模板
| 消息 | 接收人 | 触发 | 渠道 | 变量 |
|---|---|---|---|---|
| 电子合同待签署 | 家长 | 合同生成后 | 短信、小程序、H5 | 合同名称、金额、签署链接、有效期 |
| 收款成功通知 | 家长/顾问/财务 | 支付成功 | 小程序、站内信 | 订单金额、课程、支付时间 |
| 报销审批提醒 | 审批人/财务 | 报销单提交、超时或驳回后重提 | 站内信、App、企微 | 报销人、费用类型、金额、票据风险、审批入口 |
| 发票重复预警 | 报销人/财务 | 发票查重命中疑似重复 | 站内信、App | 发票号码、金额、历史报销单、风险等级 |
| 到校签到通知 | 家长 | 人脸或人工签到成功 | 小程序、App | 学员姓名、签到时间、校区、课程 |
| 退费审批提醒 | 校长/财务 | 退费单提交 | 站内信、App | 合同编号、测算金额、申请原因 |
| 监管失败告警 | 财务/系统管理员 | 监管接口返回失败 | 站内信、短信 | 业务单号、失败原因、重试入口 |
| 数据导出审批 | 审批人 | 敏感数据导出申请 | 站内信、App | 申请人、字段范围、用途、过期时间 |
14 · 接口与技术细节
接口需支持幂等、权限、审计、重试和回执
每个写接口必须有 requestId 或业务幂等键,外部回调必须验签和去重。| 接口 | 方法 | 方向 | 请求字段 | 响应字段 | 幂等/权限 |
|---|---|---|---|---|---|
| /api/v1/audit/export | POST/GET | PC Web 到安全中心 | bizType, timeRange, reason, approvalId | exportTaskId, downloadUrl, expireAt | 导出审批校验 |
| /api/v1/security/sensitive-access-requests | POST/GET | 多端 到安全中心 | fieldCodes, bizType, bizId, reason, expireAt, requestId | accessRequestId, accessStatus, watermarkedViewUrl | 审批通过限时授权 |
| /api/v1/security/data-scopes | PUT | PC Web 到安全中心 | roleId, scopeType, orgIds, ruleJson | effectiveScope, affectedUsers | 变更留痕 |
| /api/v1/security/masking-rules | POST/PUT | PC Web 到安全中心 | fieldCode, maskingRule, revealPolicy | ruleId, enabled | 字段唯一 |
| /api/v1/face/authorizations/{id}/revoke | POST | 安全中心到设备中心 | authorizationId, reason, operatorId | revokeTaskId, auditId | 敏感授权撤回留痕 |
前端约束
- 统一登录态和租户校区上下文
- 列表分页、筛选、排序、列显隐
- 表单本地校验与服务端错误映射
- 移动/平板/TV 按终端适配交互
后端约束
- 领域服务封装业务规则
- 写操作事务一致性
- 关键操作审计快照
- 异步任务失败重试和告警
集成约束
- 第三方接口统一走开放集成中心
- 回执文件归档
- 接口日志可按业务单号追踪
- 密钥和回调地址按环境隔离
15 · 数据库与存储设计
核心表建议、关键字段和索引方向
详细 DDL 已在平台技术设计文档中统一展开,本处保留模块核心表、关键字段和索引方向。| 表名 | 用途 | 核心字段 | 索引建议 |
|---|---|---|---|
| sec_permission_policy | 菜单、按钮、字段和接口权限策略 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、policy_code、role_id、terminal_type、resource_policy、field_policy、enabled | uk_policy_code、idx_role_terminal |
| sec_sensitive_field_policy | 敏感字段脱敏策略 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、field_code、biz_type、mask_rule、view_requires_approval、watermark_required | uk_field_code、idx_biz |
| sec_sensitive_access_approval | 敏感数据查看审批 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、request_no、applicant_id、biz_type、biz_id、field_scope、access_reason、expire_at、approval_status、approval_instance_id | uk_request_no、idx_status |
| sec_export_approval | 敏感数据导出审批 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、export_no、applicant_id、export_biz_type、filter_snapshot、file_id、download_expire_at、approval_status、approval_instance_id | uk_export_no、idx_status |
| sec_high_risk_operation | 高危操作留痕与二次确认 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、operation_no、operator_id、operation_type、biz_type、biz_id、confirm_payload、operation_status | uk_operation_no、idx_operator_type |
| sec_backup_record | 数据备份与恢复记录 | id、tenant_id、org_id、campus_id、created_by、created_at、updated_by、updated_at、is_deleted、deleted_at、deleted_by、version、backup_no、backup_scope、storage_location、backup_started_at、backup_finished_at、backup_status | uk_backup_no、idx_status |
DDL 草案
sec_permission_policyPermissionPolicy
CREATE TABLE `sec_permission_policy` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`policy_code` VARCHAR(64) NOT NULL COMMENT '策略编码,唯一;数据级别:普通',
`role_id` BIGINT NOT NULL COMMENT '角色 ID;数据级别:普通',
`terminal_type` VARCHAR(32) NOT NULL COMMENT 'PC/App/小程序/H5/TV/大屏;数据级别:普通',
`resource_policy` JSON NOT NULL COMMENT '资源权限配置;数据级别:普通',
`field_policy` JSON NULL COMMENT '字段权限配置;数据级别:普通',
`enabled` TINYINT NOT NULL COMMENT '是否启用;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_policy_code` (`policy_code`),
KEY `idx_role_terminal` (`role_id`, `terminal_type`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PermissionPolicy:菜单、按钮、字段和接口权限策略';
sec_sensitive_field_policySensitiveFieldPolicy
CREATE TABLE `sec_sensitive_field_policy` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`field_code` VARCHAR(128) NOT NULL COMMENT '字段编码,唯一;数据级别:普通',
`biz_type` VARCHAR(64) NOT NULL COMMENT '业务类型;数据级别:普通',
`mask_rule` VARCHAR(64) NOT NULL COMMENT '脱敏规则;数据级别:普通',
`view_requires_approval` TINYINT NOT NULL COMMENT '明文查看是否需审批;数据级别:普通',
`watermark_required` TINYINT NOT NULL COMMENT '是否加水印;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_field_code` (`field_code`),
KEY `idx_biz` (`biz_type`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='SensitiveFieldPolicy:敏感字段脱敏策略';
sec_sensitive_access_approvalSensitiveAccessApproval
CREATE TABLE `sec_sensitive_access_approval` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`request_no` VARCHAR(64) NOT NULL COMMENT '申请编号,唯一;数据级别:普通',
`applicant_id` BIGINT NOT NULL COMMENT '申请人 ID;数据级别:普通',
`biz_type` VARCHAR(64) NOT NULL COMMENT '业务类型;数据级别:普通',
`biz_id` BIGINT NOT NULL COMMENT '业务 ID;数据级别:普通',
`field_scope` JSON NOT NULL COMMENT '申请查看字段;数据级别:普通',
`access_reason` VARCHAR(512) NOT NULL COMMENT '查看原因;数据级别:普通',
`expire_at` DATETIME NULL COMMENT '授权过期时间;数据级别:普通',
`approval_status` VARCHAR(32) NULL COMMENT '审批状态,未发起为空;数据级别:普通',
`approval_instance_id` BIGINT NULL COMMENT '关联审批实例 ID;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_request_no` (`request_no`),
KEY `idx_status` (`approval_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='SensitiveAccessApproval:敏感数据查看审批';
sec_export_approvalExportApproval
CREATE TABLE `sec_export_approval` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`export_no` VARCHAR(64) NOT NULL COMMENT '导出编号,唯一;数据级别:普通',
`applicant_id` BIGINT NOT NULL COMMENT '申请人 ID;数据级别:普通',
`export_biz_type` VARCHAR(64) NOT NULL COMMENT '导出业务类型;数据级别:普通',
`filter_snapshot` JSON NOT NULL COMMENT '导出筛选条件快照;数据级别:普通',
`file_id` BIGINT NULL COMMENT '导出文件 ID;数据级别:普通',
`download_expire_at` DATETIME NULL COMMENT '下载过期时间;数据级别:普通',
`approval_status` VARCHAR(32) NULL COMMENT '审批状态,未发起为空;数据级别:普通',
`approval_instance_id` BIGINT NULL COMMENT '关联审批实例 ID;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_export_no` (`export_no`),
KEY `idx_status` (`approval_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='ExportApproval:敏感数据导出审批';
sec_high_risk_operationHighRiskOperation
CREATE TABLE `sec_high_risk_operation` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`operation_no` VARCHAR(64) NOT NULL COMMENT '操作编号,唯一;数据级别:普通',
`operator_id` BIGINT NOT NULL COMMENT '操作人 ID;数据级别:普通',
`operation_type` VARCHAR(64) NOT NULL COMMENT '删除/作废/红冲/批量导出/权限变更;数据级别:普通',
`biz_type` VARCHAR(64) NOT NULL COMMENT '业务类型;数据级别:普通',
`biz_id` BIGINT NULL COMMENT '业务 ID;数据级别:普通',
`confirm_payload` JSON NULL COMMENT '二次确认内容;数据级别:普通',
`operation_status` VARCHAR(32) NOT NULL COMMENT '待确认/已执行/已取消/失败;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_operation_no` (`operation_no`),
KEY `idx_operator_type` (`operator_id`, `operation_type`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='HighRiskOperation:高危操作留痕与二次确认';
sec_backup_recordBackupRecord
CREATE TABLE `sec_backup_record` (
`id` BIGINT NOT NULL COMMENT '主键,雪花或号段生成,禁止复用;数据级别:普通',
`tenant_id` BIGINT NOT NULL COMMENT '集团/租户隔离字段,所有查询必须带租户上下文;数据级别:普通',
`org_id` BIGINT NULL COMMENT '所属组织,集团级或公共配置为空;数据级别:普通',
`campus_id` BIGINT NULL COMMENT '所属校区,跨校区或总部级数据为空;数据级别:普通',
`created_by` BIGINT NOT NULL COMMENT '创建人账号 ID;数据级别:普通',
`created_at` DATETIME NOT NULL COMMENT '创建时间;数据级别:普通',
`updated_by` BIGINT NULL COMMENT '最后更新人账号 ID;数据级别:普通',
`updated_at` DATETIME NULL COMMENT '最后更新时间;数据级别:普通',
`is_deleted` TINYINT NOT NULL DEFAULT 0 COMMENT '是否已删除,0 未删除,1 已删除;数据级别:普通',
`deleted_at` DATETIME NULL COMMENT '删除时间,未删除为空;数据级别:普通',
`deleted_by` BIGINT NULL COMMENT '删除人账号 ID,未删除为空;数据级别:普通',
`version` INT NOT NULL DEFAULT 1 COMMENT '乐观锁版本号,写操作必须校验;数据级别:普通',
`backup_no` VARCHAR(64) NOT NULL COMMENT '备份编号,唯一;数据级别:普通',
`backup_scope` JSON NOT NULL COMMENT '备份范围;数据级别:普通',
`storage_location` VARCHAR(512) NOT NULL COMMENT '备份存储位置;数据级别:普通',
`backup_started_at` DATETIME NOT NULL COMMENT '开始时间;数据级别:普通',
`backup_finished_at` DATETIME NULL COMMENT '结束时间;数据级别:普通',
`backup_status` VARCHAR(32) NOT NULL COMMENT '进行中/成功/失败/已过期;数据级别:普通',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_backup_no` (`backup_no`),
KEY `idx_status` (`backup_status`),
KEY `idx_tenant_deleted` (`tenant_id`, `is_deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='BackupRecord:数据备份与恢复记录';
16 · 异常、指标、测试与初始化
保证模块上线后可运营、可追踪、可验收
测试要覆盖主流程、异常流、权限流、接口失败和数据一致性。异常状态
指标埋点
测试用例
| 编号 | 场景 | 前置 | 步骤 | 预期 | 优先级 |
|---|---|---|---|---|---|
| TC-002 | 重复线索查重合并 | 已有相同手机号客户 | 再次提交报名并选择合并 | 客户唯一,来源和跟进记录保留 | 高 |
| TC-004 | 报价优惠审批 | 折扣低于阈值 | 顾问提交报价 | 审批待办生成,通过后可创建合同 | 高 |
| TC-005 | 电子合同签署和收款 | 合同模板启用 | 生成合同、家长签署、支付 | 合同已签署、订单已收款、权益生效 | 高 |
| TC-006 | 合同监管备案失败重报 | 监管接口模拟字段失败 | 提交备案后修复字段重报 | 失败回执保留,重报成功 | 高 |
| TC-008 | 人脸签到自动课消 | 学员已授权人脸且课次待签到 | 模拟设备回传识别事件 | 签到成功、课消成功、家长收到通知 | 高 |
| TC-009 | 人脸未匹配异常 | 设备回传未绑定人员 | 提交识别事件 | 进入异常队列,可人工确认或忽略 | 高 |
| TC-010 | 家长撤回人脸授权 | 学员已授权并下发设备 | 家长撤回授权 | 系统停止识别并生成设备删除任务 | 高 |
| TC-011 | 学员端访问授权资源 | 合同权益生效 | 学员登录微信小程序或 App 打开课程资源 | 资源可访问并记录学习进度,家长端仅查看学习报告摘要 | 高 |
| TC-012 | 合同到期资源自动失效 | 合同有效期已过 | 学员访问课程资源 | 提示权限过期,不再播放资源 | 高 |
| TC-015 | 退费审批和监管退款 | 合同有剩余权益 | 提交退费、审批、模拟退款回执 | 退款完成、课时冻结、收入和提成冲回 | 高 |
| TC-SEC-ENH-001 | 敏感数据交付闭环验收 | 敏感访问申请、导出审批、审计日志相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按补齐明文查看申请、临时授权、水印、导出审批、过期回收和审计。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 敏感数据每次查看和导出都有审批或授权记录。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
| TC-SEC-ENH-002 | 高危操作交付闭环验收 | 高危操作弹窗、审批流、审计详情相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按补齐二次确认、审批触发、前后值快照、恢复入口和影响范围提示。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 高危动作可追溯、可解释,必要时可恢复。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
| TC-SEC-ENH-003 | 跨模块追责交付闭环验收 | 异常追溯、责任矩阵、处理任务相关基础数据、权限、审批流、消息模板和接口配置已初始化 | 按补齐责任矩阵、异常归因、审计链路和关闭标准。执行前端提交、后端处理、状态流转、异常重试和消息触达 | 跨模块异常不会停留在无法定位责任的状态。;同时产生审计日志、指标埋点和必要的补偿任务 | 高 |
上线初始化
| 初始化项 | 动作 | 数据 | 验收 |
|---|---|---|---|
| 账号与权限 | 初始化总部、区域、校区、顾问、教务、教师、财务、家长、学员角色 | 账号、角色、菜单、按钮、字段、数据范围 | 测试账号可按角色访问指定页面 |
| 课程与价格 | 导入课程、班型、课包、课时、价格、适用校区 | 课程编码、班型、价格表、有效期、赠课规则 | 报价和合同可正确引用价格 |
| 合同模板 | 配置多个统一电子合同模板 | 模板编号、适用课程、条款变量、签署人规则 | 合同生成内容完整且可签署 |
| 审批规则 | 配置优惠、退费、转课、导出、薪资、课消撤销审批流 | 审批对象、条件、节点、超时提醒 | 测试单据可进入正确审批链 |
| 财务科目 | 配置收款、预收、课消收入、退费、薪资、报销和内置科目映射 | 科目、辅助核算、校区、项目、部门 | 凭证可生成并写入测试账套 |
| 监管账户 | 维护资金监管账户和教育局监管平台参数 | 账户编号、校区映射、接口地址、证书、回调 | 合同、收款、课消、退费可报送测试 |
| 设备参数 | 登记人脸考勤机设备和校区绑定 | 设备编号、位置、API 密钥、心跳阈值、识别阈值 | 设备心跳正常且可接收人员下发 |
| 数据迁移 | 迁移客户、学员、合同、剩余课时、课表、教师、员工基础数据 | 源系统字段映射、校验结果、差异清单 | 关键业务对象数量和余额一致 |
| 敏感数据交付配置 | 初始化补齐明文查看申请、临时授权、水印、导出审批、过期回收和审计。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 敏感访问申请、导出审批、审计日志 | 敏感数据每次查看和导出都有审批或授权记录。 |
| 高危操作交付配置 | 初始化补齐二次确认、审批触发、前后值快照、恢复入口和影响范围提示。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 高危操作弹窗、审批流、审计详情 | 高危动作可追溯、可解释,必要时可恢复。 |
| 跨模块追责交付配置 | 初始化补齐责任矩阵、异常归因、审计链路和关闭标准。所需的页面入口、功能开关、审批流、消息模板、状态枚举、异常原因和角色权限 | 异常追溯、责任矩阵、处理任务 | 跨模块异常不会停留在无法定位责任的状态。 |