一、导出
exportData() {
let searchParams = JSON.parse(JSON.stringify(this.search))
//
searchParams.pageIndex = 1;
if (searchParams.startTime == '') {
searchParams.startTime = null
}
if (searchParams.endTime == '') {
searchParams.endTime = null
}
// if (searchParams.pageIndex > 5000) {
// this.$Notice.error({
// title: '导出失败',
// desc: '每次最多导出5000条数据,请修改查询条件',
// })
// return false
// }
this.$http.API_GATEWAY.post('MallReportExport', searchParams, {
responseType: 'blob',
}).then((res) => {
console.log('导出', res)
let blob = new Blob([res.data], {
type: 'application/vnd.ms-excel;charset=utf-8',
})
let objectUrl = URL.createObjectURL(blob)
let a = document.createElement('a')
a.href = objectUrl
//
if (!res.headers['content-disposition']) {
this.$Message.warning('暂无可导出数据 !!!')
}
a.download = decodeURIComponent(
res.headers['content-disposition'].split('=')[1]
)
a.dispatchEvent(
new MouseEvent('click', {
bubbles: true,
cancelable: true,
view: window,
})
)
window.URL.revokeObjectURL(blob)
})
},
二、下载模板
downloadTemplate() {
this.$http._bt_game_center_admin_api
.post(
'grayExport',
{},
{
responseType: 'blob',
}
)
.then(
(res) => {
const link = document.createElement('a')
let blob = new Blob([res.data], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8',
})
link.style.display = 'none'
link.href = URL.createObjectURL(blob)
// link.download = res.headers['content-disposition'] //下载后文件名
link.download = '模板' //下载的文件名
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
},
(err) => {
console.log(err)
}
)
},
三、确认导入
batchImportSure() {
// 参数处理
const formData = new FormData();
formData.append('file', this.fileInfo);
formData.append('createBy', this.incomingData.createdBy);
// 执行ajax情求
this.$http._bt_game_center_admin_api
.post('importDeviceExcel', formData).then(res => {
const result = res.data;
// 清空file文件信息
this.$refs.upload.clearFiles();
this.fileInfo = {};
// 成功失败回调
if (result.code === '000000') {
this.$Message.success(`上传成功,${result.data}`);
this.batchImportShow = false;
this.initSet();
} else {
this.$Notice.error({
title: `上传失败,${result.description}`
})
}
}, err => {
this.loading.import = false;
})
},