diff --git a/src/main/kotlin/controller/api/TagApiController.kt b/src/main/kotlin/controller/api/TagApiController.kt index 0cd5369..2c2621f 100644 --- a/src/main/kotlin/controller/api/TagApiController.kt +++ b/src/main/kotlin/controller/api/TagApiController.kt @@ -42,6 +42,14 @@ return ResponseEntity.ok(null) } + @DeleteMapping("{slug}") + fun deleteTag( + @PathVariable("slug") slug: String + ): ResponseEntity { + tagService.deleteTag(slug) + return ResponseEntity.ok(null) + } + @PostMapping("audio/{slug}") fun addAudioList( @PathVariable("slug") slug: String, diff --git a/src/main/kotlin/service/TagService.kt b/src/main/kotlin/service/TagService.kt index 4d5d70b..c35c8cc 100644 --- a/src/main/kotlin/service/TagService.kt +++ b/src/main/kotlin/service/TagService.kt @@ -41,6 +41,11 @@ } ?: throw NotFoundException() } + fun deleteTag(slug: String) = tagDao.findOneBySlugWithLock(slug) + ?.let { + tagDao.deleteById(it.id) + } ?: throw NotFoundException() + fun getAudioListByTagSlug(tagSlug: String): TagAudioResponse = tagDao.findOneBySlug(tagSlug) ?.let { tag ->