提交 affdf3ad authored 作者: junjie's avatar junjie

feat: 视图下钻

上级 18b68616
......@@ -23,5 +23,5 @@ public class ChartViewDTO extends ChartViewWithBLOBs {
private String pid;
private String sql;
private List<ChartDrillRequest> dimensionList;
private boolean drill;
}
......@@ -258,7 +258,7 @@ public class ChartViewService {
// 下钻
boolean isDrill = false;
List<ChartDrillRequest> drillRequest = requestList.getDrill();
if (drill.size() > drillRequest.size()) {
if (CollectionUtils.isNotEmpty(drillRequest) && (drill.size() >= drillRequest.size())) {
for (int i = 0; i < drillRequest.size(); i++) {
ChartDrillRequest request = drillRequest.get(i);
for (ChartDimensionDTO dto : request.getDimensionList()) {
......@@ -385,7 +385,9 @@ public class ChartViewService {
data = (List<String[]>) cache;
}*/
// 仪表板有参数不实用缓存
if (CollectionUtils.isNotEmpty(requestList.getFilter()) || CollectionUtils.isNotEmpty(requestList.getLinkageFilters())) {
if (CollectionUtils.isNotEmpty(requestList.getFilter())
|| CollectionUtils.isNotEmpty(requestList.getLinkageFilters())
|| CollectionUtils.isNotEmpty(requestList.getDrill())) {
data = datasourceProvider.getData(datasourceRequest);
} else {
try {
......@@ -430,10 +432,7 @@ public class ChartViewService {
dto.setData(map);
dto.setSql(datasourceRequest.getQuery());
if (CollectionUtils.isNotEmpty(drillRequest) && !isDrill) {
drillRequest = drillRequest.subList(0, drillRequest.size() - 1);
}
dto.setDimensionList(drillRequest);
dto.setDrill(isDrill);
return dto;
}
......
......@@ -162,7 +162,6 @@ const data = {
// 添加联动 下钻 等过滤组件
addViewTrackFilter(state, data) {
console.log('联动信息', JSON.stringify(data))
debugger
const viewId = data.viewId
const trackInfo = state.nowPanelTrackInfo
for (let index = 0; index < state.componentData.length; index++) {
......
......@@ -75,10 +75,6 @@ export default {
this.myChart.off('click')
this.myChart.on('click', function(param) {
that.$emit('onChartClick', param)
})
this.myChart.on('click', function(param) {
debugger
console.log(JSON.stringify(param.data))
const trackFilter = {
viewId: viewId,
......@@ -86,6 +82,8 @@ export default {
quotaList: param.data.quotaList
}
_store.commit('addViewTrackFilter', trackFilter)
that.$emit('onChartClick', param)
})
})
},
......
......@@ -751,6 +751,7 @@ export default {
},
watch: {
'param': function() {
this.resetDrill()
if (this.param.optType === 'new') {
//
} else {
......@@ -1006,7 +1007,9 @@ export default {
if (this.chart.privileges) {
this.param.privileges = this.chart.privileges
}
this.drillClickDimensionList = response.data.drillClickDimensionList ? response.data.drillClickDimensionList : []
if (!response.data.drill) {
this.drillClickDimensionList.splice(this.drillClickDimensionList.length - 1, 1)
}
}).catch(err => {
this.resetView()
this.resetDrill()
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论