fix(XPack): 修复定时报告选择图表时有多余图表和过滤组件问题

This commit is contained in:
wangjiahao 2024-06-28 18:25:04 +08:00
parent 3c4ae62584
commit 74b61e1b64
2 changed files with 15 additions and 2 deletions

View File

@ -11,7 +11,7 @@ import java.util.List;
public interface ExtChartViewMapper {
@Select("""
select id, scene_id as pid, title, type from core_chart_view where scene_id = #{resourceId}
select id, scene_id as pid, title, type from core_chart_view where type != 'VQuery' and scene_id = #{resourceId}
""")
List<ViewSelectorVO> queryViewOption(@Param("resourceId") Long resourceId);
}

View File

@ -23,11 +23,14 @@ import io.dataease.i18n.Translator;
import io.dataease.utils.BeanUtils;
import io.dataease.utils.IDUtils;
import io.dataease.utils.JsonUtil;
import io.dataease.visualization.dao.auto.entity.DataVisualizationInfo;
import io.dataease.visualization.dao.auto.mapper.DataVisualizationInfoMapper;
import jakarta.annotation.Resource;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.*;
import java.util.stream.Collectors;
@ -46,6 +49,9 @@ public class ChartViewManege {
@Resource
private PermissionManage permissionManage;
@Resource
private DataVisualizationInfoMapper visualizationInfoMapper;
@Resource
private ExtChartViewMapper extChartViewMapper;
@ -319,6 +325,13 @@ public class ChartViewManege {
}
public List<ViewSelectorVO> viewOption(Long resourceId) {
return extChartViewMapper.queryViewOption(resourceId);
List<ViewSelectorVO> result = extChartViewMapper.queryViewOption(resourceId);
DataVisualizationInfo dvInfo = visualizationInfoMapper.selectById(resourceId);
if(dvInfo != null && !CollectionUtils.isEmpty(result)){
String componentData = dvInfo.getComponentData();
return result.stream().filter(item ->componentData.indexOf(String.valueOf(item.getId()))>0).toList();
}else{
return result;
}
}
}