From 6b988bd582bfcd17fee48c476a5a6e5cc172b0d5 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期三, 12 三月 2025 10:08:33 +0800
Subject: [PATCH] dev-2

---
 src/bpmn/panel/TaskPanel.vue |   36 +++++++++++++++++-------------------
 1 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/src/bpmn/panel/TaskPanel.vue b/src/bpmn/panel/TaskPanel.vue
index 08283d1..a42de8a 100644
--- a/src/bpmn/panel/TaskPanel.vue
+++ b/src/bpmn/panel/TaskPanel.vue
@@ -47,13 +47,13 @@
               <el-switch v-model="formData.async" inline-prompt active-text="鏄�" inactive-text="鍚�" @change="syncChange" />
             </el-form-item>
 
-            <el-tabs tab-position="left" class="demo-tabs" @tab-click="taskTabClick">
+            <el-tabs tab-position="left" class="demo-tabs">
               <el-tab-pane label="韬唤瀛樺偍">
                 <el-form-item label="鍒嗛厤浜哄憳">
-                  <el-input v-model="formData.fixedAssignee" @change="fixedAssigneeChange">
-                    <!--                    <template #append>-->
-                    <!--                      <el-button icon="Search" type="primary" @click="openSingleUserSelect" />-->
-                    <!--                    </template>-->
+                  <el-input v-model="formData.assignee" @blur="blurAssignee(formData.assignee)">
+                    <template #append>
+                      <el-button icon="Search" type="primary" @click="openSingleUserSelect" />
+                    </template>
                   </el-input>
                 </el-form-item>
                 <el-form-item label="鍊欓�変汉鍛�">
@@ -68,16 +68,16 @@
                 </el-form-item>
               </el-tab-pane>
 
-              <el-tab-pane label="鍥哄畾鍊�">
+              <!-- <el-tab-pane label="鍥哄畾鍊�">
                 <el-form-item prop="auditUserType" label="鍒嗛厤绫诲瀷">
                   <el-select v-model="formData.allocationType">
                     <el-option v-for="item in AllocationTypeSelect" :key="item.id" :value="item.value" :label="item.label"> </el-option>
                   </el-select>
                 </el-form-item>
                 <el-form-item v-if="formData.allocationType === AllocationTypeEnum.USER" label="鍒嗛厤浜哄憳">
-                  <el-input v-model="formData.fixedAssignee" @change="fixedAssigneeChange">
+                  <el-input v-model="formData.assignee">
                     <template #append>
-                      <!-- <el-button icon="Search" size="small" type="primary" @click="proxy.$modal.msgWarning('寮�鍙戜腑銆傘�傘�傘�傘�傘��')" /> -->
+                      <el-button icon="Search" type="primary" @click="openSingleUserSelect" />
                     </template>
                   </el-input>
                 </el-form-item>
@@ -98,7 +98,7 @@
                     <el-radio v-for="item in SpecifyDesc" :key="item.id" :value="item.value" size="large">{{ item.label }}</el-radio>
                   </el-radio-group>
                 </el-form-item>
-              </el-tab-pane>
+              </el-tab-pane> -->
             </el-tabs>
 
             <el-form-item v-if="showConfig.dueDate" prop="dueDate" label="鍒版湡鏃堕棿">
@@ -243,8 +243,8 @@
 import ExecutionListener from './property/ExecutionListener.vue';
 import TaskListener from './property/TaskListener.vue';
 import DueDate from './property/DueDate.vue';
-import { ModdleElement } from 'bpmn';
-import { TaskPanel } from 'bpmnDesign';
+import type { ModdleElement } from 'bpmn';
+import type { TaskPanel } from 'bpmnDesign';
 import { AllocationTypeEnum, MultiInstanceTypeEnum, SpecifyDescEnum } from '@/enums/bpmn/IndexEnums';
 import { UserVO } from '@/api/system/user/types';
 import { RoleVO } from '@/api/system/role/types';
@@ -281,26 +281,24 @@
 const roleSelectRef = ref<InstanceType<typeof RoleSelect>>();
 const dueDateRef = ref<InstanceType<typeof DueDate>>();
 
-const isMultiple = ref(true);
 const openUserSelect = () => {
-  if (!formData.value.candidateUsers) {
-    formData.value.candidateUsers = '-1';
-  }
   userSelectRef.value.open();
 };
 const openSingleUserSelect = () => {
+  if (formData.value.assignee?.includes('$')) {
+    formData.value.assignee = '';
+  }
   singleUserSelectRef.value.open();
 };
 const openRoleSelect = () => {
-  if (!formData.value.candidateGroups) {
-    formData.value.candidateGroups = '-1';
-  }
   roleSelectRef.value.open();
 };
 const openDueDate = (e) => {
   dueDateRef.value.openDialog();
 };
-
+const blurAssignee = (assignee) => {
+  updateProperties({ 'flowable:assignee': assignee ? assignee : undefined });
+};
 const singleUserSelectCallBack = (data: UserVO[]) => {
   const user: UserVO = data.length !== 0 ? data[0] : undefined;
   updateProperties({ 'flowable:assignee': user?.userId });

--
Gitblit v1.9.3