| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- // 订单相关接口
- import { get, post } from '@/core/http/http-client'
- import { buildRestPath } from '@/core/config/api-paths'
- /**
- * 获取确认订单商品列表
- * 对接 88live 的 /wanlshop/order/getOrderGoodsList 接口
- */
- export async function postOrderGetGoodsList({ data, address_id = 0 } = {}) {
- const { data: resData } = await post(buildRestPath('order/getOrderGoodsList'), {
- data,
- address_id
- })
- return resData
- }
- /**
- * 提交订单
- * 对接 88live 的 /wanlshop/order/addOrder 接口
- */
- export async function postOrderAddOrder({ order, token } = {}) {
- const { data: resData } = await post(buildRestPath('order/addOrder'), {
- order,
- token
- })
- return resData
- }
- /**
- * 获取订单列表
- * state: 0=全部, 1=待付款, 2=待发货, 3=待收货, 4=待评价
- * page: 分页页码
- */
- export async function pullOrderList({ state = 0, page = 1 } = {}) {
- const { data } = await get(buildRestPath('order/getOrderList'), { state, page })
- return {
- rows: Array.isArray(data.data) ? data.data : [],
- currentPage: data.current_page || 1,
- lastPage: data.last_page || 1,
- total: data.total || 0
- }
- }
- /**
- * 获取订单详情
- * id: 订单ID
- */
- export async function pullOrderInfo({ id } = {}) {
- const { data } = await get(buildRestPath('order/getOrderInfo'), { id })
- return data
- }
- /**
- * 取消订单
- * id: 订单ID
- */
- export async function postOrderCancel({ id } = {}) {
- const { data } = await post(buildRestPath('order/cancelOrder'), { id })
- return data
- }
- /**
- * 删除订单(已关闭的订单才能删除)
- * id: 订单ID
- */
- export async function postOrderDelete({ id } = {}) {
- const { data } = await post(buildRestPath('order/delOrder'), { id })
- return data
- }
- /**
- * 确认收货
- * id: 订单ID
- */
- export async function postOrderConfirm({ id } = {}) {
- const { data } = await post(buildRestPath('order/confirmOrder'), { id })
- return data
- }
- /**
- * 提交订单评价
- * data: { order_id, shop: { id, describe, logistics, service, deliver }, goodsList: [...] }
- */
- export async function postOrderComment(data) {
- const { data: resData } = await post(buildRestPath('order/commentOrder'), data)
- return resData
- }
- /**
- * 获取物流信息
- * id: 订单ID
- */
- export async function pullOrderLogistics({ id } = {}) {
- const { data } = await post(buildRestPath('order/getLogistics'), { id })
- return data
- }
- /**
- * 修改订单收货地址
- * id: 订单ID
- * address_id: 新地址ID
- */
- export async function postOrderEditAddress({ id, address_id } = {}) {
- const { data } = await post(buildRestPath('order/editOrderAddress'), { id, address_id })
- return data
- }
- /**
- * 获取订单统计
- * 对接 88live 的 /wanlshop/order/getOrderStats 接口
- * */
- export async function fetchOrderStats() {
- const states = [
- { key: 'pay', state: 1 },
- { key: 'delive', state: 2 },
- { key: 'receiving', state: 3 },
- { key: 'evaluate', state: 4 }
- ]
- const results = await Promise.all(
- states.map(async ({ key, state }) => {
- try {
- const { total } = await pullOrderList({ state, page: 1 })
- return { key, total: total || 0 }
- } catch (_) {
- return { key, total: 0 }
- }
- })
- )
- const stats = { pay: 0, delive: 0, receiving: 0, evaluate: 0, customer: 0, whole: 0, groups: 0 }
- results.forEach(({ key, total }) => { stats[key] = total })
- return stats
- }
|