import createAxios from '@/utils/request'; import type { IPurchaseCell, IPurchaseDetail, } from '@/domain/iPurchaseOrder.ts'; /** 订单商品参数修改 */ export interface PurchaseRowUpdateParams { product_name: string; supplier_id: number; product_spec: string; unit: string; cost_price: number; } /** 修改门店订单明细参数 */ export interface PurchaseCellUpdateParams { quantity: number; price: number; weight?: number; } /** 生成采购单 */ export async function generatePurchase(purchase_date: string, order_ids?: number[]) { return createAxios<{ id: number; purchase_no: string }>({ url: '/purchase/order/generate', method: 'post', data: { purchase_date, order_ids }, }); } /** 采购单详情 */ export async function getPurchaseDetail(id: number) { return createAxios({ url: `/purchase/order/${id}`, method: 'get', }); } /** 商品行修改 */ export async function updatePurchaseRow(purchaseId: number, productId: number, data: PurchaseRowUpdateParams) { return createAxios<{ count: number }>({ url: `/purchase/order/${purchaseId}/row/${productId}`, method: 'put', data, }); } /** 单元格下钻:采购单中某门店某商品的全部订货明细 */ export async function getPurchaseCell(purchaseId: number, productId: number, storeId: number) { return createAxios({ url: `/purchase/order/${purchaseId}/cell`, method: 'get', params: { product_id: productId, store_id: storeId }, }); } /** 门店订单明细修改(订货量、重量、单价),自动重算价格 */ export async function updatePurchaseCellItem(itemId: number, data: PurchaseCellUpdateParams) { return createAxios({ url: `/purchase/order/cell/${itemId}`, method: 'put', data, }); }