import type { PageParam, PageResult } from '@vben/request';
|
|
import { requestClient } from '#/api/request';
|
|
export namespace MesWmItemReceiptApi {
|
/** MES 采购入库单 */
|
export interface ItemReceipt {
|
id?: number; // 入库单编号
|
code?: string; // 入库单编码
|
name?: string; // 入库单名称
|
iqcId?: number; // 来料检验单编号
|
iqcCode?: string; // 来料检验单编码
|
noticeId?: number; // 到货通知单编号
|
noticeCode?: string; // 到货通知单编码
|
purchaseOrderCode?: string; // 采购订单号
|
vendorId?: number; // 供应商编号
|
vendorName?: string; // 供应商名称
|
warehouseId?: number; // 仓库编号
|
warehouseName?: string; // 仓库名称
|
locationId?: number; // 库区编号
|
locationName?: string; // 库区名称
|
areaId?: number; // 库位编号
|
areaName?: string; // 库位名称
|
receiptDate?: number; // 入库日期
|
status?: number; // 状态
|
reviewerId?: number; // 审核人用户编号
|
reviewerName?: string; // 审核人姓名
|
reviewTime?: number; // 审核时间
|
reviewRemark?: string; // 审核意见(通过时的意见 / 不通过时的原因)
|
remark?: string; // 备注
|
createTime?: Date; // 创建时间
|
}
|
}
|
|
/** 查询采购入库单分页 */
|
export function getItemReceiptPage(params: PageParam) {
|
return requestClient.get<PageResult<MesWmItemReceiptApi.ItemReceipt>>(
|
'/mes/wm/item-receipt/page',
|
{ params },
|
);
|
}
|
|
/** 查询采购入库单详情 */
|
export function getItemReceipt(id: number) {
|
return requestClient.get<MesWmItemReceiptApi.ItemReceipt>(
|
`/mes/wm/item-receipt/get?id=${id}`,
|
);
|
}
|
|
/** 新增采购入库单 */
|
export function createItemReceipt(data: MesWmItemReceiptApi.ItemReceipt) {
|
return requestClient.post<number>('/mes/wm/item-receipt/create', data);
|
}
|
|
/** 修改采购入库单 */
|
export function updateItemReceipt(data: MesWmItemReceiptApi.ItemReceipt) {
|
return requestClient.put('/mes/wm/item-receipt/update', data);
|
}
|
|
/** 删除采购入库单 */
|
export function deleteItemReceipt(id: number) {
|
return requestClient.delete(`/mes/wm/item-receipt/delete?id=${id}`);
|
}
|
|
/** 提交采购入库单 */
|
export function submitItemReceipt(id: number) {
|
return requestClient.put(`/mes/wm/item-receipt/submit?id=${id}`);
|
}
|
|
/** 执行上架 */
|
export function stockItemReceipt(id: number) {
|
return requestClient.put(`/mes/wm/item-receipt/stock?id=${id}`);
|
}
|
|
/** 执行入库 */
|
export function finishItemReceipt(id: number) {
|
return requestClient.put(`/mes/wm/item-receipt/finish?id=${id}`);
|
}
|
|
/** 取消采购入库单 */
|
export function cancelItemReceipt(id: number) {
|
return requestClient.put(`/mes/wm/item-receipt/cancel?id=${id}`);
|
}
|
|
/** 导出采购入库单 */
|
export function exportItemReceipt(params: any) {
|
return requestClient.download('/mes/wm/item-receipt/export-excel', {
|
params,
|
});
|
}
|
|
/** 根据到货通知单生成采购入库单 */
|
export function generateItemReceiptFromArrivalNotice(arrivalNoticeId: number) {
|
return requestClient.post<number>(
|
`/mes/wm/item-receipt/generate-from-arrival-notice?arrivalNoticeId=${arrivalNoticeId}`,
|
);
|
}
|
|
/**
|
* 获得采购入库单的审核人编号集合
|
*
|
* 供列表页判断当前登录用户是否应展示「审核 / 审核不通过」按钮;未配置时返回空数组。
|
*/
|
export function getItemReceiptApproverIds() {
|
return requestClient.get<number[]>('/mes/wm/item-receipt/approver-ids');
|
}
|
|
/**
|
* 审核采购入库单(审批中→已审批/草稿)
|
*
|
* 仅审批配置中的审核人可调用(多人时或签);pass=false 时 reviewRemark(不通过原因)必填。
|
*/
|
export function auditItemReceipt(
|
id: number,
|
pass: boolean,
|
reviewRemark?: string,
|
) {
|
return requestClient.put('/mes/wm/item-receipt/audit', {
|
id,
|
pass,
|
reviewRemark,
|
});
|
}
|