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-trial/equ-trial-drawer.vue |   46 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/eims-ui/apps/web-antd/src/views/eims/equ-trial/equ-trial-drawer.vue b/eims-ui/apps/web-antd/src/views/eims/equ-trial/equ-trial-drawer.vue
index 99c5f21..99daa05 100644
--- a/eims-ui/apps/web-antd/src/views/eims/equ-trial/equ-trial-drawer.vue
+++ b/eims-ui/apps/web-antd/src/views/eims/equ-trial/equ-trial-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, Modal } from 'ant-design-vue';
 
 import { useVbenForm } from '#/adapter/form';
 import { listEqu } from '#/api/eims/equ';
 import { addEquTrial, getEquTrial, updateEquTrial } from '#/api/eims/equ-trial';
 import { getDeptTree, userList } from '#/api/system/user';
+import equModal from '#/views/eims/components/equ-modal.vue';
 
 import { drawerSchema } from './data';
 
@@ -54,6 +57,9 @@
     if (isUpdate.value && id) {
       const record = await getEquTrial(id);
       await formApi.setValues(record);
+      if (isUpdate.value && record.operatorDept) {
+        await setupUserOptions(record.operatorDept);
+      }
     }
     // 璁惧id鏈夊�兼椂涓嶅厑璁哥紪杈戯紙1.缂栬緫 2.璁惧璇︽儏椤垫墦寮�锛�
     const flag = equId !== undefined || isUpdate.value;
@@ -153,7 +159,7 @@
           /** 鏍规嵁閮ㄩ棬ID鍔犺浇鐢ㄦ埛 */
           await setupUserOptions(deptId);
           /** 鍙樺寲鍚庨渶瑕侀噸鏂伴�夋嫨鐢ㄦ埛 */
-          formModel.respPerson = undefined;
+          formModel.operatorId = undefined;
         },
         placeholder: '璇烽�夋嫨',
         showSearch: true,
@@ -169,6 +175,7 @@
     }
   ]);
 }
+
 async function handleConfirm() {
   try {
     drawerApi.drawerLoading(true);
@@ -191,10 +198,43 @@
   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) {
+  // TODO 纭畾涓庡瓧鍏稿搴攕ys_equ_status
+  if (equ.status !== null && equ.status === '0') {
+    await formApi.setValues({ 'equId': equ.equId, 'equName': equ.equName });
+  } else {
+    Modal.confirm({
+      title: '鎻愮ず',
+      okType: 'danger',
+      content: `褰撳墠璁惧鐘舵�佷笉灞炰簬璇曠敤璁惧锛岀‘璁ゆ坊鍔犲悧锛焋,
+      onOk: async () => {
+        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