Merge pull request #11287 from dataease/pr@dev-v2@fix_report_export_excel

fix(X-Pack): 定时报告-导出视图数据如果包含已删除的视图会报错
This commit is contained in:
fit2cloud-chenyw 2024-07-31 13:40:11 +08:00 committed by GitHub
commit d130947179
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -50,8 +50,12 @@ public class CoreVisualizationExportManage {
if (ObjectUtils.isEmpty(visualization)) DEException.throwException("资源不存在或已经被删除...");
List<ChartViewDTO> chartViewDTOS = chartViewManege.listBySceneId(dvId);
String componentsJson = visualization.getComponentData();
List<Map<String, Object>> components = JsonUtil.parseList(componentsJson, tokenType);
List<Long> idList = components.stream().filter(c -> ObjectUtils.isNotEmpty(c.get("id"))).map(component -> Long.parseLong(component.get("id").toString())).toList();
if (CollectionUtils.isNotEmpty(viewIdList)) {
chartViewDTOS = chartViewDTOS.stream().filter(item -> viewIdList.contains(item.getId())).collect(Collectors.toList());
chartViewDTOS = chartViewDTOS.stream().filter(item -> idList.contains(item.getId()) && viewIdList.contains(item.getId())).collect(Collectors.toList());
}
if (CollectionUtils.isEmpty(chartViewDTOS)) return null;
Map<String, ChartExtRequest> chartExtRequestMap = buildViewRequest(visualization, onlyDisplay);