From 1929061393d97324fd61139929b6011114810021 Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Tue, 25 Aug 2020 18:11:32 +0800 Subject: [PATCH] feat(api): get all publishers --- .../komga/domain/persistence/ReferentialRepository.kt | 1 + .../org/gotson/komga/infrastructure/jooq/ReferentialDao.kt | 7 +++++++ .../gotson/komga/interfaces/rest/ReferentialController.kt | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReferentialRepository.kt b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReferentialRepository.kt index cb5d479f..af6be198 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReferentialRepository.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/persistence/ReferentialRepository.kt @@ -5,4 +5,5 @@ interface ReferentialRepository { fun findAllGenres(): Set fun findAllTags(): Set fun findAllLanguages(): Set + fun findAllPublishers(): Set } diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReferentialDao.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReferentialDao.kt index f1fff410..3c756613 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReferentialDao.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/ReferentialDao.kt @@ -46,4 +46,11 @@ class ReferentialDao( .from(sd) .orderBy(sd.LANGUAGE) .fetchSet(sd.LANGUAGE) + + override fun findAllPublishers(): Set = + dsl.selectDistinct(sd.PUBLISHER) + .from(sd) + .where(sd.PUBLISHER.ne("")) + .orderBy(sd.PUBLISHER) + .fetchSet(sd.PUBLISHER) } diff --git a/komga/src/main/kotlin/org/gotson/komga/interfaces/rest/ReferentialController.kt b/komga/src/main/kotlin/org/gotson/komga/interfaces/rest/ReferentialController.kt index 843f95ea..3cb85722 100644 --- a/komga/src/main/kotlin/org/gotson/komga/interfaces/rest/ReferentialController.kt +++ b/komga/src/main/kotlin/org/gotson/komga/interfaces/rest/ReferentialController.kt @@ -31,4 +31,8 @@ class ReferentialController( @GetMapping("/languages") fun getLanguages(): Set = referentialRepository.findAllLanguages() + + @GetMapping("/publishers") + fun getPublishers(): Set = + referentialRepository.findAllPublishers() }