From 87d22032e63d75b86635fbe3fbd58b6e571d2ade Mon Sep 17 00:00:00 2001 From: sjl <1716605279@qq.com> Date: Thu, 16 Jan 2025 15:43:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/ImportExcel/index.vue | 41 ++++++++++++++++++- frontend/src/views/machine/device/index.vue | 3 ++ 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/ImportExcel/index.vue b/frontend/src/components/ImportExcel/index.vue index e25061b..bdbaee8 100644 --- a/frontend/src/components/ImportExcel/index.vue +++ b/frontend/src/components/ImportExcel/index.vue @@ -43,7 +43,7 @@ import { ref } from "vue"; import { useDownload } from "@/hooks/useDownload"; import { Download } from "@element-plus/icons-vue"; -import { ElNotification, UploadRequestOptions, UploadRawFile } from "element-plus"; +import { ElNotification, UploadRequestOptions, UploadRawFile, ElMessage } from "element-plus"; export interface ExcelParameterProps { title: string; // 标题 @@ -89,11 +89,48 @@ const uploadExcel = async (param: UploadRequestOptions) => { excelFormData.append("patternId",parameter.value.patternId) } isCover.value && excelFormData.append("isCover", isCover.value as unknown as Blob); - await parameter.value.importApi!(excelFormData); + //await parameter.value.importApi!(excelFormData); + await parameter.value.importApi!(excelFormData) + .then(res => handleImportResponse( res)) parameter.value.getTableList && parameter.value.getTableList(); dialogVisible.value = false; }; + + + +async function handleImportResponse( res: any) { + console.log('res1', res.type); + if (res.type === 'application/json') { + console.log('res2', res); + const fileReader = new FileReader() + fileReader.onloadend = () => { + try { + const jsonData = JSON.parse(fileReader.result) + console.log('123',jsonData) + if (jsonData.code === 'A0000') { + ElMessage.success('导入成功') + } else { + //ElMessage.error('导入失败,请查看下载附件!') + } + } catch (err) { + console.log(err) + } + } + fileReader.readAsText(res) + } else { + //ElMessage.error('导入失败,请查看下载附件!') + // let blob = new Blob([res], { type: 'application/vnd.ms-excel' }) + // const url = window.URL.createObjectURL(blob) + // const link = document.createElement('a') + // link.href = url + // link.download = '终端入网检测失败列表' + // document.body.appendChild(link) + // link.click() + // link.remove() + } +} + /** * @description 文件上传之前判断 * @param file 上传的文件 diff --git a/frontend/src/views/machine/device/index.vue b/frontend/src/views/machine/device/index.vue index 47cc6f6..cbb2822 100644 --- a/frontend/src/views/machine/device/index.vue +++ b/frontend/src/views/machine/device/index.vue @@ -219,12 +219,15 @@ const importFile = async (pattern:string) => { const params = { title: '被检设备', showCover: false, + patternId: dictStore.getDictData('Pattern').find(item=>item.name=== modeStore.currentMode)?.id, tempApi: downloadCNDevTemplate, importApi: importCNDev, // importApi: modeStore.currentMode === "比对式"? importContrastPqDev: importCNDev, getTableList: proTable.value?.getTableList, } deviceImportExcel.value?.acceptParams(params) + + console.log(params) } }