diff --git a/ruoyi-ui/src/components/Process/PropertyPanel.vue b/ruoyi-ui/src/components/Process/PropertyPanel.vue index 96e46fc3..30834db1 100644 --- a/ruoyi-ui/src/components/Process/PropertyPanel.vue +++ b/ruoyi-ui/src/components/Process/PropertyPanel.vue @@ -119,7 +119,9 @@ export default { }) this.modeler.on('element.click', e => { const { element } = e - if (element.type === 'bpmn:Process') { + if (element.type === 'bpmn:Process' + || element.type === 'bpmn:SequenceFlow' + || element.type === 'bpmn:EndEvent' ) { this.element = element } }) diff --git a/ruoyi-ui/src/components/Process/components/nodePanel/sequenceFlow.vue b/ruoyi-ui/src/components/Process/components/nodePanel/sequenceFlow.vue index 337c0478..14d94f38 100644 --- a/ruoyi-ui/src/components/Process/components/nodePanel/sequenceFlow.vue +++ b/ruoyi-ui/src/components/Process/components/nodePanel/sequenceFlow.vue @@ -25,7 +25,8 @@ export default { mixins: [mixinPanel, mixinExecutionListener], data() { return { - formData: {} + formData: {}, + executionListenerLength: 0 } }, computed: { @@ -89,7 +90,14 @@ export default { created() { let cache = commonParse(this.element) cache = conditionExpressionParse(cache) - this.formData = cache + this.formData = cache; + this.computedExecutionListenerLength(); + }, + methods:{ + computedExecutionListenerLength() { + this.executionListenerLength = this.element.businessObject.extensionElements?.values + ?.filter(item => item.$type === 'flowable:ExecutionListener').length ?? 0 + }, } } diff --git a/ruoyi-ui/src/components/Process/components/nodePanel/startEnd.vue b/ruoyi-ui/src/components/Process/components/nodePanel/startEnd.vue index b0515acc..bf64db25 100644 --- a/ruoyi-ui/src/components/Process/components/nodePanel/startEnd.vue +++ b/ruoyi-ui/src/components/Process/components/nodePanel/startEnd.vue @@ -24,7 +24,8 @@ export default { mixins: [mixinPanel, mixinExecutionListener], data() { return { - formData: {} + formData: {}, + executionListenerLength: 0 } }, computed: { @@ -85,6 +86,13 @@ export default { created() { // this.updateProperties({ 'flowable:initiator': 'INITIATOR' }) this.formData = commonParse(this.element) + this.computedExecutionListenerLength(); + }, + methods:{ + computedExecutionListenerLength() { + this.executionListenerLength = this.element.businessObject.extensionElements?.values + ?.filter(item => item.$type === 'flowable:ExecutionListener').length ?? 0 + }, } }