diff --git a/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java b/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java index fa3506456..e0663f785 100644 --- a/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java +++ b/src/main/java/org/springframework/samples/petclinic/owner/OwnerController.java @@ -110,9 +110,9 @@ class OwnerController { owner = ownersResults.iterator().next(); return "redirect:/owners/" + owner.getId(); } - // multiple owners found return addPaginationModel(page, model, ownersResults); + } private String addPaginationModel(int page, Model model, Page paginated) { diff --git a/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java b/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java index ab594841c..3326e64dd 100644 --- a/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java +++ b/src/main/java/org/springframework/samples/petclinic/owner/OwnerRepository.java @@ -24,6 +24,9 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; +import org.springframework.transaction.annotation.Transactional; + /** * Repository class for Owner domain objects All method names are compliant * with Spring Data naming conventions so this interface can easily be extended for Spring @@ -52,7 +55,9 @@ public interface OwnerRepository extends JpaRepository { * @return a Collection of matching {@link Owner}s (or an empty Collection if none * found) */ - Page findByLastNameStartingWith(String lastName, Pageable pageable); + + @Query("SELECT o FROM Owner o WHERE LOWER(CONCAT(o.firstName, ' ', o.lastName)) LIKE LOWER(CONCAT('%', :namePart, '%'))") + Page findByLastNameStartingWith(@Param("namePart") String namePart, Pageable pageable); /** * Retrieve an {@link Owner} from the data store by id. diff --git a/src/main/resources/templates/owners/findOwners.html b/src/main/resources/templates/owners/findOwners.html index 0a818fc79..bb77523eb 100644 --- a/src/main/resources/templates/owners/findOwners.html +++ b/src/main/resources/templates/owners/findOwners.html @@ -9,7 +9,7 @@ class="form-horizontal" id="search-owner-form">
- +
- +