Переглянути джерело

feat(game): 隐藏赛事大厅图片和证书字段,优化数据传输

- 在 ExperienceGameEventVo 中为 hallImage 字段添加 @JsonIgnore 注解
- 在 ExperienceMyRecordVo 中为 certificate 字段添加 @JsonIgnore 注解
- 将 GameUserMapper 查询中的 certificateUrl 映射改为 certificate
- 保留翻译注解用于证书 URL 的 OSS ID 到 URL 映射功能
zhou 3 днів тому
батько
коміт
dc08c2ed18

+ 3 - 1
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/domain/vo/app/ExperienceGameEventVo.java

@@ -1,5 +1,6 @@
 package org.dromara.system.domain.vo.app;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import lombok.Data;
 import org.dromara.common.translation.annotation.Translation;
 import org.dromara.common.translation.constant.TransConstant;
@@ -43,10 +44,11 @@ public class ExperienceGameEventVo implements Serializable {
      */
     private String location;
 
+    @JsonIgnore
+    private String hallImage;
     /**
      * 赛事大厅展示图片值
      */
-    private String hallImage;
     @Translation(type = TransConstant.OSS_ID_TO_URL, mapper = "hallImage")
     private String hallImageUrl;
 }

+ 5 - 0
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/domain/vo/app/ExperienceMyRecordVo.java

@@ -2,6 +2,8 @@ package org.dromara.system.domain.vo.app;
 
 import lombok.Data;
 import com.fasterxml.jackson.annotation.JsonIgnore;
+import org.dromara.common.translation.annotation.Translation;
+import org.dromara.common.translation.constant.TransConstant;
 
 import java.io.Serial;
 import java.io.Serializable;
@@ -80,8 +82,11 @@ public class ExperienceMyRecordVo implements Serializable {
      */
     private Integer points;
 
+    @JsonIgnore
+    private String certificate;
     /**
      * 电子证书 url 地址
      */
+    @Translation(type = TransConstant.OSS_ID_TO_URL, mapper = "certificate")
     private String certificateUrl;
 }

+ 1 - 1
ruoyi-modules/ruoyi-game-event/src/main/java/org/dromara/system/mapper/app/GameUserMapper.java

@@ -84,7 +84,7 @@ public interface GameUserMapper extends BaseMapperPlus<GameUser, GameUserVo> {
             "        WHEN gep.classification = '1' THEN gs.team_performance " +
             "        ELSE COALESCE(gs.individual_performance, gs.team_performance) END) AS rawScore, " +
             "  IFNULL(gs.score_point, 0) AS points, " +
-            "  gs.award AS certificateUrl " +
+            "  gs.award AS certificate " +
             "FROM game_athlete ga " +
             "LEFT JOIN game_event ge ON ga.event_id = ge.event_id AND ge.del_flag = '0' " +
             "INNER JOIN game_event_project gep ON FIND_IN_SET( " +