[RF] move userMusicFromList to GameApiController and add GenericUserMusicRepo

This commit is contained in:
Clansty
2025-01-05 19:54:15 +08:00
parent 7083e1a117
commit ccd88a10ab
14 changed files with 42 additions and 18 deletions

View File

@@ -4,8 +4,10 @@ package icu.samnyan.aqua.sega.chusan.model
import icu.samnyan.aqua.net.games.GenericPlaylogRepo
import icu.samnyan.aqua.net.games.GenericUserDataRepo
import icu.samnyan.aqua.net.games.GenericUserMusicRepo
import icu.samnyan.aqua.net.games.IUserRepo
import icu.samnyan.aqua.sega.chusan.model.userdata.*
import icu.samnyan.aqua.sega.maimai2.model.userdata.Mai2UserMusicDetail
import org.springframework.data.domain.Page
import org.springframework.data.domain.Pageable
import org.springframework.data.jpa.repository.JpaRepository
@@ -104,7 +106,7 @@ interface Chu3UserMapRepo : Chu3UserLinked<UserMap> {
fun findAllByUserCardExtIdAndMapAreaIdIn(user: Long, mapAreaIds: List<Int>): List<UserMap>
}
interface Chu3UserMusicDetailRepo : Chu3UserLinked<UserMusicDetail> {
interface Chu3UserMusicDetailRepo : Chu3UserLinked<UserMusicDetail>, GenericUserMusicRepo<UserMusicDetail> {
fun findTopByUserAndMusicIdAndLevelOrderByIdDesc(user: Chu3UserData, musicId: Int, level: Int): Optional<UserMusicDetail>
fun findByUserAndMusicIdAndLevel(user: Chu3UserData, musicId: Int, level: Int): UserMusicDetail?

View File

@@ -2,6 +2,7 @@ package icu.samnyan.aqua.sega.chusan.model.userdata
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.databind.annotation.JsonDeserialize
import icu.samnyan.aqua.net.games.IGenericUserMusic
import icu.samnyan.aqua.sega.util.jackson.BooleanToIntegerDeserializer
import jakarta.persistence.Entity
import jakarta.persistence.Table
@@ -15,8 +16,8 @@ import jakarta.persistence.UniqueConstraint
name = "chusan_user_music_detail",
uniqueConstraints = [UniqueConstraint(columnNames = ["user_id", "music_id", "level"])]
)
class UserMusicDetail : Chu3UserEntity() {
var musicId = 0
class UserMusicDetail : Chu3UserEntity(), IGenericUserMusic {
override var musicId = 0
var level = 0
var playCount = 0
var scoreMax = 0