parent
01aeb8e759
commit
c097cb54f1
|
@ -86,18 +86,38 @@ class NewRouletteService(
|
||||||
fun updateRoulette(memberId: Long, request: UpdateNewRouletteRequest): Boolean {
|
fun updateRoulette(memberId: Long, request: UpdateNewRouletteRequest): Boolean {
|
||||||
rouletteValidate(can = request.can, items = request.items)
|
rouletteValidate(can = request.can, items = request.items)
|
||||||
|
|
||||||
val roulette = repository.findByIdOrNull(request.id)
|
if (request.isActive) {
|
||||||
?: throw SodaException("잘못된 요청입니다.")
|
val rouletteList = repository.findByCreatorId(creatorId = memberId)
|
||||||
|
|
||||||
if (roulette.creatorId != memberId) {
|
if (rouletteList.isEmpty()) {
|
||||||
throw SodaException("잘못된 요청입니다.")
|
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)
|
||||||
}
|
}
|
||||||
|
|
||||||
roulette.can = request.can
|
|
||||||
roulette.items = request.items
|
|
||||||
roulette.isActive = request.isActive
|
|
||||||
repository.save(roulette)
|
|
||||||
|
|
||||||
return request.isActive
|
return request.isActive
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue