Files
uni-fans-score/config/user.js
T

308 lines
6.9 KiB
JavaScript

import request from './http'
import { URL, appid } from './url'
export const login = (data) => {
return request({
url: '/app/user/login',
method: 'get',
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)
}
})
})
}
// 获取系统配置(预留接口)
// 期望后端返回形如:{ 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'
})
}