From d6388d041cc58b9f2be3ddcddfb6042e7af094f7 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期一, 11 五月 2026 10:11:00 +0800
Subject: [PATCH] fix(stock): 修复库存盘点计划中的出入库记录类型错误

---
 src/main/java/com/ruoyi/stock/service/impl/StockInventoryCheckPlanServiceImpl.java |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryCheckPlanServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryCheckPlanServiceImpl.java
index 698c0a8..aad5c20 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryCheckPlanServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryCheckPlanServiceImpl.java
@@ -129,17 +129,18 @@
             stockInventoryDto.setRecordId(stockInventoryCheckPlanDto.getId());
 
             if (item.getDifferenceQuantity().compareTo(BigDecimal.ZERO) > 0) {
-                stockInventoryDto.setRecordType(StockInQualifiedRecordTypeEnum.INVENTORY_CHECK_STOCK_OUT.getCode());
-                StockInRecordDto stockInRecordDto = stockUtils.addStockWithBatchNo(stockInventoryDto.getProductModelId(), stockInventoryDto.getQualitity(), stockInventoryDto.getRecordType(), stockInventoryDto.getRecordId(), stockInventoryDto.getBatchNo());
+                stockInventoryDto.setRecordType(StockInQualifiedRecordTypeEnum.INVENTORY_CHECK_STOCK_IN.getCode());
+                StockInRecordDto stockInRecordDto = stockUtils.addStockWithBatchNo(stockInventoryDto.getProductModelId(), item.getDifferenceQuantity().abs (), stockInventoryDto.getRecordType(), stockInventoryDto.getRecordId(), stockInventoryDto.getBatchNo());
                 //鐩存帴瀹℃牳閫氳繃
                 stockInRecordService.batchApprove(Collections.singletonList(stockInRecordDto.getId()), 1);
             }else {
-                stockInventoryDto.setRecordType(StockInQualifiedRecordTypeEnum.INVENTORY_CHECK_STOCK_IN.getCode());
-                StockOutRecordDto stockOutRecordDto = stockUtils.substractStock(stockInventoryDto.getProductModelId(), stockInventoryDto.getQualitity(), stockInventoryDto.getRecordType(), stockInventoryDto.getRecordId(), stockInventoryDto.getBatchNo());
+                stockInventoryDto.setRecordType(StockInQualifiedRecordTypeEnum.INVENTORY_CHECK_STOCK_OUT.getCode());
+                StockOutRecordDto stock = stockUtils.substractStock(stockInventoryDto.getProductModelId(), item.getDifferenceQuantity().abs(), stockInventoryDto.getRecordType(), stockInventoryDto.getRecordId(), stockInventoryDto.getBatchNo());
                 //鐩存帴瀹℃牳閫氳繃
-                stockOutRecordService.batchApprove(Collections.singletonList(stockOutRecordDto.getId()), 1);
-
+                stockOutRecordService.batchApprove(Collections.singletonList(stock.getId()), 1);
             }
+            //鏇存柊搴撳瓨閿佸畾鐘舵��
+            stockInventoryService.updateLocked(stockInventoryDto.getProductModelId(),stockInventoryDto.getBatchNo(), true);
         }
         stockInventoryCheckItemMapper.updateById(stockInventoryCheckPlanDto.getCheckItems());
         plan.setStatus(2);

--
Gitblit v1.9.3