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

不合格品处理 - 前端联调方案

涉及页面

  • 质量管理 > 不合格品处理(新增页面 mes/qc/ncr/index
  • 来料检验详情页(增加"生成NCR"按钮)
  • 过程检验详情页(增加"生成NCR"按钮)
  • 出货检验详情页(增加"生成NCR"按钮)
  • 退料检验详情页(增加"生成NCR"按钮)

业务流程与数据带入

  1. 检验判定不合格 → NCR 创建:在各检验单详情页,当检验结果为"不合格退货"或"不合格报废"时,可点击"生成NCR"按钮,自动带入检验类型、检验单ID/编号、物料信息、不合格数量、不合格描述,跳转到 NCR 新建页面。
  2. NCR 待评审 → 评审:填写处置方式(退货/报废/返工/让步接收/降级使用)、责任部门、缺陷等级、评审意见。
  3. NCR 已评审 → 处置:填写处理人、处理结果说明。
  4. NCR 已处置 → 关闭:填写关闭意见。

API

方法 路径 说明
POST /mes/qc/ncr/create 创建不合格品处理单
PUT /mes/qc/ncr/update 更新不合格品处理单(仅待评审状态)
PUT /mes/qc/ncr/review 评审不合格品处理单
PUT /mes/qc/ncr/dispose 执行不合格品处置
PUT /mes/qc/ncr/close 关闭不合格品处理单
DELETE /mes/qc/ncr/delete 删除不合格品处理单(仅待评审状态)
GET /mes/qc/ncr/get 获得不合格品处理单详情
GET /mes/qc/ncr/page 获得不合格品处理单分页列表
GET /mes/qc/ncr/export-excel 导出不合格品处理单 Excel

创建 NCR

POST /mes/qc/ncr/create

请求参数:

参数 类型 必填 说明
code String NCR单号
name String NCR名称
qcType Integer 检验类型(1=IQC/2=IPQC/3=OQC/4=RQC)
qcId Long 来源检验单ID
itemId Long 不合格物料ID
defectLevel Integer 缺陷等级(1=致命/2=严重/3=轻微)
unqualifiedQuantity BigDecimal 不合格数量
defectDescription String 不合格描述
rootCause String 根本原因
correctiveAction String 纠正措施
preventiveAction String 预防措施
remark String 备注

更新 NCR

PUT /mes/qc/ncr/update

请求参数:同创建,增加 id 字段(必填)。

评审 NCR

PUT /mes/qc/ncr/review

请求参数:

参数 类型 必填 说明
id Long NCR编号
disposition Integer 处置方式(1=退货/2=报废/3=返工/4=让步接收/5=降级使用)
responsibleDeptId Long 责任部门ID
defectLevel Integer 缺陷等级
reviewOpinion String 评审意见

处置 NCR

PUT /mes/qc/ncr/dispose

请求参数:

参数 类型 必填 说明
id Long NCR编号
handlerUserId Long 处理人ID
handleResult String 处理结果说明

关闭 NCR

PUT /mes/qc/ncr/close

请求参数:

参数 类型 必填 说明
id Long NCR编号
closeOpinion String 关闭意见

分页查询

GET /mes/qc/ncr/page

请求参数:

参数 类型 必填 说明
code String NCR单号(模糊)
qcType Integer 检验类型
itemId Long 不合格物料ID
defectLevel Integer 缺陷等级
disposition Integer 处置方式
status Integer 状态
responsibleDeptId Long 责任部门ID
reviewDate LocalDateTime[] 评审日期范围
createTime LocalDateTime[] 创建时间范围
pageNo Integer 页码
pageSize Integer 每页条数

响应字段

字段 类型 说明
id Long 编号
code String NCR单号
name String NCR名称
qcType Integer 检验类型
qcId Long 来源检验单ID
qcCode String 来源检验单编号
itemId Long 物料ID
itemCode String 物料编码
itemName String 物料名称
itemSpecification String 规格型号
defectLevel Integer 缺陷等级
unqualifiedQuantity BigDecimal 不合格数量
defectDescription String 不合格描述
disposition Integer 处置方式
responsibleDeptId Long 责任部门ID
responsibleDeptName String 责任部门名称
reviewerUserId Long 评审人ID
reviewerNickname String 评审人昵称
reviewDate LocalDateTime 评审日期
reviewOpinion String 评审意见
handlerUserId Long 处理人ID
handlerNickname String 处理人昵称
handleDate LocalDateTime 处理日期
handleResult String 处理结果说明
rootCause String 根本原因
correctiveAction String 纠正措施
preventiveAction String 预防措施
closeUserId Long 关闭人ID
closeUserNickname String 关闭人昵称
closeDate LocalDateTime 关闭日期
closeOpinion String 关闭意见
status Integer 状态
remark String 备注
createTime LocalDateTime 创建时间

业务规则说明

状态流转

待评审(0) ──评审──▶ 已评审(1) ──处置──▶ 已处置(2) ──关闭──▶ 已关闭(3)

操作权限约束

操作 允许状态 说明
创建 无状态限制
更新 待评审 仅待评审状态可编辑
删除 待评审 仅待评审状态可删除
评审 待评审 状态变为"已评审",自动填入当前登录人为评审人
处置 已评审 状态变为"已处置"
关闭 已处置 状态变为"已关闭",自动填入当前登录人为关闭人

处置方式枚举

名称 说明
1 退货 退回供应商
2 报废 内部报废处理
3 返工 重新加工
4 让步接收 特采接收
5 降级使用 降级后使用

缺陷等级枚举

名称
1 致命
2 严重
3 轻微

注意事项

  • NCR 创建时编号规则建议:NCR + 年月日时分秒(如 NCR20250101120000),前端可用时间戳生成
  • 从检验单生成 NCR 时,建议将 qcTypeqcIditemIdunqualifiedQuantity 自动带入
  • NCR 的 qcCode 字段存储来源检验单编号,用于列表展示关联关系
  • 列表页推荐展示:NCR单号、来源检验单编号、物料名称、缺陷等级、不合格数量、处置方式、状态、创建时间
  • 不同状态下展示不同的操作按钮:
  • 待评审:编辑、删除、评审
  • 已评审:处置
  • 已处置:关闭
  • 已关闭:仅查看
  • 详情页建议分区域展示:不合格品信息、评审信息、处置信息、关闭信息
  • 状态字典类型为 mes_ncr_status,处置方式字典类型为 mes_ncr_disposition