Skip to content

Commit 83aac1d

Browse files
committed
FEATURE : add search criteria in controller #4
1 parent 27ebbb5 commit 83aac1d

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package eom.improve.kafkaboot.common
2+
3+
// change SearchCriteria to data class
4+
data class SearchCriteria(
5+
var name: String? = null,
6+
var from: Int? = null,
7+
var to: Int? = null
8+
)

src/main/kotlin/eom/improve/kafkaboot/controller/FilmController.kt

+3-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ import reactor.core.publisher.Mono
1111
interface FilmController {
1212

1313
@GetMapping("/list/all")
14-
fun getAllFilms() : Mono<List<Film>>
14+
fun getAllFilms(@RequestParam name : String?,
15+
@RequestParam from : Int?,
16+
@RequestParam to : Int?) : Mono<List<Film>>
1517

1618
@GetMapping("/list/{page}/{limit}")
1719
fun getFilms(@PathVariable page: Long, @PathVariable limit: Long) : Mono<PaginatedResponse<Film>>

src/main/kotlin/eom/improve/kafkaboot/service/FilmControllerImpl.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package eom.improve.kafkaboot.service
22

33
import eom.improve.kafkaboot.common.PaginatedResponse
4+
import eom.improve.kafkaboot.common.SearchCriteria
45
import eom.improve.kafkaboot.controller.FilmController
56
import eom.improve.kafkaboot.dto.Film
67
import org.springframework.data.domain.PageRequest
@@ -13,7 +14,7 @@ class FilmControllerImpl(
1314
private val filmService: FilmService
1415
) : FilmController{
1516

16-
override fun getAllFilms(): Mono<List<Film>> {
17+
override fun getAllFilms(searchCriteria : SearchCriteria): Mono<List<Film>> {
1718
return filmService.findAll().map { it.convert2Pojo() }
1819
.collectSortedList((Comparator<Film> { o1, o2 -> o1.filmId.compareTo(o2.filmId) }))
1920
}

0 commit comments

Comments
 (0)