From cb95918555bd635bf4942d8b38998d0821084fbb Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Thu, 12 Mar 2026 12:55:14 +0100 Subject: fix: filter request list into page (#267) --- src/main/kotlin/dev/dnpm/etl/processor/monitoring/Request.kt | 2 ++ src/main/kotlin/dev/dnpm/etl/processor/services/RequestService.kt | 7 +++++-- src/main/kotlin/dev/dnpm/etl/processor/web/HomeController.kt | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) (limited to 'src/main/kotlin/dev') diff --git a/src/main/kotlin/dev/dnpm/etl/processor/monitoring/Request.kt b/src/main/kotlin/dev/dnpm/etl/processor/monitoring/Request.kt index 5dbba2b..8b2776a 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/monitoring/Request.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/monitoring/Request.kt @@ -151,4 +151,6 @@ interface RequestRepository : fun findPatientUniqueDeleteStates(): List fun findByPatientPseudonymContainingIgnoreCaseOrTanContainingIgnoreCase(patientPseudonym: PatientPseudonym, tan: Tan, pageable: Pageable): Page + + fun findByPatientPseudonymContainingIgnoreCaseOrTanContainingIgnoreCase(patientPseudonym: PatientPseudonym, tan: Tan): List } diff --git a/src/main/kotlin/dev/dnpm/etl/processor/services/RequestService.kt b/src/main/kotlin/dev/dnpm/etl/processor/services/RequestService.kt index 7174974..6e7c2f3 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/services/RequestService.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/services/RequestService.kt @@ -41,6 +41,9 @@ class RequestService(private val requestRepository: RequestRepository) { fun searchRequestLike(patientPseudonym: PatientPseudonym, tan: Tan, pageable: Pageable): Page = requestRepository.findByPatientPseudonymContainingIgnoreCaseOrTanContainingIgnoreCase(patientPseudonym, tan, pageable) + fun searchRequestLike(patientPseudonym: PatientPseudonym, tan: Tan): List = + requestRepository.findByPatientPseudonymContainingIgnoreCaseOrTanContainingIgnoreCase(patientPseudonym, tan) + fun findByUuid(uuid: RequestId): Optional = requestRepository.findByUuidEquals(uuid) fun findRequestByPatientId( @@ -94,7 +97,7 @@ class RequestService(private val requestRepository: RequestRepository) { } } -fun Page.filter(filter: RequestService.Filter): Page { +fun List.filter(filter: RequestService.Filter, pageable: Pageable): Page { val list = this .toList() @@ -108,5 +111,5 @@ fun Page.filter(filter: RequestService.Filter): Page { || filter == RequestService.Filter.UNCONFIRMED && !it.submissionAccepted } - return PageImpl(list, this.pageable, list.size.toLong()) + return PageImpl(list, pageable, list.size.toLong()) } diff --git a/src/main/kotlin/dev/dnpm/etl/processor/web/HomeController.kt b/src/main/kotlin/dev/dnpm/etl/processor/web/HomeController.kt index 35045da..6622348 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/web/HomeController.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/web/HomeController.kt @@ -66,8 +66,8 @@ class HomeController( if (null != filter) { model.addAttribute("filter", filter.value) requestService - .searchRequestLike(PatientPseudonym(queryString), Tan(queryString), pageable) - .filter(filter) + .searchRequestLike(PatientPseudonym(queryString), Tan(queryString)) + .filter(filter, pageable) } else { requestService .searchRequestLike(PatientPseudonym(queryString), Tan(queryString), pageable) -- cgit v1.2.3