49 lines
1.4 KiB
TypeScript
49 lines
1.4 KiB
TypeScript
import request from '@/utils/request'
|
||
import { genFileId, ElMessage, ElNotification } from 'element-plus'
|
||
export function getHistoryResult(data: any) {
|
||
return request({
|
||
url: '/harmonic-boot/harmonic/getHistoryResult',
|
||
method: 'post',
|
||
data: data
|
||
})
|
||
}
|
||
// word报告
|
||
export function exportModelJB(data: any) {
|
||
return request({
|
||
url: '/harmonic-boot/exportmodel/exportModelJB',
|
||
method: 'post',
|
||
responseType: 'blob',
|
||
data: data
|
||
}).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)
|
||
}
|
||
}
|