diff --git a/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java b/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java index 47f2b6d682..3616a3480b 100644 --- a/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java +++ b/core/backend/src/main/java/io/dataease/provider/query/ck/CKQueryProvider.java @@ -1003,11 +1003,7 @@ public class CKQueryProvider extends QueryProvider { } public String getTotalCount(boolean isTable, String sql, Datasource ds) { - if (isTable) { - return "SELECT COUNT(*) from " + String.format(CKConstants.KEYWORD_TABLE, sql); - } else { - return "SELECT COUNT(*) from ( " + sqlFix(sql) + " ) DE_COUNT_TEMP"; - } + return null; } @Override diff --git a/core/backend/src/main/java/io/dataease/service/chart/util/ChartDataBuild.java b/core/backend/src/main/java/io/dataease/service/chart/util/ChartDataBuild.java index 309258a8f2..06f79a9e30 100644 --- a/core/backend/src/main/java/io/dataease/service/chart/util/ChartDataBuild.java +++ b/core/backend/src/main/java/io/dataease/service/chart/util/ChartDataBuild.java @@ -1194,7 +1194,12 @@ public class ChartDataBuild { if (chartViewFieldDTO.getDeType() == 0 || chartViewFieldDTO.getDeType() == 1 || chartViewFieldDTO.getDeType() == 5) { d.put(fields.get(i).getDataeaseName(), StringUtils.isEmpty(ele[i]) ? "" : ele[i]); } else if (chartViewFieldDTO.getDeType() == 2 || chartViewFieldDTO.getDeType() == 3) { - d.put(fields.get(i).getDataeaseName(), StringUtils.isEmpty(ele[i]) ? null : new BigDecimal(ele[i]).setScale(8, RoundingMode.HALF_UP)); + try { + d.put(fields.get(i).getDataeaseName(), StringUtils.isEmpty(ele[i]) ? null : new BigDecimal(ele[i]).setScale(8, RoundingMode.HALF_UP)); + } catch (NumberFormatException e) { + d.put(fields.get(i).getDataeaseName(), StringUtils.isEmpty(ele[i]) ? "" : ele[i]); + } + } } tableRow.add(d); diff --git a/core/backend/src/main/java/io/dataease/service/exportCenter/ExportCenterService.java b/core/backend/src/main/java/io/dataease/service/exportCenter/ExportCenterService.java index 56deaa8a7a..1b71d56ebc 100644 --- a/core/backend/src/main/java/io/dataease/service/exportCenter/ExportCenterService.java +++ b/core/backend/src/main/java/io/dataease/service/exportCenter/ExportCenterService.java @@ -2,10 +2,8 @@ package io.dataease.service.exportCenter; import com.google.gson.Gson; import io.dataease.auth.api.dto.CurrentUserDto; -import io.dataease.auth.service.AuthUserService; import io.dataease.auth.service.ProxyAuthService; import io.dataease.commons.constants.ParamConstants; -import io.dataease.commons.constants.SysLogConstants; import io.dataease.commons.utils.*; import io.dataease.controller.chart.ChartViewController; import io.dataease.controller.request.chart.ChartExtRequest; @@ -356,19 +354,6 @@ public class ExportCenterService { ExportTask record = new ExportTask(); record.setExportStatus("FAILED"); exportTaskMapper.updateByExampleSelective(record, exportTaskExample); - exportTaskExample.clear(); - criteria = exportTaskExample.createCriteria(); - criteria.andExportMachineNameEqualTo(hostName()).andExportStatusEqualTo("PENDING"); - exportTaskMapper.selectByExampleWithBLOBs(exportTaskExample).parallelStream().forEach(exportTask -> { - if (exportTask.getExportFromType().equalsIgnoreCase("dataset")) { - DataSetExportRequest request = new Gson().fromJson(exportTask.getParams(), DataSetExportRequest.class); - startDatasetTask(exportTask, request); - } - if (exportTask.getExportFromType().equalsIgnoreCase("chart")) { - PanelViewDetailsRequest request = new Gson().fromJson(exportTask.getParams(), PanelViewDetailsRequest.class); - startViewTask(exportTask, request); - } - }); } private String hostName() { @@ -403,7 +388,7 @@ public class ExportCenterService { String dataPath = exportData_path + exportTask.getId(); File directory = new File(dataPath); boolean isCreated = directory.mkdir(); - CurrentUserDto user = proxyAuthService.queryCacheUserDto(exportTask.getUserId()); + CurrentUserDto user = AuthUtils.getUser(); Future future = scheduledThreadPoolExecutor.submit(() -> { AuthUtils.setUser(user); try { @@ -558,14 +543,6 @@ public class ExportCenterService { outputStream.flush(); } wb.close(); - - if (ObjectUtils.isNotEmpty(user)) { - String viewId = request.getViewId(); - ChartViewWithBLOBs chartViewWithBLOBs = chartViewService.get(viewId); - String pid = chartViewWithBLOBs.getSceneId(); - DeLogUtils.save(SysLogConstants.OPERATE_TYPE.EXPORT, SysLogConstants.SOURCE_TYPE.VIEW, viewId, pid, null, null); - } - exportTask.setExportPogress("100"); exportTask.setExportStatus("SUCCESS"); @@ -602,8 +579,7 @@ public class ExportCenterService { String dataPath = exportData_path + exportTask.getId(); File directory = new File(dataPath); boolean isCreated = directory.mkdir(); - CurrentUserDto user = proxyAuthService.queryCacheUserDto(exportTask.getUserId()); - + CurrentUserDto user = AuthUtils.getUser(); Future future = scheduledThreadPoolExecutor.submit(() -> { AuthUtils.setUser(user); try { diff --git a/core/frontend/package.json b/core/frontend/package.json index 3b692fa82d..1639a90c23 100644 --- a/core/frontend/package.json +++ b/core/frontend/package.json @@ -1,6 +1,6 @@ { "name": "dataease", - "version": "1.18.25", + "version": "1.18.26", "description": "dataease front", "private": true, "scripts": { diff --git a/core/frontend/src/views/chart/chart/pie/pie_antv.js b/core/frontend/src/views/chart/chart/pie/pie_antv.js index c1a02b9393..92135f6a72 100644 --- a/core/frontend/src/views/chart/chart/pie/pie_antv.js +++ b/core/frontend/src/views/chart/chart/pie/pie_antv.js @@ -32,6 +32,7 @@ export function basePieOptionAntV(container, chart, action) { tooltip: tooltip, legend: legend, animation: false, + autoFit: false, pieStyle: { lineWidth: 0 }, diff --git a/core/frontend/src/views/chart/components/ChartComponentG2.vue b/core/frontend/src/views/chart/components/ChartComponentG2.vue index d571a0b302..ec8cc41ff8 100644 --- a/core/frontend/src/views/chart/components/ChartComponentG2.vue +++ b/core/frontend/src/views/chart/components/ChartComponentG2.vue @@ -34,8 +34,8 @@
@@ -118,6 +118,7 @@ export default { dynamicAreaCode: null, borderRadius: '0px', chartHeight: '100%', + chartWidth: '100%', title_class: { margin: '0 0', width: '100%', @@ -170,10 +171,11 @@ export default { }, beforeDestroy() { if (this.myChart?.container) { - if (typeof this.myChart.container.getAttribute === 'function') { + if (this.myChart.container?.getAttribute?.('size-sensor-id')) { clear(this.myChart.container) } } + this.resizeObserver?.disconnect() this.myChart?.clear?.() this.myChart?.unbindSizeSensor?.() this.myChart?.unbind?.() @@ -244,6 +246,7 @@ export default { this.initTitle() this.calcHeightRightNow(this.drawView) window.addEventListener('resize', this.chartResize) + this.initResizeObserver() }, async drawView() { const chart = JSON.parse(JSON.stringify(this.chart)) @@ -304,7 +307,7 @@ export default { this.myChart = await baseFlowMapOption(this.chartId, chart, this.antVAction) } else if (chart.type === 'bidirectional-bar') { this.myChart = baseBidirectionalBarOptionAntV(this.chartId, chart, this.antVAction) - } else if (chart.type === 'stock-line'){ + } else if (chart.type === 'stock-line') { this.myChart = stockLineOptionAntV(this.chartId, chart, this.antVAction) } @@ -389,11 +392,11 @@ export default { } } }, - chartResize() { + chartResize(callback) { this.resizeTimer && clearTimeout(this.resizeTimer) this.resizeTimer = setTimeout(() => { - this.calcHeightRightNow() - }, 100) + this.calcHeightRightNow(callback) + }, 300) }, trackClick(trackAction) { const idTypeMap = this.chart.data.fields.reduce((pre, next) => { @@ -503,18 +506,28 @@ export default { calcHeightRightNow(callback) { this.$nextTick(() => { if (this.$refs.chartContainer) { - const { offsetHeight } = this.$refs.chartContainer + const { offsetHeight, offsetWidth } = this.$refs.chartContainer let titleHeight = 0 if (this.$refs.title) { titleHeight = this.$refs.title.offsetHeight } this.chartHeight = (offsetHeight - titleHeight) + 'px' + this.chartWidth = offsetWidth + 'px' this.$nextTick(() => callback?.()) } }) }, initRemark() { this.remarkCfg = getRemark(this.chart) + }, + initResizeObserver() { + const manualResizeCharts = ['pie', 'pie-donut'] + if (manualResizeCharts.includes(this.chart.type)) { + this.resizeObserver = new ResizeObserver(() => { + this.chartResize(this.drawView) + }) + this.resizeObserver.observe(this.$refs.chart) + } } } } diff --git a/core/mobile/package.json b/core/mobile/package.json index 1a7ac46a68..0d56e9d3a6 100644 --- a/core/mobile/package.json +++ b/core/mobile/package.json @@ -1,6 +1,6 @@ { "name": "dataease-mobile", - "version": "1.18.25", + "version": "1.18.26", "private": true, "scripts": { "serve": "npm run dev:h5", diff --git a/pom.xml b/pom.xml index 42bbf4e53f..aea56d449a 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ pom - 1.18.25 + 1.18.26 4.1.1 3.1.0 9.0.64