KON-406 zusätzliche Suche nach searchText
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java b/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
index 0bef2da..0b0ce65 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/controller/ContactController.java
@@ -65,9 +65,12 @@
@GetMapping(value = "/searchByModulName")
public Page<VwDetailedContact> findContacts(
@RequestParam( "modulName") Optional<String> modulName,
- //@RequestParam( "searchText" ) Optional<String> searchText,
+ @RequestParam( "searchText" ) Optional<String> searchText,
@PageableDefault( sort = {"id"}, size = 20, direction = ASC) Pageable pageable ) {
- return contactService.findDetailedContactsByModulName(modulName.orElse(null), pageable);
+ return contactService.findDetailedContactsByModulName(
+ modulName.orElse(null),
+ searchText.orElse(null),
+ pageable);
}
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java b/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
index 1a7540c..3f14e89 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/repository/DetailedContactRepository.java
@@ -42,6 +42,8 @@
@Query( "select dc from VwDetailedContact AS dc, TblContact AS c "
+ "inner join c.assignments a where "
+ "dc.fkContactId = c.id and"
- + "(COALESCE(:modulName) is null or COALESCE(:modulName) is not null AND a.modulName =:modulName)")
- Page<VwDetailedContact> findByModulName(@Param("modulName")String modulName, Pageable pageable);
+ + "(COALESCE(:modulName) is null or COALESCE(:modulName) is not null AND a.modulName =:modulName) and"
+ + "(COALESCE(:searchText) is null or COALESCE(:searchText) is not null AND dc.searchfield LIKE CONCAT ('%', :searchText , '%'))")
+ Page<VwDetailedContact> findByModulName(@Param("modulName")String modulName, @Param("searchText")String searchText, Pageable pageable);
}
+
diff --git a/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java b/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
index 8eeb896..3814d87 100644
--- a/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
+++ b/src/main/java/org/eclipse/openk/contactbasedata/service/ContactService.java
@@ -53,21 +53,10 @@
searchText != null ? searchText.toUpperCase() : null,
pageable);
}
-
}
-// public Page<ContactDto> findDetailedContactsByModulName(String modulName, Pageable pageable) {
-//
-// return contactRepository.findByModulName(modulName, pageable).map(contactMapper::toContactDto);
-//
-// }
-
- public Page<VwDetailedContact> findDetailedContactsByModulName(String modulName, Pageable pageable) {
-
- return detailedContactRepository.findByModulName(modulName, pageable);
-
+ public Page<VwDetailedContact> findDetailedContactsByModulName(String modulName, String searchText, Pageable pageable) {
+ return detailedContactRepository.findByModulName(modulName, searchText, pageable);
}
-
-
}