From 3fffef8da8b40bea43ec6d0f58b6b614875def68 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期一, 22 六月 2026 17:10:18 +0800
Subject: [PATCH] feat: 指标统计增加销售数量

---
 src/main/java/com/ruoyi/sales/service/impl/MetricStatisticsServiceImpl.java |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/sales/service/impl/MetricStatisticsServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/MetricStatisticsServiceImpl.java
index 942e089..2ceec4e 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/MetricStatisticsServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/MetricStatisticsServiceImpl.java
@@ -51,9 +51,16 @@
         map.put("total", new BigDecimal(totalOrders));
         map.put("shipRate", "0.00%");
 
-        //  鍙戣揣鐜�
+        //  浜у搧閿�鍞暟閲�
         List<SalesLedgerProduct> products = salesLedgerProductMapper.selectList(new LambdaQueryWrapper<SalesLedgerProduct>()
                 .eq(SalesLedgerProduct::getType, 1));
+        BigDecimal productQuantityTotal = CollectionUtils.isEmpty(products) ? BigDecimal.ZERO :
+                products.stream()
+                        .map(SalesLedgerProduct::getQuantity)
+                        .filter(Objects::nonNull)
+                        .reduce(BigDecimal.ZERO, BigDecimal::add);
+        map.put("productQuantityTotal", productQuantityTotal);
+
         if (CollectionUtils.isEmpty(products)) {
             return AjaxResult.success(map);
         }
@@ -116,6 +123,7 @@
         List<String> dateList = new ArrayList<>();
         List<BigDecimal> orderCountList = new ArrayList<>();
         List<BigDecimal> salesAmountList = new ArrayList<>();
+        List<BigDecimal> productQuantityList = new ArrayList<>();
         List<BigDecimal> shippingRateList = new ArrayList<>();
 
         Calendar tempCalendar = Calendar.getInstance();
@@ -136,10 +144,12 @@
             if (dto != null) {
                 orderCountList.add(new BigDecimal(dto.getOrderCount()));
                 salesAmountList.add(dto.getSalesAmount() != null ? dto.getSalesAmount() : BigDecimal.ZERO);
+                productQuantityList.add(dto.getProductQuantity() != null ? dto.getProductQuantity() : BigDecimal.ZERO);
                 shippingRateList.add(new BigDecimal(String.valueOf(dto.getShipRate())));
             } else {
                 orderCountList.add(BigDecimal.ZERO);
                 salesAmountList.add(BigDecimal.ZERO);
+                productQuantityList.add(BigDecimal.ZERO);
                 shippingRateList.add(BigDecimal.ZERO);
             }
 
@@ -150,6 +160,7 @@
         map.put("dateList", dateList);
         map.put("orderCountList", orderCountList);
         map.put("salesAmountList", salesAmountList);
+        map.put("productQuantityList", productQuantityList);
         map.put("shippingRateList", shippingRateList);
         return AjaxResult.success(map);
     }

--
Gitblit v1.9.3