From f1b1e3f7d6116e063f57d3453e9b90f30cd7107b Mon Sep 17 00:00:00 2001 From: yunfan24 Date: Wed, 5 Feb 2025 15:56:31 +0800 Subject: [PATCH] [improve] Search ignores case sensitivity. (#3042) Co-authored-by: tomsun28 --- .../hertzbeat/manager/service/impl/CollectorServiceImpl.java | 2 +- .../hertzbeat/manager/service/impl/MonitorServiceImpl.java | 2 +- .../apache/hertzbeat/manager/service/impl/TagServiceImpl.java | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/CollectorServiceImpl.java b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/CollectorServiceImpl.java index b87965b41a..4be9c982b3 100644 --- a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/CollectorServiceImpl.java +++ b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/CollectorServiceImpl.java @@ -71,7 +71,7 @@ public class CollectorServiceImpl implements CollectorService { Specification specification = (root, query, criteriaBuilder) -> { Predicate predicate = criteriaBuilder.conjunction(); if (StringUtils.isNotBlank(name)) { - Predicate predicateName = criteriaBuilder.like(root.get("name"), "%" + name + "%"); + Predicate predicateName = criteriaBuilder.like(criteriaBuilder.lower(root.get("name")), "%" + name.toLowerCase() + "%"); predicate = criteriaBuilder.and(predicateName); } return predicate; diff --git a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/MonitorServiceImpl.java b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/MonitorServiceImpl.java index 00f7c6fbfe..06f45677a7 100644 --- a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/MonitorServiceImpl.java +++ b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/MonitorServiceImpl.java @@ -566,7 +566,7 @@ public class MonitorServiceImpl implements MonitorService { List orList = new ArrayList<>(); if (StringUtils.isNotBlank(search)) { Predicate predicateHost = criteriaBuilder.like(root.get("host"), "%" + search + "%"); - Predicate predicateName = criteriaBuilder.like(root.get("name"), "%" + search + "%"); + Predicate predicateName = criteriaBuilder.like(criteriaBuilder.lower(root.get("name")), "%" + search.toLowerCase() + "%"); Predicate predicateId = criteriaBuilder.like(root.get("id"), "%" + search + "%"); orList.add(predicateHost); orList.add(predicateName); diff --git a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/TagServiceImpl.java b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/TagServiceImpl.java index 0594dcc099..1c2dffd69b 100644 --- a/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/TagServiceImpl.java +++ b/hertzbeat-manager/src/main/java/org/apache/hertzbeat/manager/service/impl/TagServiceImpl.java @@ -92,9 +92,9 @@ public class TagServiceImpl implements TagService { List orList = new ArrayList<>(); if (StringUtils.isNotBlank(search)) { - Predicate predicateName = criteriaBuilder.like(root.get("name"), "%" + search + "%"); + Predicate predicateName = criteriaBuilder.like(criteriaBuilder.lower(root.get("name")), "%" + search.toLowerCase() + "%"); orList.add(predicateName); - Predicate predicateValue = criteriaBuilder.like(root.get("tagValue"), "%" + search + "%"); + Predicate predicateValue = criteriaBuilder.like(criteriaBuilder.lower(root.get("tagValue")), "%" + search.toLowerCase() + "%"); orList.add(predicateValue); } Predicate[] orPredicates = new Predicate[orList.size()];