From f9913692f0b38c81ba4694efe0c5f9067e5df1bd Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 29 Nov 2025 18:01:22 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=90antd=E3=80=91=E3=80=90bpm?= =?UTF-8?q?=E3=80=91bpmn=20=E8=AE=BE=E8=AE=A1=E5=99=A8=EF=BC=9A=E4=BF=9D?= =?UTF-8?q?=E7=95=99=E9=9D=9E=E7=9B=91=E5=90=AC=E5=99=A8=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E7=9A=84=E6=89=A9=E5=B1=95=E5=B1=9E=E6=80=A7=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E7=A7=BB=E9=99=A4=E7=9B=91=E5=90=AC=E5=99=A8=E6=97=B6?= =?UTF-8?q?=E6=B8=85=E7=A9=BA=E5=85=B6=E4=BB=96=E9=85=8D=E7=BD=AE=EF=BC=8C?= =?UTF-8?q?=E6=9D=A5=E8=87=AA=EF=BC=9Ahttps://gitee.com/yudaocode/yudao-ui?= =?UTF-8?q?-admin-vue3/commit/33e489ebfc4b86aa66cd5ed19681c3e3484e91ab?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../package/penal/listeners/ElementListeners.vue | 5 ++++- .../package/penal/listeners/UserTaskListeners.vue | 7 +++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/ElementListeners.vue b/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/ElementListeners.vue index 55d3f545b..e2b88ffdb 100644 --- a/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/ElementListeners.vue +++ b/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/ElementListeners.vue @@ -61,7 +61,10 @@ const bpmnInstances = () => (window as any)?.bpmnInstances; const resetListenersList = () => { bpmnElement.value = bpmnInstances().bpmnElement; - otherExtensionList.value = []; + otherExtensionList.value = + bpmnElement.value.businessObject?.extensionElements?.values?.filter( + (ex: any) => ex.$type !== `${prefix}:ExecutionListener`, + ) ?? []; // 保留非监听器类型的扩展属性,避免移除监听器时清空其他配置(如审批人等)。相关案例:https://gitee.com/yudaocode/yudao-ui-admin-vue3/issues/ICMSYC bpmnElementListeners.value = bpmnElement.value.businessObject?.extensionElements?.values?.filter( (ex: any) => ex.$type === `${prefix}:ExecutionListener`, diff --git a/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/UserTaskListeners.vue b/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/UserTaskListeners.vue index 6ab38bcf9..151c1ed65 100644 --- a/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/UserTaskListeners.vue +++ b/apps/web-antd/src/views/bpm/components/bpmn-process-designer/package/penal/listeners/UserTaskListeners.vue @@ -77,9 +77,12 @@ const resetListenersList = () => { // 'window.bpmnInstances.bpmnElementwindow.bpmnInstances.bpmnElementwindow.bpmnInstances.bpmnElementwindow.bpmnInstances.bpmnElementwindow.bpmnInstances.bpmnElementwindow.bpmnInstances.bpmnElement', // ); bpmnElement.value = bpmnInstances()?.bpmnElement; - otherExtensionList.value = []; + otherExtensionList.value = + bpmnElement.value.businessObject?.extensionElements?.values?.filter( + (ex: any) => ex.$type !== `${prefix}:TaskListener`, + ) ?? []; // 保留非监听器类型的扩展属性,避免移除监听器时清空其他配置(如审批人等)。相关案例:https://gitee.com/yudaocode/yudao-ui-admin-vue3/issues/ICMSYC bpmnElementListeners.value = - bpmnElement.value.businessObject?.extensionElements?.values.filter( + bpmnElement.value.businessObject?.extensionElements?.values?.filter( (ex: any) => ex.$type === `${prefix}:TaskListener`, ) ?? []; elementListenersList.value = bpmnElementListeners.value.map((listener) =>