UFLO 2 : 3.2.测试流程

       我们的请假流程部署成功之后,可以到uflo-console模块中提供的com.bstek.uflo.console.view.ProcessMaintain.d页面查看部署好的请假流程,该页面分为左右两部分,左边显示的是已部署的流程模版,右边则是当前流程模版正在运行中的流程实例及已运行完成的流程实例,在左边流程模版列表上方的工具栏中,我们可以实现查看指定流程的流程图、删除指定的流程模版(所有的完成及未完成的流程实例皆会被删除)、上传一个本地的流程模版文件或开始一个流程实例根据选中的流程模版等操作,如下图所示。

       以我们的请假流程为例,选中我们刚部署成功的请假流程模版,点击工具栏上的“流程图”按钮,就可以查看请假流程的流程模版,如下图所示:

       可以看到流程图与我们在设计器里看到的流程图基本一致,接下来就可以ProcessMaintain页面当中开启一个请假流程的流程实例,测试请假流程是否可以按照我们设计的正确运行。

       在ProcessMaintain页面中,选择我们部署的请假流程模版,点击工具栏上的“创建新实例”按钮,在弹出的窗口中点击“确定”按钮即可开始一个请假流程的流程实例,如下图所示:

       从上图中可以看到,开始流程时,允许我们向新开始的流程实例中添加相关的流程变量,这样在流程实例当中就可以使用这里添加的变量。一旦我们开始了一个新的请假流程,可以在右边窗口当中看到新开启的流程实例及当前流程实例所在节点上的人工任务——也就是开始节点的人工任务,如下图所示:

       我们的开始节点创建的人工任务的名称是“填写请假单”,在这个时候我们还可以看看当前流程实例对应的流程图,点击人工任务列表工具栏上的“流程图”按钮,可以看到如下图所示的流程图。

       很明显可以看到,当前流程实例处理开始节点。

       回到我们的人工任务列表,将这个“填写请假单”人工任务开始并完成,可以看到流程实例就流转到下一个部门经理审批节点,查看流程图可以看到如下图所示效果。

       从流程图中可以看到,对于经过的开始节点及连线会自动在灰色显示,这样我们就可以很明确看到流程实例当前状态。在完成“部门经理审批”这个人工任务时,我们需要添加一个流程变量dayCount,这是因为我们在定义请假流程模版时在判断请假天数节点中取的是dayCount这个流程变量的值,如果大于10天则进行总经理审批,否则走人事确认,反之如果我们不加这个变量,那么在完成任务时会有相应的异常抛出,以提示我们引擎找不到dayCount这个流程变量。

       我们在定义请假流程模版时,在开始节点及另外三个人工任务节点上都配置了表单字段及对应的自动渲染字段的页面,所以我们可以通过ProcessMaintain页面开启一个新的流程实例,然后在uflo-console中提供的待办任务列表中查看当前用户的待办任务,并对其进行处理。uflo-console中显示待办任务列表的页面的url格式如下所示:

http://localhost:8080/uflo-test/com.bstek.uflo.console.view.TodoTaskMaintain.d

       打开这个TodoTaskMaintain页面,可以看到我们的开始节点的人工任务,点击工具栏上的“处理任务”按钮,在弹出窗口当中可以看到我们在流程模版中定义的字段信息,如下图所示:

       在这个引擎提供的默认处理页面当中,能实现任务的开始、完成、回退与跳转等相关动作。在我们击点“开始任务”按钮后,其它的诸如完成任务、回退、跳转等按钮会根据当前任务变的可用,同时在这个页面当中还可以查看当前任务所在的流程实例状态。在我们完成开始节点产生的人工任务后,当流程流转到“部门经理审批”节点时,可以看到所有字段都只能是只读了,如下图所示:

       之所以这些字段变成只读,是因为我们在定义请假流程模版时对于非开始节点的人工任务,我们将所有字段的访问类型都设置成了“只读”,所以才会出现上图所示效果。

Attachments:

toolbar.png (image/png)
leave-process-diagram.png (image/png)
start-process.png (image/png)
start-task.png (image/png)
start-process-state.png (image/png)
pi-state.png (image/png)
process-start-task.png (image/png)
manager-task.png (image/png)