# 出厂质检优化 - 前端联调文档 ## 变更概述 优化发货流程中的出厂质检环节: 1. 发货审核通过后,自动生成出厂检验单 2. 出库审批前,必须完成出厂质检 ## 一、数据库变更 执行 `docs/20260623_factory_inspect_add_shipping_info_id.sql`: ```sql ALTER TABLE quality_inspect ADD COLUMN shipping_info_id BIGINT DEFAULT NULL COMMENT '发货信息id(出厂检验关联发货)' AFTER sales_ledger_id; CREATE INDEX idx_quality_inspect_shipping_info ON quality_inspect(shipping_info_id, product_model_id); ``` ## 二、业务流程变更 ### 原流程 发货 → 发货审核 → 出厂质检 → 出库审核 → 出库通过 ### 优化后流程 1. **发货申请** → 创建发货单,状态"待审核" 2. **发货审核通过** → 自动生成出厂检验单,状态变为"审核通过" 3. **出厂质检** → 完成出厂检验单(提交检验结果) 4. **出库审核** → 检查出厂质检是否完成,通过后扣减库存 5. **出库通过** → 完成 ## 三、接口变更 ### 3.1 出厂检验单新增字段 **GET** `/quality/qualityInspect/listPage?inspectType=2` 返回字段新增: | 字段 | 类型 | 说明 | |------|------|------| | `shippingInfoId` | Long | 关联的发货信息ID | ### 3.2 出库审批校验 **POST** `/stockOutRecord/approve` 出库审批通过时,后端会检查: - 销售出库(recordType=SALE_SHIP_STOCK_OUT)是否有关联的出厂检验单 - 出厂检验单是否已完成(inspectState=1) **错误提示:** - `"该出库记录未生成出厂检验单,请先完成发货审批"` - 发货审核未通过 - `"出厂检验单尚未提交完成,请先完成出厂质检后再进行出库审批"` - 出厂质检未完成 ## 四、前端对接要点 ### 4.1 出厂检验列表页 出厂检验单新增 `shippingInfoId` 字段,可用于: - 跳转到发货详情页 - 显示关联的发货编号 ### 4.2 出库审批页 出库审批时,如果返回错误提示,前端应引导用户: 1. 先完成发货审核(发货审核通过后自动生成出厂检验单) 2. 完成出厂质检后再进行出库审批 ### 4.3 建议优化 可在出库审批页面增加"出厂质检状态"列,显示: - 未生成 - 发货审核未通过 - 待检验 - 已生成出厂检验单,未提交 - 已完成 - 出厂检验单已提交 ## 五、注意事项 1. 出厂检验单在发货审核通过后自动生成,无需手动创建 2. 每个发货产品明细会生成一条对应的出厂检验单 3. 出厂检验单的检验参数会根据产品的出厂检验标准自动初始化 4. 出库审批通过前必须完成出厂质检,否则会报错