From 872c12cc6d617be4aa03211fd87ff0945a44d660 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期二, 31 三月 2026 16:30:07 +0800
Subject: [PATCH] fix: 总销售额精度计算有误

---
 src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
index e496507..97d7713 100644
--- a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
+++ b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
@@ -2525,14 +2525,18 @@
         Map<String, Long> map = new HashMap<>();
         //鎬婚攢鍞噾棰�
         List<SalesDelivery> salesDeliveries = salesDeliveryMapper.selectList(null);
-        long sum = salesDeliveries.stream().mapToLong(value -> Long.parseLong(value.getPrice().toString())).sum();
-        map.put("price",sum/1000);//鍗曚綅w
+        BigDecimal sum = salesDeliveries.stream()
+                .map(item -> item.getPrice() != null ? new BigDecimal(item.getPrice().toString()) : BigDecimal.ZERO)
+                .reduce(BigDecimal.ZERO, BigDecimal::add);
+        long finalPrice = sum.divide(new BigDecimal("1000"), 0, RoundingMode.HALF_UP).longValue();
+
+        map.put("price", finalPrice);//鍗曚綅w
         //鎬诲彂璐у崟
-        map.put("delivery",salesDeliveries.stream().count());
+        map.put("delivery", (long) salesDeliveries.size());
         //鎬婚攢鍞尯?
         //绱瀹㈡埛
         Long count = customerMapper.selectCount(null);
-        map.put("customer",count);
+        map.put("customer", count);
         return map;
     }
 

--
Gitblit v1.9.3