diff --git a/backend/src/main/java/io/dataease/provider/datasource/ApiProvider.java b/backend/src/main/java/io/dataease/provider/datasource/ApiProvider.java index 401e79df28..da6d25f20c 100644 --- a/backend/src/main/java/io/dataease/provider/datasource/ApiProvider.java +++ b/backend/src/main/java/io/dataease/provider/datasource/ApiProvider.java @@ -374,7 +374,7 @@ public class ApiProvider extends Provider { for (int i = 0; i < jsonPaths.size(); i++) { List datas = new ArrayList<>(); Object object = JsonPath.read(result, jsonPaths.get(i)); - if (object instanceof List) { + if (object instanceof List && jsonPaths.get(i).contains("[*]")) { datas = (List) object; } else { if (object != null) { @@ -390,7 +390,7 @@ public class ApiProvider extends Provider { } for (int i = 0; i < columnDataList.size(); i++) { for (int j = 0; j < columnDataList.get(i).size(); j++) { - dataList.get(j)[i] = String.valueOf(columnDataList.get(i).get(j)); + dataList.get(j)[i] = Optional.ofNullable(columnDataList.get(i).get(j)).orElse("").replaceAll("\n", " ").replaceAll("\r", " "); } } } diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index 7b954e10f2..3322035bde 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -1032,7 +1032,7 @@ public class DataSetTableService { } Expression expr = plainSelect.getWhere(); if (expr == null) { - return plainSelect.toString(); + return handleWith(plainSelect, select); } StringBuilder stringBuilder = new StringBuilder(); BinaryExpression binaryExpression = null; @@ -1046,7 +1046,10 @@ public class DataSetTableService { expr.accept(getExpressionDeParser(stringBuilder)); } plainSelect.setWhere(CCJSqlParserUtil.parseCondExpression(stringBuilder.toString())); + return handleWith(plainSelect, select); + } + private String handleWith(PlainSelect plainSelect, Select select)throws Exception{ StringBuilder builder = new StringBuilder(); if (CollectionUtils.isNotEmpty(select.getWithItemsList())) { builder.append("WITH"); @@ -1063,7 +1066,6 @@ public class DataSetTableService { builder.append(" " + plainSelect); return builder.toString(); } - public Map getSQLPreview(DataSetTableRequest dataSetTableRequest) throws Exception { Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId()); if (ds == null) { diff --git a/frontend/src/lang/en.js b/frontend/src/lang/en.js index 6a4868a6b4..381baaf87b 100644 --- a/frontend/src/lang/en.js +++ b/frontend/src/lang/en.js @@ -2219,7 +2219,7 @@ export default { i18n_msg_type_all: 'All type', i18n_msg_type_ds_invalid: 'Datasource invalid', channel_inner_msg: 'On site news', - channel_email_msg: 'Email reminder' + channel_email_msg: 'Mail notification' }, denumberrange: { label: 'Number range',