diff --git a/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java b/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java index 8ce8bc3aa1..1352d8205b 100644 --- a/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java +++ b/core/core-backend/src/main/java/io/dataease/chart/manage/ChartDataManage.java @@ -335,6 +335,7 @@ public class ChartDataManage { extFilterList = extFilterList.stream().peek(ele -> { if (ObjectUtils.isNotEmpty(ele.getValue())) { List collect = ele.getValue().stream().map(SQLUtils::transKeyword).collect(Collectors.toList()); + ele.setOriginValue(ele.getValue()); ele.setValue(collect); } }).collect(Collectors.toList()); diff --git a/core/core-backend/src/main/java/io/dataease/engine/utils/SQLUtils.java b/core/core-backend/src/main/java/io/dataease/engine/utils/SQLUtils.java index 819fcd5d5f..7d0c569784 100644 --- a/core/core-backend/src/main/java/io/dataease/engine/utils/SQLUtils.java +++ b/core/core-backend/src/main/java/io/dataease/engine/utils/SQLUtils.java @@ -7,7 +7,7 @@ import java.util.Optional; */ public class SQLUtils { public static String transKeyword(String value) { - return Optional.ofNullable(value).orElse("").replaceAll("'", "''"); + return Optional.ofNullable(value).orElse("").replaceAll("'", "''").replaceAll("\\\\","\\\\\\\\"); } public static String buildOriginPreviewSql(String sql, int limit, int offset) {