From 7538f5b4e2e1bb5b8fff28afbabbf63bfab923a9 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 17 Sep 2025 16:42:43 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E8=AE=BE=E5=A4=87=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E8=B7=B3=E8=BD=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/area/areaHouse/index.vue | 21 +++++++++++++++++++++ src/views/device/deviceManage/index.vue | 21 +++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/src/views/area/areaHouse/index.vue b/src/views/area/areaHouse/index.vue index 4a9da72..9a38d9e 100644 --- a/src/views/area/areaHouse/index.vue +++ b/src/views/area/areaHouse/index.vue @@ -88,6 +88,9 @@ import { BasicTableProps, useTable } from "/@/hooks/table"; import { fetchList, delObjs } from "/@/api/area/areaHouse"; import { useMessage, useMessageBox } from "/@/hooks/message"; import { useDict } from '/@/hooks/dict'; +import { usePanel } from "/@/stores/panel" + +const storesPanel = usePanel() // 引入组件 const FormDialog = defineAsyncComponent(() => import('../_components/areaHouseForm.vue')); @@ -129,6 +132,24 @@ const resetQuery = () => { getDataList() } +onBeforeMount(() => { + const query: any = useRoute().query + if (query && query.action == 'panel') { + if (query.params) { + Object.assign(state.queryForm, JSON.parse(query.params)) + getDataList() + } + storesPanel.openFromPanel() + } +}) + +onBeforeUnmount(() => { + const query = useRoute().query + if (query && query.action == 'panel') { + storesPanel.closeFromPanel() + } +}) + // 导出excel const exportExcel = () => { downBlobFile('/area/areaHouse/export', Object.assign(state.queryForm, { ids: selectObjs }), 'areaHouse.xlsx') diff --git a/src/views/device/deviceManage/index.vue b/src/views/device/deviceManage/index.vue index a4d3a34..0258146 100644 --- a/src/views/device/deviceManage/index.vue +++ b/src/views/device/deviceManage/index.vue @@ -99,6 +99,9 @@ import { BasicTableProps, useTable } from "/@/hooks/table"; import { fetchList, delObjs } from "/@/api/device/deviceManage"; import { useMessage, useMessageBox } from "/@/hooks/message"; import { useDict } from '/@/hooks/dict'; +import { usePanel } from "/@/stores/panel" + +const storesPanel = usePanel() // 引入组件 const FormDialog = defineAsyncComponent(() => import('../components/deviceForm.vue')); @@ -140,6 +143,24 @@ const resetQuery = () => { getDataList() } +onBeforeMount(() => { + const query: any = useRoute().query + if (query && query.action == 'panel') { + if (query.params) { + Object.assign(state.queryForm, JSON.parse(query.params)) + getDataList() + } + storesPanel.openFromPanel() + } +}) + +onBeforeUnmount(() => { + const query = useRoute().query + if (query && query.action == 'panel') { + storesPanel.closeFromPanel() + } +}) + // 导出excel const exportExcel = () => { downBlobFile('/admin/deviceManage/export', Object.assign(state.queryForm, { ids: selectObjs }), 'deviceManage.xlsx')