campus-errand/miniapp/utils/api.js
2026-03-01 05:01:47 +08:00

191 lines
4.8 KiB
JavaScript

/**
* API 接口封装
* 按模块组织所有后端接口调用
*/
import request from './request'
// ==================== 用户认证 ====================
/**
* 微信手机号登录
* @param {Object} data - { code, encryptedData, iv }
*/
export function login(data) {
return request({ url: '/api/auth/login', method: 'POST', data })
}
// ==================== Banner ====================
/** 获取已启用的 Banner 列表 */
export function getBanners() {
return request({ url: '/api/banners' })
}
// ==================== 服务入口 ====================
/** 获取已启用的服务入口列表 */
export function getServiceEntries() {
return request({ url: '/api/service-entries' })
}
// ==================== 订单 ====================
/** 创建订单 */
export function createOrder(data) {
return request({ url: '/api/orders', method: 'POST', data })
}
/** 获取订单大厅列表 */
export function getOrderHall(params) {
return request({ url: '/api/orders/hall', data: params })
}
/** 接取订单 */
export function acceptOrder(id) {
return request({ url: `/api/orders/${id}/accept`, method: 'POST' })
}
/** 取消订单 */
export function cancelOrder(id) {
return request({ url: `/api/orders/${id}/cancel`, method: 'POST' })
}
/** 跑腿提交完成 */
export function completeOrder(id, data) {
return request({ url: `/api/orders/${id}/complete`, method: 'POST', data })
}
/** 单主确认完成 */
export function confirmOrder(id) {
return request({ url: `/api/orders/${id}/confirm`, method: 'POST' })
}
/** 单主拒绝完成 */
export function rejectOrder(id) {
return request({ url: `/api/orders/${id}/reject`, method: 'POST' })
}
/** 获取我的订单 */
export function getMyOrders(params) {
return request({ url: '/api/orders/mine', data: params })
}
/** 获取我的接单 */
export function getMyTaken(params) {
return request({ url: '/api/orders/taken', data: params })
}
/** 获取订单详情 */
export function getOrderDetail(id) {
return request({ url: `/api/orders/${id}` })
}
// ==================== 美食街 ====================
/** 获取门店列表 */
export function getShops() {
return request({ url: '/api/shops' })
}
/** 获取门店详情 */
export function getShopDetail(id) {
return request({ url: `/api/shops/${id}` })
}
// ==================== 跑腿认证 ====================
/** 提交跑腿认证 */
export function submitCertification(data) {
return request({ url: '/api/runner/certification', method: 'POST', data })
}
/** 获取认证状态 */
export function getCertificationStatus() {
return request({ url: '/api/runner/certification' })
}
// ==================== 评价 ====================
/** 提交评价 */
export function submitReview(orderId, data) {
return request({ url: `/api/orders/${orderId}/review`, method: 'POST', data })
}
// ==================== 改价 ====================
/** 发起改价 */
export function createPriceChange(orderId, data) {
return request({ url: `/api/orders/${orderId}/price-change`, method: 'POST', data })
}
/** 响应改价 */
export function respondPriceChange(orderId, changeId, data) {
return request({ url: `/api/orders/${orderId}/price-change/${changeId}`, method: 'PUT', data })
}
// ==================== 收益与提现 ====================
/** 获取收益概览 */
export function getEarnings() {
return request({ url: '/api/earnings' })
}
/** 获取收益记录 */
export function getEarningsRecords() {
return request({ url: '/api/earnings/records' })
}
/** 获取提现记录 */
export function getWithdrawals() {
return request({ url: '/api/earnings/withdrawals' })
}
/** 申请提现 */
export function applyWithdraw(data) {
return request({ url: '/api/earnings/withdraw', method: 'POST', data })
}
// ==================== 消息通知 ====================
/** 获取未读消息数 */
export function getUnreadCount() {
return request({ url: '/api/messages/unread-count' })
}
/** 获取系统消息列表 */
export function getSystemMessages() {
return request({ url: '/api/messages/system' })
}
/** 获取系统消息详情 */
export function getSystemMessageDetail(id) {
return request({ url: `/api/messages/system/${id}` })
}
/** 获取订单通知列表 */
export function getOrderNotifications(params) {
return request({ url: '/api/messages/order-notifications', data: params })
}
// ==================== 配置 ====================
/** 获取客服二维码 */
export function getQrcode() {
return request({ url: '/api/config/qrcode' })
}
/** 获取用户协议 */
export function getAgreement() {
return request({ url: '/api/config/agreement' })
}
/** 获取隐私政策 */
export function getPrivacy() {
return request({ url: '/api/config/privacy' })
}
/** 获取提现说明 */
export function getWithdrawalGuide() {
return request({ url: '/api/config/withdrawal-guide' })
}