为项目

时间:2015-08-04 13:56:36

标签: database

所以我正在制作类似于项目管理工具的东西。首先会有一个客户。

Client
id  int(10) auto increment PK
clientName  varchar(255)
clientStatus    varchar(255)
businessUnit    varchar(255)
isDeleted   boolean
created_at  timestamp
updated_at  timestamp

然后客户可以在公司内部建立联系人,所以我在考虑一个Client_Contact表。

Client_Contact
id  int(10) auto increment PK
contactName varchar(255)
contactEmail    varchar(255)
contactPhone    varchar(255)
isDeleted   boolean
created_at  timestamp
updated_at  timestamp
client_id   int(10) FK(client_id reference ‘Client’ (‘id’))

因此,当我开始使用该应用程序时,我首先创建一个客户端(如果它们尚不存在)和他们的联系人。 有了客户端,我需要为此客户端创建一个项目。客户可以拥有一个或多个项目 这是我有点卡住的地方。一个项目由几个东西组成,并不是所有的东西都需要做,但是应该选择这样做。首先,项目首先完成项目标识文档。该表格应包括以下内容:

Project_Identification
id  int(10) auto increment PK
clientName  varchar(255) (should be linked to a Client)
projectInformation  text()
projectStartDate    datetime
projectDeliveryDate datetime
isDeleted   boolean
created_at  timestamp
updated_at  timestamp

完成上述表格后,需要填写项目简介文件。项目简介应包括

Project_Brief
id  int(10) auto increment PK
clientName  varchar(255) (should be linked to a Client)
project_id  int(10) (should be linked to Project)
projectRoles    text()
projectData text()
isDeleted   boolean
created_at  timestamp
updated_at  timestamp

最后,完成项目简报后,需要完成内部简报文档。内部简报略有不同,因为根据内部部门,所需信息不同。所以我想我会创建一个通用表:

Internal_Brief
id  int(10) auto increment PK
project_id  int(10) (should be linked to Project)
internalDepartment  varchar(255)

然后以某种方式将另一张表链接到它。

Internal_Brief_Department
id  int(10) auto increment PK
internal_brief_id   int(10) (should be linked to Internal Brief)
someDate    varchar(255)

不知何故,这些都需要链接到Projects表。

在更多的故事形式中,客户可以拥有许多项目。项目可以包含一到多个文档。每个文件都需要自己的信息。就我的故事而言,这就好了。

我真的在寻找一些关于如何根据我上面提到的设计数据库的建议?

0 个答案:

没有答案