智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

5.1 KiB

school_approval_history 表文档

表概述

表名: school_approval_history
功能: 审批历史记录表,用于记录审批流程中每个节点的操作历史和结果,包括审批人操作、审批意见、操作时间等,支持审批追溯、合规审计和流程优化,为学校提供完整的审批操作审计轨迹

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
id	int	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	历史记录ID
process_id	int	NULL	NO	MUL	NULL		select,insert,update,references	流程ID
participant_id	int	NULL	NO	MUL	NULL		select,insert,update,references	审批人ID
sequence	int	NULL	NO		NULL		select,insert,update,references	审批顺序
action	enum('approve','reject','forward','cancel')	utf8mb4_0900_ai_ci	NO		NULL		select,insert,update,references	操作类型
status	enum('approved','rejected','forwarded','cancelled')	utf8mb4_0900_ai_ci	NO		NULL		select,insert,update,references	操作结果
remarks	text	utf8mb4_0900_ai_ci	YES		NULL		select,insert,update,references	审批意见
created_at	timestamp	NULL	YES		CURRENT_TIMESTAMP	DEFAULT_GENERATED	select,insert,update,references	操作时间

功能用途

主要功能

  • 审批历史记录: 记录审批流程中每个节点的操作历史和结果
  • 操作类型管理: 支持批准、拒绝、转发、取消四种操作类型
  • 状态结果跟踪: 记录每次操作的具体结果状态
  • 审批顺序管理: 记录审批人在流程中的执行顺序
  • 审批意见存储: 存储审批人的详细审批意见和备注
  • 时间追踪: 记录每次审批操作的具体时间
  • 审计追踪: 提供完整的审批操作审计轨迹
  • 流程关联: 关联具体的审批流程和参与人
  • 历史查询: 支持审批历史的查询和统计

业务场景

  • 审批记录: 记录每次审批操作的详细信息
  • 审批追溯: 追溯审批流程的完整历史轨迹
  • 审批统计: 统计审批人的审批效率和结果
  • 审批分析: 分析审批流程的瓶颈和优化点
  • 合规审计: 提供审批操作的合规性审计
  • 争议处理: 处理审批争议时提供历史依据
  • 流程优化: 基于历史数据优化审批流程
  • 绩效考核: 评估审批人员的工作绩效
  • 报表生成: 生成审批相关的统计报表

关联关系

主要关联表

  • school_approval_process: 审批流程表 (process_id外键关联)
  • school_approval_participants: 审批参与人表 (participant_id外键关联)
  • school_personnel: 人员信息表 (审批人信息关联)
  • school_approval_config: 审批配置表 (流程配置关联)
  • school_approval_config_node: 审批节点配置表 (节点配置关联)
  • sys_log: 系统日志表 (操作日志关联)

关联说明

  • 流程关联: process_id关联school_approval_process表,确定历史记录所属流程
  • 参与人关联: participant_id关联school_approval_participants表,确定操作的审批人
  • 人员关联: 通过participant_id间接关联school_personnel表获取审批人详细信息
  • 配置关联: 通过流程关联审批配置和节点配置信息
  • 日志关联: 审批操作同时记录到系统日志中
  • 顺序关联: sequence字段确定审批操作在流程中的执行顺序
  • 操作关联: action和status字段关联,记录操作类型和结果

索引建议

  • 主键索引: id (已存在)
  • 外键索引:
    • process_id (流程历史查询)
    • participant_id (审批人历史查询)
  • 业务索引:
    • action (操作类型查询)
    • status (操作结果查询)
    • sequence (审批顺序查询)
  • 复合索引:
    • (process_id, sequence) (流程顺序查询)
    • (participant_id, created_at) (审批人时间查询)
    • (process_id, action, status) (流程操作结果查询)
    • (action, status, created_at) (操作结果时间查询)
  • 时间索引:
    • created_at (操作时间查询)

注意事项

  • 操作类型: action字段限定为approve、reject、forward、cancel四种类型
  • 状态结果: status字段限定为approved、rejected、forwarded、cancelled四种状态
  • 外键完整性: process_id和participant_id必须在对应表中存在
  • 顺序唯一性: 同一流程中的sequence应该是唯一的
  • 操作一致性: action和status应该保持逻辑一致性
  • 只增不删: 历史记录表应该只允许插入,不允许删除或修改
  • 时间精度: created_at使用timestamp类型,确保时间精度
  • 审批意见: remarks字段可以为空,但重要操作建议填写
  • 数据完整性: 每次审批操作都必须记录完整的历史信息
  • 并发控制: 防止同一审批人同时进行多次操作
  • 权限验证: 确保只有授权的审批人才能进行操作
  • 审计要求: 所有操作都必须有完整的审计轨迹
  • 数据备份: 重要的审批历史数据需要定期备份
  • 性能优化: 大量历史数据查询时需要考虑分页和索引优化
  • 监控告警: 建立异常审批操作的监控机制
  • 数据归档: 建立历史数据的归档策略
  • 查询优化: 复杂的历史查询需要优化SQL性能