12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- import service from '@/utils/request'
- import { ElMessage } from 'element-plus'
- const handleFileError = (res, fileName) => {
- if (typeof (res.data) !== 'undefined') {
- if (res.data.type === 'application/json') {
- const reader = new FileReader()
- reader.onload = function() {
- const message = JSON.parse(reader.result).msg
- ElMessage({
- showClose: true,
- message: message,
- type: 'error'
- })
- }
- reader.readAsText(new Blob([res.data]))
- }
- } else {
- var downloadUrl = window.URL.createObjectURL(new Blob([res]))
- var a = document.createElement('a')
- a.style.display = 'none'
- a.href = downloadUrl
- a.download = fileName
- var event = new MouseEvent('click')
- a.dispatchEvent(event)
- }
- }
- export const exportExcel = (tableData, fileName) => {
- service({
- url: '/excel/exportExcel',
- method: 'post',
- data: {
- fileName: fileName,
- infoList: tableData
- },
- responseType: 'blob'
- }).then((res) => {
- handleFileError(res, fileName)
- })
- }
- export const loadExcelData = () => {
- return service({
- url: '/excel/loadExcel',
- method: 'get'
- })
- }
- export const downloadTemplate = (fileName) => {
- return service({
- url: '/excel/downloadTemplate',
- method: 'get',
- params: {
- fileName: fileName
- },
- responseType: 'blob'
- }).then((res) => {
- handleFileError(res, fileName)
- })
- }
|