diff --git a/backend/src/main/java/io/dataease/dto/chart/ChartViewDTO.java b/backend/src/main/java/io/dataease/dto/chart/ChartViewDTO.java index 1b7f75132f..635da3b188 100644 --- a/backend/src/main/java/io/dataease/dto/chart/ChartViewDTO.java +++ b/backend/src/main/java/io/dataease/dto/chart/ChartViewDTO.java @@ -45,4 +45,5 @@ public class ChartViewDTO extends ChartViewWithBLOBs { private long totalPage; private long totalItems; private int datasetMode; + private String datasourceType; } diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index 28899c9d2e..884566c6eb 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -302,6 +302,8 @@ public class ChartViewService { DatasetTable datasetTable = dataSetTableService.get(view.getTableId()); if (ObjectUtils.isNotEmpty(datasetTable)) { view.setDatasetMode(datasetTable.getMode()); + Datasource datasource = datasourceService.get(datasetTable.getDataSourceId()); + view.setDatasourceType(datasource != null ? datasource.getType() : null); } // 如果是从仪表板获取视图数据,则仪表板的查询模式,查询结果的数量,覆盖视图对应的属性 if (CommonConstants.VIEW_RESULT_MODE.CUSTOM.equals(request.getResultMode())) { diff --git a/frontend/src/views/chart/chart/chart.js b/frontend/src/views/chart/chart/chart.js index 1ec2129aa4..9fd766a019 100644 --- a/frontend/src/views/chart/chart/chart.js +++ b/frontend/src/views/chart/chart/chart.js @@ -1107,3 +1107,5 @@ export const CHART_FONT_LETTER_SPACE = [ { name: '9px', value: '9' }, { name: '10px', value: '10' } ] + +export const NOT_SUPPORT_PAGE_DATASET = ['kylin', 'sqlServer', 'es', 'presto'] diff --git a/frontend/src/views/chart/components/ChartComponentS2.vue b/frontend/src/views/chart/components/ChartComponentS2.vue index d8e0a556c2..53c6e7be64 100644 --- a/frontend/src/views/chart/components/ChartComponentS2.vue +++ b/frontend/src/views/chart/components/ChartComponentS2.vue @@ -92,7 +92,7 @@ import ViewTrackBar from '@/components/canvas/components/editor/ViewTrackBar' import { getRemark, hexColorToRGBA } from '@/views/chart/chart/util' import { baseTableInfo, baseTableNormal, baseTablePivot } from '@/views/chart/chart/table/table-info' import TitleRemark from '@/views/chart/view/TitleRemark' -import { DEFAULT_TITLE_STYLE } from '@/views/chart/chart/chart' +import { DEFAULT_TITLE_STYLE, NOT_SUPPORT_PAGE_DATASET } from '@/views/chart/chart/chart' import ChartTitleUpdate from './ChartTitleUpdate.vue' import { mapState } from 'vuex' @@ -234,7 +234,7 @@ export default { const attr = JSON.parse(this.chart.customAttr) this.currentPage.pageSize = parseInt(attr.size.tablePageSize ? attr.size.tablePageSize : 20) data = JSON.parse(JSON.stringify(this.chart.data.tableRow)) - if (this.chart.datasetMode === 0) { + if (this.chart.datasetMode === 0 && !NOT_SUPPORT_PAGE_DATASET.includes(this.chart.datasourceType)) { if (this.chart.type === 'table-info' && (attr.size.tablePageMode === 'page' || !attr.size.tablePageMode) && this.chart.totalItems > this.currentPage.pageSize) { this.currentPage.show = this.chart.totalItems this.showPage = true diff --git a/frontend/src/views/chart/components/table/TableNormal.vue b/frontend/src/views/chart/components/table/TableNormal.vue index c67a5b74ac..7a5af2efaf 100644 --- a/frontend/src/views/chart/components/table/TableNormal.vue +++ b/frontend/src/views/chart/components/table/TableNormal.vue @@ -79,7 +79,7 @@