常见的状态流转设计方案-草稿表
需求
- 当用户修改信息的时候,不能直接修改成功,需要审核通过后才能修改成功,审核期间显示原信息,审核通过后显示修改的信息。例如:用户把昵称从张三改为李四,修改后其他用户看到的依然是张三,待审核人员审核通过后改为李四。
- 保留修改的历史记录。
设计思路
- 设计两张表,正式表:不能直接新增/编辑,需要通过审核操作把草稿表的数据复制到正式表生效。正常显示的都是正式表的信息。草稿表:新增/修改都通过对正式表的副本即草稿来实现,多次编辑后提交审核,审核通过后成为正式的数据。
数据库设计
草稿表
| 字段 | 说明 |
|---|---|
| id | 业务id |
| name | 可以修改的字段 |
| status | 表状态(已保存,已提交,已审核通过,已审核拒绝) |
| ... |
正式表
| 字段 | 说明 |
|---|---|
| id | 业务id |
| name | 可以修改的字段 |
| ... |
评论