From 65d30abbee366cc57427ee458cd3aa4b3d33a32d Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期二, 24 三月 2026 17:29:17 +0800
Subject: [PATCH] feat(production): 添加质量检验功能并优化生产产品主数据管理

---
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java |   10 ++++++++++
 src/main/java/com/ruoyi/quality/pojo/QualityInspect.java                              |    4 ++++
 src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java    |    6 +-----
 src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java                  |    2 +-
 4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
index e4a0813..47a095c 100644
--- a/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
+++ b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
@@ -3,18 +3,14 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.framework.web.domain.R;
-import com.ruoyi.production.dto.ProductProcessRouteItemDto;
 import com.ruoyi.production.dto.ProductionProductMainDto;
-import com.ruoyi.production.dto.SalesLedgerProductionAccountingDto;
 import com.ruoyi.production.service.ProductionProductMainService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
-import java.util.Arrays;
 import java.util.List;
 
 @RequestMapping("productionProductMain")
@@ -41,7 +37,7 @@
      * @param productionProductMainDto
      * @return
      */
-    @PostMapping("addProductMain")
+    @PostMapping("/addProductMain")
     public R addProductMain(@RequestBody ProductionProductMainDto productionProductMainDto) {
         return R.ok(productionProductMainService.addProductMain(productionProductMainDto));
     }
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
index 9e5e121..fccf7b1 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -10,7 +10,6 @@
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
-import java.time.LocalDateTime;
 
 @Data
 @ExcelIgnoreUnannotated
@@ -62,4 +61,5 @@
     private BigDecimal wages;
 
 
+    private BigDecimal inspectedQuantity;
 }
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index fa34114..87faf08 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -180,6 +180,13 @@
                     inspectType = 2;
                     process = null;
                 }
+                ProductWorkOrder productWorkOrder = productWorkOrderMapper.selectById(productionProductMain.getWorkOrderId());
+                ProductOrder productOrder = productOrderMapper.selectById(productWorkOrder.getProductOrderId());
+                if (productOrder == null) {
+                    throw new RuntimeException("鐢熶骇璁㈠崟涓嶅瓨鍦�");
+                }
+
+
                 Product product = productMapper.selectById(productModel.getProductId());
                 QualityInspect qualityInspect = new QualityInspect();
                 qualityInspect.setProductId(product.getId());
@@ -192,6 +199,9 @@
                 qualityInspect.setInspectType(inspectType);
                 qualityInspect.setProductMainId(productionProductMain.getId());
                 qualityInspect.setProductModelId(productModel.getId());
+                qualityInspect.setBatchNo(productOrder.getBatchNo());
+                qualityInspect.setInspectedQuantity(dto.getInspectedQuantity());
+                qualityInspect.setManufacturingTeam(productOrder.getManufacturingTeam());
                 qualityInspectMapper.insert(qualityInspect);
                 List<QualityTestStandard> qualityTestStandard = qualityTestStandardMapper.getQualityTestStandardByProductId(product.getId(), inspectType, process);
                 if (qualityTestStandard.size() > 0) {
diff --git a/src/main/java/com/ruoyi/quality/pojo/QualityInspect.java b/src/main/java/com/ruoyi/quality/pojo/QualityInspect.java
index 9d23429..495f298 100644
--- a/src/main/java/com/ruoyi/quality/pojo/QualityInspect.java
+++ b/src/main/java/com/ruoyi/quality/pojo/QualityInspect.java
@@ -157,4 +157,8 @@
     private String workOrderNo;
     @TableField(exist = false)
     private String purchaseContractNo;
+
+    private String BatchNo;
+    private BigDecimal inspectedQuantity;
+    private String manufacturingTeam;
 }

--
Gitblit v1.9.3