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