import request from '@/utils/request'; import { download } from '@/utils/file'; /** * 上传文件 * @param file 文件 */ export async function uploadFile(data) { const formData = new FormData(); formData.append('multiPartFile', data.multiPartFile); formData.append('module', data.module); const res = await request.post('/main/file/upload', formData); if (res.data.code === '0') { return res.data; } return Promise.reject(new Error(res.data.message)); } /** * 上传文件 批量 * @param file 文件 */ export async function uploadBatch(data) { const formData = new FormData(); data.multiPartFiles.forEach((item, index) => { formData.append(`multiPartFiles`, item); }); const res = await request.post( `/main/file/uploadBatch?module=${data.module}`, formData ); if (res.data.code === '0') { return res.data; } return Promise.reject(new Error(res.data.message)); } /** * 获取文件路径 */ export async function getPathAddress() { const res = await request.post('/main/file/getPathAddress'); if (res.data.code === '0') { return res.data.data; } return Promise.reject(); } /** * 获取文件 */ export async function getFile(params, fileName) { const res = await request.get('/main/file/getFile', { params, responseType: 'blob' }); const arr = params.objectName.split('/'); download(res.data, fileName || arr[arr.length - 1]); // if (res.data.code === '0') { // return res.data.data; // } // return Promise.reject(); } /** * 删除文件 */ export async function removeFile(data) { const res = await request.post( `/main/file/delete?fileId=${data.fileId}`, data ); if (res.data.code === '0') { return res.data.message; } return Promise.reject(new Error(res.data.message)); } /** * 文件列表 */ export async function getFileList(data) { const res = await request.post(`/main/file/list`, data); if (res.data.code === '0') { return res.data.data; } return Promise.reject(new Error(res.data.message)); } /** * 导入文件 批量 * @param file 文件 */ export async function importBatch(data,api,onUploadProgressCb) { const formData = new FormData(); data.multiPartFiles.forEach((item, index) => { formData.append(`file`, item); }); const res = await request.post(api, formData,{ onUploadProgress:onUploadProgressCb?onUploadProgressCb:()=>{} }); if (res.data.code === '0') { return res.data; } return Promise.reject(new Error(res.data.message)); } /** * 下载模板 */ export async function downLoadTemplate(url,name) { const res = await request.post( url, {}, { responseType: 'blob', } ); console.log(res.data, '***********'); download(res.data, name); } /** * 导出 */ export async function exportTable(data) { const res = await request.post( data.api, data.data, { responseType: 'blob' } ); console.log(res.data, '***********'); download(res.data, data.fileName+'.xlsx'); }