From b83811618d78d7a9832b325334b7a35cd6a3b64b Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 08 六月 2026 13:21:01 +0800
Subject: [PATCH] 采购台账手动入库,保存差额;入库审核 重新计算含水量
---
src/main/java/com/ruoyi/procurementrecord/utils/StockUtils.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 49 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 0beecd2..d5e8c22 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,50 @@
* @param recordId
*/
public void addStockWithBatchNo(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo) {
+ addStockWithBatchNo(productModelId, quantity, recordType, recordId, batchNo, null);
+ }
+
+ /**
+ * 鍚堟牸鍏ュ簱甯︽壒娆″彿
+ * @param recordType
+ * @param recordId
+ */
+ public void addStockWithBatchNo(Long productModelId, BigDecimal quantity, String recordType, Long recordId, String batchNo, LocalDateTime createTime) {
StockInventoryDto stockInventoryDto = new StockInventoryDto();
stockInventoryDto.setRecordId(recordId);
stockInventoryDto.setRecordType(String.valueOf(recordType));
stockInventoryDto.setQualitity(quantity);
stockInventoryDto.setProductModelId(productModelId);
stockInventoryDto.setBatchNo(batchNo);
+ stockInventoryDto.setCreateTime(createTime);
+ stockInventoryService.addStockInRecordOnly(stockInventoryDto);
+ }
+
+ /**
+ * 鍚堟牸鍏ュ簱甯︽壒娆″彿鍜屽惈姘撮噺淇℃伅
+ * @param productModelId 浜у搧瑙勬牸ID
+ * @param actualStockInNum 瀹為檯鍏ュ簱鏁伴噺
+ * @param recordType 璁板綍绫诲瀷
+ * @param recordId 璁板綍ID
+ * @param batchNo 鎵规鍙�
+ * @param isContainsWater 鏄惁鍚按
+ * @param waterContent 鍚按閲�
+ * @param theoryStockInNum 鐞嗚鍏ュ簱鏁伴噺
+ */
+ public void addStockWithBatchNo(Long productModelId, BigDecimal actualStockInNum, String recordType, Long recordId,
+ String batchNo, Boolean isContainsWater, BigDecimal waterContent, BigDecimal theoryStockInNum) {
+ StockInventoryDto stockInventoryDto = new StockInventoryDto();
+ stockInventoryDto.setRecordId(recordId);
+ stockInventoryDto.setRecordType(String.valueOf(recordType));
+ stockInventoryDto.setQualitity(actualStockInNum);
+ stockInventoryDto.setProductModelId(productModelId);
+ stockInventoryDto.setBatchNo(batchNo);
+ stockInventoryDto.setIsContainsWater(isContainsWater);
+ stockInventoryDto.setWaterContent(waterContent);
+ stockInventoryDto.setTheoryStockInNum(theoryStockInNum);
+ if (theoryStockInNum != null && actualStockInNum != null) {
+ stockInventoryDto.setDifferenceNum(theoryStockInNum.subtract(actualStockInNum));
+ }
stockInventoryService.addStockInRecordOnly(stockInventoryDto);
}
--
Gitblit v1.9.3