新增工作流示例 分享链接

作者:先知 最后编辑:李运岭 于 2020-07-31 13:39:08 浏览量:18023

禅道企业版的工作流功能除了可以对内置流程进行自定义和扩展外,还可以添加全新的工作流程。

本文档主要就是介绍如何添加一个新工作流。

首先简单的说明一下,添加一个新流程的步骤:

  • 整理新流程需求。
  • 根据需求创建新流程,添加字段。
  • 根据状态流转需要添加对应的动作,设置动作界面。
  • 根据权限设置各动作的触发条件、数据校验、扩展动作以及设置提醒。
  • 根据权限的需求,添加对应的标签。
  • 在组织--权限中进行权限控制。

下面我们以新增会议室预定的新流程为例,来具体介绍如何新增工作流。

一、整理新流程的需求

首先我们要根据实际的使用需要,整理出新流程的需求,这些包含新流程的字段、动作、是否需要创建子流程、是否需要添加数据源、权限设置等信息。

以新增会议室预定为例,我们需要添加预定会议室这个主流程,还需要添加会议室这个子流程。

主流程:预定会议室

字段:编号、会议室、开始时间、结束时间、由谁预定、描述、父流程ID、由谁创建、创建日期、由谁编辑、编辑日期、是否删除。

动作:预定、编辑、详情、浏览列表、删除。

动作的数据校验:需要用户在提交预订时,如果该会议室已被预定,直接提示用户该会议室在该时段已被预定。

标签:所有预定、我的预定。

权限:根据动作和标签来设置。

子流程:会议室

字段:编号、名称、位置、容纳人数、设备、开放时间、父流程ID、由谁创建、创建日期、由谁编辑、编辑日期、是否删除。

动作:新建、编辑、详情、浏览列表、删除。

标签:所有会议室、一楼会议室、二楼会议室、三楼会议室。

数据源:会议室设备:电脑、音响、麦克风、投影仪、白板。会议室开放时间:周一、周二、周三、周四、周五、周六、周日。

权限:根据动作和标签来设置。

二、创建新流程,添加字段

新建会议室预定流程的需求整理差不多后,就可以开始创建新流程,且为新流程添加字段了。

1、创建预定会议室流程

点击工作流---流程列表页右上角的“新增流程”按钮,就可以开始创建我们的预定会议室的流程。

新增会议室流程:

添加成功的流程,显示在流程列表里。

点击“会议室预定”流程右侧操作栏的“子流程”,把“会议室”设置为“预定会议室”的子流程。

外键选择会议室。因为在“预定会议室”里,会议室字段的信息是来自子流程会议室的。

在下面添加字段时,我们会详细说明。

关于跨流程设置

禅道企业版3.5版本开始,子流程功能更改为跨流程设置。前置流程就是之前的子流程,后置流程就是之前的父流程。
跨流程设置,可以为一个流程设置多个后置流程。

目前内置流程不支持跨流程设置,新增的流程支持跨流程设置。

下面我们简单的介绍一下跨流程设置功能。

1、跨流程设置页面

点击流程列表的‘跨流程设置’按钮,就可以跳转到跨流程设置页面。

可以设置后置流程,外键,前置流程是否可以创建或批量创建后置流程。

一个流程可以设置多个后置流程。

2、注意事项

2.1 关于外键

外键是当前流程中用来关联显示前置流程数据的字段。设为外键的字段应该使用下拉菜单或者单选按钮作为控件。

如果设为外键的字段控件不是下拉菜单或者单选按钮,系统将默认更新控件为下拉菜单并选择数据源为前置流程。

例如会议室流程设置会议室预订为后置流程,外键为会议室,那么会议室预定这个流程里,会议室这个字段应该使用下拉菜单或者单选按钮为控件。

如下图所示:

2.2 前置流程可以创建或者批量创建后置流程

需要实现以上功能,管理员需要在组织--权限里分配该前置流程和后置流程的创建和批量创建的权限。

勾选了这两项后,以会议室和会议室预订这前置流程和后置流程为例,也就是在会议室这个流程里,也可以创建和批量创建提交会议室预定。

点击会议室操作按钮的预定,可以直接创建针对该会议室的预定。

全选后,批量创建会议室的预定按钮就是显示,点击也就可以批量创建会议室预订。

2、添加字段

添加流程后,系统会默认添加上一下字段,你可以根据实际需要做一下编辑操作。

你可以根据我们在“预定会议室”设计的字段,添加上系统没有的字段。

以添加“预定会议室”的字段“会议室”为例,我们来添加字段。

点击“会议室预定”流程右侧的“字段”按钮,进入字段列表页面,点击字段列表页面右上角的“添加字段”按钮,进入字段添加页面。

因为“预定会议室”里的“会议室”字段来自会议室子流程,所以在创建“会议室”字段时,要注意:

  • 会议室的控件必须是下拉菜单,
  • 数据源选择子流程,
  • 外键要选择是。

预订会议室的其他字段,可以根据我们的需求设计,按照以下列表所列的字段一一添加即可。

根据需要设置字段的控件和验证规则。

子流程会议室的其他字段,可以根据我们的需求设计,按照以下列表所列的字段一一添加即可。

根据需要设置字段的控件和验证规则。

添加子流程的名称字段时,在这里,我们需要特别的说明一点。

就是下图红框位置圈出来的键值。你可以根据使用需要勾选键或值,可以可以键和值都勾选。

  • 键值对在其他流程调用本流程数据时作为实际值和显示值。
  • 键只能有一个,设置为键的字段必须添加唯一验证,默认使用id作为键。
  • 值可以有多个,多个值在显示的时候拼接显示。

三、添加对应的动作,设置动作界面

会议室预订和会议室的字段我们添加完成后,现在就可以添加动作。

1、添加动作

这是工作流里默认的动作列表,根据我们设定的需求,修改为我们需要的动作或者是添加新的动作。

修改后的会议室预订的动作:

修改后的会议室的动作:

2、设置动作界面

添加完成动作后,我们需要来设置动作的界面。也就是设置动作的界面显示哪些字段,以及这些字段的验证规则、默认值。

挨个设置会议室预订的预订、编辑、详情、浏览列表页面即可。

工作流界面都默认显示了状态和子状态字段,如果我们不需要,直接不显示,隐藏掉就好。

会议室的动作页面设置:

四、设置动作的数据校验、设置提醒

添加动作和动作界面设置完成后,我们接下来要检查一下是否需要设置动作数据校验、是否要添加扩展动作、是否需要设置提醒。

以会议室预订为例,我们需要设置动作的数据校验、设置提醒。

1、动作的数据校验

会议室在提交预订和编辑操作时,需要做一下数据校验,如果提交预订和编辑的时候,查询到该会议室在该时段已经被预订,那么需要给用户一个提示信息。

会议室预订的预订动作的数据校验:

会议室预订的编辑动作的数据校验:

2、动作设置提醒

在会议室预订的预订和编辑动作执行时,我们需要给参与会议的人员发送提醒邮件,通知参会人员及时参加会议。

那么可以在预订和编辑动作里设置提醒。

需要提前先在后台---消息---邮箱配置里成功设置发信邮箱,且组织---用户信息里需要填写正确的邮箱地址。

五、根据需求,新增数据源

预定会议室和会议室会用到3个数据源:用户、设备、工作日。其中用户这个数据源,工作流里已默认存在,不需要额外创建。

在这里我们需要创建子流程会议室的数据源:设备、工作日。

点击工作流---数据源---添加数据源,就可以进入数据源的添加页面。

添加设备的数据源信息:

添加工作日的数据源信息:

六、根据权限设置添加对应的标签

为了方便查看会议室预定和信息和会议室信息。

我们可以根据需要添加标签。

点击动作列表右侧的“标签”按钮就可以进入标签列表页,然后点击页面右上角的“创建标签”,进入标签的提交页面。

工作流标签里默认会有“所有标签,修改为我们需要的“所有预定”标签就可以。

其他的标签,直接点击页面右上角“创建标签”按钮来添加即可。

这样预定会议室的标签,我们就创建完成了。

你还可以随时根据实际使用需要来编辑或者是添加新标签。

子流程会议室的标签,同理按照以上的方法,添加就行。

七、根据需求在组织---权限里做权限控制

我们添加完预定会议室和会议室的标签和动作后,在组织--权限里,会默认加上对应权限。

浏览列表后面的“+”可以点击展开,里面可以分配列表标签的权限。

可以按照使用需要,灵活分配。

八、使用新流程功能

以上步骤完成后,我们的会议室预定的工作流就算完成的配置。

当然后期需要,也可以进行调整的。

下面我们来简单介绍一下,如何使用我们配置的会议室预订。

1、添加会议室

首先,我们需要添加会议室,要不提交会议室预订会导致无会议室可选。

点击会议室列表页面右上角的“新建”按钮,进入新建会议室页面。

以下就是我们设置会议室的新建页面,填写好信息保存即可。

会议室添加完毕:

2、提交会议室预订

会议室信息维护好了之后,我们就可以开始预订会议室了。

点击会议室预订列表页面右上角的“预订”按钮,进入预订会议室页面。

“会议室”字段是调用的子流程会议室数据。

如果子流程会议室的字段键值里勾选的是值,那么“会议室”字段里显示的值就把这些字段的值拼装起来显示。

这样比较方便直接查看全面的信息,不需要到子流程里重新查看。

以下截图中,

会议室字段:由我们设置的会议室名称、位置、设备字段的值拼装起来显示。

会议室这个流程中,我们把会议室的名称、位置、设备的键值都设置为了值。

在提交会议室预订时,会议室字段会自动把三个字段的值拼装出来显示。

提交成功后: