From 76c84d95506998f546e6f3ebbf70414c0dd9da9d Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 15 五月 2026 17:15:15 +0800
Subject: [PATCH] refactor(stock): 优化库存记录服务中的仓库信息处理逻辑

---
 src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java |   29 +++++++++++++++--------------
 src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java   |    3 ---
 src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java    |   10 +++++-----
 3 files changed, 20 insertions(+), 22 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
index 9039542..94f853a 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
@@ -163,7 +163,7 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public int batchApprove(List<Long> ids, Integer approvalStatus,Long warehouseInfoId) {
+    public int batchApprove(List<Long> ids, Integer approvalStatus,Long warehouseInfoId1) {
         if (CollectionUtils.isEmpty(ids)) {
             throw new BaseException("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�");
         }
@@ -179,7 +179,6 @@
                 throw new BaseException("鍙湁寰呭鎵圭姸鎬佺殑璁板綍鎵嶈兘瀹℃壒,鍏ュ簱鎵规:" + stockInRecord.getInboundBatches());
             }
             stockInRecord.setApprovalStatus(approvalStatus);
-            stockInRecord.setWarehouseInfoId(warehouseInfoId);
             stockInRecordMapper.updateById(stockInRecord);
             // 瀹℃壒閫氳繃鏃讹紝搴撳瓨澧炲姞
             if (ReviewStatusEnum.APPROVED.getCode().equals(approvalStatus)) {
@@ -188,7 +187,7 @@
                     StockInventory stockInventory = getStockInventory(
                             stockInRecord.getProductModelId(),
                             stockInRecord.getBatchNo(),
-                            warehouseInfoId
+                            stockInRecord.getWarehouseInfoId()
                     );
                     if (!ObjectUtils.isEmpty(stockInventory)) {
                         if (stockInventory.getLocked().equals( true)&&!stockInRecord.getRecordType().equals(StockInQualifiedRecordTypeEnum.INVENTORY_CHECK_STOCK_IN.getCode())) {
@@ -198,7 +197,7 @@
                     StockInventoryDto stockInventoryDto = new StockInventoryDto();
                     stockInventoryDto.setProductModelId(stockInRecord.getProductModelId());
                     stockInventoryDto.setBatchNo(stockInRecord.getBatchNo());
-                    stockInventoryDto.setWarehouseInfoId(warehouseInfoId);
+                    stockInventoryDto.setWarehouseInfoId(stockInRecord.getWarehouseInfoId());
                     stockInventoryDto.setQualitity(stockInRecord.getStockInNum());
                     stockInventoryDto.setRemark(stockInRecord.getRemark());
                     if (stockInventory == null) {
@@ -207,7 +206,7 @@
                             setQualitity(stockInRecord.getStockInNum());
                             setBatchNo(stockInRecord.getBatchNo());
                             setRemark(stockInRecord.getRemark());
-                            setWarehouseInfoId(warehouseInfoId);
+                            setWarehouseInfoId(stockInRecord.getWarehouseInfoId());
                             setVersion(1);
                         }});
                     } else {
@@ -227,6 +226,7 @@
                             setQualitity(stockInRecord.getStockInNum());
                             setBatchNo(stockInRecord.getBatchNo());
                             setRemark(stockInRecord.getRemark());
+                            setWarehouseInfoId(stockInRecord.getWarehouseInfoId());
                             setVersion(1);
                         }});
                     } else {
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
index 1652d8c..a0a437f 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
@@ -20,7 +20,6 @@
 import com.ruoyi.stock.mapper.StockInventoryMapper;
 import com.ruoyi.stock.mapper.StockOutRecordMapper;
 import com.ruoyi.stock.mapper.StockUninventoryMapper;
-import com.ruoyi.stock.pojo.StockInRecord;
 import com.ruoyi.stock.pojo.StockInventory;
 import com.ruoyi.stock.pojo.StockOutRecord;
 import com.ruoyi.stock.pojo.StockUninventory;
@@ -60,8 +59,6 @@
         if (StockOutQualifiedRecordTypeEnum.SALE_SHIP_STOCK_OUT.getCode().equals(stockOutRecordDto.getRecordType())){
             stockOutRecordDto.setApprovalStatus(3);
         }
-        StockInRecord stockInRecord = new StockInRecord();
-        BeanUtils.copyProperties(stockOutRecordDto, stockInRecord);
         stockOutRecordMapper.insert(stockOutRecordDto);
         return stockOutRecordDto.getId();
     }
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java
index e26ce21..822d6c8 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockUninventoryServiceImpl.java
@@ -80,20 +80,20 @@
         stockInRecordService.add(stockInRecordDto);
         //鍐嶈繘琛屾柊澧炲簱瀛樻暟閲忓簱瀛�
         //鍏堟煡璇㈠簱瀛樿〃涓殑浜у搧鏄惁瀛樺湪锛屼笉瀛樺湪鏂板锛屽瓨鍦ㄦ洿鏂�
-        StockUninventory oldStockUnInventory = stockUninventoryMapper.selectOne(wrapper);
-        if (ObjectUtils.isEmpty(oldStockUnInventory)) {
-            StockUninventory newStockUnInventory = new StockUninventory();
-            newStockUnInventory.setProductModelId(stockUninventoryDto.getProductModelId());
-            newStockUnInventory.setQualitity(stockUninventoryDto.getQualitity());
-            newStockUnInventory.setLockedQuantity(stockUninventoryDto.getLockedQuantity());
-            newStockUnInventory.setBatchNo(stockUninventoryDto.getBatchNo());
-            newStockUnInventory.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
-            newStockUnInventory.setVersion(1);
-            newStockUnInventory.setRemark(stockUninventoryDto.getRemark());
-            stockUninventoryMapper.insert(newStockUnInventory);
-        }else {
-            stockUninventoryMapper.updateAddStockUnInventory(stockUninventoryDto);
-        }
+//        StockUninventory oldStockUnInventory = stockUninventoryMapper.selectOne(wrapper);
+//        if (ObjectUtils.isEmpty(oldStockUnInventory)) {
+//            StockUninventory newStockUnInventory = new StockUninventory();
+//            newStockUnInventory.setProductModelId(stockUninventoryDto.getProductModelId());
+//            newStockUnInventory.setQualitity(stockUninventoryDto.getQualitity());
+//            newStockUnInventory.setLockedQuantity(stockUninventoryDto.getLockedQuantity());
+//            newStockUnInventory.setBatchNo(stockUninventoryDto.getBatchNo());
+//            newStockUnInventory.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
+//            newStockUnInventory.setVersion(1);
+//            newStockUnInventory.setRemark(stockUninventoryDto.getRemark());
+//            stockUninventoryMapper.insert(newStockUnInventory);
+//        }else {
+//            stockUninventoryMapper.updateAddStockUnInventory(stockUninventoryDto);
+//        }
         return 1;
     }
 
@@ -168,6 +168,7 @@
         stockOutRecordDto.setRecordId(stockUninventoryDto.getRecordId());
         stockOutRecordDto.setRecordType(stockUninventoryDto.getRecordType());
         stockOutRecordDto.setStockOutNum(stockUninventoryDto.getQualitity());
+        stockOutRecordDto.setWarehouseInfoId(stockUninventoryDto.getWarehouseInfoId());
         stockOutRecordDto.setBatchNo(stockUninventoryDto.getBatchNo());
         stockOutRecordDto.setProductModelId(stockUninventoryDto.getProductModelId());
         stockOutRecordDto.setType("1");

--
Gitblit v1.9.3