diff --git a/core/core-backend/src/main/java/io/dataease/chart/charts/impl/YoyChartHandler.java b/core/core-backend/src/main/java/io/dataease/chart/charts/impl/YoyChartHandler.java index a53999a8a3..519ba6afc8 100644 --- a/core/core-backend/src/main/java/io/dataease/chart/charts/impl/YoyChartHandler.java +++ b/core/core-backend/src/main/java/io/dataease/chart/charts/impl/YoyChartHandler.java @@ -120,11 +120,11 @@ public class YoyChartHandler extends DefaultChartHandler { expandedResult.setQuerySql(originSql); } // 同环比数据排序 - expandedResult.setOriginData(sortData(view, expandedResult.getOriginData())); + expandedResult.setOriginData(sortData(view, expandedResult.getOriginData(),formatResult)); return expandedResult; } - public static List sortData(ChartViewDTO view, List data) { + public static List sortData(ChartViewDTO view, List data, AxisFormatResult formatResult) { // 维度排序 List xAxisSortList = view.getXAxis().stream().filter(x -> !StringUtils.equalsIgnoreCase("none", x.getSort())).toList(); // 指标排序 @@ -135,11 +135,9 @@ public class YoyChartHandler extends DefaultChartHandler { ChartViewFieldDTO firstYAxis = yAxisSortList.getFirst(); boolean asc = firstYAxis.getSort().equalsIgnoreCase("asc"); // 维度指标 - List allAxisList = Stream.of( - view.getXAxis(), - view.getXAxisExt(), - view.getYAxis() - ).flatMap(List::stream).toList(); + List allAxisList = new ArrayList<>(); + allAxisList.addAll(formatResult.getAxisMap().get(ChartAxis.xAxis)); + allAxisList.addAll(formatResult.getAxisMap().get(ChartAxis.yAxis)); int index = findIndex(allAxisList, firstYAxis.getId()); return sortData(data, asc, index); }