Browse Source

fix(largescreen): 修复大屏幕数据查询中的表连接和分组问题

- 将团队代码字段从运动员表改为团队表
- 将团队名称字段改为使用聚合函数避免分组错误
- 将内连接改为左连接确保数据完整性
- 简化分组条件移除冗余字段
- 修复因表连接导致的数据缺失问题
zhou 1 day ago
parent
commit
9288d2bfcc

+ 5 - 6
ruoyi-modules/ruoyi-game-event/src/main/resources/mapper/system/app/LargeScreenMapper.xml

@@ -29,18 +29,17 @@
         SELECT
             MAX(gs.score_id) as id,
             MAX(gs.score_rank) as rank,
-            MAX(ga.athlete_code) as number,
-            gt.team_name as unit,
+            MAX(gt.team_code) as number,
+            MAX(gt.team_name) as unit,
             rg.rg_name as `group`,
             MAX(gs.team_performance) as score,
             MAX(gs.score_point) as total_score,
             MAX(gs.remark) as remark
         FROM game_score gs
-            JOIN game_athlete ga ON gs.athlete_id = ga.athlete_id AND ga.del_flag = '0'
-            JOIN game_team gt ON gs.team_id = gt.team_id AND gt.del_flag = '0'
-            JOIN game_rank_group rg ON rg.rg_id = gt.rg_id AND rg.del_flag = '0'
+            LEFT JOIN game_team gt ON gs.team_id = gt.team_id AND gt.del_flag = '0'
+            LEFT JOIN game_rank_group rg ON rg.rg_id = gt.rg_id AND rg.del_flag = '0'
         WHERE gs.event_id = #{tournamentId} AND gs.project_id = #{eventId} AND gs.del_flag = '0'
-        group by gs.team_id, gt.team_name, rg.rg_name
+        group by gs.team_id, rg.rg_name
         ORDER BY rank ASC, id DESC
     </select>