工作流程 - 数据库设计

时间:2014-02-04 11:39:36

标签: php mysql cakephp database-design

我正在使用cakephp创建一个应用程序,并希望您能帮助我创建数据库以及模型之间的关系。

将是一个“工作流程”。

它的工作原理如下:

1 - 此应用程序将包含多个组和这些组,多个用户。

2 - 每个请求都有自己的流量,多个请求可以拥有相同的流量。

3 - “admin”可以创建多个工作流程,组和个人之间最多可以创建5个步骤。例如:

First aprover | second apover | third aprover
 user              group           user

4 - 当管理员选择一个组而不是特定用户时,将从该组中选择一个人。

5 - 批准遵循订单,即下一个只能批准前一个批准。

我认为基本上就是这样。真的,这给了我很多麻烦。我无法思考任何事情。

我必须创建哪些表格以及它们之间的关系?

2 个答案:

答案 0 :(得分:3)

您需要管理表格:

  1. 群组,用户和群组内的用户成员资格
  2. 工作流的定义,相关步骤以及将这些步骤分配给组或用户。
  3. 工作流的实例,其关联步骤以及将这些步骤分配给组或用户。
  4. 注意:创建时会在步骤实例上填充对组/用户的分配。这允许更新定义而不覆盖现有工作流实例上的分配。

    以下显示表格需要跟踪上面列出的内容。这绝不是一个完整的模型,但应该足以让你指向正确的方向。

    Conceptual Model

答案 1 :(得分:0)

我认为构建任何应用程序以解决这些问题是正常的。了解数据库关系以及有意义的事情可能会非常棘手。我通常做的是建立基础并从那里开始。在构建CakePHP应用程序时,我通常使用http://www.cakeapp.com给我一个启动。它允许您构建表并通过belongsTo,hasMany和hasAndBelongsToMany将它们相互连接。完成后,您可以下载SQL文件并将其上传到您的数据库。

请注意:不要下载整个应用程序,因为Cake版本已过时。只需下载SQL文件。此外,不断保存您的更改。