我正在开发一个应用程序,我想向用户显示一个界面,向他们展示他们需要完成的过程,并突出显示他们当前在该过程中的位置。我似乎无法找到可以提供此类信息的REST API。
例如,工作流程有4个步骤,它们已完成步骤1,现在处于步骤2。
>步骤1>步骤2>步骤3>步骤4
我能够通过Step 2
端点为用户获取当前任务/task
,我可以从Step 1
端点获得/history/task
,但我似乎无法获得Step 3
和Step 4
。我可以从相应的端点拉出xml
并解析它,但这似乎有点过分。
我错过了什么吗?
列出的bpmn.io选项将提供任务列表,但根据我的经验,这并不能真正代表流程的“里程碑”。通常,这是用户希望看到的里程碑。例如,在贷款发起过程中,可能有30个具有多个批准级别的用户任务。客户不希望看到每项任务,他们想要看到的是他们所处的过程的阶段。例如启动,承保,履行等
如果这是您正在寻找的,我建议您在流程实例中维护一个变量,该变量包含流程中的当前里程碑。
我倾向于使用“无”消息抛出事件与关联的侦听器来设置里程碑。
我不是说原来的答案不正确,但根据我的经验,这并不是最终用户真正想要看到的。
希望这会有所帮助,格雷格
您不需要解析xml,可以使用bpmn.io渲染过程并突出显示实际活动。所有必要的信息都由camunda REST API提供。
你可以在这里找到一个简单的例子https://github.com/camunda/camunda-consulting/tree/master/snippets/jsf-simple-tasklist
您可以通过Camunda REST API获取bpmn.xml文件中定义的所有作业定义
GET:/ job-definition?activityIdIn = ServiceTask1,ServiceTask2
您还可以传递此链接中列出的其他查询参数。