gpt4 book ai didi

mysql - 文档管理系统的数据库结构是什么?

转载 作者:行者123 更新时间:2023-11-29 00:53:10 25 4
gpt4 key购买 nike

我想存储一个文档,然后决定对文档应用什么工作流程。该工作流将请求用户对文档执行操作,并捕获实际执行的操作。例如

DocId=2    
Flow = 1.[Mr.X - Authenticate] 2.[Mr.Y - Verify/Reject] 3.[Mr.Z Accept/Reject]

什么数据库架构将支持这些任务?

最佳答案

工作流的架构很大程度上受您的工作流是否有分支的影响。如果你所有的工作流都是线性的,没有分支,那么问题就简单多了,因为工作流配置的定义只需要列出工作流中的步骤,而文档工作流实例只需要记录当前的步骤。如果涉及条件分支或并行步骤,您需要为这些步骤使用某种层次模型(例如,每个工作流配置步骤都可以有一个指向父级的指针和一个指向子级的指针)。这些通常存储在 XML 中。

没有分支的简单情况如下所示:

表:workflow_config(每个工作流一行)

  • workflow_config_id
  • 姓名
  • 描述

表:workflow_config_step(每个工作流步骤一行)

  • workflow_config_id
  • 步骤编号
  • 姓名
  • 描述
  • action_id
  • 参数(或上下文,或任何需要传递给 Action 启动器的信息)

表:document_workflow(每个文档一行)

  • 文档编号
  • 工作流编号
  • current_step_id
  • 参数(或上下文,或任何需要从一个步骤传递到下一个步骤的信息)

表:document_workflow_step(对文档采取的每个操作一行)

  • 文档编号
  • 步骤编号
  • 状态
  • 时间戳

请注意,分支工作流程需要在各个阶段携带更多信息。事实上,“parameters”属性可能需要在一个单独的交叉链接表中。我在这里只称它为字段,因为如果需要的数据很少,您可以使用分隔符或 XML 表示。

关于mysql - 文档管理系统的数据库结构是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7388726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com