file.js 1.43 KB
//请求工具参考https://ext.dcloud.net.cn/plugin?id=392
import request from '@/utils/request.js'
import config from '@/common/config.js'
import {
	getToken
} from '@/utils/auth'
import {getPhotoUrl} from "@/utils/ruoyi";

//上传文件 
export function uploadFile(url) {
	return new Promise((resolve, reject) => {
		uni.showLoading({
			title:'上传中'
		})
		let a = uni.uploadFile({
			url: `${config.baseUrl}/system/file/v1/fileUpload`,
			filePath: url,
			name: 'files',
			formData: {},
			header: {
				Authorization: "Bearer " + getToken()
			},
			success:async (res) => {
				if (res.statusCode === 200) {
					const data = JSON.parse(res.data)
					// console.log('上传成功,返回解析数据', data)
					let uuid = uni.$u.guid(13)
					let tempData = {
						status:"success",
						name: data.fileName,
						size: data.size,
						percentage: 100,
						uid: uuid,
						raw: {
							uid: uuid
						},
						response: {
							success: true,
							fileId: data.fileId,
							fileName:data.fileName,
							size: data.size,
							username: '超级管理员'
						},
						url:await getPhotoUrl(data.fileId)
					}
					// let FileJson = JSON.stringify(tempData);
					// console.log("返回文件数据Json",tempData);
					uni.hideLoading();
					resolve(tempData)
				} else {
					reject()
				}
			},
			fail: (res) => {
				console.error('上传失败', res)
				reject(res)
			}
		});
	})
}


export default {
	uploadFile,
}