From 8337c34fcc761d07acaad796d10f3e12e9bbe2d1 Mon Sep 17 00:00:00 2001 From: lrj <owen.stl@gmail.com> Date: 星期日, 05 十月 2025 08:56:04 +0800 Subject: [PATCH] feat: 微信项目详情支持阶段评分时间轴 --- backend/src/main/java/com/rongyichuang/player/repository/ActivityPlayerRepository.java | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 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..82e151e 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 " + @@ -118,4 +124,9 @@ * 妫�鏌ラ�夋墜鏄惁宸插湪鎸囧畾闃舵鎶ュ悕 */ boolean existsByStageIdAndPlayerId(Long stageId, Long playerId); -} \ No newline at end of file + + /** + * 鏍规嵁闃舵鍜岄�夋墜鏌ヨ鎶ュ悕璁板綍 + */ + Optional<ActivityPlayer> findByStageIdAndPlayerId(Long stageId, Long playerId); +} -- Gitblit v1.8.0