From f9a12ecb4ea4b7b103b50634335704140237fef7 Mon Sep 17 00:00:00 2001
From: 朱桂飞 <zhuguifei@zhuguifeideMacBook-Air.local>
Date: 星期三, 19 二月 2025 15:11:28 +0800
Subject: [PATCH] 完成工具借用、归还相关

---
 eims-ui/apps/web-antd/src/views/eims/equ-statu/equ-statu-drawer.vue |   49 ++++++++++++++++++++++++++++---------------------
 1 files changed, 28 insertions(+), 21 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/views/eims/equ-statu/equ-statu-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/equ-statu/equ-statu-drawer.vue
index 590f7a9..a541d60 100644
--- a/eims-ui/apps/web-antd/src/views/eims/equ-statu/equ-statu-drawer.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/equ-statu/equ-statu-drawer.vue
@@ -1,14 +1,17 @@
 <script setup lang="ts">
 import { computed, ref } from 'vue';
 
-import { useVbenDrawer } from '@vben/common-ui';
+import { useVbenDrawer, useVbenModal } from '@vben/common-ui';
 import { $t } from '@vben/locales';
 import { addFullName, cloneDeep, getPopupContainer } from '@vben/utils';
+
+import { InputSearch } from 'ant-design-vue';
 
 import { useVbenForm } from '#/adapter/form';
 import { listEqu } from '#/api/eims/equ';
 import { addEquStatu, getEquStatu, updateEquStatu } from '#/api/eims/equ-statu';
 import { getDeptTree, userList } from '#/api/system/user';
+import equModal from '#/views/eims/components/equ-modal.vue';
 
 import { drawerSchema } from './data';
 
@@ -46,31 +49,14 @@
     // 鍒濆鍖�
     await setupEquSelect();
     await setupDeptSelect();
-
-    // 璁惧璇︽儏椤垫墦寮�鎸囧畾璁惧id
-    const { equId } = drawerApi.getData() as { equId?: number | string };
-    if (equId) {
-      await formApi.setValues({ equId});
-    }
     // 鏇存柊 && 璧嬪��
     if (isUpdate.value && id) {
       const record = await getEquStatu(id);
       await formApi.setValues(record);
-      if(isUpdate.value && record.userDept){
+      if (isUpdate.value && record.userDept) {
         await setupUserOptions(record.userDept);
       }
     }
-    // 璁惧id鏈夊�兼椂涓嶅厑璁哥紪杈戯紙1.缂栬緫 2.璁惧璇︽儏椤垫墦寮�锛�
-    const flag = equId !== undefined || isUpdate.value;
-    formApi.updateSchema([
-      {
-        componentProps: {
-          disabled: flag
-        },
-        fieldName: 'equId'
-      }
-    ]);
-
     drawerApi.drawerLoading(false);
   }
 });
@@ -78,7 +64,7 @@
 async function setupEquSelect() {
   const equPageResult = await listEqu({
     pageNum: 1,
-    pageSize: 1000,
+    pageSize: 1000
   });
   // 浣跨敤map鏉ヨ窡韪凡缁忛亣鍒扮殑equId锛屼娇鐢╢ilter鏉ヨ繃婊ゆ帀閲嶅鐨勫厓绱犮��
   const uniqueItems = equPageResult.rows.filter((item, index, self) => index === self.findIndex((tm) => tm.equId === item.equId));
@@ -200,10 +186,31 @@
   drawerApi.close();
   await formApi.resetForm();
 }
+
+// EQU modal
+const [EquModal, equModalApi] = useVbenModal({
+  connectedComponent: equModal,
+  draggable: true,
+  title: '閫夋嫨鎴愬憳'
+});
+
+function handleEquModal() {
+  equModalApi.setData({});
+  equModalApi.open();
+}
+
+async function selectEqu(equ: any) {
+  await formApi.setValues({ 'equId': equ.equId, 'equName': equ.equName });
+}
 </script>
 
 <template>
   <BasicDrawer :close-on-click-modal="false" :title="title" class="w-[600px]">
-    <BasicForm />
+    <BasicForm>
+      <template #equName="slotProps">
+        <InputSearch :enter-button="true" placeholder="璇烽�夋嫨" @search="handleEquModal" v-bind="slotProps" />
+      </template>
+    </BasicForm>
+    <EquModal :disabled="true" class="w-[1200px]" @update-equ="selectEqu" />
   </BasicDrawer>
 </template>

--
Gitblit v1.9.3