parent
d090631d1c
commit
6182a7a77e
|
@ -0,0 +1,19 @@
|
||||||
|
package kr.co.vividnext.sodalive.admin.audition.applicant
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
|
import org.springframework.security.access.prepost.PreAuthorize
|
||||||
|
import org.springframework.web.bind.annotation.DeleteMapping
|
||||||
|
import org.springframework.web.bind.annotation.PathVariable
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping
|
||||||
|
import org.springframework.web.bind.annotation.RestController
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@PreAuthorize("hasRole('ADMIN')")
|
||||||
|
@RequestMapping("/admin/audition/applicant")
|
||||||
|
class AdminAuditionApplicantController(private val service: AdminAuditionApplicantService) {
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
fun deleteAuditionApplicant(@PathVariable id: Long) = ApiResponse.ok(
|
||||||
|
service.deleteAuditionApplicant(id),
|
||||||
|
"삭제되었습니다."
|
||||||
|
)
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
package kr.co.vividnext.sodalive.admin.audition.applicant
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.audition.AuditionApplicant
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository
|
||||||
|
|
||||||
|
interface AdminAuditionApplicantRepository : JpaRepository<AuditionApplicant, Long>
|
|
@ -0,0 +1,17 @@
|
||||||
|
package kr.co.vividnext.sodalive.admin.audition.applicant
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaException
|
||||||
|
import org.springframework.data.repository.findByIdOrNull
|
||||||
|
import org.springframework.stereotype.Service
|
||||||
|
import org.springframework.transaction.annotation.Transactional
|
||||||
|
|
||||||
|
@Service
|
||||||
|
class AdminAuditionApplicantService(private val repository: AdminAuditionApplicantRepository) {
|
||||||
|
@Transactional
|
||||||
|
fun deleteAuditionApplicant(id: Long) {
|
||||||
|
val applicant = repository.findByIdOrNull(id)
|
||||||
|
?: throw SodaException("잘못된 요청입니다.")
|
||||||
|
|
||||||
|
applicant.isActive = false
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue