fix: 数据集导出拼接sql出错
This commit is contained in:
parent
d571fa17c6
commit
4c0f8893e5
@ -32,6 +32,7 @@ public class WhereTree2Str {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
List<String> res = new ArrayList<>();
|
List<String> res = new ArrayList<>();
|
||||||
|
List<String> exportFilters = new ArrayList<>();
|
||||||
Map<String, String> fieldsDialect = new HashMap<>();
|
Map<String, String> fieldsDialect = new HashMap<>();
|
||||||
// permission trees
|
// permission trees
|
||||||
// 解析每个tree,然后多个tree之间用and拼接
|
// 解析每个tree,然后多个tree之间用and拼接
|
||||||
@ -42,11 +43,21 @@ public class WhereTree2Str {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
String treeExp = transTreeToWhere(tableObj, tree, originFields, fieldsDialect, isCross, dsMap, fieldParam, chartParam, pluginManage);
|
String treeExp = transTreeToWhere(tableObj, tree, originFields, fieldsDialect, isCross, dsMap, fieldParam, chartParam, pluginManage);
|
||||||
if (StringUtils.isNotEmpty(treeExp)) {
|
if (StringUtils.isNotEmpty(treeExp) && !request.isExportData()) {
|
||||||
res.add(treeExp);
|
res.add(treeExp);
|
||||||
}
|
}
|
||||||
|
if (StringUtils.isNotEmpty(treeExp) && request.isExportData()) {
|
||||||
|
exportFilters.add(treeExp);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
meta.setWhereTrees(CollectionUtils.isNotEmpty(res) ? "(" + String.join(" OR ", res) + ")" : null);
|
String whereSql = null;
|
||||||
|
if (CollectionUtils.isNotEmpty(res)) {
|
||||||
|
whereSql = String.join(" OR ", res);
|
||||||
|
}
|
||||||
|
if (CollectionUtils.isNotEmpty(exportFilters)) {
|
||||||
|
whereSql = whereSql == null ? String.join(" and ", exportFilters) : whereSql + " AND " + String.join(" and ", exportFilters);
|
||||||
|
}
|
||||||
|
meta.setWhereTrees(whereSql != null ? "(" + whereSql + ")" : null);
|
||||||
meta.setWhereTreesDialect(fieldsDialect);
|
meta.setWhereTreesDialect(fieldsDialect);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -180,10 +191,7 @@ public class WhereTree2Str {
|
|||||||
whereValue = String.format(SQLConstants.WHERE_VALUE_VALUE, value);
|
whereValue = String.format(SQLConstants.WHERE_VALUE_VALUE, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SQLObj build = SQLObj.builder()
|
SQLObj build = SQLObj.builder().whereField(whereName).whereTermAndValue(whereTerm + whereValue).build();
|
||||||
.whereField(whereName)
|
|
||||||
.whereTermAndValue(whereTerm + whereValue)
|
|
||||||
.build();
|
|
||||||
res = build.getWhereField() + " " + build.getWhereTermAndValue();
|
res = build.getWhereField() + " " + build.getWhereTermAndValue();
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
|
|||||||
@ -222,6 +222,10 @@ public class ExportCenterManage {
|
|||||||
ChartExcelRequest request = JsonUtil.parseObject(exportTask.getParams(), ChartExcelRequest.class);
|
ChartExcelRequest request = JsonUtil.parseObject(exportTask.getParams(), ChartExcelRequest.class);
|
||||||
startViewTask(exportTask, request);
|
startViewTask(exportTask, request);
|
||||||
}
|
}
|
||||||
|
if (exportTask.getExportFromType().equalsIgnoreCase("dataset")) {
|
||||||
|
DataSetExportRequest request = JsonUtil.parseObject(exportTask.getParams(), DataSetExportRequest.class);
|
||||||
|
startDatasetTask(exportTask, request);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<ExportTaskDTO> exportTasks(String status) {
|
public List<ExportTaskDTO> exportTasks(String status) {
|
||||||
@ -387,6 +391,7 @@ public class ExportCenterManage {
|
|||||||
permissionManage.getField(datasetRowPermissionsTreeObj);
|
permissionManage.getField(datasetRowPermissionsTreeObj);
|
||||||
DataSetRowPermissionsTreeDTO dataSetRowPermissionsTreeDTO = new DataSetRowPermissionsTreeDTO();
|
DataSetRowPermissionsTreeDTO dataSetRowPermissionsTreeDTO = new DataSetRowPermissionsTreeDTO();
|
||||||
dataSetRowPermissionsTreeDTO.setTree(datasetRowPermissionsTreeObj);
|
dataSetRowPermissionsTreeDTO.setTree(datasetRowPermissionsTreeObj);
|
||||||
|
dataSetRowPermissionsTreeDTO.setExportData(true);
|
||||||
rowPermissionsTree.add(dataSetRowPermissionsTreeDTO);
|
rowPermissionsTree.add(dataSetRowPermissionsTreeDTO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -68,4 +68,6 @@ public class DataSetRowPermissionsTreeDTO {
|
|||||||
private List<UserFormVO> whiteListUsers;
|
private List<UserFormVO> whiteListUsers;
|
||||||
private List<RoleVO> whiteListRoles;
|
private List<RoleVO> whiteListRoles;
|
||||||
private List<Long> authTargetIds;
|
private List<Long> authTargetIds;
|
||||||
|
private boolean exportData;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user