From 6554bbd0dcbf5a83c9f043b8d193ddbc6a887345 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 24 四月 2026 10:35:59 +0800
Subject: [PATCH] feat:只有吨和公斤转换

---
 src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java |   49 ++++++++++++-------------------------------------
 src/main/java/com/ruoyi/stock/controller/StockInventoryController.java    |    4 ++--
 2 files changed, 14 insertions(+), 39 deletions(-)

diff --git a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
index 70f638e..0cbade0 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockInventoryController.java
@@ -82,13 +82,13 @@
         stockInventoryService.exportStockInventory(response, stockInventoryDto);
     }
 
-    @GetMapping("stockInventoryPage")
+    @GetMapping("/stockInventoryPage")
     @ApiOperation("搴撳瓨鎶ヨ〃鏌ヨ")
     public R stockInventoryPage(Page page, StockInventoryDto stockInventoryDto) {
         return R.ok(stockInventoryService.stockInventoryPage(stockInventoryDto,page));
     }
 
-    @GetMapping("stockInAndOutRecord")
+    @GetMapping("/stockInAndOutRecord")
     @ApiOperation("缁熻鍚勪釜浜у搧鐨勫叆搴撳拰鍑哄簱璁板綍")
     public R stockInAndOutRecord(StockInventoryDto stockInventoryDto,Page page) {
         return R.ok(stockInventoryService.stockInAndOutRecord(stockInventoryDto,page));
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 6e28436..4dcfd59 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
@@ -246,47 +246,22 @@
             throw new BaseException("鏁伴噺涓嶈兘涓虹┖");
         }
 
-        // 濡傛灉婧愬崟浣嶄负绌猴紝鐩存帴杩斿洖鍘熷��
-        if (sourceUnit == null || sourceUnit.isEmpty()) {
+        // 婧愬崟浣嶆垨鐩爣鍗曚綅涓虹┖锛屾垨鍗曚綅鐩稿悓锛屾垨浠讳竴鍗曚綅涓嶆槸鍚�/鍏枻锛屽垯涓嶈浆鎹�
+        if (sourceUnit == null || sourceUnit.isEmpty()
+                || targetUnit == null || targetUnit.isEmpty()
+                || sourceUnit.equals(targetUnit)
+                || (!"鍚�".equals(sourceUnit) && !"鍏枻".equals(sourceUnit) && !"鍚�".equals(targetUnit) && !"鍏枻".equals(targetUnit))) {
             return quantity;
         }
 
-        // 濡傛灉婧愬崟浣嶅拰鐩爣鍗曚綅鐩稿悓锛岀洿鎺ヨ繑鍥�
-        if (sourceUnit.equals(targetUnit)) {
-            return quantity;
+        // 鍚� <-> 鍏枻 杞崲
+        if ("鍚�".equals(targetUnit) && "鍏枻".equals(sourceUnit)) {
+            // 鍏枻杞惃锛氶櫎浠�1000锛屼繚鐣�2浣嶅皬鏁�
+            return quantity.divide(BigDecimal.valueOf(1000), 2, RoundingMode.HALF_UP);
+        } else if ("鍏枻".equals(targetUnit) && "鍚�".equals(sourceUnit)) {
+            // 鍚ㄨ浆鍏枻锛氫箻浠�1000
+            return quantity.multiply(BigDecimal.valueOf(1000));
         }
-
-        // 鍗曚綅杞崲
-        if ("鍚�".equals(targetUnit)) {
-            // 鐩爣鍗曚綅鏄惃锛岄渶瑕佸皢婧愬崟浣嶈浆鎹负鍚�
-            if ("鍏枻".equals(sourceUnit)) {
-                // 鍏枻杞惃锛氶櫎浠�1000
-                return quantity.divide(BigDecimal.valueOf(1000), 2, RoundingMode.HALF_UP);
-            } else if ("鍏�".equals(sourceUnit)) {
-                // 鍏嬭浆鍚細闄や互1000000
-                return quantity.divide(BigDecimal.valueOf(1000000), 2, RoundingMode.HALF_UP);
-            }
-        } else if ("鍏枻".equals(targetUnit)) {
-            // 鐩爣鍗曚綅鏄叕鏂�
-            if ("鍚�".equals(sourceUnit)) {
-                // 鍚ㄨ浆鍏枻锛氫箻浠�1000
-                return quantity.multiply(BigDecimal.valueOf(1000));
-            } else if ("鍏�".equals(sourceUnit)) {
-                // 鍏嬭浆鍏枻锛氶櫎浠�1000
-                return quantity.divide(BigDecimal.valueOf(1000), 2, RoundingMode.HALF_UP);
-            }
-        } else if ("鍏�".equals(targetUnit)) {
-            // 鐩爣鍗曚綅鏄厠
-            if ("鍚�".equals(sourceUnit)) {
-                // 鍚ㄨ浆鍏嬶細涔樹互1000000
-                return quantity.multiply(BigDecimal.valueOf(1000000));
-            } else if ("鍏枻".equals(sourceUnit)) {
-                // 鍏枻杞厠锛氫箻浠�1000
-                return quantity.multiply(BigDecimal.valueOf(1000));
-            }
-        }
-
-        // 鏃犳硶杞崲鏃惰繑鍥炲師鍊�
         return quantity;
     }
 

--
Gitblit v1.9.3