룰렛 업데이트

- 룰렛 프리셋 중 하나라도 활성화 되어 있으면 결과값을 활성화로 리턴하도록 수정
This commit is contained in:
Klaus 2024-02-23 17:47:09 +09:00
parent 348936a67e
commit 9f3a25bd7d
1 changed files with 21 additions and 30 deletions

View File

@ -86,39 +86,30 @@ class NewRouletteService(
fun updateRoulette(memberId: Long, request: UpdateNewRouletteRequest): Boolean {
rouletteValidate(can = request.can, items = request.items)
if (request.isActive) {
val rouletteList = repository.findByCreatorId(creatorId = memberId)
val rouletteList = repository.findByCreatorId(creatorId = memberId)
if (rouletteList.isEmpty()) {
throw SodaException("잘못된 요청입니다.")
}
rouletteList.forEach {
if (it.id == request.id) {
it.can = request.can
it.items = request.items
it.isActive = true
} else {
it.isActive = false
}
repository.save(it)
}
} else {
val roulette = repository.findByIdOrNull(request.id)
?: throw SodaException("잘못된 요청입니다.")
if (roulette.creatorId != memberId) {
throw SodaException("잘못된 요청입니다.")
}
roulette.can = request.can
roulette.items = request.items
roulette.isActive = false
repository.save(roulette)
if (rouletteList.isEmpty()) {
throw SodaException("잘못된 요청입니다.")
}
return request.isActive
var isActive = false
rouletteList.forEach {
if (request.isActive || it.isActive) {
isActive = true
}
if (it.id == request.id) {
it.can = request.can
it.items = request.items
it.isActive = request.isActive
repository.save(it)
} else if (request.isActive) {
it.isActive = false
repository.save(it)
}
}
return isActive
}
fun getRoulette(creatorId: Long, memberId: Long): GetRouletteResponse {