From ce88e8ce80b8373b39de95cd35bdd4a2b2516789 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Mon, 25 Dec 2023 13:33:49 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20PG=E6=95=B0=E6=8D=AE=E6=BA=90=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E6=95=B0=E5=AD=97=E4=B8=8B=E6=8B=89=E6=A8=A1=E7=B3=8A?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/dataease/provider/query/pg/PgQueryProvider.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java index a384fb7076..5ff7192e0b 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/pg/PgQueryProvider.java @@ -183,8 +183,13 @@ public class PgQueryProvider extends QueryProvider { String whereTrees = transFilterTrees(tableObj, rowPermissionsTree); List wheres = new ArrayList<>(); if (customWheres != null) wheres.add(customWheres); - if (StringUtils.isNotBlank(keyword)) { - String keyWhere = "(" + transKeywordFilterList(tableObj, xFields, keyword) + ")"; + if (StringUtils.isNotBlank(keyword) && CollectionUtils.isNotEmpty(xFields)) { + List formatFields = xFields.stream().peek(f -> { + String fieldOriginName = f.getFieldOriginName(); + String format = String.format(PgConstants.CAST, fieldOriginName, "VARCHAR"); + f.setFieldOriginName(format); + }).collect(Collectors.toList()); + String keyWhere = "(" + transKeywordFilterList(tableObj, formatFields, keyword) + ")"; wheres.add(keyWhere); } if (whereTrees != null) wheres.add(whereTrees);