mirror of https://github.com/hykilpikonna/AquaDX
[O] Separate randExtId
parent
ab075c0554
commit
aa3b831a68
|
@ -10,6 +10,7 @@ import icu.samnyan.aqua.net.db.AquaNetUserRepo
|
||||||
import icu.samnyan.aqua.net.db.EmailConfirmationRepo
|
import icu.samnyan.aqua.net.db.EmailConfirmationRepo
|
||||||
import icu.samnyan.aqua.sega.general.dao.CardRepository
|
import icu.samnyan.aqua.sega.general.dao.CardRepository
|
||||||
import icu.samnyan.aqua.sega.general.model.Card
|
import icu.samnyan.aqua.sega.general.model.Card
|
||||||
|
import icu.samnyan.aqua.sega.general.service.CardService
|
||||||
import jakarta.servlet.http.HttpServletRequest
|
import jakarta.servlet.http.HttpServletRequest
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder
|
import org.springframework.security.crypto.password.PasswordEncoder
|
||||||
import org.springframework.web.bind.annotation.PostMapping
|
import org.springframework.web.bind.annotation.PostMapping
|
||||||
|
@ -29,7 +30,8 @@ class UserRegistrar(
|
||||||
val geoIP: GeoIP,
|
val geoIP: GeoIP,
|
||||||
val jwt: JWT,
|
val jwt: JWT,
|
||||||
val confirmationRepo: EmailConfirmationRepo,
|
val confirmationRepo: EmailConfirmationRepo,
|
||||||
val cardRepo: CardRepository
|
val cardRepo: CardRepository,
|
||||||
|
val cardService: CardService
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
// Random long with length 19 (10^19 possibilities)
|
// Random long with length 19 (10^19 possibilities)
|
||||||
|
@ -80,7 +82,7 @@ class UserRegistrar(
|
||||||
|
|
||||||
// Create a ghost card
|
// Create a ghost card
|
||||||
val card = Card().apply {
|
val card = Card().apply {
|
||||||
extId = Random().nextLong(cardExtIdStart, cardExtIdEnd)
|
extId = cardService.randExtID(cardExtIdStart, cardExtIdEnd)
|
||||||
luid = extId.toString()
|
luid = extId.toString()
|
||||||
registerTime = LocalDateTime.now()
|
registerTime = LocalDateTime.now()
|
||||||
accessTime = registerTime
|
accessTime = registerTime
|
||||||
|
|
|
@ -52,4 +52,12 @@ class CardService(val cardRepo: CardRepository) {
|
||||||
accessTime = registerTime
|
accessTime = registerTime
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun randExtID(lower: Long = 0, upper: Long = 99999999): Long {
|
||||||
|
var eid = ThreadLocalRandom.current().nextLong(lower, upper)
|
||||||
|
while (cardRepo.findByExtId(eid).isPresent) {
|
||||||
|
eid = ThreadLocalRandom.current().nextLong(lower, upper)
|
||||||
|
}
|
||||||
|
return eid
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue