我开发了一个网站(PHP),允许员工将记录添加到我们的系统中。数据录入跟踪(数据库设计)
工作人员将在我们的数据库中添加数千条记录。
我需要一种方法来跟踪记录已经完成和记录的过程/状态。
这里有多支球队我能想到的:
数据录入团队
校对团队
管理团队
当工作人员(数据进入队)完成了一个记录 - 他/她将点击完成按钮。然后不知何故它应该自动分配给“证明阅读团队”。
需要从证明阅读团队中检查两次记录。如果StaffB完成校对阅读,则校对阅读团队的另一名成员需要再次检查。
当校对完成后,管理团队将然后分配
在几个月后记录可能需要“已完成记录”进行更新(拼写错误,价格变化等) - 管理员可以分配记录数据录入团队。
这是很好的数据录入管理解决方案吗?我如何将它放入数据库设计的角度?
这里是我的尝试:
mysql> select * from records;
+----+------------+----------------------+
| id | name | address |
+----+------------+----------------------+
| 1 | Bill Gates | Text 1 Text Text 1 |
| 2 | Jobs Steve | Text 2 Text 2 Text 2 |
+----+------------+----------------------+
mysql> select * from staffs;
+----+-----------+-----------+---------------+
| id | username | password | group |
+----+-----------+-----------+---------------+
| 1 | admin1 | admin1 | admin |
| 2 | DEntryA | DEntryA | data_entry |
| 3 | DEntryB | DEntryB | data_entry |
| 4 | PReadingA | PReadingA | proof_reading |
| 5 | PReadingB | PReadingB | proof_reading |
+----+-----------+-----------+---------------+
mysql> select * from data_entry;
+----+------------+-----------+------------------------+
| id | records_id | staffs_id | record_status |
+----+------------+-----------+------------------------+
| 1 | 2 | 3 | data_entry_processiing |
| 2 | 2 | 3 | data_entry_completed |
| 3 | 2 | 4 | proof_read_processing |
| 4 | 2 | 4 | proof_read_completed |
| 5 | 2 | 5 | proof_read_processing |
| 6 | 2 | 5 | proof_read_completed |
+----+------------+-----------+------------------------+
是否有更好的替代数据库设计的解决方案?