设置bpmn.js会签任务(多实例任务) 完成条件

1,363 阅读1分钟

设置bpmn.js会签任务(多实例任务) 完成条件

//获取moddle
const moddle = this.bpmnModeler._moddle;
//获取modeling
const modeling = this.bpmnModeler.get('modeling');
//从会前任务节点元素得到 loopCharacteristics节点 (this.counterSignElement变量是会签节点 具体根据自己业务)
let  loopCharacteristics = this.counterSignElement.businessObject.loopCharacteristics;
//创建完成条件节点
var completionCondition = moddle.create('bpmn:FormalExpression', { body: "nrOfCompletedInstances = 2" });

completionCondition.$parent = this.counterSignElement;

//把completionCondition设置为loopCharacteristics子元素
loopCharacteristics['completionCondition'] = completionCondition;
//更新到bpmn
modeling.updateProperties(this.counterSignElement, { loopCharacteristics: loopCharacteristics});