From 43a8301f04a6ea7891ef16861734163b2646e07f Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期三, 14 一月 2026 18:05:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New' into dev_New

---
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

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 3d1c846..6c1b7aa 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -13,6 +13,7 @@
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
+import com.ruoyi.procurementrecord.utils.StockUtils;
 import com.ruoyi.production.controller.ProductWorkOrderController;
 import com.ruoyi.production.dto.ProductStructureDto;
 import com.ruoyi.production.dto.ProductionProductMainDto;
@@ -76,6 +77,8 @@
     private ProductOrderMapper productOrderMapper;
 
     private SalesLedgerProductionAccountingMapper salesLedgerProductionAccountingMapper;
+
+    private StockUtils stockUtils;
 
 
     @Override
@@ -169,6 +172,7 @@
             qualityInspect.setInspectState(0);
             qualityInspect.setInspectType(inspectType);
             qualityInspect.setProductMainId(productionProductMain.getId());
+            qualityInspect.setProductModelId(productModel.getId());
             qualityInspectMapper.insert(qualityInspect);
 
             List<QualityTestStandardParam> qualityTestStandardParams = qualityTestStandardParamMapper.selectListByProductId(product.getId());
@@ -186,6 +190,12 @@
         if (productModel != null) {
             List<ProductStructureDto> productStructureDtos = productStructureMapper.listByproductModelId(productModel.getId());
             for (ProductStructureDto productStructureDto : productStructureDtos) {
+                ProductModel productModel1 = productModelMapper.selectById(productStructureDto.getProductModelId());
+
+                BigDecimal stockQuantity = stockUtils.getStockQuantity(productModel1.getId());
+                if (!(stockQuantity.compareTo(BigDecimal.ZERO) > 0)) {
+                    throw new RuntimeException("搴撳瓨涓嶈冻");
+                }
                 ProductionProductInput productionProductInput = new ProductionProductInput();
                 productionProductInput.setProductModelId(productStructureDto.getProductModelId());
                 productionProductInput.setQuantity(productStructureDto.getUnitQuantity().multiply(dto.getQuantity()));

--
Gitblit v1.9.3