Files
frontend/apps/web-antd/src/api/erp/purchase/in/index.ts
nehc f763ad2855 feat(@vben/web-antd): 新增 ERP API 接口并符合 Vben 项目标准
- 将所有 ERP API 文件从旧的 axios 配置迁移到新的 requestClient
- 使用 namespace 组织接口类型定义,提高代码可维护性
- 将对象方法改为独立的导出函数,符合现代 JavaScript 最佳实践
- 为所有 API 函数添加完整的 TypeScript 类型定义
- 统一分页查询参数和状态更新参数的接口定义
- 涵盖财务、采购、销售、库存等所有 ERP 业务模块
2025-07-25 06:13:35 +00:00

103 lines
2.2 KiB
TypeScript

import type { PageParam, PageResult } from '@vben/request';
import { requestClient } from '#/api/request';
namespace ErpPurchaseInApi {
/** 采购入库信息 */
export interface PurchaseIn {
id?: number; // 入库工单编号
no: string; // 采购入库号
supplierId: number; // 供应商编号
inTime: Date; // 入库时间
totalCount: number; // 合计数量
totalPrice: number; // 合计金额,单位:元
status: number; // 状态
remark: string; // 备注
outCount: number; // 采购出库数量
returnCount: number; // 采购退货数量
}
/** 采购入库分页查询参数 */
export interface PurchaseInPageParams extends PageParam {
no?: string;
supplierId?: number;
status?: number;
}
/** 采购入库状态更新参数 */
export interface PurchaseInStatusParams {
id: number;
status: number;
}
}
/**
* 查询采购入库分页
*/
export function getPurchaseInPage(
params: ErpPurchaseInApi.PurchaseInPageParams,
) {
return requestClient.get<PageResult<ErpPurchaseInApi.PurchaseIn>>(
'/erp/purchase-in/page',
{
params,
},
);
}
/**
* 查询采购入库详情
*/
export function getPurchaseIn(id: number) {
return requestClient.get<ErpPurchaseInApi.PurchaseIn>(
`/erp/purchase-in/get?id=${id}`,
);
}
/**
* 新增采购入库
*/
export function createPurchaseIn(data: ErpPurchaseInApi.PurchaseIn) {
return requestClient.post('/erp/purchase-in/create', data);
}
/**
* 修改采购入库
*/
export function updatePurchaseIn(data: ErpPurchaseInApi.PurchaseIn) {
return requestClient.put('/erp/purchase-in/update', data);
}
/**
* 更新采购入库的状态
*/
export function updatePurchaseInStatus(
params: ErpPurchaseInApi.PurchaseInStatusParams,
) {
return requestClient.put('/erp/purchase-in/update-status', null, {
params,
});
}
/**
* 删除采购入库
*/
export function deletePurchaseIn(ids: number[]) {
return requestClient.delete('/erp/purchase-in/delete', {
params: {
ids: ids.join(','),
},
});
}
/**
* 导出采购入库 Excel
*/
export function exportPurchaseIn(
params: ErpPurchaseInApi.PurchaseInPageParams,
) {
return requestClient.download('/erp/purchase-in/export-excel', {
params,
});
}