diff --git a/gradle.properties b/gradle.properties index 9c8402b..4f5d6aa 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ kotlin.code.style=official kotlin.stdlib.default.dependency=false org.gradle.parallel=true -version=2.5.3 +version=2.5.4 diff --git a/surf-core-microservice/src/main/kotlin/dev/slne/surf/core/microservice/database/repository/SurfPlayerRepository.kt b/surf-core-microservice/src/main/kotlin/dev/slne/surf/core/microservice/database/repository/SurfPlayerRepository.kt index 0fcb204..1b5f3fa 100644 --- a/surf-core-microservice/src/main/kotlin/dev/slne/surf/core/microservice/database/repository/SurfPlayerRepository.kt +++ b/surf-core-microservice/src/main/kotlin/dev/slne/surf/core/microservice/database/repository/SurfPlayerRepository.kt @@ -4,7 +4,9 @@ import dev.slne.surf.core.api.common.cache.OfflinePlayerNameCache import dev.slne.surf.core.api.common.player.SurfPlayer import dev.slne.surf.core.microservice.database.tables.SurfPlayersTable import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.core.ResultRow +import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.core.SortOrder import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.core.eq +import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.core.lowerCase import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.r2dbc.select import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.r2dbc.selectAll import dev.slne.surf.database.libs.org.jetbrains.exposed.v1.r2dbc.transactions.suspendTransaction @@ -19,9 +21,11 @@ object SurfPlayerRepository { suspend fun loadPlayerByName( name: String ): SurfPlayer? = suspendTransaction { - SurfPlayersTable.selectAll().where(SurfPlayersTable.name eq name).firstOrNull()?.let { - createPlayerByRow(it) - } + SurfPlayersTable.selectAll() + .where(SurfPlayersTable.name.lowerCase() eq name.lowercase()) + .orderBy(SurfPlayersTable.lastSeen, SortOrder.DESC_NULLS_LAST) + .firstOrNull() + ?.let { createPlayerByRow(it) } } suspend fun loadPlayerByUuid(