import request from './http' import { URL, appid } from './url' //用户登录 export const login = (data) => { return request({ url: '/app/user/login', method: 'get', data }) } //用户退出登录 export const userLogout = (data)=>{ return request({ url:'/auth/logout', method:'post', data }) } //获取用户信息 export const getMyIndexInfo = (data) => { return request({ url: '/app/user/userInfo', method: 'get', data, }) } // 添加押金提现API export const withdrawDeposit = (orderNo) => { return request({ url: `/app/withdraw/add/${orderNo}`, method: 'get', hideLoading: true }) } //获取所有全部订单 export const getOrderList = (data) => { return request({ url: '/app/order/list', method: 'get', data, hideLoading: true }) } //查询是否有订单 export const queryHasOrder = (deviceNo) => { return request({ url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=in_used`, method: 'get', }) } // 查询指定设备号下,特定状态的订单列表 export const checkOrdersByStatus = (deviceNo, statuses) => { // statuses 是一个包含状态字符串的数组,例如 ['in_used', 'waiting_for_payment'] const statusQuery = statuses.join(','); // 后端需要支持逗号分隔的状态查询 return request({ url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=${statusQuery}`, method: 'get', hideLoading: true, // 隐藏加载提示,避免干扰用户 ignoreEmptyError: true // 添加标记,表示即使返回空数据也不视为错误 }) } //设备查询 export const getDeviceInfo = (deviceNo) => { return request({ url: `/app/device/${deviceNo}`, method: 'get', }) } //创建订单 export const createOrder = (data) => { return request({ url: '/app/order/add', method: 'post', data, }) } //查询订单 export const queryById = (id) => { console.log(`查询订单详情, orderId: ${id}`) return request({ url: `/app/order/${id}`, method: 'get', hideLoading: true }) } //取消订单 export const cancelOrder = (data) => { return request({ url: `/device/order/clear/${data.orderId}`, method: 'get', data, }) } //结束订单 export const overOrderById = (orderId) => { console.log(`调用结束订单API, orderId: ${orderId}`) return request({ url: `/app/order/close/${orderId}`, method: 'get', }) } //立即租借 export const rentPowerBank = (deviceNo, phone) => { return request({ url: `/app/device/rentPowerBank?deviceNo=${deviceNo}`, method: 'post', data: { // deviceNo, phone } }) } //确认支付并弹出风扇 export const confirmPaymentAndRent = (orderId) => { console.log(`确认支付并弹出风扇, orderId: ${orderId}`) return request({ url: `/app/device/confirmPaymentAndRent?orderId=${orderId}`, method: 'GET' }) } //投诉反馈 export const addUserFeedback = (data) => { console.log(data); return request({ url: '/app/feedback/add', method: 'post', data, }) } //强制打开空格子 export const forcefOpenEmptyGrid = (deviceNo) => { console.log(`强制打开空格子, deviceNo: ${deviceNo}`) return request({ url: `/app/device/forcef/${deviceNo}`, method: 'post' }) } // 通过订单号获取订单信息 export const getOrderByOrderNo = (orderNo) => { return request({ url: `/app/order/byOrderNo/${orderNo}`, method: 'get', hideLoading: true }) } // 通过订单号获取支付分订单信息 export const getOrderByOrderNoScore = (orderNo) => { console.log('通过订单号获取支付分订单信息', orderNo); return request({ url: `/app/wx-payment/score/create/${orderNo}`, method: 'get', hideLoading: true }) } export const getOrderByOrderNoScorePayStatus = (orderNo) => { console.log('通过订单号获取支付分订单状态', orderNo); return request({ url: `/app/wx-payment/score/status/${orderNo}`, method: 'get', hideLoading: true }) } // 更新订单套餐信息 export const updateOrderPackage = (data) => { console.log('更新订单套餐信息:', data) return request({ url: '/app/device/updateOrderPackage', method: 'post', data }) } // 更新用户余额 export const updateUserBalance = (orderId) => { return request({ url: `/app/user/updateBalance/${orderId}`, method: 'post', hideLoading: true }) } /* *弃用 */ export const getPotionsDetail = (data) => { console.log(data); return request({ url: '/device/position/positionDetails', method: 'get', data }) } // 文件上传到 OSS(若依后端) export const uploadOssResource = (filePath) => { return new Promise((resolve, reject) => { uni.uploadFile({ url: URL + '/manager/upload', filePath, name: 'file', header: { 'appid': appid, 'Authorization': 'Bearer ' + uni.getStorageSync('token'), 'Clientid': uni.getStorageSync('client_id') }, success: (res) => { try { const parsed = typeof res.data === 'string' ? JSON.parse(res.data) : res.data const codeOk = (res.statusCode === 200 || res.statusCode === 201 || parsed?.code === 200) const url = parsed?.url || parsed?.data?.url || parsed?.data?.fileUrl || parsed?.fileUrl || parsed?.path || parsed?.data if (codeOk && url) { resolve(url) return } reject(parsed || res) } catch (e) { reject(e) } }, fail: (err) => { reject(err) } }) }) } // 上传并更新用户头像(后端接口) export const uploadUserAvatar = (filePath) => { return new Promise((resolve, reject) => { uni.uploadFile({ url: URL + '/app/user/uploadAvatar', filePath, name: 'file', header: { 'appid': appid, 'Authorization': 'Bearer ' + uni.getStorageSync('token'), 'Clientid': uni.getStorageSync('client_id') }, success: (res) => { try { const parsed = typeof res.data === 'string' ? JSON.parse(res.data) : res.data resolve(parsed) } catch (e) { reject(e) } }, fail: (err) => { reject(err) } }) }) } // 获取系统配置(预留接口) // 期望后端返回形如:{ code: 200, data: { expressReturnCountdownSeconds: number } } export const getSystemConfig = () => { return request({ url: '/app/system/config', method: 'get', hideLoading: true }) } // ===================== 快递归还相关接口 ===================== // 1) 申请快递归还 export const applyExpressReturn = (data) => { // data: { orderId: number, logisticsTrackingNumber?: string, remark?: string } return request({ url: '/app/express-return/apply', method: 'post', data }) } // 2) 补填快递单号 export const fillExpressTrackingNumber = (data) => { // data: { id: number, logisticsTrackingNumber: string } return request({ url: '/app/express-return/fill-tracking-number', method: 'post', data }) } // 3) 查询快递归还记录列表 export const getExpressReturnList = (params) => { // params: { orderId?: number, status?: number, logisticsTrackingNumber?: string, pageNum?: number, pageSize?: number } return request({ url: '/app/express-return/list', method: 'get', data: params, hideLoading: true }) } // 4) 根据订单ID查询快递归还记录 export const getExpressReturnByOrder = (orderId) => { return request({ url: `/app/express-return/by-order/${orderId}`, method: 'get', hideLoading: true }) } // 5) 获取快递归还记录详情 export const getExpressReturnDetail = (id) => { return request({ url: `/app/express-return/${id}`, method: 'get', hideLoading: true }) } // 6) 取消快递归还申请 export const cancelExpressReturn = (id) => { return request({ url: `/app/express-return/cancel/${id}`, method: 'post' }) } //获取通知接口 export const getNoticeTextData = (data)=>{ return request({ url: `/system/notice/title/${data.title}`, method: 'get' }) }