import { BASE_URL } from './request'; /** * 上传报名证明图片 * @param {Object} params 参数对象 * @param {string} params.filePath 本地文件路径 * @param {number} params.marathonId 比赛ID * @param {string} params.competitionNo 参赛号 * @param {string} [url='/api/upload/image'] 上传接口路径 * @param {string} [name='file'] 后端接收文件字段名 */ export function uploadImage( { filePath, marathonId = '', competitionNo = '' }, url = '/api/upload/image', name = 'file' ) { return new Promise((resolve, reject) => { wx.uploadFile({ url: BASE_URL + url, filePath, name, header: { 'Authorization': wx.getStorageSync('token') || '' }, formData: { marathon_id: marathonId, competition_no: competitionNo, file:filePath }, success(res) { try { const data = JSON.parse(res.data); if (data.code === 200 && data.ret) { wx.showToast({ title: '上传成功', icon: 'none' }); resolve(data.data); } else { wx.showToast({ title: data.message || '上传失败', icon: 'none' }); reject(data); } } catch (err) { reject(err); } }, fail(err) { wx.showToast({ title: '网络异常,请重试', icon: 'none' }); reject(err); } }); }); }