From a5f66f55b2c176e8504b8a077e00acfe2dfb4b00 Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期五, 18 九月 2026 18:09:56 +0800
Subject: [PATCH] feat(生产报工): 报工完成按四类区分计数零件并分流质检入库

---
 src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
index ffd12d9..c77e4bf 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
@@ -63,7 +63,17 @@
     @Transactional(rollbackFor = Exception.class)
     public int deal(QualityUnqualified qualityUnqualified) {
         QualityUnqualified unqualified = qualityUnqualifiedMapper.selectById(qualityUnqualified.getId());
-        QualityInspect qualityInspect = qualityInspectService.getById(unqualified.getInspectId());
+        QualityInspect qualityInspect = unqualified.getInspectId() == null ? null
+                : qualityInspectService.getById(unqualified.getInspectId());
+        // 鎶ュ伐璁℃暟鍖哄垎鐩存帴浜х敓鐨勮繑宸ュ緟澶勭悊鍗曪紙鏃犳楠屽崟锛屼粎鏈� productMainId锛夛紝鎸夋姤宸ュ鐞嗛棴鐜墽琛屻��
+        if (qualityInspect == null && unqualified.getProductMainId() != null) {
+            ProductionProductMain reportSourceMain = productionProductMainMapper.selectById(unqualified.getProductMainId());
+            if ("鎶ュ伐".equals(qualityUnqualified.getDealResult())) {
+                handleProductionReportResult(qualityUnqualified, unqualified, reportSourceMain);
+            }
+            qualityUnqualified.setInspectState(1);
+            return qualityUnqualifiedMapper.updateById(qualityUnqualified);
+        }
         String batchNo = qualityInspect == null ? null
                 : resolveProductionBatchNo(qualityInspect.getProductMainId(), qualityInspect.getId(), qualityInspect.getProductModelId());
         if (ObjectUtils.isNotNull(qualityInspect) && qualityInspect.getInspectType() != 0) {

--
Gitblit v1.9.3