From 3820a14229ce80a07ffeef3659bea0d5aaa0bcd3 Mon Sep 17 00:00:00 2001 From: dataeaseShu <106045316+dataeaseShu@users.noreply.github.com> Date: Tue, 6 Jun 2023 15:59:06 +0800 Subject: [PATCH 01/10] =?UTF-8?q?fix:=20=E5=88=9B=E5=BB=BA=E4=BB=AA?= =?UTF-8?q?=E8=A1=A8=E6=9D=BF=E7=94=A8=E6=88=B7=E5=90=8D=E7=A7=B0=E8=BF=87?= =?UTF-8?q?=E9=95=BF=E6=97=B6=EF=BC=8C=E4=BB=AA=E8=A1=A8=E6=9D=BF=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2ui=E5=A4=B1=E5=B8=B8=20#5398?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/panel/list/PanelViewShow.vue | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/frontend/src/views/panel/list/PanelViewShow.vue b/frontend/src/views/panel/list/PanelViewShow.vue index ec83885964..f24fb47920 100644 --- a/frontend/src/views/panel/list/PanelViewShow.vue +++ b/frontend/src/views/panel/list/PanelViewShow.vue @@ -44,7 +44,7 @@ style="color: green;font-size: 12px" > ({{ $t('panel.source_panel_name') }}:{{ panelInfo.sourcePanelName }}) -
+
- + {{ $t('panel.create_by') + ':' + panelInfo.creatorName }} @@ -863,12 +863,21 @@ export default { } + .panel-create-cont { + display: flex; + align-items: center; + } + .panel-create { font-family: PingFang SC; font-size: 14px; font-weight: 400; line-height: 22px; color: var(--deTextSecondary, #646A73); + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + max-width: 200px; } } From f12ef0ce16873a3fad7270bcc04cebd1b4143f92 Mon Sep 17 00:00:00 2001 From: dataeaseShu <106045316+dataeaseShu@users.noreply.github.com> Date: Tue, 6 Jun 2023 15:59:46 +0800 Subject: [PATCH 02/10] =?UTF-8?q?fix:=20=E7=BC=96=E8=BE=91=E5=85=B3?= =?UTF-8?q?=E8=81=94=E6=95=B0=E6=8D=AE=E9=9B=86=E5=88=A0=E9=99=A4=E5=85=A8?= =?UTF-8?q?=E9=83=A8=E6=95=B0=E6=8D=AE=E8=A1=A8=E4=BF=9D=E5=AD=98=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/dataset/Form.vue | 2 +- frontend/src/views/dataset/add/AddUnion.vue | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/frontend/src/views/dataset/Form.vue b/frontend/src/views/dataset/Form.vue index 9098a38b9e..c2732e9f32 100644 --- a/frontend/src/views/dataset/Form.vue +++ b/frontend/src/views/dataset/Form.vue @@ -41,7 +41,7 @@ >{{ $t('deDataset.selected') }} {{ tableNum }} {{ ['excel'].includes(datasetType) ? $t('deDataset.table') : $t('deDataset.item') }} {{ diff --git a/frontend/src/views/dataset/add/AddUnion.vue b/frontend/src/views/dataset/add/AddUnion.vue index 71aa9bfe81..afd8e8b94f 100644 --- a/frontend/src/views/dataset/add/AddUnion.vue +++ b/frontend/src/views/dataset/add/AddUnion.vue @@ -305,12 +305,14 @@ export default { const ds = JSON.parse(JSON.stringify(this.unionItem)) ds.currentDs = this.tempDs this.dataset.push(ds) + this.$emit('setTableNum', this.dataset.length) this.closeSelectDs() this.calc('union') }, deleteNode(index) { this.dataset.splice(index, 1) this.calc('delete') + this.$emit('setTableNum', this.dataset.length) }, calc(param) { if (param.type === 'union') { @@ -385,6 +387,7 @@ export default { (response) => { const table = JSON.parse(JSON.stringify(response.data)) this.dataset = JSON.parse(table.info).union + this.$emit('setTableNum', this.dataset.length) this.previewData() } ) From 852b13cd12f0b6e462e86f1a589510410a4087cb Mon Sep 17 00:00:00 2001 From: xuwei-fit2cloud Date: Tue, 6 Jun 2023 16:19:11 +0800 Subject: [PATCH 03/10] =?UTF-8?q?chore:=20=E5=8D=87=E7=BA=A7=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E8=87=B31.18.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/src/main/resources/db/migration/V55__1.18.8.sql | 4 ++++ frontend/package.json | 2 +- mobile/package.json | 2 +- pom.xml | 4 ++-- 4 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 backend/src/main/resources/db/migration/V55__1.18.8.sql diff --git a/backend/src/main/resources/db/migration/V55__1.18.8.sql b/backend/src/main/resources/db/migration/V55__1.18.8.sql new file mode 100644 index 0000000000..7729e8ba7b --- /dev/null +++ b/backend/src/main/resources/db/migration/V55__1.18.8.sql @@ -0,0 +1,4 @@ +UPDATE `my_plugin` +SET `version` = '1.18.8' +where `plugin_id` > 0 + and `version` = '1.18.7'; diff --git a/frontend/package.json b/frontend/package.json index 28b3f37216..a7449158f9 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "dataease", - "version": "1.18.7", + "version": "1.18.8", "description": "dataease front", "private": true, "scripts": { diff --git a/mobile/package.json b/mobile/package.json index 32ac241c6c..7988373a45 100644 --- a/mobile/package.json +++ b/mobile/package.json @@ -1,6 +1,6 @@ { "name": "dataease-mobile", - "version": "1.18.7", + "version": "1.18.8", "private": true, "scripts": { "serve": "npm run dev:h5", diff --git a/pom.xml b/pom.xml index c4d7c90dc6..dcd10d48d0 100644 --- a/pom.xml +++ b/pom.xml @@ -1,4 +1,4 @@ - + @@ -16,7 +16,7 @@ - 1.18.7 + 1.18.8 dataease From 766f4ebc8603b65e3325c98fd6fadd83c9f5faca Mon Sep 17 00:00:00 2001 From: xuwei-fit2cloud Date: Tue, 6 Jun 2023 16:21:55 +0800 Subject: [PATCH 04/10] =?UTF-8?q?refactor:=20=E5=88=A0=E9=99=A4=E7=A9=BA?= =?UTF-8?q?=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dcd10d48d0..f370ded74d 100644 --- a/pom.xml +++ b/pom.xml @@ -1,4 +1,4 @@ - + From 207fee9a8fa6608b064a04a90b399f1183a6e57b Mon Sep 17 00:00:00 2001 From: dataeaseShu <106045316+dataeaseShu@users.noreply.github.com> Date: Wed, 7 Jun 2023 16:00:28 +0800 Subject: [PATCH 05/10] =?UTF-8?q?fix:=20=E8=A7=86=E5=9B=BE=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E5=AD=97=E6=AE=B5=E4=BF=9D=E5=AD=98=E5=BC=82=E5=B8=B8?= =?UTF-8?q?#5421?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/chart/view/CalcChartFieldEdit.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/views/chart/view/CalcChartFieldEdit.vue b/frontend/src/views/chart/view/CalcChartFieldEdit.vue index d0ea61a4b3..0fdd7df17a 100644 --- a/frontend/src/views/chart/view/CalcChartFieldEdit.vue +++ b/frontend/src/views/chart/view/CalcChartFieldEdit.vue @@ -518,7 +518,7 @@ export default { if (name2Auto) { name2Auto.push(nameIdMap[ele]) } - name2Id = name2Id.replace(ele, nameIdMap[ele]) + name2Id = name2Id.replace(`[${ele}]`, `[${nameIdMap[ele]}]`) }) } return name2Id From a82f508a32a2318d2aba4ce3771e21c81e06d5a1 Mon Sep 17 00:00:00 2001 From: wisonic-s Date: Wed, 7 Jun 2023 18:27:25 +0800 Subject: [PATCH 06/10] =?UTF-8?q?fix(=E8=A7=86=E5=9B=BE-=E8=BF=87=E6=BB=A4?= =?UTF-8?q?):=20=E4=BF=AE=E5=A4=8D=E5=AE=9A=E6=97=B6=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E6=97=B6=E9=97=B4=E8=BF=87=E6=BB=A4?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E5=A4=B1=E6=95=88=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/dataease/provider/engine/doris/DorisQueryProvider.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java b/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java index 6caf017d19..3a9582c031 100644 --- a/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java @@ -1074,7 +1074,7 @@ public class DorisQueryProvider extends QueryProvider { if (field.getDeType() == 1) { String format = transDateFormat(request.getDateStyle(), request.getDatePattern()); if (field.getDeExtractType() == 0 || field.getDeExtractType() == 5 || field.getDeExtractType() == 1) { - whereName = String.format(DorisConstants.STR_TO_DATE, originName, format); + whereName = String.format(DorisConstants.DATE_FORMAT, originName, format); } if (field.getDeExtractType() == 2 || field.getDeExtractType() == 3 || field.getDeExtractType() == 4) { String cast = String.format(DorisConstants.CAST, originName, DorisConstants.DEFAULT_INT_FORMAT) + "/1000"; @@ -1115,7 +1115,7 @@ public class DorisQueryProvider extends QueryProvider { whereName = "upper(" + whereName + ")"; } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { if (request.getDatasetTableField().getDeType() == 1) { - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime); From 01d079d2a3f5441219258bf66fdd4665e3b430b0 Mon Sep 17 00:00:00 2001 From: wisonic-s Date: Thu, 8 Jun 2023 18:48:37 +0800 Subject: [PATCH 07/10] =?UTF-8?q?fix(=E8=A7=86=E5=9B=BE-=E6=8F=90=E7=A4=BA?= =?UTF-8?q?):=20=E4=BF=AE=E5=A4=8D=20echarts=20=E6=8F=90=E7=A4=BA=E8=A2=AB?= =?UTF-8?q?=E9=81=AE=E6=8C=A1=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/chart/components/ChartComponent.vue | 3 +++ 1 file changed, 3 insertions(+) diff --git a/frontend/src/views/chart/components/ChartComponent.vue b/frontend/src/views/chart/components/ChartComponent.vue index a591aad8c0..12bef864e0 100644 --- a/frontend/src/views/chart/components/ChartComponent.vue +++ b/frontend/src/views/chart/components/ChartComponent.vue @@ -396,6 +396,9 @@ export default { chart_option.legend['pageIconInactiveColor'] = '#8c8c8c' } } + if (chart_option.tooltip) { + chart_option.tooltip.appendToBody = true + } this.myEcharts(chart_option) this.$nextTick(() => (this.linkageActive())) }, From 00a3da756e2a1671f7e1f5a30f76defd30c337bc Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 12 Jun 2023 17:36:51 +0800 Subject: [PATCH 08/10] =?UTF-8?q?fix:=20=E6=A0=A1=E9=AA=8C=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/dataease/provider/datasource/JdbcProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java b/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java index c0e1cb202e..5b5fc031f3 100644 --- a/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java +++ b/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java @@ -781,7 +781,7 @@ public class JdbcProvider extends DefaultJdbcProvider { case StarRocks: MysqlConfiguration mysqlConfiguration = new Gson().fromJson(datasource.getConfiguration(), MysqlConfiguration.class); mysqlConfiguration.getJdbc(); - if(!mysqlConfiguration.getDataBase().matches("^[0-9a-zA-Z_]{1,}$")){ + if(!mysqlConfiguration.getDataBase().matches("^[0-9a-zA-Z_-]{1,}$")){ throw new Exception("Invalid database name"); } break; From f16cb738d16f463ed9c0bc1ece0c1fa1630f76e9 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 12 Jun 2023 17:38:38 +0800 Subject: [PATCH 09/10] =?UTF-8?q?perf:=20=E5=AF=BC=E5=87=BAExcel=E6=97=B6?= =?UTF-8?q?=EF=BC=8CXSSFWorkbook=20->=20SXSSFWorkbook?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/dataease/commons/utils/ExcelUtils.java | 3 ++- .../io/dataease/commons/utils/ExcelXlsReader.java | 1 + .../service/dataset/DataSetTableService.java | 3 ++- .../dataease/service/panel/PanelGroupService.java | 3 ++- .../io/dataease/service/sys/log/LogService.java | 15 +++++++-------- 5 files changed, 14 insertions(+), 11 deletions(-) diff --git a/backend/src/main/java/io/dataease/commons/utils/ExcelUtils.java b/backend/src/main/java/io/dataease/commons/utils/ExcelUtils.java index 69ed9f81ac..9042a20b01 100644 --- a/backend/src/main/java/io/dataease/commons/utils/ExcelUtils.java +++ b/backend/src/main/java/io/dataease/commons/utils/ExcelUtils.java @@ -15,6 +15,7 @@ import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; @@ -24,7 +25,7 @@ public class ExcelUtils { public static File exportExcel(List sheets, String fileName, String folderId) throws Exception { AtomicReference realFileName = new AtomicReference<>(fileName); - Workbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); sheets.forEach(sheet -> { diff --git a/backend/src/main/java/io/dataease/commons/utils/ExcelXlsReader.java b/backend/src/main/java/io/dataease/commons/utils/ExcelXlsReader.java index 59744d8384..6b0a0dfd22 100644 --- a/backend/src/main/java/io/dataease/commons/utils/ExcelXlsReader.java +++ b/backend/src/main/java/io/dataease/commons/utils/ExcelXlsReader.java @@ -7,6 +7,7 @@ import org.apache.poi.hssf.eventusermodel.*; import org.apache.poi.hssf.eventusermodel.dummyrecord.LastCellOfRowDummyRecord; import org.apache.poi.hssf.eventusermodel.dummyrecord.MissingCellDummyRecord; import org.apache.poi.hssf.record.*; +import org.apache.poi.hssf.record.Record; import org.apache.poi.hssf.usermodel.HSSFDataFormatter; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java index e62a5088c3..169b47dd2e 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -67,6 +67,7 @@ import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -2964,7 +2965,7 @@ public class DataSetTableService { details.add(row); } // 操作Excel - Workbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); // Sheet Sheet detailsSheet = wb.createSheet("数据"); //给单元格设置样式 diff --git a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java index 964155492b..7d55dc3d2e 100644 --- a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java +++ b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java @@ -45,6 +45,7 @@ import org.apache.poi.hssf.usermodel.HSSFClientAnchor; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.*; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.pentaho.di.core.util.UUIDUtil; import org.slf4j.Logger; @@ -660,7 +661,7 @@ public class PanelGroupService { Integer[] excelTypes = request.getExcelTypes(); details.add(0, request.getHeader()); - Workbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); //明细sheet Sheet detailsSheet = wb.createSheet("数据"); diff --git a/backend/src/main/java/io/dataease/service/sys/log/LogService.java b/backend/src/main/java/io/dataease/service/sys/log/LogService.java index 913f1991fa..be27c7a28f 100644 --- a/backend/src/main/java/io/dataease/service/sys/log/LogService.java +++ b/backend/src/main/java/io/dataease/service/sys/log/LogService.java @@ -27,9 +27,8 @@ import io.dataease.service.system.SystemParameterService; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.poi.hssf.usermodel.*; import org.apache.poi.ss.usermodel.*; -import org.apache.poi.xssf.usermodel.*; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -384,13 +383,13 @@ public class LogService { details.add(0, headArr); - XSSFWorkbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); //明细sheet - XSSFSheet detailsSheet = wb.createSheet("数据"); + Sheet detailsSheet = wb.createSheet("数据"); //给单元格设置样式 - XSSFCellStyle cellStyle = wb.createCellStyle(); - XSSFFont font = wb.createFont(); + CellStyle cellStyle = wb.createCellStyle(); + Font font = wb.createFont(); //设置字体大小 font.setFontHeightInPoints((short) 12); //设置字体加粗 @@ -404,11 +403,11 @@ public class LogService { if (CollectionUtils.isNotEmpty(details)) { for (int i = 0; i < details.size(); i++) { - XSSFRow row = detailsSheet.createRow(i); + Row row = detailsSheet.createRow(i); String[] rowData = details.get(i); if (rowData != null) { for (int j = 0; j < rowData.length; j++) { - XSSFCell cell = row.createCell(j); + Cell cell = row.createCell(j); cell.setCellValue(rowData[j]); if (i == 0) {// 头部 cell.setCellStyle(cellStyle); From ad2ce8cd8824d74487847e9015c0ce3b982b1cf6 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 12 Jun 2023 17:39:23 +0800 Subject: [PATCH 10/10] =?UTF-8?q?fix:=20=E5=A4=84=E7=90=86=E6=97=A5?= =?UTF-8?q?=E6=9C=9F=E3=80=81=E6=97=B6=E9=97=B4=E8=BF=87=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/doris/DorisQueryProvider.java | 19 +++++++++++++++---- .../engine/mysql/MysqlQueryProvider.java | 16 ++++++++++++++-- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java b/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java index 3a9582c031..8e769bb1e1 100644 --- a/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/engine/doris/DorisQueryProvider.java @@ -8,7 +8,9 @@ import io.dataease.plugins.common.base.domain.Datasource; import io.dataease.plugins.common.base.mapper.DatasetTableFieldMapper; import io.dataease.plugins.common.constants.DeTypeConstants; import io.dataease.plugins.common.constants.datasource.DorisConstants; +import io.dataease.plugins.common.constants.datasource.MySQLConstants; import io.dataease.plugins.common.constants.datasource.SQLConstants; +import io.dataease.plugins.common.constants.engine.MysqlConstants; import io.dataease.plugins.common.dto.chart.ChartCustomFilterItemDTO; import io.dataease.plugins.common.dto.chart.ChartFieldCustomFilterDTO; import io.dataease.plugins.common.dto.chart.ChartViewFieldDTO; @@ -1074,11 +1076,20 @@ public class DorisQueryProvider extends QueryProvider { if (field.getDeType() == 1) { String format = transDateFormat(request.getDateStyle(), request.getDatePattern()); if (field.getDeExtractType() == 0 || field.getDeExtractType() == 5 || field.getDeExtractType() == 1) { - whereName = String.format(DorisConstants.DATE_FORMAT, originName, format); + String date = String.format(MySQLConstants.STR_TO_DATE, originName, StringUtils.isNotEmpty(field.getDateFormat()) ? field.getDateFormat() : MysqlConstants.DEFAULT_DATE_FORMAT); + if(request.getOperator().equals("between")){ + whereName = date; + }else { + whereName = String.format(MySQLConstants.DATE_FORMAT, date, format); + } } if (field.getDeExtractType() == 2 || field.getDeExtractType() == 3 || field.getDeExtractType() == 4) { - String cast = String.format(DorisConstants.CAST, originName, DorisConstants.DEFAULT_INT_FORMAT) + "/1000"; - whereName = String.format(DorisConstants.FROM_UNIXTIME, cast, format); + if(request.getOperator().equals("between")){ + whereName = originName; + }else { + String cast = String.format(MySQLConstants.CAST, originName, MySQLConstants.DEFAULT_INT_FORMAT) + "/1000"; + whereName = String.format(DorisConstants.FROM_UNIXTIME, cast, format); + } } } else if (field.getDeType() == 0) { whereName = String.format(DorisConstants.CAST, originName, DorisConstants.VARCHAR); @@ -1115,7 +1126,7 @@ public class DorisQueryProvider extends QueryProvider { whereName = "upper(" + whereName + ")"; } else if (StringUtils.containsIgnoreCase(request.getOperator(), "between")) { if (request.getDatasetTableField().getDeType() == 1) { - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); String startTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(0)))); String endTime = simpleDateFormat.format(new Date(Long.parseLong(value.get(1)))); whereValue = String.format(DorisConstants.WHERE_BETWEEN, startTime, endTime); diff --git a/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java b/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java index 3caac20d8f..3f1b4df0c4 100644 --- a/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/engine/mysql/MysqlQueryProvider.java @@ -7,6 +7,8 @@ import io.dataease.plugins.common.base.domain.DatasetTableFieldExample; import io.dataease.plugins.common.base.domain.Datasource; import io.dataease.plugins.common.base.mapper.DatasetTableFieldMapper; import io.dataease.plugins.common.constants.DeTypeConstants; +import io.dataease.plugins.common.constants.datasource.DorisConstants; +import io.dataease.plugins.common.constants.datasource.MySQLConstants; import io.dataease.plugins.common.constants.datasource.SQLConstants; import io.dataease.plugins.common.constants.engine.MysqlConstants; import io.dataease.plugins.common.dto.chart.ChartCustomFilterItemDTO; @@ -1061,10 +1063,20 @@ public class MysqlQueryProvider extends QueryProvider { if (field.getDeType() == 1) { String format = transDateFormat(request.getDateStyle(), request.getDatePattern()); if (field.getDeExtractType() == 0 || field.getDeExtractType() == 5 || field.getDeExtractType() == 1) { - whereName = String.format(MysqlConstants.DATE_FORMAT, originName, format); + String date = String.format(MySQLConstants.STR_TO_DATE, originName, StringUtils.isNotEmpty(field.getDateFormat()) ? field.getDateFormat() : MysqlConstants.DEFAULT_DATE_FORMAT); + if(request.getOperator().equals("between")){ + whereName = date; + }else { + whereName = String.format(MySQLConstants.DATE_FORMAT, date, format); + } } if (field.getDeExtractType() == 2 || field.getDeExtractType() == 3 || field.getDeExtractType() == 4) { - whereName = originName; + if(request.getOperator().equals("between")){ + whereName = originName; + }else { + String cast = String.format(MySQLConstants.CAST, originName, MySQLConstants.DEFAULT_INT_FORMAT) + "/1000"; + whereName = String.format(DorisConstants.FROM_UNIXTIME, cast, format); + } } } else if (field.getDeType() == 0 && field.getDeExtractType() == 0) { whereName = String.format(MysqlConstants.CAST, originName, MysqlConstants.CHAR);