在芋道源码 / ruoyi-vue-pro的项目基础上进行定时事件的属性添加,该项目的工作流已经满足项目的基本需求,但是定时器组件缺少日期时间、持续时间和时间周期属性。本文主要就是讲讲怎么添加这些属性。
刚开始尝试在<bpmn2:intermediateCatchEvent > </bpmn2:intermediateCatchEvent>标签上添加timeDate,timeDuration,timeCycle属性,发现并不起效果。
然后查下定时器需要的xml样式是
<!--示例:流程会启动4次,间隔5分钟,从2011年11月11日,12:13开始-->
<startEvent id="theStart">
<timerEventDefinition>
<timeCycle>R4/2022-11-10T12:13/PT5M</timeCycle>
</timerEventDefinition>
</startEvent>
<!--示例:流程会在设定的时间启动一次-->
<startEvent id="theStart">
<timerEventDefinition>
<timeDate>2022-11-10T12:13:14</timeDate>
</timerEventDefinition>
</startEvent>
于是在此基础上进行xml的创建,创建方法是:
updateElement() {
//获取节点的子节点 timerEventDefinition
let timerEventDef = this.bpmnElement.businessObject.eventDefinitions[0]
const timeCycle = window.bpmnInstances.moddle.create("bpmn:FormalExpression&