生产任务 - 选工作站自动计算生产时长(前端联调方案)
涉及页面
| 页面 |
路由路径 |
说明 |
| 生产任务表单 |
/mes/pro-task (新增/编辑弹窗) |
选择工作站后自动调用接口计算生产时长 |
API
新增接口:计算生产时长
| 方法 |
路径 |
说明 |
| GET |
/mes/pro/task/calculate-duration |
根据工作站和数量计算生产时长 |
请求参数:
| 参数 |
类型 |
必填 |
说明 |
| workstationId |
Long |
是 |
工作站编号 |
| quantity |
BigDecimal |
是 |
排产数量 |
响应示例:
{
"code": 0,
"data": {
"duration": 3
},
"msg": ""
}
| 字段 |
类型 |
说明 |
| duration |
Integer |
生产时长(小时),无绑定设备时返回 0 |
前端修改点
1. 触发时机
在新增/编辑生产任务的表单中,当用户**选择工作站**或**修改排产数量**后,自动调用计算接口。
2. 字段回填
接口返回的 duration 值自动填入表单的"生产时长"字段,无需用户手动计算。
3. 边界情况
| 场景 |
表现 |
| 未选工作站 |
不调用接口 |
| 未填数量 |
不调用接口 |
| 工作站未绑定设备 |
返回 duration=0,前端可提示"该工作站未绑定设备" |
| 设备未配置生产效率 |
返回 duration=0,前端可提示"绑定设备未配置生产效率" |
计算逻辑说明
| 步骤 |
说明 |
| 1 |
查询工作站绑定的所有设备 |
| 2 |
总效率 = Σ(每台设备的 productionEfficiency × conveyorBelt) |
| 3 |
传送履带为 0 或空时默认取 1 |
| 4 |
生产时长(小时)= 向上取整(排产数量 / 总效率) |
注意事项
- 调用接口前需确保
workstationId 和 quantity 均有值,避免无效请求
- 接口返回 0 时,建议给出友好提示,而非静默
- 用户仍可手动修改计算后的生产时长
- 该接口仅用于前端辅助计算,不影响后端创建/更新任务的业务逻辑