[M] Move files

This commit is contained in:
Azalea
2024-03-16 19:10:22 -04:00
parent 29566a6c93
commit 13b4af3734
15 changed files with 49 additions and 58 deletions

View File

@@ -4,8 +4,8 @@ import ext.*
import icu.samnyan.aqua.net.components.JWT
import icu.samnyan.aqua.net.db.AquaUserServices
import icu.samnyan.aqua.net.utils.AquaNetProps
import icu.samnyan.aqua.net.utils.GenericUserDataRepo
import icu.samnyan.aqua.net.utils.IGenericUserData
import icu.samnyan.aqua.net.games.GenericUserDataRepo
import icu.samnyan.aqua.net.games.IGenericUserData
import icu.samnyan.aqua.net.utils.SUCCESS
import icu.samnyan.aqua.sega.general.dao.CardRepository
import icu.samnyan.aqua.sega.general.model.Card

View File

@@ -1,14 +1,8 @@
package icu.samnyan.aqua.net.utils
package icu.samnyan.aqua.net.games
import ext.isoDate
import ext.minus
import icu.samnyan.aqua.net.games.GameApiController
import icu.samnyan.aqua.net.games.GenericGameSummary
import icu.samnyan.aqua.net.games.RankCount
import icu.samnyan.aqua.net.games.TrendOut
import icu.samnyan.aqua.sega.general.model.Card
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.data.repository.NoRepositoryBean
import java.time.LocalDate
import java.util.*
@@ -46,37 +40,6 @@ fun findTrend(log: List<TrendLog>): List<TrendOut> {
return trend
}
// Here are some interfaces to generalize across multiple games
interface IGenericUserData {
val userName: String
val iconId: Int
val playerRating: Int
val highestRating: Int
val firstPlayDate: Any
val lastPlayDate: Any
val lastRomVersion: String
val totalScore: Long
var card: Card?
}
@NoRepositoryBean
interface GenericUserDataRepo<T : IGenericUserData, ID> : JpaRepository<T, ID> {
fun findByCard(card: Card): T?
fun getRanking(rating: Int): Long
}
interface IGenericGamePlaylog {
val musicId: Int
val level: Int
val userPlayDate: Any
val achievement: Int
val maxCombo: Int
val isFullCombo: Boolean
val beforeRating: Int
val afterRating: Int
val isAllPerfect: Boolean
}
interface GenericPlaylogRepo {
fun findByUserCardExtId(extId: Long): List<IGenericGamePlaylog>
fun findById(id: Long): Optional<IGenericGamePlaylog>

View File

@@ -2,7 +2,10 @@ package icu.samnyan.aqua.net.games
import ext.*
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.repository.NoRepositoryBean
import kotlin.jvm.optionals.getOrNull
data class TrendOut(val date: String, val rating: Int, val plays: Int)
@@ -61,6 +64,37 @@ data class GenericNoteMeta(
val lvId: Int
)
// Here are some interfaces to generalize across multiple games
interface IGenericUserData {
val userName: String
val iconId: Int
val playerRating: Int
val highestRating: Int
val firstPlayDate: Any
val lastPlayDate: Any
val lastRomVersion: String
val totalScore: Long
var card: Card?
}
@NoRepositoryBean
interface GenericUserDataRepo<T : IGenericUserData, ID> : JpaRepository<T, ID> {
fun findByCard(card: Card): T?
fun getRanking(rating: Int): Long
}
interface IGenericGamePlaylog {
val musicId: Int
val level: Int
val userPlayDate: Any
val achievement: Int
val maxCombo: Int
val isFullCombo: Boolean
val beforeRating: Int
val afterRating: Int
val isAllPerfect: Boolean
}
abstract class GameApiController(name: String) {
val musicMapping: Map<Int, GenericMusicMeta> = GameApiController::class.java
.getResourceAsStream("/meta/$name/music.json")

View File

@@ -1,9 +1,8 @@
package icu.samnyan.aqua.sega.chusan.dao.userdata;
import icu.samnyan.aqua.net.utils.GenericUserDataRepo;
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.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;

View File

@@ -1,6 +1,6 @@
package icu.samnyan.aqua.sega.chusan.dao.userdata;
import icu.samnyan.aqua.net.utils.GenericPlaylogRepo;
import icu.samnyan.aqua.net.games.GenericPlaylogRepo;
import icu.samnyan.aqua.sega.chusan.model.userdata.UserPlaylog;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

View File

@@ -5,7 +5,7 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import icu.samnyan.aqua.net.utils.IGenericUserData;
import icu.samnyan.aqua.net.games.IGenericUserData;
import icu.samnyan.aqua.sega.chusan.model.response.data.UserEmoney;
import icu.samnyan.aqua.sega.general.model.Card;
import icu.samnyan.aqua.sega.util.jackson.AccessCodeSerializer;

View File

@@ -2,16 +2,14 @@ package icu.samnyan.aqua.sega.chusan.model.userdata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import icu.samnyan.aqua.net.utils.IGenericGamePlaylog;
import icu.samnyan.aqua.net.games.IGenericGamePlaylog;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.jetbrains.annotations.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
* @author samnyan (privateamusement@protonmail.com)

View File

@@ -1,6 +1,6 @@
package icu.samnyan.aqua.sega.maimai2.dao.userdata
import icu.samnyan.aqua.net.utils.GenericUserDataRepo
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

View File

@@ -1,6 +1,6 @@
package icu.samnyan.aqua.sega.maimai2.dao.userdata;
import icu.samnyan.aqua.net.utils.GenericPlaylogRepo;
import icu.samnyan.aqua.net.games.GenericPlaylogRepo;
import icu.samnyan.aqua.sega.maimai2.model.userdata.UserDetail;
import icu.samnyan.aqua.sega.maimai2.model.userdata.UserPlaylog;

View File

@@ -5,7 +5,7 @@ import com.fasterxml.jackson.annotation.JsonInclude
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.databind.annotation.JsonSerialize
import ext.Str
import icu.samnyan.aqua.net.utils.IGenericUserData
import icu.samnyan.aqua.net.games.IGenericUserData
import icu.samnyan.aqua.sega.general.model.Card
import icu.samnyan.aqua.sega.maimai2.util.IntegerListConverter
import icu.samnyan.aqua.sega.util.jackson.AccessCodeSerializer

View File

@@ -2,13 +2,12 @@ package icu.samnyan.aqua.sega.maimai2.model.userdata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import icu.samnyan.aqua.net.utils.IGenericGamePlaylog;
import icu.samnyan.aqua.net.games.IGenericGamePlaylog;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.*;
import org.jetbrains.annotations.NotNull;
import java.io.Serializable;

View File

@@ -1,9 +1,8 @@
package icu.samnyan.aqua.sega.ongeki.dao.userdata
import icu.samnyan.aqua.net.utils.GenericUserDataRepo
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.JpaRepository
import org.springframework.data.jpa.repository.Query
import org.springframework.stereotype.Repository
import org.springframework.transaction.annotation.Transactional

View File

@@ -1,6 +1,6 @@
package icu.samnyan.aqua.sega.ongeki.dao.userdata
import icu.samnyan.aqua.net.utils.GenericPlaylogRepo
import icu.samnyan.aqua.net.games.GenericPlaylogRepo
import icu.samnyan.aqua.sega.ongeki.model.userdata.UserData
import icu.samnyan.aqua.sega.ongeki.model.userdata.UserPlaylog
import org.springframework.data.domain.Page

View File

@@ -3,7 +3,7 @@ package icu.samnyan.aqua.sega.ongeki.model.userdata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import icu.samnyan.aqua.net.utils.IGenericUserData;
import icu.samnyan.aqua.net.games.IGenericUserData;
import icu.samnyan.aqua.sega.general.model.Card;
import icu.samnyan.aqua.sega.util.jackson.AccessCodeSerializer;
import lombok.AllArgsConstructor;

View File

@@ -2,13 +2,12 @@ package icu.samnyan.aqua.sega.ongeki.model.userdata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import icu.samnyan.aqua.net.utils.IGenericGamePlaylog;
import icu.samnyan.aqua.net.games.IGenericGamePlaylog;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import jakarta.persistence.*;
import org.jetbrains.annotations.NotNull;
import java.io.Serializable;