From e07de72fa4eb1bce9c0caaa584f5a2bdc618ea73 Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Sat, 16 Mar 2024 19:22:08 -0400 Subject: [PATCH] [O] Generalize ranking and find by card --- src/main/java/icu/samnyan/aqua/net/games/Models.kt | 3 +++ .../aqua/sega/chusan/dao/userdata/UserDataRepository.java | 7 ------- .../aqua/sega/maimai2/dao/userdata/UserDataRepository.kt | 6 ------ .../aqua/sega/ongeki/dao/userdata/UserDataRepository.kt | 6 ------ 4 files changed, 3 insertions(+), 19 deletions(-) diff --git a/src/main/java/icu/samnyan/aqua/net/games/Models.kt b/src/main/java/icu/samnyan/aqua/net/games/Models.kt index c8becd39..0a1c4fcb 100644 --- a/src/main/java/icu/samnyan/aqua/net/games/Models.kt +++ b/src/main/java/icu/samnyan/aqua/net/games/Models.kt @@ -5,6 +5,7 @@ import icu.samnyan.aqua.net.utils.* import icu.samnyan.aqua.sega.general.model.Card import kotlinx.serialization.Serializable import org.springframework.data.jpa.repository.JpaRepository +import org.springframework.data.jpa.repository.Query import org.springframework.data.repository.NoRepositoryBean import kotlin.jvm.optionals.getOrNull @@ -80,6 +81,8 @@ interface IGenericUserData { @NoRepositoryBean interface GenericUserDataRepo : JpaRepository { fun findByCard(card: Card): T? + + @Query("select count(*) from #{#entityName} where playerRating > :rating") fun getRanking(rating: Int): Long } diff --git a/src/main/java/icu/samnyan/aqua/sega/chusan/dao/userdata/UserDataRepository.java b/src/main/java/icu/samnyan/aqua/sega/chusan/dao/userdata/UserDataRepository.java index c51c6853..d0258ece 100644 --- a/src/main/java/icu/samnyan/aqua/sega/chusan/dao/userdata/UserDataRepository.java +++ b/src/main/java/icu/samnyan/aqua/sega/chusan/dao/userdata/UserDataRepository.java @@ -2,7 +2,6 @@ package icu.samnyan.aqua.sega.chusan.dao.userdata; import icu.samnyan.aqua.net.games.GenericUserDataRepo; import icu.samnyan.aqua.sega.chusan.model.userdata.UserData; -import icu.samnyan.aqua.sega.general.model.Card; import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; @@ -14,11 +13,5 @@ import java.util.Optional; @Repository("ChusanUserDataRepository") public interface UserDataRepository extends GenericUserDataRepo { - UserData findByCard(Card card); - Optional findByCard_ExtId(Long extId); - - @Override - @Query("select count(*) from ChusanUserData where playerRating > :rating") - long getRanking(int rating); } diff --git a/src/main/java/icu/samnyan/aqua/sega/maimai2/dao/userdata/UserDataRepository.kt b/src/main/java/icu/samnyan/aqua/sega/maimai2/dao/userdata/UserDataRepository.kt index 9472b614..be5f535c 100644 --- a/src/main/java/icu/samnyan/aqua/sega/maimai2/dao/userdata/UserDataRepository.kt +++ b/src/main/java/icu/samnyan/aqua/sega/maimai2/dao/userdata/UserDataRepository.kt @@ -3,7 +3,6 @@ package icu.samnyan.aqua.sega.maimai2.dao.userdata import icu.samnyan.aqua.net.games.GenericUserDataRepo import icu.samnyan.aqua.sega.general.model.Card import icu.samnyan.aqua.sega.maimai2.model.userdata.UserDetail -import org.springframework.data.jpa.repository.Query import org.springframework.stereotype.Repository import org.springframework.transaction.annotation.Transactional import java.util.* @@ -11,13 +10,8 @@ import java.util.* @Repository("Maimai2UserDataRepository") interface UserDataRepository : GenericUserDataRepo { - override fun findByCard(card: Card): UserDetail? - fun findByCardExtId(userId: Long): Optional @Transactional fun deleteByCard(card: Card) - - @Query("select count(*) from Maimai2UserData where playerRating > :rating") - override fun getRanking(rating: Int): Long } diff --git a/src/main/java/icu/samnyan/aqua/sega/ongeki/dao/userdata/UserDataRepository.kt b/src/main/java/icu/samnyan/aqua/sega/ongeki/dao/userdata/UserDataRepository.kt index 63dba84f..a35f0236 100644 --- a/src/main/java/icu/samnyan/aqua/sega/ongeki/dao/userdata/UserDataRepository.kt +++ b/src/main/java/icu/samnyan/aqua/sega/ongeki/dao/userdata/UserDataRepository.kt @@ -3,7 +3,6 @@ package icu.samnyan.aqua.sega.ongeki.dao.userdata import icu.samnyan.aqua.net.games.GenericUserDataRepo import icu.samnyan.aqua.sega.general.model.Card import icu.samnyan.aqua.sega.ongeki.model.userdata.UserData -import org.springframework.data.jpa.repository.Query import org.springframework.stereotype.Repository import org.springframework.transaction.annotation.Transactional import java.util.* @@ -15,13 +14,8 @@ import java.util.* interface UserDataRepository : GenericUserDataRepo { fun findByCard_ExtIdIn(userIds: Collection): List - override fun findByCard(card: Card): UserData? - fun findByCard_ExtId(aimeId: Long): Optional @Transactional fun deleteByCard(card: Card) - - @Query("select count(*) from OngekiUserData where playerRating > :rating") - override fun getRanking(rating: Int): Long }