From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目

---
 src/components/bpmnProcessDesigner/package/penal/task/ElementTask.vue |   78 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 78 insertions(+), 0 deletions(-)

diff --git a/src/components/bpmnProcessDesigner/package/penal/task/ElementTask.vue b/src/components/bpmnProcessDesigner/package/penal/task/ElementTask.vue
new file mode 100644
index 0000000..3a71b4c
--- /dev/null
+++ b/src/components/bpmnProcessDesigner/package/penal/task/ElementTask.vue
@@ -0,0 +1,78 @@
+<template>
+  <div class="panel-tab__content">
+    <el-form size="small" label-width="90px">
+      <!-- add by 鑺嬭壙锛氱敱浜庛�屽紓姝ュ欢缁�嶆殏鏃剁敤涓嶅埌锛屾墍浠ヨ繖閲� display 涓� none -->
+      <el-form-item label="寮傛寤剁画" style="display: none">
+        <el-checkbox
+          v-model="taskConfigForm.asyncBefore"
+          label="寮傛鍓�"
+          value="寮傛鍓�"
+          @change="changeTaskAsync"
+        />
+        <el-checkbox
+          v-model="taskConfigForm.asyncAfter"
+          label="寮傛鍚�"
+          value="寮傛鍚�"
+          @change="changeTaskAsync"
+        />
+        <el-checkbox
+          v-model="taskConfigForm.exclusive"
+          v-if="taskConfigForm.asyncAfter || taskConfigForm.asyncBefore"
+          label="鎺掗櫎"
+          value="鎺掗櫎"
+          @change="changeTaskAsync"
+        />
+      </el-form-item>
+      <component :is="witchTaskComponent" v-bind="$props" />
+    </el-form>
+  </div>
+</template>
+
+<script lang="ts" setup>
+import { installedComponent } from './data'
+
+defineOptions({ name: 'ElementTaskConfig' })
+
+const props = defineProps({
+  id: String,
+  type: String
+})
+const taskConfigForm = ref({
+  asyncAfter: false,
+  asyncBefore: false,
+  exclusive: false
+})
+const witchTaskComponent = ref()
+
+const bpmnElement = ref()
+
+const bpmnInstances = () => (window as any).bpmnInstances
+const changeTaskAsync = () => {
+  if (!taskConfigForm.value.asyncBefore && !taskConfigForm.value.asyncAfter) {
+    taskConfigForm.value.exclusive = false
+  }
+  bpmnInstances().modeling.updateProperties(bpmnInstances().bpmnElement, {
+    ...taskConfigForm.value
+  })
+}
+
+watch(
+  () => props.id,
+  () => {
+    bpmnElement.value = bpmnInstances().bpmnElement
+    taskConfigForm.value.asyncBefore = bpmnElement.value?.businessObject?.asyncBefore
+    taskConfigForm.value.asyncAfter = bpmnElement.value?.businessObject?.asyncAfter
+    taskConfigForm.value.exclusive = bpmnElement.value?.businessObject?.exclusive
+  },
+  { immediate: true }
+)
+watch(
+  () => props.type,
+  () => {
+    if (props.type) {
+      witchTaskComponent.value = installedComponent[props.type].component
+    }
+  },
+  { immediate: true }
+)
+</script>

--
Gitblit v1.8.0