fix(图表): 修复组合图右轴同环比导致下钻异常的问题

This commit is contained in:
junjun
2025-04-07 16:07:35 +08:00
committed by dataeaseShu
parent b822b8a41f
commit 97c12483ff
2 changed files with 12 additions and 1 deletions

View File

@@ -57,7 +57,7 @@ public class MixHandler extends YoyChartHandler {
boolean isDrill = filterResult
.getFilterList()
.stream()
.anyMatch(ele -> ele.getFilterType() == 1);
.anyMatch(ele -> ele.getFilterType() == 1) || filterResult.isDrill();
if (StringUtils.equals((String) formatResult.getContext().get("isRight"), "isRight")) {
var xAxis = formatResult.getAxisMap().get(ChartAxis.xAxis);
var xAxisExt = formatResult.getAxisMap().get(ChartAxis.xAxisExt);
@@ -157,7 +157,12 @@ public class MixHandler extends YoyChartHandler {
customFilter(view, originFilter.getFilterList(), formatResult2);
var allFields = (List<ChartViewFieldDTO>) filterResult.getContext().get("allFields");
ExtWhere2Str.extWhere2sqlOjb(sqlMeta, originFilter.getFilterList(), FieldUtil.transFields(allFields), crossDs, dsMap, Utils.getParams(FieldUtil.transFields(allFields)), view.getCalParams(), pluginManage);
originFilter.setDrill(filterResult
.getFilterList()
.stream()
.anyMatch(ele -> ele.getFilterType() == 1));
var rightResult = (T) super.calcChartResult(view, formatResult2, originFilter, sqlMap, sqlMeta, provider);
try {
//如果有同环比过滤,应该用原始sql
var originSql = rightResult.getQuerySql();

View File

@@ -13,4 +13,10 @@ import java.util.Map;
public class CustomFilterResult {
private List<ChartExtFilterDTO> filterList;
private Map<String, Object> context;
private boolean isDrill;// 组合图右轴判断是否下钻字段,其余地方没有用
public CustomFilterResult(List<ChartExtFilterDTO> filterList, Map<String, Object> context) {
this.filterList = filterList;
this.context = context;
}
}