import type { PageParam, PageResult } from '@vben/request';
|
|
import { requestClient } from '#/api/request';
|
|
export namespace MesProMpsApi {
|
/** MPS 主生产计划 */
|
export interface Mps {
|
id?: number; // MPS 编号
|
code?: string; // MPS 编码
|
status?: number; // 状态(0=草稿 1=已下发 2=已完成 3=已取消)
|
saleOrderId?: number; // 销售订单ID
|
saleOrderNo?: string; // 销售订单号
|
saleOrderItemId?: number; // 销售订单明细ID
|
productId?: number; // 产品ID
|
productCode?: string; // 产品编码
|
productName?: string; // 产品名称
|
productSpecification?: string; // 规格型号
|
unitMeasureName?: string; // 单位
|
quantity?: number; // 计划生产数量
|
quantityProduced?: number; // 已生产数量
|
clientId?: number; // 客户ID
|
clientCode?: string; // 客户编码
|
clientName?: string; // 客户名称
|
requestDate?: number; // 需求日期
|
issueDate?: number; // 下发日期
|
finishDate?: number; // 完成日期
|
workOrderId?: number; // 生产工单ID
|
workOrderCode?: string; // 生产工单编码
|
mergeFlag?: number; // 是否合并下发(0-否,1-是)
|
mergeBatchNo?: string; // 合并批次号
|
remark?: string; // 备注
|
createTime?: number; // 创建时间
|
}
|
|
/** MPS 分页查询参数 */
|
export interface PageParams extends PageParam {
|
code?: string;
|
saleOrderNo?: string;
|
productId?: number;
|
clientId?: number;
|
status?: number;
|
requestDate?: number[];
|
}
|
|
/** MPS 创建请求 */
|
export interface CreateMpsReq {
|
code?: string;
|
saleOrderId?: number;
|
saleOrderNo?: string;
|
saleOrderItemId?: number;
|
productId?: number;
|
quantity?: number;
|
unitMeasureId?: number;
|
clientId?: number;
|
requestDate?: string;
|
remark?: string;
|
}
|
}
|
|
/** 查询 MPS 分页 */
|
export function getMpsPage(params: MesProMpsApi.PageParams) {
|
return requestClient.get<PageResult<MesProMpsApi.Mps>>('/mes/pro-mps/page', {
|
params,
|
});
|
}
|
|
/** 查询 MPS 详情 */
|
export function getMps(id: number) {
|
return requestClient.get<MesProMpsApi.Mps>(`/mes/pro-mps/get?id=${id}`);
|
}
|
|
/** 创建 MPS */
|
export function createMps(data: MesProMpsApi.CreateMpsReq) {
|
return requestClient.post('/mes/pro-mps/create', data);
|
}
|
|
/** 更新 MPS */
|
export function updateMps(data: MesProMpsApi.CreateMpsReq & { id: number }) {
|
return requestClient.put('/mes/pro-mps/update', data);
|
}
|
|
/** 删除 MPS */
|
export function deleteMps(ids: number[]) {
|
return requestClient.delete('/mes/pro-mps/delete', {
|
params: { ids: ids.join(',') },
|
});
|
}
|
|
/** 导出 MPS Excel */
|
export function exportMps(params: any) {
|
return requestClient.download('/mes/pro-mps/export-excel', { params });
|
}
|
|
/** 下发 MPS */
|
export function issueMps(id: number) {
|
return requestClient.post(`/mes/pro-mps/issue?id=${id}`);
|
}
|
|
/** 合并下发 MPS */
|
export function mergeIssueMps(ids: number[]) {
|
return requestClient.post('/mes/pro-mps/merge-issue', ids);
|
}
|
|
/** 取消 MPS */
|
export function cancelMps(id: number) {
|
return requestClient.post(`/mes/pro-mps/cancel?id=${id}`);
|
}
|