forked from Cookies_Public/AquaDX
[O] Generalize ranking and find by card
This commit is contained in:
parent
13b4af3734
commit
e07de72fa4
@ -5,6 +5,7 @@ import icu.samnyan.aqua.net.utils.*
|
|||||||
import icu.samnyan.aqua.sega.general.model.Card
|
import icu.samnyan.aqua.sega.general.model.Card
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import org.springframework.data.jpa.repository.JpaRepository
|
import org.springframework.data.jpa.repository.JpaRepository
|
||||||
|
import org.springframework.data.jpa.repository.Query
|
||||||
import org.springframework.data.repository.NoRepositoryBean
|
import org.springframework.data.repository.NoRepositoryBean
|
||||||
import kotlin.jvm.optionals.getOrNull
|
import kotlin.jvm.optionals.getOrNull
|
||||||
|
|
||||||
@ -80,6 +81,8 @@ interface IGenericUserData {
|
|||||||
@NoRepositoryBean
|
@NoRepositoryBean
|
||||||
interface GenericUserDataRepo<T : IGenericUserData, ID> : JpaRepository<T, ID> {
|
interface GenericUserDataRepo<T : IGenericUserData, ID> : JpaRepository<T, ID> {
|
||||||
fun findByCard(card: Card): T?
|
fun findByCard(card: Card): T?
|
||||||
|
|
||||||
|
@Query("select count(*) from #{#entityName} where playerRating > :rating")
|
||||||
fun getRanking(rating: Int): Long
|
fun getRanking(rating: Int): Long
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -2,7 +2,6 @@ package icu.samnyan.aqua.sega.chusan.dao.userdata;
|
|||||||
|
|
||||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo;
|
import icu.samnyan.aqua.net.games.GenericUserDataRepo;
|
||||||
import icu.samnyan.aqua.sega.chusan.model.userdata.UserData;
|
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.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
@ -14,11 +13,5 @@ import java.util.Optional;
|
|||||||
@Repository("ChusanUserDataRepository")
|
@Repository("ChusanUserDataRepository")
|
||||||
public interface UserDataRepository extends GenericUserDataRepo<UserData, Long> {
|
public interface UserDataRepository extends GenericUserDataRepo<UserData, Long> {
|
||||||
|
|
||||||
UserData findByCard(Card card);
|
|
||||||
|
|
||||||
Optional<UserData> findByCard_ExtId(Long extId);
|
Optional<UserData> findByCard_ExtId(Long extId);
|
||||||
|
|
||||||
@Override
|
|
||||||
@Query("select count(*) from ChusanUserData where playerRating > :rating")
|
|
||||||
long getRanking(int rating);
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,7 +3,6 @@ package icu.samnyan.aqua.sega.maimai2.dao.userdata
|
|||||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
||||||
import icu.samnyan.aqua.sega.general.model.Card
|
import icu.samnyan.aqua.sega.general.model.Card
|
||||||
import icu.samnyan.aqua.sega.maimai2.model.userdata.UserDetail
|
import icu.samnyan.aqua.sega.maimai2.model.userdata.UserDetail
|
||||||
import org.springframework.data.jpa.repository.Query
|
|
||||||
import org.springframework.stereotype.Repository
|
import org.springframework.stereotype.Repository
|
||||||
import org.springframework.transaction.annotation.Transactional
|
import org.springframework.transaction.annotation.Transactional
|
||||||
import java.util.*
|
import java.util.*
|
||||||
@ -11,13 +10,8 @@ import java.util.*
|
|||||||
|
|
||||||
@Repository("Maimai2UserDataRepository")
|
@Repository("Maimai2UserDataRepository")
|
||||||
interface UserDataRepository : GenericUserDataRepo<UserDetail, Long> {
|
interface UserDataRepository : GenericUserDataRepo<UserDetail, Long> {
|
||||||
override fun findByCard(card: Card): UserDetail?
|
|
||||||
|
|
||||||
fun findByCardExtId(userId: Long): Optional<UserDetail>
|
fun findByCardExtId(userId: Long): Optional<UserDetail>
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
fun deleteByCard(card: Card)
|
fun deleteByCard(card: Card)
|
||||||
|
|
||||||
@Query("select count(*) from Maimai2UserData where playerRating > :rating")
|
|
||||||
override fun getRanking(rating: Int): Long
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,7 +3,6 @@ package icu.samnyan.aqua.sega.ongeki.dao.userdata
|
|||||||
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
import icu.samnyan.aqua.net.games.GenericUserDataRepo
|
||||||
import icu.samnyan.aqua.sega.general.model.Card
|
import icu.samnyan.aqua.sega.general.model.Card
|
||||||
import icu.samnyan.aqua.sega.ongeki.model.userdata.UserData
|
import icu.samnyan.aqua.sega.ongeki.model.userdata.UserData
|
||||||
import org.springframework.data.jpa.repository.Query
|
|
||||||
import org.springframework.stereotype.Repository
|
import org.springframework.stereotype.Repository
|
||||||
import org.springframework.transaction.annotation.Transactional
|
import org.springframework.transaction.annotation.Transactional
|
||||||
import java.util.*
|
import java.util.*
|
||||||
@ -15,13 +14,8 @@ import java.util.*
|
|||||||
interface UserDataRepository : GenericUserDataRepo<UserData, Long> {
|
interface UserDataRepository : GenericUserDataRepo<UserData, Long> {
|
||||||
fun findByCard_ExtIdIn(userIds: Collection<Long>): List<UserData>
|
fun findByCard_ExtIdIn(userIds: Collection<Long>): List<UserData>
|
||||||
|
|
||||||
override fun findByCard(card: Card): UserData?
|
|
||||||
|
|
||||||
fun findByCard_ExtId(aimeId: Long): Optional<UserData>
|
fun findByCard_ExtId(aimeId: Long): Optional<UserData>
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
fun deleteByCard(card: Card)
|
fun deleteByCard(card: Card)
|
||||||
|
|
||||||
@Query("select count(*) from OngekiUserData where playerRating > :rating")
|
|
||||||
override fun getRanking(rating: Int): Long
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user