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.5 KiB
5.5 KiB
school_approval_participants 表文档
表概述
表名: school_approval_participants
功能: 审批参与人管理表,用于管理审批流程中的参与人员信息和审批状态,包括审批顺序、审批类型(或签/会签)、审批状态跟踪等,支持多种审批模式和流程控制,为学校提供完整的审批流程参与人管理和状态监控功能
字段说明
Field Type Collation Null Key Default Extra Privileges Comment
id int NULL NO PRI NULL auto_increment select,insert,update,references 参与编号
process_id int NULL NO MUL NULL select,insert,update,references 流程ID
participant_id int NULL NO NULL select,insert,update,references 参与人ID
sequence int NULL NO NULL select,insert,update,references 审批顺序
status enum('pending','approved','rejected') utf8mb4_general_ci NO NULL select,insert,update,references 当前状态: pending-待审批, approved-已批准, rejected-已拒绝
remarks text utf8mb4_general_ci YES NULL select,insert,update,references 备注
created_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED select,insert,update,references 创建时间
updated_at timestamp NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED on update CURRENT_TIMESTAMP select,insert,update,references 修改时间
sign_type enum('or_sign','and_sign') utf8mb4_general_ci NO or_sign select,insert,update,references 审批类型: or_sign-或签, and_sign-会签
功能用途
主要功能
- 审批参与人管理: 管理审批流程中的参与人员和角色分配
- 审批顺序控制: 控制审批人员在流程中的执行顺序
- 审批状态跟踪: 跟踪每个参与人的审批状态(待审批/已批准/已拒绝)
- 审批类型管理: 支持或签(or_sign)和会签(and_sign)两种审批类型
- 审批备注记录: 记录审批人的审批意见和备注信息
- 流程关联: 关联具体的审批流程实例
- 时间管理: 记录参与人的创建和更新时间
- 参与人权限: 管理不同参与人的审批权限
- 审批结果统计: 统计参与人的审批结果和效率
业务场景
- 流程分配: 为审批流程分配具体的审批参与人
- 顺序审批: 按照设定的顺序进行逐级审批
- 并行审批: 支持多人同时进行审批(或签模式)
- 会签审批: 要求所有指定人员都同意才能通过(会签模式)
- 审批替代: 处理审批人请假或不在时的替代审批
- 审批监控: 监控审批进度和参与人状态
- 审批提醒: 提醒相关人员及时进行审批
- 权限控制: 控制不同级别人员的审批权限
- 审批统计: 统计各参与人的审批效率和结果
关联关系
主要关联表
school_approval_process: 审批流程表 (process_id外键关联)school_personnel: 人员信息表 (participant_id外键关联)school_approval_history: 审批历史表 (审批操作记录关联)school_approval_config: 审批配置表 (流程配置关联)school_approval_config_node: 审批节点配置表 (节点配置关联)school_sys_role: 角色表 (审批权限关联)school_campus: 校区表 (数据权限关联)
关联说明
- 流程关联: process_id关联school_approval_process表,确定参与人所属的审批流程
- 人员关联: participant_id关联school_personnel表,确定具体的审批参与人
- 历史关联: 与school_approval_history表关联,记录参与人的审批操作历史
- 配置关联: 通过流程关联审批配置,获取审批规则和节点信息
- 权限关联: 通过人员信息关联角色权限,控制审批权限
- 顺序关联: sequence字段确定审批的执行顺序
- 类型关联: sign_type字段确定审批类型(或签/会签)
索引建议
- 主键索引: id (已存在)
- 外键索引:
- process_id (流程参与人查询)
- participant_id (人员审批查询)
- 业务索引:
- status (审批状态查询)
- sequence (审批顺序查询)
- sign_type (审批类型查询)
- 复合索引:
- (process_id, sequence) (流程顺序查询)
- (participant_id, status) (人员状态查询)
- (process_id, status) (流程状态查询)
- (sign_type, status, created_at) (类型状态时间查询)
- 时间索引:
- created_at (创建时间查询)
- updated_at (更新时间查询)
注意事项
- 审批状态: status字段限定为pending、approved、rejected三种状态
- 审批类型: sign_type字段限定为or_sign(或签)和and_sign(会签)两种类型
- 外键完整性: process_id和participant_id必须在对应表中存在
- 顺序唯一性: 同一流程中的sequence应该是唯一的
- 状态流转: 状态只能从pending转换为approved或rejected
- 审批权限: 确保参与人具有相应的审批权限
- 或签逻辑: or_sign模式下,任一人审批通过即可
- 会签逻辑: and_sign模式下,所有人都必须审批通过
- 时间一致性: created_at和updated_at时间应该合理
- 备注规范: remarks字段建议填写审批意见
- 并发控制: 防止同一参与人重复审批
- 数据完整性: 确保参与人信息的完整性和准确性
- 权限验证: 验证参与人是否有权限参与该流程审批
- 状态同步: 参与人状态变更需要同步到流程状态
- 审计要求: 所有状态变更都需要记录审计日志
- 性能优化: 大量参与人查询时需要考虑索引优化
- 监控告警: 建立审批超时和异常的监控机制