From c8b387728909a6de2109505439308aaa9f44d3de Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 25 三月 2026 13:21:16 +0800
Subject: [PATCH] 库存不足提示需改成对应的投入产品库存不足(

---
 src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java |   44 +++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 43 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
index 62ad936..b9a065e 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -8,6 +8,10 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.approve.service.impl.ApproveProcessServiceImpl;
 import com.ruoyi.approve.vo.ApproveProcessVO;
+import com.ruoyi.basic.mapper.ProductMapper;
+import com.ruoyi.basic.mapper.ProductModelMapper;
+import com.ruoyi.basic.pojo.Product;
+import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -58,6 +62,10 @@
     private SalesLedgerProductMapper salesLedgerProductMapper;
     @Autowired
     private ApproveProcessServiceImpl approveProcessService;
+    @Autowired
+    private ProductModelMapper productModelMapper;
+    @Autowired
+    private ProductMapper productMapper;
 
     @Override
     public IPage<StockInventoryDto> pagestockInventory(Page page, StockInventoryDto stockInventoryDto) {
@@ -77,6 +85,7 @@
         stockInRecordDto.setRemark(stockInventoryDto.getRemark());
         stockInRecordDto.setWarnNum(stockInventoryDto.getWarnNum());
         stockInRecordDto.setLockedQuantity(stockInventoryDto.getLockedQuantity());
+        stockInRecordDto.setApproveStatus(0);
         stockInRecordDto.setType("0");
         Long id = stockInRecordService.add(stockInRecordDto);
         LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -146,6 +155,36 @@
         }
     }
 
+    //鍗婃垚鍝佺洿鎺ュ叆搴�
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean addstockInventoryNoReview(StockInventoryDto stockInventoryDto) {
+        //鏂板鍏ュ簱璁板綍鍐嶆坊鍔犲簱瀛�
+        StockInRecordDto stockInRecordDto = new StockInRecordDto();
+        stockInRecordDto.setRecordId(stockInventoryDto.getRecordId());
+        stockInRecordDto.setRecordType(stockInventoryDto.getRecordType());
+        stockInRecordDto.setStockInNum(stockInventoryDto.getQualitity());
+        stockInRecordDto.setProductModelId(stockInventoryDto.getProductModelId());
+        stockInRecordDto.setType("0");
+        stockInRecordService.add(stockInRecordDto);
+        //鍐嶈繘琛屾柊澧炲簱瀛樻暟閲忓簱瀛�
+        //鍏堟煡璇㈠簱瀛樿〃涓殑浜у搧鏄惁瀛樺湪锛屼笉瀛樺湪鏂板锛屽瓨鍦ㄦ洿鏂�
+        StockInventory oldStockInventory = stockInventoryMapper.selectOne(new QueryWrapper<StockInventory>().lambda().eq(StockInventory::getProductModelId, stockInventoryDto.getProductModelId()));
+        if (ObjectUtils.isEmpty(oldStockInventory)) {
+            StockInventory newStockInventory = new StockInventory();
+            newStockInventory.setProductModelId(stockInventoryDto.getProductModelId());
+            newStockInventory.setQualitity(stockInventoryDto.getQualitity());
+            newStockInventory.setVersion(1);
+            newStockInventory.setRemark(stockInventoryDto.getRemark());
+            newStockInventory.setLockedQuantity(stockInventoryDto.getLockedQuantity());
+            newStockInventory.setWarnNum(stockInventoryDto.getWarnNum());
+            stockInventoryMapper.insert(newStockInventory);
+        }else {
+            stockInventoryMapper.updateAddStockInventory(stockInventoryDto);
+        }
+        return true;
+    }
+
     //鍑哄簱璋冪敤
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -167,7 +206,10 @@
             lockedQty = BigDecimal.ZERO;
         }
         if (stockInventoryDto.getQualitity().compareTo(oldStockInventory.getQualitity().subtract(lockedQty)) > 0) {
-            throw new RuntimeException("搴撳瓨涓嶈冻鏃犳硶鍑哄簱");
+            // 鏌ヨ浜у搧瑙勬牸鍚�
+            ProductModel productModel = productModelMapper.selectById(stockInventoryDto.getProductModelId());
+            Product product = productMapper.selectById(productModel.getProductId());
+            throw new RuntimeException(product.getProductName()+"/"+productModel.getModel() + "搴撳瓨涓嶈冻鏃犳硶鍑哄簱");
         }
 
         stockInventoryMapper.updateSubtractStockInventory(stockInventoryDto);

--
Gitblit v1.9.3