diff --git a/core/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/core/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index 7853ae4626..fff8e054c7 100644 --- a/core/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/core/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -1089,7 +1089,7 @@ public class ChartViewService { } datasourceRequest.setQuery(sql); data = datasourceProvider.getData(datasourceRequest); - + data = resultCustomSort(xAxis, data); Map mapChart = pluginViewResult(pluginViewParam, view, data, isDrill); logger.info("plugin_sql:" + sql); Map mapTableNormal = ChartDataBuild.transTableNormal(fieldMap, view, data, desensitizationList); diff --git a/core/frontend/src/views/chart/view/ChartEdit.vue b/core/frontend/src/views/chart/view/ChartEdit.vue index bf819c429c..e29d85a402 100644 --- a/core/frontend/src/views/chart/view/ChartEdit.vue +++ b/core/frontend/src/views/chart/view/ChartEdit.vue @@ -2438,6 +2438,7 @@ export default { bus.$on('plugin-chart-click', this.chartClick) bus.$on('set-dynamic-area-code', this.setDynamicAreaCode) bus.$on('set-table-column-width', this.onTableFieldWidthChange) + bus.$on('show-custom-sort', this.customSort) }, initTableData(id, optType) { if (id != null) { @@ -2931,6 +2932,10 @@ export default { this.moveId = e.draggedContext.element.id return true }, + customSort(args) { + const { item, axis } = JSON.parse(JSON.stringify(args)) + this.onCustomSort(item, axis); + }, onCustomSort(item, axis) { this.customSortFieldType = axis this.customSortField = this.view[axis][item.index]