问题:当前所有工序的产出都是最终成品,无法区分中间工序的半成品产出。例如:
- 工序1:拉丝 → 产出"铝杆"(半成品),不是"钢芯铝绞线"
- 工序2:绞线 → 产出"钢芯铝绞线"(最终成品)
解决:工艺路线工序新增"产出产品"字段,排产时自动带入任务的物料。
outputItemId 作为任务的 itemIditemId(可能是半成品),产出单和库存自动正确| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /mes/pro/route-process/create | 创建工序 |
| PUT | /mes/pro/route-process/update | 更新工序 |
请求参数新增:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| outputItemId | Long | 否 | 产出产品物料编号(为空时默认用工单成品) |
请求示例(新增字段):
{
"routeId": 7,
"processId": 10,
"sort": 1,
"keyFlag": false,
"checkFlag": false,
"backflushFlag": true,
"outputItemId": 31
}
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /mes/pro/route-process/list-by-route | 按工艺路线查工序列表 |
| GET | /mes/pro/route-process/get-by-route-and-process | 按路线+工序查配置 |
| GET | /mes/pro/route-process/get | 获取单个工序 |
响应字段新增:
| 字段 | 类型 | 说明 |
|---|---|---|
| outputItemId | Long | 产出产品物料编号 |
| outputItemCode | String | 产出产品物料编码 |
| outputItemName | String | 产出产品物料名称 |
响应示例(新增字段):
{
"code": 0,
"data": {
"id": 1,
"routeId": 7,
"processId": 10,
"processCode": "PROC_001",
"processName": "拉丝",
"sort": 1,
"keyFlag": false,
"checkFlag": false,
"backflushFlag": true,
"outputItemId": 31,
"outputItemCode": "ITEM_20260716004",
"outputItemName": "铝杆"
}
}
| 字段 | 展示位置 | 说明 |
|---|---|---|
| outputItemId | 工序配置表单 | 物料选择器,可选半成品或成品 |
| outputItemCode | 工序列表、工序详情 | 只读展示 |
| outputItemName | 工序列表、工序详情 | 只读展示 |
在"是否倒冲"开关之后,新增"产出产品"选择器:
outputItemId 提交到后端/mes/pro/route-process/get-by-route-and-process 获取工序配置outputItemId,自动填入任务的物料字段(展示 outputItemName)outputItemId,自动回退工单的成品当工序配置了 outputItemId 后:
- 该工序的 BOM 记录的"产品"字段应自动关联到 outputItemId
- 即 BOM 表 mes_pro_route_product_bom.product_id 应与工序的 outputItemId 一致
- 注意:现有 BOM 数据的 product_id 全部是最终成品 ID,配置工序产出产品后需重新调整 BOM
工序列表中新增"产出产品"列,展示 outputItemName,未配置时显示"默认(工单成品)"。
| 场景 | 规则 |
|---|---|
| outputItemId 为空 | 排产时任务的 itemId 默认用工单的 productId(向后兼容) |
| outputItemId 不为空 | 排产时任务的 itemId 自动用工序的 outputItemId |
| 最后一道工序 | 建议不填 outputItemId,或填最终成品,效果一样 |
| 非最后工序 | 建议填写半成品,这样报工产出时入线边库的是半成品 |
| 前端显式传 itemId | 后端优先使用前端传入值(向后兼容现有排产逻辑) |
outputItemId 为空时行为与之前完全一致outputItemId 后,需同步调整该工序的 BOM 配置(product_id 改为半成品 ID)