From 400a10f478a3de3e165dae55f5d2b9fc32803829 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@local>
Date: 星期二, 03 十一月 2026 22:32:03 +0800
Subject: [PATCH] feat(bpm): 蓝羽流程模型-流程管理员固定超级管理员 + 步骤可自由切换

---
 src/views/bpm/model/form/modules/basic-info.vue |   52 ++-----------------------
 src/views/bpm/model/form/index.vue              |   32 +++-------------
 2 files changed, 11 insertions(+), 73 deletions(-)

diff --git a/src/views/bpm/model/form/index.vue b/src/views/bpm/model/form/index.vue
index 8ac2c8d..2dfcb73 100644
--- a/src/views/bpm/model/form/index.vue
+++ b/src/views/bpm/model/form/index.vue
@@ -16,7 +16,6 @@
 } from '@vben/constants';
 import { useTabs } from '@vben/hooks';
 import { IconifyIcon } from '@vben/icons';
-import { useUserStore } from '@vben/stores';
 
 import { Button, Card, message } from 'ant-design-vue';
 
@@ -49,7 +48,6 @@
 
 const router = useRouter();
 const route = useRoute();
-const userStore = useUserStore();
 const tabs = useTabs();
 
 const basicInfoRef = ref<InstanceType<typeof BasicInfo>>(); // 鍩虹淇℃伅缁勪欢寮曠敤
@@ -188,8 +186,10 @@
   } else {
     // 鎯呭喌涓夛細鏂板鍦烘櫙
     formData.value.startUserType = 0; // 鍏ㄤ綋
-    formData.value.managerUserIds.push(userStore.userInfo?.id);
   }
+
+  // 娴佺▼绠$悊鍛樺浐瀹氫负瓒呯骇绠$悊鍛橈紙admin锛岀郴缁熻处鍙� id=1锛夛紝涓嶅厑璁搁�夋嫨/淇敼
+  formData.value.managerUserIds = [1];
 
   // 鑾峰彇琛ㄥ崟鍒楄〃
   formList.value = await getFormSimpleList();
@@ -353,29 +353,9 @@
   }
 }
 
-/** 姝ラ鍒囨崲澶勭悊 */
-async function handleStepClick(index: number) {
-  try {
-    if (index !== 0) {
-      await validateBasic();
-    }
-    if (index !== 1) {
-      await validateForm();
-    }
-    if (index !== 2) {
-      await validateProcess();
-    }
-    if (index !== 3) {
-      await validateExtra();
-    }
-    // 鍒囨崲姝ラ
-    currentStep.value = index;
-  } catch (error) {
-    console.error('姝ラ鍒囨崲澶辫触:', error);
-    if (currentStep.value !== 2) {
-      message.warning('璇峰厛瀹屽杽褰撳墠姝ラ蹇呭~淇℃伅');
-    }
-  }
+/** 姝ラ鍒囨崲澶勭悊锛氬厑璁歌嚜鐢卞墠杩�/杩斿洖锛屼笉鍋氭楠ゆ牎楠岋紙淇濆瓨/鍙戝竷鏃舵墠缁熶竴鏍¢獙锛� */
+function handleStepClick(index: number) {
+  currentStep.value = index;
 }
 
 /** 杩斿洖鍒楄〃椤� */
diff --git a/src/views/bpm/model/form/modules/basic-info.vue b/src/views/bpm/model/form/modules/basic-info.vue
index a297e25..691c654 100644
--- a/src/views/bpm/model/form/modules/basic-info.vue
+++ b/src/views/bpm/model/form/modules/basic-info.vue
@@ -61,7 +61,6 @@
 const selectedStartDepts = ref<SystemDeptApi.Dept[]>([]); // 閫変腑鐨勫彂璧烽儴闂�
 
 const selectedManagerUsers = ref<SystemUserApi.User[]>([]); // 閫変腑鐨勬祦绋嬬鐞嗗憳
-const currentSelectType = ref<'manager' | 'start'>('start');
 const selectedUsers = ref<number[]>(); // 閫変腑鐨勭敤鎴�
 const rules: Record<string, Rule[]> = {
   name: [{ required: true, message: '娴佺▼鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }],
@@ -121,7 +120,6 @@
 
 /** 鎵撳紑鍙戣捣浜洪�夋嫨 */
 function openStartUserSelect() {
-  currentSelectType.value = 'start';
   selectedUsers.value = selectedStartUsers.value.map(
     (user) => user.id,
   ) as number[];
@@ -141,27 +139,12 @@
   };
 }
 
-/** 鎵撳紑绠$悊鍛橀�夋嫨 */
-function openManagerUserSelect() {
-  currentSelectType.value = 'manager';
-  selectedUsers.value = selectedManagerUsers.value.map(
-    (user) => user.id,
-  ) as number[];
-  userSelectModalApi.setData({ userIds: selectedUsers.value }).open();
-}
-
-/** 澶勭悊鐢ㄦ埛閫夋嫨纭 */
+/** 澶勭悊鐢ㄦ埛閫夋嫨纭锛堝彂璧蜂汉锛� */
 function handleUserSelectConfirm(userList: SystemUserApi.User[]) {
-  modelData.value =
-    currentSelectType.value === 'start'
-      ? {
-          ...modelData.value,
-          startUserIds: userList.map((u) => u.id),
-        }
-      : {
-          ...modelData.value,
-          managerUserIds: userList.map((u) => u.id),
-        };
+  modelData.value = {
+    ...modelData.value,
+    startUserIds: userList.map((u) => u.id),
+  };
 }
 
 /** 鐢ㄦ埛閫夋嫨寮圭獥鍏抽棴 */
@@ -219,16 +202,6 @@
     ...modelData.value,
     startDeptIds: modelData.value.startDeptIds.filter(
       (id: number) => id !== dept.id,
-    ),
-  };
-}
-
-/** 绉婚櫎绠$悊鍛� */
-function handleRemoveManagerUser(user: SystemUserApi.User) {
-  modelData.value = {
-    ...modelData.value,
-    managerUserIds: modelData.value.managerUserIds.filter(
-      (id: number) => id !== user.id,
     ),
   };
 }
@@ -411,22 +384,7 @@
             <span class="text-gray-700 dark:text-gray-200">
               {{ user.nickname }}
             </span>
-            <IconifyIcon
-              icon="lucide:x"
-              class="ml-2 size-4 cursor-pointer text-gray-400 hover:text-red-500"
-              @click="handleRemoveManagerUser(user)"
-            />
           </div>
-          <Button
-            type="link"
-            @click="openManagerUserSelect"
-            class="flex items-center"
-          >
-            <template #icon>
-              <IconifyIcon icon="lucide:user-plus" class="size-4" />
-            </template>
-            閫夋嫨浜哄憳
-          </Button>
         </div>
       </Form.Item>
     </Form>

--
Gitblit v1.9.3