From 0e86a393db610cf6a9caa2684a3b72458c87eff3 Mon Sep 17 00:00:00 2001 From: njdaoyehu Date: Thu, 21 Nov 2024 16:27:39 +0800 Subject: [PATCH] fixed --- src/views/data/task/drawer.vue | 8 +++---- src/views/data/task/index.vue | 38 ++++++++++++++++++++++++++++++---- types/index.d.ts | 1 + 3 files changed, 38 insertions(+), 9 deletions(-) diff --git a/src/views/data/task/drawer.vue b/src/views/data/task/drawer.vue index e6c98da..67628f8 100644 --- a/src/views/data/task/drawer.vue +++ b/src/views/data/task/drawer.vue @@ -35,11 +35,9 @@ isUpdate.value = !!data?.isUpdate; entity.value = data?.record; - if (unref(isUpdate)) { - await setFieldsValue({ - ...data.record, - }); - } + await setFieldsValue({ + ...data.record, + }); }); const getTitle = computed(() => (!unref(isUpdate) ? '新增' : '编辑')); diff --git a/src/views/data/task/index.vue b/src/views/data/task/index.vue index 7bf0bb8..7da319f 100644 --- a/src/views/data/task/index.vue +++ b/src/views/data/task/index.vue @@ -7,7 +7,9 @@ @@ -73,7 +75,12 @@ import { useMessage } from "@/hooks/web/useMessage"; import {SvgIcon} from "@/components/Icon"; import {h, ref} from "vue"; - import {DownloadOutlined, PlusOutlined, SyncOutlined} from "@ant-design/icons-vue"; + import { + DownloadOutlined, + ImportOutlined, + PlusOutlined, + SyncOutlined + } from "@ant-design/icons-vue"; const { createMessage } = useMessage(); const { hasPermission } = usePermission(); const go = useGo(); @@ -167,12 +174,35 @@ go('/data/task/' + record.id); }; + const handleImport = () => { + WebViewService.importExcel().then((str) => { + useMessage().createMessage.success("数据导入成功!"); + const data = JSON.parse(str); + if (data.length === 0) return; + const taskName = data[0].name; + data.forEach(item => { + delete item.name; + }) + const record = { + name: taskName, + paramJson: JSON.stringify(data), + }; + // 打开新增 + openDrawer(true, { + record, + isUpdate: false, + }); + }, error => { + useMessage().createMessage.error(error); + }); + } + const handleDownload = (record: Recordable) => { const ids = [...new Set([...(record.id ? [record.id] : []), ...(checkedKeys.value.map(d => (d)))])] DeviceClientService.assignTasks(ids).then(() => { useMessage().createMessage.success("下发任务成功!"); }, error => { - useMessage().createMessage(error); + useMessage().createMessage.error(error); }); }; @@ -182,7 +212,7 @@ useMessage().createMessage.success("同步任务成功!"); reload(); }, error => { - useMessage().createMessage(error); + useMessage().createMessage.error(error); }); }; diff --git a/types/index.d.ts b/types/index.d.ts index b195770..487be7a 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -29,3 +29,4 @@ declare type ElRef = Nullable; declare let AMap: any; declare interface DeviceClientService {} +declare interface WebViewService {}