From 77a9f19e6532fef315d22f52008ef9c73dc69bc8 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期二, 04 八月 2026 17:12:04 +0800
Subject: [PATCH] fix: 大屏充电用户数

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
index cc9c611..48c8db1 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java
@@ -210,6 +210,21 @@
     // 任务用: 按月切片聚合(与 getLargeScreenSummary 相同口径, 按站点分组)
     List<Map<String, Object>> monthSliceAgg(@Param("startTime") String startTime, @Param("endTime") String endTime);
 
+    // 任务用: 按月切片统计充电用户数(工作台口径: 所有订单的去重用户, 不区分状态/删除标记)
+    List<Map<String, Object>> monthSliceUserAgg(@Param("startTime") String startTime, @Param("endTime") String endTime);
+
+    // 任务用: 按时间切片取 (site_id, app_user_id) 对(所有订单)
+    List<Map<String, Object>> userSitePairsAgg(@Param("startTime") String startTime, @Param("endTime") String endTime);
+
+    // 任务用: 批量写入用户-站点对(幂等)
+    int insertUserSitePairs(@Param("rows") List<Map<String, Object>> rows);
+
+    // 接口用: 充电用户数精确去重(对表)
+    Long userCountFromStat(@Param("siteIds") List<Integer> siteIds);
+
+    // 任务用: 对表行数(启动回填判断)
+    Long userSiteTableCount();
+
     // 任务用: 按日切片聚合(与 getLargeScreenChargingPower 相同口径, 按站点分组)
     List<Map<String, Object>> daySliceAgg(@Param("startTime") String startTime, @Param("endTime") String endTime);
 

--
Gitblit v1.7.1