forked from github/dataease
fix(图表): 明细表脱敏字段未显示
This commit is contained in:
parent
349d98f2a4
commit
6633efd536
@ -104,10 +104,6 @@ public class ChartDataManage {
|
|||||||
DEException.throwException(ResultCode.DATA_IS_WRONG.code(), Translator.get("i18n_chart_not_handler") + ": " + view.getRender() + "," + view.getType());
|
DEException.throwException(ResultCode.DATA_IS_WRONG.code(), Translator.get("i18n_chart_not_handler") + ": " + view.getRender() + "," + view.getType());
|
||||||
}
|
}
|
||||||
|
|
||||||
AxisFormatResult formatResult = chartHandler.formatAxis(view);
|
|
||||||
var xAxis = formatResult.getAxisMap().get(ChartAxis.xAxis);
|
|
||||||
var yAxis = formatResult.getAxisMap().get(ChartAxis.yAxis);
|
|
||||||
|
|
||||||
DatasetGroupInfoDTO table = datasetGroupManage.getDatasetGroupInfoDTO(view.getTableId(), null);
|
DatasetGroupInfoDTO table = datasetGroupManage.getDatasetGroupInfoDTO(view.getTableId(), null);
|
||||||
if (table == null) {
|
if (table == null) {
|
||||||
DEException.throwException(ResultCode.DATA_IS_WRONG.code(), Translator.get("i18n_no_ds"));
|
DEException.throwException(ResultCode.DATA_IS_WRONG.code(), Translator.get("i18n_no_ds"));
|
||||||
@ -122,7 +118,6 @@ public class ChartDataManage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<ChartViewFieldDTO> allFields = getAllChartFields(view);
|
List<ChartViewFieldDTO> allFields = getAllChartFields(view);
|
||||||
formatResult.getContext().put("allFields", allFields);
|
|
||||||
// column permission
|
// column permission
|
||||||
Map<String, ColumnPermissionItem> desensitizationList = new HashMap<>();
|
Map<String, ColumnPermissionItem> desensitizationList = new HashMap<>();
|
||||||
List<DatasetTableFieldDTO> columnPermissionFields = permissionManage.filterColumnPermissions(transFields(allFields), desensitizationList, table.getId(), chartExtRequest.getUser());
|
List<DatasetTableFieldDTO> columnPermissionFields = permissionManage.filterColumnPermissions(transFields(allFields), desensitizationList, table.getId(), chartExtRequest.getUser());
|
||||||
@ -130,13 +125,18 @@ public class ChartDataManage {
|
|||||||
List<DataSetRowPermissionsTreeDTO> rowPermissionsTree = permissionManage.getRowPermissionsTree(table.getId(), chartExtRequest.getUser());
|
List<DataSetRowPermissionsTreeDTO> rowPermissionsTree = permissionManage.getRowPermissionsTree(table.getId(), chartExtRequest.getUser());
|
||||||
//将没有权限的列删掉
|
//将没有权限的列删掉
|
||||||
List<String> dataeaseNames = columnPermissionFields.stream().map(DatasetTableFieldDTO::getDataeaseName).collect(Collectors.toList());
|
List<String> dataeaseNames = columnPermissionFields.stream().map(DatasetTableFieldDTO::getDataeaseName).collect(Collectors.toList());
|
||||||
dataeaseNames.add("*");
|
|
||||||
|
AxisFormatResult formatResult = chartHandler.formatAxis(view);
|
||||||
|
formatResult.getContext().put("desensitizationList", desensitizationList);
|
||||||
|
var xAxis = formatResult.getAxisMap().get(ChartAxis.xAxis);
|
||||||
|
var yAxis = formatResult.getAxisMap().get(ChartAxis.yAxis);
|
||||||
|
formatResult.getContext().put("allFields", allFields);
|
||||||
var axisMap = formatResult.getAxisMap();
|
var axisMap = formatResult.getAxisMap();
|
||||||
axisMap.forEach((axis, fields) -> {
|
axisMap.forEach((axis, fields) -> {
|
||||||
Iterator<ChartViewFieldDTO> iterator = fields.iterator();
|
Iterator<ChartViewFieldDTO> iterator = fields.iterator();
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
ChartViewFieldDTO fieldDTO = iterator.next();
|
ChartViewFieldDTO fieldDTO = iterator.next();
|
||||||
if (desensitizationList.containsKey(fieldDTO.getDataeaseName()) || !dataeaseNames.contains(fieldDTO.getDataeaseName())) {
|
if (!dataeaseNames.contains(fieldDTO.getDataeaseName())) {
|
||||||
iterator.remove();
|
iterator.remove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -356,7 +356,6 @@ public class ChartDataManage {
|
|||||||
filterResult.getContext().put("querySql", querySql);
|
filterResult.getContext().put("querySql", querySql);
|
||||||
}
|
}
|
||||||
ChartCalcDataResult calcResult = chartHandler.calcChartResult(view, formatResult, filterResult, sqlMap, sqlMeta, calciteProvider);
|
ChartCalcDataResult calcResult = chartHandler.calcChartResult(view, formatResult, filterResult, sqlMap, sqlMeta, calciteProvider);
|
||||||
formatResult.getContext().put("desensitizationList", desensitizationList);
|
|
||||||
return chartHandler.buildChart(view, calcResult, formatResult, filterResult);
|
return chartHandler.buildChart(view, calcResult, formatResult, filterResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user