记录锁定用于在业务记录满足某些条件后,禁止继续编辑,从而保护关键数据的一致性。
它适合处理“进入某个状态后不应再被随意改动”的业务规则。
记录锁定规则支持以下核心配置:
名称锁定提示语实体名称条件适用范围

什么时候适合使用记录锁定
常见场景包括:
- 合同审批通过后锁定
- 回款完成后锁定
- 工单关闭后锁定
- 已归档、已结算、已作废状态锁定
锁定的核心目标不是“限制操作本身”,而是保证关键业务阶段的数据口径稳定。
锁定规则的组成
名称
用于标识这条锁定规则,建议直接写业务含义,例如:
- 已通过合同锁定
- 已完成回款锁定
- 已关闭工单锁定
锁定提示语
当用户尝试修改被锁定记录时,系统会提示这段说明。
建议直接告诉用户为什么不能改,以及应该通过什么流程处理。
例如:
- 当前合同已生效,请通过变更流程处理
- 当前记录已完成,不允许直接修改
实体名称
指定规则作用到哪个实体。
条件
决定哪些记录会进入锁定状态。
通常基于业务状态字段、审批状态字段、完成标记字段等来配置。
适用范围
根据当前实现,适用范围支持:
用户角色部门
这意味着锁定规则既可以全局生效,也可以只针对特定人员范围生效。
记录锁定与审批的关系
审批和记录锁定是两个不同层面的能力:
- 审批:控制业务流程是否通过
- 锁定:控制记录在满足条件后是否还能修改
在正式业务中,这两个能力通常应配合使用。
例如:
- 记录审批通过后,自动进入锁定
- 记录达到“完成”状态后,无论是否审批都不允许直接修改
配置建议
- 锁定条件尽量简单明确,优先围绕状态字段配置
- 锁定提示语尽量面向最终用户,不要写成技术描述
- 对已经上线的核心实体,优先先做测试再启用锁定
- 如需特殊人员例外处理,可以结合适用范围设计
典型示例
例如合同实体有 contractStatus 字段,当值为“已完成”或“已作废”时锁定:
- 实体:
合同 - 条件:
contractStatus = 已完成或contractStatus = 已作废 - 提示语:
当前合同已结束,请通过规范流程处理变更
这样的规则可以有效防止业务人员直接修改已结束数据。
