Refactor EventFights and Fight classes to improve player initialization and retrieval

Signed-off-by: Chaoscaot <max@maxsp.de>
This commit is contained in:
2025-11-14 23:14:13 +01:00
parent 8b4f864f99
commit 8d705e7a84
3 changed files with 10 additions and 4 deletions
+1 -1
View File
@@ -141,7 +141,7 @@ class Fight(id: EntityID<Int>) : IntEntity(id) {
lateinit var bluePlayers: List<FightPlayer>
lateinit var redPlayers: List<FightPlayer>
private fun initPlayers(fightPlayers: List<FightPlayer>) {
fun initPlayers(fightPlayers: List<FightPlayer>) {
val blue = mutableListOf<FightPlayer>()
val red = mutableListOf<FightPlayer>()
@@ -23,6 +23,7 @@ import de.steamwar.sql.internal.useDb
import org.jetbrains.exposed.v1.core.dao.id.CompositeID
import org.jetbrains.exposed.v1.core.dao.id.CompositeIdTable
import org.jetbrains.exposed.v1.core.dao.id.EntityID
import org.jetbrains.exposed.v1.core.eq
import org.jetbrains.exposed.v1.core.inList
import org.jetbrains.exposed.v1.dao.CompositeEntity
import org.jetbrains.exposed.v1.dao.CompositeEntityClass
@@ -67,6 +68,11 @@ class FightPlayer(id: EntityID<CompositeID>) : CompositeEntity(id) {
fun batchGet(fightIds: List<Int>) = useDb {
find { FightPlayerTable.fightId inList fightIds.toList() }.toList()
}
@JvmStatic
fun getFight(fightId: Int) = useDb {
find { FightPlayerTable.fightId eq fightId }.toList()
}
}
val fightID by FightPlayerTable.fightId.transform({ EntityID(it, FightTable) }, { it.value })