import request from '@/utils/request'; import type { ApiResponse, PageResult } from '@/types/api'; import type { OrderVO, OrderSaveParams, OrderPageParams } from '@/types/aps/order'; /** Paginated order list */ export const getOrderPage = (params: OrderPageParams) => request.get>>('/aps/order/page', { params }); /** Get single order by id */ export const getOrder = (id: number) => request.get>(`/aps/order/get?id=${id}`); /** Create order */ export const createOrder = (data: OrderSaveParams) => request.post>('/aps/order/create', data); /** Update order */ export const updateOrder = (data: OrderSaveParams) => request.put>('/aps/order/update', data); /** Delete order */ export const deleteOrder = (id: number) => request.delete>(`/aps/order/delete?id=${id}`); /** Batch import orders from Excel */ export const importOrders = (file: File) => { const formData = new FormData(); formData.append('file', file); return request.post>( '/aps/order/import', formData, { headers: { 'Content-Type': 'multipart/form-data' } } ); }; /** Export orders to Excel */ export const exportOrders = (params: Omit) => request.get('/aps/order/export', { params, responseType: 'blob' }); /** Download import template */ export const downloadOrderTemplate = () => request.get('/aps/order/import-template', { responseType: 'blob' });