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

OQC 出厂检验(出货检验)检测结果扩展 - 前端联调方案

变更背景

出厂检验(OQC 出货检验)的「检测结果」由原来的 3 项扩展为 7 项,并明确放行规则。

value 标签 颜色 是否放行发货
1 1型 success 放行
2 2型 primary 放行
3 废品 danger 不放行
4 3型 success 放行
5 优等品 success 放行
6 合格品 primary 放行
7 不合格品 danger 不放行

涉及页面

  • MES 质检 - 出货检验(OQC)列表页、新增/编辑弹窗
  • 批次追溯详情(展示 OQC 检验结论)
  • 检验报告打印、产品检验单 Word 导出(判定结论展示)

字典来源

检测结果下拉的选项来自字典 mes_oqc_check_result(前端常量 DICT_TYPE.MES_OQC_CHECK_RESULT),
选项由字典驱动、**不需要前端硬编码**。后端已扩展字典数据,下拉框会自动带出全部 7 项。

接口

本次无接口新增、无请求参数与响应结构变更:
checkResult 字段仍为 Integer,仅取值范围由 1~3 扩展为 1~7。

方法 路径 说明
POST /mes/qc-oqc/create 新增出货检验单
PUT /mes/qc-oqc/update 修改出货检验单
PUT /mes/qc-oqc/finish 完成出货检验单
GET /mes/qc-oqc/get 查询出货检验单详情

业务流程与数据带入

  1. 销售出库单提交 → 生成 OQC 出货检验单(草稿态),单据信息自动带入。
  2. 质检员录入检测结果(下拉选择)→ 完成检验单。
  3. 完成后按放行规则回写销售出库单行:
  • 结果为 1型/2型/3型/优等品/合格品 → 出库行判**合格**,出库单推进「待拣货」。
  • 结果为 废品/不合格品 → 出库行判**不合格**,**整单取消**销售出库单。
  1. 校验规则:检测数量 = 合格品数量 + 不合格品数量(原有规则,不变)。

前端需同步的修改点

位置 修改说明
src/packages/constants/src/biz-mes-enum.ts MesQcOqcCheckResultEnum 常量补充 4 个新值:3型=4、优等品=5、合格品=6、不合格品=7
src/views/mes/qc/oqc/modules/form.vue 提交校验「不合格品数量为 0 时,检测结果不能为废品」需扩展为:检测结果为**废品或不合格品**时,不合格品数量不能为 0

下拉选项本身由字典驱动,仅补字典即可显示;上表两项是为了常量语义完整与校验一致。

业务规则说明

场景 规则
结果为可放行等级 出库行判合格,销售出库单推进待拣货
结果为 废品 或 不合格品 出库行判不合格,取消销售出库单
不合格品数量为 0 不允许选择 废品 / 不合格品
检测数量校验 检测数量 = 合格品数量 + 不合格品数量

注意事项

  • 历史数据中已保存的 checkResult(1/2/3)语义不变,无需数据迁移。
  • 字典颜色 color_type 会影响列表标签配色,前端使用字典标签渲染时不需额外处理。
  • 后端放行判定统一收敛在 MesQcOqcCheckResultEnum.canShip(),前端不要自行实现放行判断。