Commit 5f88c9ca35f3e38d01d20b20492728a63e9c7f09
1 parent
45889459
✨ feat(im): 增加消息查询条件以排除已删除记录
Showing
1 changed file
with
14 additions
and
14 deletions
yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/dal/mysql/statistics/ImStatisticsManagerMapper.java
| ... | ... | @@ -39,10 +39,10 @@ public interface ImStatisticsManagerMapper { |
| 39 | 39 | */ |
| 40 | 40 | @Select("SELECT COUNT(DISTINCT user_id) FROM (" + |
| 41 | 41 | " SELECT sender_id AS user_id FROM im_private_message " + |
| 42 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 42 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 43 | 43 | " UNION ALL " + |
| 44 | 44 | " SELECT sender_id AS user_id FROM im_group_message " + |
| 45 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 45 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 46 | 46 | ") t") |
| 47 | 47 | Long selectActiveUserCount(@Param("beginTime") LocalDateTime beginTime, |
| 48 | 48 | @Param("endTime") LocalDateTime endTime); |
| ... | ... | @@ -63,10 +63,10 @@ public interface ImStatisticsManagerMapper { |
| 63 | 63 | */ |
| 64 | 64 | @Select("SELECT day AS date, COUNT(DISTINCT user_id) AS count FROM (" + |
| 65 | 65 | " SELECT DATE(send_time) AS day, sender_id AS user_id FROM im_private_message " + |
| 66 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 66 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 67 | 67 | " UNION ALL " + |
| 68 | 68 | " SELECT DATE(send_time) AS day, sender_id AS user_id FROM im_group_message " + |
| 69 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 69 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 70 | 70 | ") t GROUP BY day") |
| 71 | 71 | List<Map<String, Object>> selectActiveUserDailyCount(@Param("beginTime") LocalDateTime beginTime, @Param("endTime") LocalDateTime endTime); |
| 72 | 72 | |
| ... | ... | @@ -75,7 +75,7 @@ public interface ImStatisticsManagerMapper { |
| 75 | 75 | /** |
| 76 | 76 | * 群总数(im_group) |
| 77 | 77 | */ |
| 78 | - @Select("SELECT COUNT(*) FROM im_group WHERE deleted = 0") | |
| 78 | + @Select("SELECT COUNT(*) FROM im_group WHERE deleted = 0 AND status = 0") | |
| 79 | 79 | Long selectTotalGroupCount(); |
| 80 | 80 | |
| 81 | 81 | /** |
| ... | ... | @@ -101,7 +101,7 @@ public interface ImStatisticsManagerMapper { |
| 101 | 101 | " SELECT g.id, COUNT(m.id) AS cnt " + |
| 102 | 102 | " FROM im_group g " + |
| 103 | 103 | " LEFT JOIN im_group_member m ON m.group_id = g.id AND m.status = 0 AND m.deleted = 0 " + |
| 104 | - " WHERE g.deleted = 0 " + | |
| 104 | + " WHERE g.deleted = 0 AND g.status = 0 " + | |
| 105 | 105 | " GROUP BY g.id" + |
| 106 | 106 | ") t " + |
| 107 | 107 | "GROUP BY `range`") |
| ... | ... | @@ -113,7 +113,7 @@ public interface ImStatisticsManagerMapper { |
| 113 | 113 | * 区间内私聊消息数 |
| 114 | 114 | */ |
| 115 | 115 | @Select("SELECT COUNT(*) FROM im_private_message " + |
| 116 | - "WHERE send_time >= #{beginTime} AND send_time < #{endTime}") | |
| 116 | + "WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}") | |
| 117 | 117 | Long selectPrivateMessageCount(@Param("beginTime") LocalDateTime beginTime, |
| 118 | 118 | @Param("endTime") LocalDateTime endTime); |
| 119 | 119 | |
| ... | ... | @@ -121,7 +121,7 @@ public interface ImStatisticsManagerMapper { |
| 121 | 121 | * 区间内群聊消息数 |
| 122 | 122 | */ |
| 123 | 123 | @Select("SELECT COUNT(*) FROM im_group_message " + |
| 124 | - "WHERE send_time >= #{beginTime} AND send_time < #{endTime}") | |
| 124 | + "WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}") | |
| 125 | 125 | Long selectGroupMessageCount(@Param("beginTime") LocalDateTime beginTime, |
| 126 | 126 | @Param("endTime") LocalDateTime endTime); |
| 127 | 127 | |
| ... | ... | @@ -129,7 +129,7 @@ public interface ImStatisticsManagerMapper { |
| 129 | 129 | * 区间内每日私聊消息数(按天分组) |
| 130 | 130 | */ |
| 131 | 131 | @Select("SELECT DATE(send_time) AS date, COUNT(*) AS count FROM im_private_message " + |
| 132 | - "WHERE send_time >= #{beginTime} AND send_time < #{endTime} " + | |
| 132 | + "WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime} " + | |
| 133 | 133 | "GROUP BY DATE(send_time)") |
| 134 | 134 | List<Map<String, Object>> selectPrivateMessageDailyCount(@Param("beginTime") LocalDateTime beginTime, |
| 135 | 135 | @Param("endTime") LocalDateTime endTime); |
| ... | ... | @@ -138,7 +138,7 @@ public interface ImStatisticsManagerMapper { |
| 138 | 138 | * 区间内每日群聊消息数(按天分组) |
| 139 | 139 | */ |
| 140 | 140 | @Select("SELECT DATE(send_time) AS date, COUNT(*) AS count FROM im_group_message " + |
| 141 | - "WHERE send_time >= #{beginTime} AND send_time < #{endTime} " + | |
| 141 | + "WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime} " + | |
| 142 | 142 | "GROUP BY DATE(send_time)") |
| 143 | 143 | List<Map<String, Object>> selectGroupMessageDailyCount(@Param("beginTime") LocalDateTime beginTime, |
| 144 | 144 | @Param("endTime") LocalDateTime endTime); |
| ... | ... | @@ -150,10 +150,10 @@ public interface ImStatisticsManagerMapper { |
| 150 | 150 | */ |
| 151 | 151 | @Select("SELECT type, COUNT(*) AS count FROM (" + |
| 152 | 152 | " SELECT type FROM im_private_message " + |
| 153 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 153 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 154 | 154 | " UNION ALL " + |
| 155 | 155 | " SELECT type FROM im_group_message " + |
| 156 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 156 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 157 | 157 | ") t GROUP BY type") |
| 158 | 158 | List<Map<String, Object>> selectMessageTypeDistribution(@Param("beginTime") LocalDateTime beginTime, |
| 159 | 159 | @Param("endTime") LocalDateTime endTime); |
| ... | ... | @@ -165,10 +165,10 @@ public interface ImStatisticsManagerMapper { |
| 165 | 165 | */ |
| 166 | 166 | @Select("SELECT user_id AS userId, COUNT(*) AS messageCount FROM (" + |
| 167 | 167 | " SELECT sender_id AS user_id FROM im_private_message " + |
| 168 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 168 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 169 | 169 | " UNION ALL " + |
| 170 | 170 | " SELECT sender_id AS user_id FROM im_group_message " + |
| 171 | - " WHERE send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 171 | + " WHERE deleted = 0 AND send_time >= #{beginTime} AND send_time < #{endTime}" + | |
| 172 | 172 | ") t GROUP BY user_id ORDER BY messageCount DESC LIMIT #{limit}") |
| 173 | 173 | List<Map<String, Object>> selectTopSenders(@Param("beginTime") LocalDateTime beginTime, |
| 174 | 174 | @Param("endTime") LocalDateTime endTime, | ... | ... |