From 144bebe15e6f7c3c4b7d89787ddff522ab3c4163 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 27 一月 2026 16:30:08 +0800
Subject: [PATCH] refactor(stock): 导入冻结数量限制
---
src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java | 2 +-
src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java | 6 ++++++
src/main/resources/mapper/stock/StockInventoryMapper.xml | 5 +++++
src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java | 6 ++++++
4 files changed, 18 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java b/src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java
index 3d5856f..125b52b 100644
--- a/src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java
+++ b/src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java
@@ -38,5 +38,5 @@
private BigDecimal totalStockOut;
private BigDecimal currentStock;
- private String unLockedQuantity;
+ private BigDecimal unLockedQuantity;
}
diff --git a/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java b/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
index 86feed9..4b7553f 100644
--- a/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
+++ b/src/main/java/com/ruoyi/stock/execl/StockInventoryExportData.java
@@ -22,6 +22,12 @@
@Excel(name = "搴撳瓨鏁伴噺")
private BigDecimal qualitity;
+ @Excel(name = "棰勮鏁伴噺")
+ private BigDecimal warnNum;
+
+ @Excel(name = "鍐荤粨鏁伴噺")
+ private BigDecimal lockedQuantity;
+
@Excel(name = "澶囨敞")
private String remark;
//
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 b15f881..99c4544 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -70,6 +70,7 @@
newStockInventory.setQualitity(stockInventoryDto.getQualitity());
newStockInventory.setVersion(1);
newStockInventory.setRemark(stockInventoryDto.getRemark());
+ newStockInventory.setLockedQuantity(stockInventoryDto.getLockedQuantity());
newStockInventory.setWarnNum(stockInventoryDto.getWarnNum());
stockInventoryMapper.insert(newStockInventory);
}else {
@@ -124,6 +125,11 @@
stockInventoryDto.setRecordType(StockQualifiedRecordTypeEnum.CUSTOMIZATION_STOCK_IN.getCode());
stockInventoryDto.setQualitity(dto.getQualitity());
stockInventoryDto.setRemark(dto.getRemark());
+ stockInventoryDto.setWarnNum(dto.getWarnNum());
+ if (ObjectUtils.isNotEmpty(dto.getLockedQuantity())&&dto.getLockedQuantity().compareTo(dto.getQualitity())>0) {
+ throw new RuntimeException("鍐荤粨鏁伴噺涓嶈兘瓒呰繃鏈瀵煎叆鐨勫簱瀛樻暟閲�");
+ }
+ stockInventoryDto.setLockedQuantity(dto.getLockedQuantity());
stockInventoryDto.setProductModelId(item.getProductModelId());
this.addstockInventory(stockInventoryDto);
matched = true;
diff --git a/src/main/resources/mapper/stock/StockInventoryMapper.xml b/src/main/resources/mapper/stock/StockInventoryMapper.xml
index e7f365f..224eb5a 100644
--- a/src/main/resources/mapper/stock/StockInventoryMapper.xml
+++ b/src/main/resources/mapper/stock/StockInventoryMapper.xml
@@ -28,6 +28,9 @@
<if test="ew.warnNum != null and ew.warnNum !=''">
warn_num = #{ew.warnNum},
</if>
+ <if test="ew.lockedQuantity != null and ew.lockedQuantity !=''">
+ locked_quantity = locked_quantity + #{ew.lockedQuantity},
+ </if>
update_time = now()
</set>
where product_model_id = #{ew.productModelId}
@@ -74,6 +77,8 @@
pm.model,
pm.unit,
p.product_name,
+ si.warn_num,
+ si.locked_quantity,
si.remark,
si.update_time
from stock_inventory si
--
Gitblit v1.9.3