diff --git a/src/main/java/net/siegeln/cameleer/saas/audit/AuditRepository.java b/src/main/java/net/siegeln/cameleer/saas/audit/AuditRepository.java index 408cb89..fedd587 100644 --- a/src/main/java/net/siegeln/cameleer/saas/audit/AuditRepository.java +++ b/src/main/java/net/siegeln/cameleer/saas/audit/AuditRepository.java @@ -25,9 +25,9 @@ public interface AuditRepository extends JpaRepository { AND (:result IS NULL OR a.result = :result) AND (:from IS NULL OR a.createdAt >= :from) AND (:to IS NULL OR a.createdAt <= :to) - AND (:search IS NULL - OR LOWER(a.actorEmail) LIKE LOWER(CONCAT('%', COALESCE(:search, ''), '%')) - OR LOWER(a.resource) LIKE LOWER(CONCAT('%', COALESCE(:search, ''), '%'))) + AND (:search = '' + OR LOWER(a.actorEmail) LIKE LOWER(CONCAT('%', :search, '%')) + OR LOWER(a.resource) LIKE LOWER(CONCAT('%', :search, '%'))) ORDER BY a.createdAt DESC """) Page findFiltered( diff --git a/src/main/java/net/siegeln/cameleer/saas/audit/AuditService.java b/src/main/java/net/siegeln/cameleer/saas/audit/AuditService.java index 6d13e09..87bea93 100644 --- a/src/main/java/net/siegeln/cameleer/saas/audit/AuditService.java +++ b/src/main/java/net/siegeln/cameleer/saas/audit/AuditService.java @@ -37,6 +37,7 @@ public class AuditService { public Page search(UUID tenantId, String action, String result, Instant from, Instant to, String search, Pageable pageable) { - return auditRepository.findFiltered(tenantId, action, result, from, to, search, pageable); + String safeSearch = (search != null && !search.isBlank()) ? search.trim() : ""; + return auditRepository.findFiltered(tenantId, action, result, from, to, safeSearch, pageable); } }