forked from github/dataease
commit
dabdc89704
@ -258,7 +258,7 @@ public class ChartViewService {
|
|||||||
// 下钻
|
// 下钻
|
||||||
boolean isDrill = false;
|
boolean isDrill = false;
|
||||||
List<ChartDrillRequest> drillRequest = requestList.getDrill();
|
List<ChartDrillRequest> drillRequest = requestList.getDrill();
|
||||||
if (CollectionUtils.isNotEmpty(drillRequest) && (drill.size() >= drillRequest.size())) {
|
if (CollectionUtils.isNotEmpty(drillRequest) && (drill.size() > drillRequest.size())) {
|
||||||
for (int i = 0; i < drillRequest.size(); i++) {
|
for (int i = 0; i < drillRequest.size(); i++) {
|
||||||
ChartDrillRequest request = drillRequest.get(i);
|
ChartDrillRequest request = drillRequest.get(i);
|
||||||
for (ChartDimensionDTO dto : request.getDimensionList()) {
|
for (ChartDimensionDTO dto : request.getDimensionList()) {
|
||||||
@ -278,10 +278,16 @@ public class ChartViewService {
|
|||||||
drillFilter.setOperator("in");
|
drillFilter.setOperator("in");
|
||||||
drillFilter.setDatasetTableField(datasetTableField);
|
drillFilter.setDatasetTableField(datasetTableField);
|
||||||
extFilterList.add(drillFilter);
|
extFilterList.add(drillFilter);
|
||||||
// xAxis.add(d);
|
|
||||||
// if (i == drillRequest.size() - 1) {
|
if (!checkDrillExist(xAxis, extStack, d, view)) {
|
||||||
// xAxis.add(drill.get(i + 1));
|
xAxis.add(d);
|
||||||
// }
|
}
|
||||||
|
if (i == drillRequest.size() - 1) {
|
||||||
|
ChartViewFieldDTO nextDrillField = drill.get(i + 1);
|
||||||
|
if (!checkDrillExist(xAxis, extStack, nextDrillField, view)) {
|
||||||
|
xAxis.add(nextDrillField);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -436,6 +442,24 @@ public class ChartViewService {
|
|||||||
return dto;
|
return dto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean checkDrillExist(List<ChartViewFieldDTO> xAxis, List<ChartViewFieldDTO> extStack, ChartViewFieldDTO dto, ChartViewWithBLOBs view) {
|
||||||
|
if (CollectionUtils.isNotEmpty(xAxis)) {
|
||||||
|
for (ChartViewFieldDTO x : xAxis) {
|
||||||
|
if (StringUtils.equalsIgnoreCase(x.getId(), dto.getId())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (StringUtils.containsIgnoreCase(view.getType(), "stack") && CollectionUtils.isNotEmpty(extStack)) {
|
||||||
|
for (ChartViewFieldDTO x : extStack) {
|
||||||
|
if (StringUtils.equalsIgnoreCase(x.getId(), dto.getId())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 避免缓存击穿
|
* 避免缓存击穿
|
||||||
* 虽然流量不一定能够达到击穿的水平
|
* 虽然流量不一定能够达到击穿的水平
|
||||||
|
@ -161,7 +161,6 @@ const data = {
|
|||||||
|
|
||||||
// 添加联动 下钻 等过滤组件
|
// 添加联动 下钻 等过滤组件
|
||||||
addViewTrackFilter(state, data) {
|
addViewTrackFilter(state, data) {
|
||||||
debugger
|
|
||||||
const viewId = data.viewId
|
const viewId = data.viewId
|
||||||
const trackInfo = state.nowPanelTrackInfo
|
const trackInfo = state.nowPanelTrackInfo
|
||||||
for (let index = 0; index < state.componentData.length; index++) {
|
for (let index = 0; index < state.componentData.length; index++) {
|
||||||
|
Loading…
Reference in New Issue
Block a user