import { get, post, put } from '@/utils/request' import type { PaginatedData } from '@/types/api' import type { OrderCreateResult, OrderDetail, OrderListItem, OrderStatus } from '@/types/order' /** 下单明细行(金额一律服务端重算,前端不传金额) */ export interface OrderItemParam { product_id: number quantity: number } /** 下单参数 */ export interface CreateOrderParams { items: OrderItemParam[] /** 订单备注(≤255 字符) */ remark?: string } /** 订单列表查询参数 */ export interface OrderListParams { /** 订单状态,不传=全部 */ status?: OrderStatus /** 订货日期起(Y-m-d) */ start_date?: string /** 订货日期止(Y-m-d),不得早于 start_date */ end_date?: string page?: number /** 每页数量,默认 10,最大 50 */ pageSize?: number } /** 下单:POST /mini/order */ export function createOrderApi(params: CreateOrderParams) { return post('/mini/order', params) } /** 历史订单列表(强制本店隔离,按订货日期倒序):GET /mini/order */ export function getOrderListApi(params: OrderListParams = {}) { return get>('/mini/order', { data: params }) } /** 订单详情(校验本店归属,含完整明细):GET /mini/order/{id} */ export function getOrderDetailApi(id: number) { return get(`/mini/order/${id}`) } /** 取消订单(仅待接单可取消):PUT /mini/order/{id}/cancel */ export function cancelOrderApi(id: number) { return put(`/mini/order/${id}/cancel`) }