Răsfoiți Sursa

app端接口-查看获奖名单bug修复2

zhou 1 lună în urmă
părinte
comite
5d3ac9c0e3

+ 15 - 6
ruoyi-modules/ruoyi-game-event/src/main/resources/mapper/system/GameScoreMapper.xml

@@ -4,14 +4,23 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.dromara.system.mapper.GameScoreMapper">
 
-    <select id="listAppScoreByEventIdGroupProjectId">
+    <select id="listAppScoreByEventIdGroupProjectId" resultType="org.dromara.system.domain.GameScore">
         SELECT *
-        FROM (SELECT ROW_NUMBER() OVER (PARTITION BY project_id ORDER BY individual_performance DESC) AS rank_score, game_score.*
-              FROM game_score
-              WHERE event_id = #{eventId}
-            ) ranked
+        FROM (
+        SELECT
+        @row_number := CASE
+        WHEN @project = project_id THEN @row_number + 1
+        ELSE 1
+        END AS rank_score,
+        @project := project_id,
+        gs.*
+        FROM game_score gs
+        CROSS JOIN (SELECT @row_number := 0, @project := 0) r
+        WHERE event_id = #{eventId}
+        ORDER BY project_id, score_point DESC
+        ) ranked
         WHERE rank_score &lt;= 3
-        ORDER BY ranked.project_id, ranked.individual_performance DESC;
+        ORDER BY project_id, score_point DESC;
     </select>
 
     <select id="selectVoByAthleteIdAndProjectId" resultType="GameScoreVo">