longz
2026-08-04 129aa4718ca3d61d44fa1ec8051e0da002bcac83
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;