编辑 | blame | 历史 | 原始文档

批次追溯统一聚合接口 - 前端联调方案

涉及页面

  • MES → 质检 → 批次追溯(/qc/batch-trace
  • 批次追溯详情
  • 批次码、托盘码、袋码扫码追溯入口

业务流程与数据带入

  1. 在批次追溯列表输入生产批次码、临时批次码、袋码或托盘码。
  2. 页面调用统一详情接口,后端将入口码解析到生产批次,并聚合生产、质检、仓储、销售和防伪信息。
  3. 详情页以生产批次为根展示全链路数据;袋码和托盘信息来自生产赋码数据,仓储与销售信息来自仓储业务数据。
  4. 前向追溯展示当前批次产出的下游批次;后向追溯展示当前批次消耗的上游批次。
  5. 时间线、阶段视图和决策摘要均使用同一次聚合响应,避免打开详情后重复请求多个旧接口。

API

方法 路径 说明
GET /mes/trace/batch/detail 查询统一批次追溯详情

请求参数

参数 类型 必填 说明
code String 生产批次码、临时批次码、袋码或托盘码

示例:code=BAG-202608280001

响应主要字段

字段 类型 说明
sourceType String 入口类型:BAGPALLETBATCH
requestCode String 原始输入码
itemCode / itemName String 品种编码、名称
itemSpecification String 品种规格
batchCode / tempCode String 正式批次号、临时批次码
batchStatusName String 批次状态名称
produceDate DateTime 生产日期
lineCode / lineName String 产线编码、名称
ownerUserName String 生产责任人
planQuantity Decimal 计划数量
bagQuantity / palletQuantity Integer 袋码数量、托盘数量
workers Array 生产人员
pallets Array 托盘摘要
bagTotal / bags Long / Array 袋码总数及最多 100 条明细
inbound Object 最新入库事件
quality Object 种子质量检验与指标
antiFake Object 当前追溯码扫码次数、首次和最近扫码时间
purchaseSources Array 采购来源、供应商和 IQC 信息
salesTargets Array 销售出库、客户和 OQC 信息
processTraces Array 工序投入、产出流转信息

响应示例

{
  "code": 0,
  "data": {
    "sourceType": "BAG",
    "requestCode": "BAG-202608280001",
    "batchCode": "B20260828001",
    "itemName": "示例品种",
    "batchStatusName": "已完成",
    "workers": [],
    "pallets": [],
    "bags": [],
    "purchaseSources": [],
    "salesTargets": [],
    "processTraces": []
  }
}

页面展示规则

视图 展示内容
阶段总览 来源、生产、质检、赋码、入库、销售、消费、防伪八个阶段的状态和数量
全链路时间线 按时间展示采购、生产、质检、赋码、入库、出库和扫码事件;异常状态优先高亮
流动图谱 以批次、工序、仓库、托盘、袋码、销售单和客户为节点;默认展示批次级关系
决策分析 展示质量结论、库存数量、销售去向、防伪扫码次数和窜货风险
采购来源 展示采购入库、供应商、采购订单、IQC 单号及检验结论
销售去向 展示销售出库、客户、销售订单、OQC 单号及质量状态
工序流转 IN 显示为投入,OUT 显示为产出

业务规则

  • 输入袋码或托盘码时,详情仍以其所属生产批次为根进行聚合。
  • 当前接口返回的袋码明细最多 100 条,bagTotal 用于展示完整数量;大批次不得按明细数量判断总量。
  • 空数组表示该业务阶段暂无记录;qualityinboundantiFake 为空表示暂无对应信息。
  • 防伪扫码统计仅用于展示,不能替代质量检验结论或出库状态。
  • 客户、供应商、操作人等名称应以接口返回值为准,不在前端重复查询旧批次接口。

注意事项

  • 管理端接口需要批次追溯查询权限:mes:trace-batch:query
  • 旧的 /mes/wm/batch/* 接口继续供仓储批次页面使用,批次追溯页面切换后不应再并行请求旧的五个详情接口。
  • 后续扩展时间线和图谱时,建议后端增加分页与节点层级参数,避免一次性加载全部袋码。
  • 展示消费者扫码信息时不得展示 IP 地址和 User-Agent 原文。