import type { PageParam, PageResult } from '@vben/request';
|
|
import { requestClient } from '#/api/request';
|
|
export namespace MesWmStockTakingTaskApi {
|
/** 盘点任务 */
|
export interface StockTakingTask {
|
id?: number; // 任务编号
|
code?: string; // 任务编码
|
name?: string; // 任务名称
|
takingDate?: string; // 盘点日期
|
type?: number; // 盘点类型
|
userId?: number; // 盘点人用户编号
|
userNickname?: string; // 盘点人名称
|
planId?: number; // 盘点方案编号
|
planCode?: string; // 盘点方案编码
|
planName?: string; // 盘点方案名称
|
blindFlag?: boolean; // 是否盲盘
|
frozen?: boolean; // 是否冻结库存
|
startTime?: number; // 开始时间
|
endTime?: number; // 结束时间
|
status?: number; // 单据状态
|
reviewerId?: number; // 审核人用户编号
|
reviewerName?: string; // 审核人姓名
|
reviewTime?: number; // 结果审批提交时间 / 审核时间
|
reviewRemark?: string; // 审核意见(通过时的意见 / 不通过时的原因)
|
remark?: string; // 备注
|
createTime?: string; // 创建时间
|
}
|
}
|
|
/** 查询盘点任务分页 */
|
export function getStockTakingPage(params: PageParam) {
|
return requestClient.get<PageResult<MesWmStockTakingTaskApi.StockTakingTask>>(
|
'/mes/wm/stocktaking-task/page',
|
{ params },
|
);
|
}
|
|
/** 查询盘点任务详情 */
|
export function getStockTaking(id: number) {
|
return requestClient.get<MesWmStockTakingTaskApi.StockTakingTask>(
|
`/mes/wm/stocktaking-task/get?id=${id}`,
|
);
|
}
|
|
/** 新增盘点任务 */
|
export function createStockTaking(
|
data: MesWmStockTakingTaskApi.StockTakingTask,
|
) {
|
return requestClient.post<number>('/mes/wm/stocktaking-task/create', data);
|
}
|
|
/** 修改盘点任务 */
|
export function updateStockTaking(
|
data: MesWmStockTakingTaskApi.StockTakingTask,
|
) {
|
return requestClient.put('/mes/wm/stocktaking-task/update', data);
|
}
|
|
/** 删除盘点任务 */
|
export function deleteStockTaking(id: number) {
|
return requestClient.delete(`/mes/wm/stocktaking-task/delete?id=${id}`);
|
}
|
|
/** 开始盘点(提交盘点任务) */
|
export function submitStockTaking(id: number) {
|
return requestClient.put('/mes/wm/stocktaking-task/submit', null, {
|
params: { id },
|
});
|
}
|
|
/** 取消盘点任务 */
|
export function cancelStockTaking(id: number) {
|
return requestClient.put('/mes/wm/stocktaking-task/cancel', null, {
|
params: { id },
|
});
|
}
|
|
/**
|
* 提交盘点结果审批(盘点中 → 盘点中·结果审批中)
|
*
|
* 审核人由「系统管理 - 审批配置」按业务类型统一配置,提交时无需指定;
|
* 未启用审批或未配置有效审核人时后端会抛出业务异常。
|
*/
|
export function submitStockTakingApproval(id: number) {
|
return requestClient.put('/mes/wm/stocktaking-task/submit-approval', null, {
|
params: { id },
|
});
|
}
|
|
/**
|
* 获得盘点结果审批的审核人编号集合
|
*
|
* 供列表页判断当前登录用户是否应展示「审核 / 审核不通过」按钮;未配置时返回空数组。
|
*/
|
export function getStockTakingApproverIds() {
|
return requestClient.get<number[]>('/mes/wm/stocktaking-task/approver-ids');
|
}
|
|
/**
|
* 审核盘点结果(结果审批中 → 已完成 / 盘点中)
|
*
|
* 仅审批配置中的审核人可调用(多人时或签);pass=false 时 reviewRemark(不通过原因)必填。
|
*/
|
export function auditStockTakingResult(
|
id: number,
|
pass: boolean,
|
reviewRemark?: string,
|
) {
|
return requestClient.put('/mes/wm/stocktaking-task/audit', {
|
id,
|
pass,
|
reviewRemark,
|
});
|
}
|
|
/** 导出盘点任务 */
|
export function exportStockTaking(params: any) {
|
return requestClient.download('/mes/wm/stocktaking-task/export-excel', {
|
params,
|
});
|
}
|