From bd5d1dae54ea1e42e9e9f0d00f671d95914b105f Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 01 六月 2026 16:54:56 +0800
Subject: [PATCH] Merge branch 'dev_新疆马铃薯pro' of http://114.132.189.42:9002/r/product-inventory-management-after into dev_新疆马铃薯pro

---
 src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java b/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
index 8e004e4..e30b978 100644
--- a/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
+++ b/src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java
@@ -18,6 +18,7 @@
 import org.springframework.stereotype.Component;
 
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
 import java.util.Collections;
 
 @Component
@@ -88,11 +89,21 @@
      * @param recordId
      */
     public void addStock(Long productModelId, BigDecimal quantity, String recordType, Long recordId) {
+        addStock(productModelId, quantity, recordType, recordId, null);
+    }
+
+    /**
+     * 鍚堟牸鍏ュ簱
+     * @param recordType
+     * @param recordId
+     */
+    public void addStock(Long productModelId, BigDecimal quantity, String recordType, Long recordId, LocalDateTime createTime) {
         StockInventoryDto stockInventoryDto = new StockInventoryDto();
         stockInventoryDto.setRecordId(recordId);
         stockInventoryDto.setRecordType(String.valueOf(recordType));
         stockInventoryDto.setQualitity(quantity);
         stockInventoryDto.setProductModelId(productModelId);
+        stockInventoryDto.setCreateTime(createTime);
         stockInventoryService.addStockInRecordOnly(stockInventoryDto);
     }
 
@@ -104,12 +115,33 @@
      * @param recordId
      */
     public void addStockWithBatchNo(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo) {
+        addStockWithBatchNo(productModelId, quantity, recordType, recordId, batchNo, null, null);
+    }
+
+    /**
+     * 鍚堟牸鍏ュ簱甯︽壒娆″彿
+     * @param recordType
+     * @param recordId
+     */
+    public void addStockWithBatchNo(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo, LocalDateTime createTime) {
+        addStockWithBatchNo(productModelId, quantity, recordType, recordId, batchNo, createTime, null);
+    }
+
+    /**
+     * 鍚堟牸鍏ュ簱甯︽壒娆″彿锛堝惈浠撳簱锛�
+     * @param recordType
+     * @param recordId
+     * @param warehouse
+     */
+    public void addStockWithBatchNo(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo, LocalDateTime createTime, String warehouse) {
         StockInventoryDto stockInventoryDto = new StockInventoryDto();
         stockInventoryDto.setRecordId(recordId);
         stockInventoryDto.setRecordType(String.valueOf(recordType));
         stockInventoryDto.setQualitity(quantity);
         stockInventoryDto.setProductModelId(productModelId);
         stockInventoryDto.setBatchNo(batchNo);
+        stockInventoryDto.setCreateTime(createTime);
+        stockInventoryDto.setWarehouse(warehouse);
         stockInventoryService.addStockInRecordOnly(stockInventoryDto);
     }
 
@@ -122,12 +154,27 @@
      * @param recordId
      */
     public void substractStock(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo) {
+        substractStock(productModelId, quantity, recordType, recordId, batchNo, null);
+    }
+
+    /**
+     * 鍚堟牸鍑哄簱锛堝甫鍑哄簱鎵瑰彿锛�
+     *
+     * @param productModelId
+     * @param quantity
+     * @param recordType
+     * @param recordId
+     * @param batchNo
+     * @param outboundBatches 鍑哄簱鎵瑰彿锛屽鏋滀负绌哄垯鑷姩鐢熸垚
+     */
+    public void substractStock(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo, String outboundBatches) {
         StockInventoryDto stockInventoryDto = new StockInventoryDto();
         stockInventoryDto.setRecordId(recordId);
         stockInventoryDto.setRecordType(String.valueOf(recordType));
         stockInventoryDto.setQualitity(quantity);
         stockInventoryDto.setProductModelId(productModelId);
         stockInventoryDto.setBatchNo(batchNo);
+        stockInventoryDto.setOutboundBatches(outboundBatches);
         stockInventoryService.addStockOutRecordOnly(stockInventoryDto);
     }
 
@@ -160,6 +207,7 @@
 
     }
 
+    //鍒犻櫎鍑哄簱璁板綍
     public void deleteStockOutRecord(Long recordId, String recordType) {
         StockOutRecord one = stockOutRecordService.getOne(new QueryWrapper<StockOutRecord>()
                 .lambda().eq(StockOutRecord::getRecordId, recordId)

--
Gitblit v1.9.3