Activiti:暂停任务以引入替代流程,然后再次进行恢复

时间:2019-04-24 15:35:12

标签: activiti

我目前有以下流程设计:

  

开始事件->用户任务A->用户任务B->结束事件

如图所示,用户任务A在完成后跟着用户任务B。

我需要根据要求进行修改,因为从事用户任务A的用户可以暂停它,因为他/她对此有一些查询。如果发生这种情况,则不创建用户任务B,而是创建一个新的用户任务来解决这些查询。回答完这些查询后,必须恢复用户任务A并遵循正常的过程。

我了解到activiti中的用户任务无法暂停。整个过程需要暂停。

我该如何实现?

2 个答案:

答案 0 :(得分:1)

您可以通过将需求建模到业务流程中来实现这一目标:

start -> user-task-A -> exclusive gateway (is task done?) 
                          -> yes -> user-task-B
                          -> no -> sub process for answering queries 
                                     -> go back to user-task-A

答案 1 :(得分:1)

这里有很多选项。 Salaboys的答案是这些选项之一。 当我需要包括流程内联的片段时,通常会使用Signal事件触发片段,然后等待完成(另一个信号事件)继续。

这种方法可使模型保持简单,并使您能够独立维护每个片段(类似于具有一致接口的模块化)。