1
0
mirror of https://github.com/pcvolkmer/etl-processor.git synced 2025-07-04 15:32:55 +00:00

feat: add paginator to request page

This commit is contained in:
2024-01-10 09:12:02 +01:00
parent af767e4ea6
commit d88e2973da
4 changed files with 100 additions and 30 deletions

View File

@ -24,6 +24,7 @@ import org.springframework.data.jdbc.repository.query.Query
import org.springframework.data.relational.core.mapping.Embedded
import org.springframework.data.relational.core.mapping.Table
import org.springframework.data.repository.CrudRepository
import org.springframework.data.repository.PagingAndSortingRepository
import java.time.Instant
import java.util.*
@ -52,7 +53,7 @@ data class CountedState(
val status: RequestStatus,
)
interface RequestRepository : CrudRepository<Request, Long> {
interface RequestRepository : CrudRepository<Request, Long>, PagingAndSortingRepository<Request, Long> {
fun findAllByPatientIdOrderByProcessedAtDesc(patientId: String): List<Request>

View File

@ -23,6 +23,9 @@ import dev.dnpm.etl.processor.NotFoundException
import dev.dnpm.etl.processor.monitoring.ReportService
import dev.dnpm.etl.processor.monitoring.RequestId
import dev.dnpm.etl.processor.monitoring.RequestRepository
import org.springframework.data.domain.Pageable
import org.springframework.data.domain.Sort
import org.springframework.data.web.PageableDefault
import org.springframework.stereotype.Controller
import org.springframework.ui.Model
import org.springframework.web.bind.annotation.GetMapping
@ -37,8 +40,8 @@ class HomeController(
) {
@GetMapping
fun index(model: Model): String {
val requests = requestRepository.findAll().sortedByDescending { it.processedAt }.take(25)
fun index(@PageableDefault(page = 0, size = 20, sort = ["processedAt"], direction = Sort.Direction.DESC) pageable: Pageable, model: Model): String {
val requests = requestRepository.findAll(pageable)
model.addAttribute("requests", requests)
return "index"