refactor(仪表板、数据大屏): 增加仪表板大屏查询索引同时过滤非必要的图表信息以增加查询速度

This commit is contained in:
wangjiahao
2025-05-06 11:19:13 +08:00
committed by 王嘉豪
parent b3d643e79e
commit 2842339b11
2 changed files with 4 additions and 1 deletions

View File

@@ -200,7 +200,8 @@ public class DataVisualizationServer implements DataVisualizationApi {
//获取图表信息
List<ChartViewDTO> chartViewDTOS = chartViewManege.listBySceneId(dvId, resourceTable);
if (!CollectionUtils.isEmpty(chartViewDTOS)) {
Map<Long, ChartViewDTO> viewInfo = chartViewDTOS.stream().collect(Collectors.toMap(ChartViewDTO::getId, chartView -> chartView));
// 增加过滤当前使用的图表信息
Map<Long, ChartViewDTO> viewInfo = chartViewDTOS.stream().filter(item -> result.getComponentData().indexOf("\"id\":\"" + item.getId()) > 0).collect(Collectors.toMap(ChartViewDTO::getId, chartView -> chartView));
result.setCanvasViewInfo(viewInfo);
}
VisualizationWatermark watermark = watermarkMapper.selectById("system_default");

View File

@@ -0,0 +1,2 @@
ALTER TABLE `core_chart_view`
ADD INDEX `scene_id_seq`(`scene_id`) USING BTREE;