From 129aa4718ca3d61d44fa1ec8051e0da002bcac83 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期二, 04 八月 2026 17:21:07 +0800
Subject: [PATCH] fix: align large screen valid order count

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index 4a5563a..215f032 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -6856,6 +6856,7 @@
         }
         // 3. 全局注册用户数
         writeGlobal();
+        clearLargeScreenCache();
         log.info("大屏预聚合表全量重建完成, 耗时 {}ms", System.currentTimeMillis() - start);
     }
 
@@ -6867,6 +6868,7 @@
         writeDaySlice(LocalDate.now());
         writeUserSitePairs(LocalDate.now(), LocalDate.now().plusDays(1));
         writeGlobal();
+        clearLargeScreenCache();
         log.info("大屏预聚合表刷新完成, 耗时 {}ms", System.currentTimeMillis() - start);
     }
 
@@ -6897,7 +6899,7 @@
 
     /**
      * 写入一个月度切片聚合(M 行)
-     * 金额/订单数取 monthSliceAgg(已结束+已支付口径);
+     * 订单数取未删除、状态1-5口径;金额取已结束且已支付口径。
      * 充电用户数取 monthSliceUserAgg(工作台口径: 该站点所有订单的去重用户, 不区分状态/删除标记)
      */
     private void writeMonthSlice(LocalDate monthStart, LocalDate monthEnd) {
@@ -7026,6 +7028,13 @@
         return LARGE_SCREEN_CACHE_PREFIX + endpoint + ":" + idPart;
     }
 
+    private void clearLargeScreenCache() {
+        Collection<String> keys = redisService.keys(LARGE_SCREEN_CACHE_PREFIX + "*");
+        if (keys != null && !keys.isEmpty()) {
+            redisService.deleteObject(keys);
+        }
+    }
+
     private BigDecimal decimalValue(Map<String, Object> values, String key) {
         if (values == null) {
             return BigDecimal.ZERO;

--
Gitblit v1.7.1