diff --git a/src/api/cs-harmonic-boot/datatrend.ts b/src/api/cs-harmonic-boot/datatrend.ts index 8b382eb..ff3da07 100644 --- a/src/api/cs-harmonic-boot/datatrend.ts +++ b/src/api/cs-harmonic-boot/datatrend.ts @@ -1,5 +1,5 @@ import createAxios from '@/utils/request' - +import { genFileId, ElMessage, ElNotification } from 'element-plus' // 查询设备数据趋势 export function getDeviceDataTrend(data: any) { return createAxios({ @@ -9,8 +9,6 @@ export function getDeviceDataTrend(data: any) { }) } - - // 波形下载 export function getFileZip(params: any) { return createAxios({ @@ -27,5 +25,35 @@ export function exportModel(data: any) { method: 'post', data: data, responseType: 'blob' + }).then(async res => { + let load: any = await readJsonBlob(res) + if (load.code) { + if (load.data.code == 'A0011') { + ElMessage.warning('下载失败!') + } else { + ElMessage.warning(load.data.message) + } + } else { + return res + } }) } +async function readJsonBlob(blob) { + try { + // 1. Blob.text() 读取二进制 → 直接转为 字符串(自动处理编码) + const jsonStr = await blob.text() + // 2. JSON.parse 解析字符串 → 得到可用的 JS 对象/数组 + const jsonData = JSON.parse(jsonStr) + // 3. 拿到数据,后续随便用 + return { + code: true, + data: jsonData + } + } catch (err) { + return { + code: false, + data: {} + } + // console.error('解析Blob的JSON数据失败:', err) + } +} diff --git a/src/api/harmonic-boot/cockpit/cockpit.ts b/src/api/harmonic-boot/cockpit/cockpit.ts index 47c8b26..05b4497 100644 --- a/src/api/harmonic-boot/cockpit/cockpit.ts +++ b/src/api/harmonic-boot/cockpit/cockpit.ts @@ -1,5 +1,5 @@ import request from '@/utils/request' - +import { genFileId, ElMessage, ElNotification } from 'element-plus' // 主要监测点列表查询>>分页 export function mainLineList(data: any) { return request({ @@ -115,7 +115,6 @@ export function limitProbabilityData(data: any) { }) } - // 电网侧指标越限统计列表 export function gridSideLimitStatisticsList(data: any) { return request({ @@ -152,7 +151,6 @@ export function getListByIds(data: any) { }) } - // 上传治理报告 export function uploadReport(data: any) { return request({ @@ -260,14 +258,42 @@ export function getSimpleLine() { }) } - -export function getLineExport(data:any) { +export function getLineExport(data: any) { return request({ url: '/cs-harmonic-boot/eventReport/getLineExport', method: 'post', data: data, responseType: 'blob' + }).then(async res => { + let load: any = await readJsonBlob(res) + if (load.code) { + if (load.data.code == 'A0011') { + ElMessage.warning('下载失败!') + } else { + ElMessage.warning(load.data.message) + } + } else { + return res + } }) } - +async function readJsonBlob(blob) { + try { + // 1. Blob.text() 读取二进制 → 直接转为 字符串(自动处理编码) + const jsonStr = await blob.text() + // 2. JSON.parse 解析字符串 → 得到可用的 JS 对象/数组 + const jsonData = JSON.parse(jsonStr) + // 3. 拿到数据,后续随便用 + return { + code: true, + data: jsonData + } + } catch (err) { + return { + code: false, + data: {} + } + // console.error('解析Blob的JSON数据失败:', err) + } +} diff --git a/src/assets/img/jss.png b/src/assets/img/jss.png index b3512ea..2e7a8f7 100644 Binary files a/src/assets/img/jss.png and b/src/assets/img/jss.png differ diff --git a/src/components/cockpit/indicatorCrossingTime/index.vue b/src/components/cockpit/indicatorCrossingTime/index.vue index 56b74cd..a089aa6 100644 --- a/src/components/cockpit/indicatorCrossingTime/index.vue +++ b/src/components/cockpit/indicatorCrossingTime/index.vue @@ -26,12 +26,21 @@