mirror of
https://github.com/gotson/komga.git
synced 2025-12-06 08:32:25 +01:00
added basic search by name for Series
This commit is contained in:
parent
4bf32fe332
commit
f38660b45c
2 changed files with 15 additions and 3 deletions
|
|
@ -2,11 +2,12 @@ package org.gotson.komga.domain.persistence
|
|||
|
||||
import org.gotson.komga.domain.model.Serie
|
||||
import org.springframework.data.jpa.repository.JpaRepository
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor
|
||||
import org.springframework.stereotype.Repository
|
||||
import java.net.URL
|
||||
|
||||
@Repository
|
||||
interface SerieRepository : JpaRepository<Serie, Long> {
|
||||
interface SerieRepository : JpaRepository<Serie, Long>, JpaSpecificationExecutor<Serie> {
|
||||
fun deleteAllByUrlNotIn(urls: Iterable<URL>)
|
||||
fun countByUrlNotIn(urls: Iterable<URL>): Long
|
||||
fun findByUrl(url: URL): Serie?
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package org.gotson.komga.interfaces.web
|
||||
|
||||
import com.github.klinq.jpaspec.likeLower
|
||||
import org.gotson.komga.domain.model.Book
|
||||
import org.gotson.komga.domain.model.Serie
|
||||
import org.gotson.komga.domain.model.Status
|
||||
|
|
@ -30,8 +31,18 @@ class SerieController(
|
|||
) {
|
||||
|
||||
@GetMapping
|
||||
fun getAllSeries(page: Pageable) =
|
||||
serieRepository.findAll(page).map { it.toDto() }
|
||||
fun getAllSeries(
|
||||
@RequestParam("search")
|
||||
searchTerm: String?,
|
||||
|
||||
page: Pageable
|
||||
): Page<SerieDto> =
|
||||
if (!searchTerm.isNullOrEmpty()) {
|
||||
val spec = Serie::name.likeLower("%$searchTerm%")
|
||||
serieRepository.findAll(spec, page)
|
||||
} else {
|
||||
serieRepository.findAll(page)
|
||||
}.map { it.toDto() }
|
||||
|
||||
@GetMapping("{id}")
|
||||
fun getOneSerie(
|
||||
|
|
|
|||
Loading…
Reference in a new issue