From cacf02681bfdda7926379d37d58ad1a21e398e1a Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期六, 04 十月 2025 19:08:12 +0800 Subject: [PATCH] fix(auth): 对无 Authorization 的 GraphQL 请求默认匿名放行到解析层,避免 400/403;公开查询仍优先识别后放行 --- backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java b/backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java index 7730408..014519b 100644 --- a/backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java +++ b/backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java @@ -26,9 +26,9 @@ List<ActivityPlayer> findByPlayerId(Long playerId); /** - * 鏍规嵁娲诲姩ID鍜岄�夋墜ID鏌ユ壘鍙傝禌璁板綍 + * 鏍规嵁娲诲姩ID鍜岄�夋墜ID鏌ユ壘鍙傝禌璁板綍鍒楄〃锛屾寜鍒涘缓鏃堕棿闄嶅簭鎺掑簭 */ - Optional<ActivityPlayer> findByActivityIdAndPlayerId(Long activityId, Long playerId); + List<ActivityPlayer> findByActivityIdAndPlayerIdOrderByCreateTimeDesc(Long activityId, Long playerId); /** * 鏍规嵁闃舵ID鏌ユ壘鍙傝禌閫夋墜 @@ -106,6 +106,12 @@ Long countByActivityIdAndState(@Param("activityId") Long activityId, @Param("state") Integer state); /** + * 缁熻鍚屼竴娲诲姩+鍚屼竴閫夋墜鐨勬湁鏁堟姤鍚嶆暟閲忥紙state IN (0,1)锛� + */ + @Query("SELECT COUNT(ap) FROM ActivityPlayer ap WHERE ap.activityId = :activityId AND ap.playerId = :playerId AND ap.state IN (0, 1)") + Long countActiveOrPendingByActivityAndPlayer(@Param("activityId") Long activityId, @Param("playerId") Long playerId); + + /** * 鏍规嵁闃舵ID鍜岀姸鎬佹煡鎵惧弬璧涢�夋墜锛堝寘鍚�夋墜淇℃伅锛� */ @Query("SELECT ap FROM ActivityPlayer ap " + -- Gitblit v1.8.0