From 664c4a067fe3f2341387cf511e43f0e0eb53b3dc Mon Sep 17 00:00:00 2001 From: Wangjiahao <1522128093@qq.com> Date: Sat, 6 May 2023 09:42:20 +0800 Subject: [PATCH 1/5] =?UTF-8?q?refactor(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=AA=E8=A1=A8=E6=9D=BF=E9=A2=84=E8=A7=88?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=E6=8F=90=E7=A4=BA=20#5141?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/api/panel/enshrine.js | 2 +- frontend/src/api/panel/linkJump.js | 3 ++- frontend/src/api/panel/linkage.js | 3 ++- frontend/src/api/panel/panel.js | 2 +- frontend/src/api/panel/pdfTemplate.js | 2 +- 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/frontend/src/api/panel/enshrine.js b/frontend/src/api/panel/enshrine.js index e8b98951ec..92a64cf51e 100644 --- a/frontend/src/api/panel/enshrine.js +++ b/frontend/src/api/panel/enshrine.js @@ -29,6 +29,6 @@ export function starStatus(panelId) { return request({ url: '/api/store/status/' + panelId, method: 'post', - loading: true + loading: false }) } diff --git a/frontend/src/api/panel/linkJump.js b/frontend/src/api/panel/linkJump.js index ed85ac5398..e5d98dce45 100644 --- a/frontend/src/api/panel/linkJump.js +++ b/frontend/src/api/panel/linkJump.js @@ -33,6 +33,7 @@ export function queryTargetPanelJumpInfo(requestInfo) { export function queryPanelJumpInfo(panelId) { return request({ url: '/linkJump/queryPanelJumpInfo/' + panelId, - method: 'get' + method: 'get', + loading: false }) } diff --git a/frontend/src/api/panel/linkage.js b/frontend/src/api/panel/linkage.js index 6b0bd72fa6..80dc272446 100644 --- a/frontend/src/api/panel/linkage.js +++ b/frontend/src/api/panel/linkage.js @@ -21,6 +21,7 @@ export function saveLinkage(requestInfo) { export function getPanelAllLinkageInfo(panelId) { return request({ url: '/linkage/getPanelAllLinkageInfo/' + panelId, - method: 'get' + method: 'get', + loading: false }) } diff --git a/frontend/src/api/panel/panel.js b/frontend/src/api/panel/panel.js index 6bd6714b92..375c39fd17 100644 --- a/frontend/src/api/panel/panel.js +++ b/frontend/src/api/panel/panel.js @@ -97,7 +97,7 @@ export function viewPanelLog(data) { return request({ url: 'panel/group/viewLog', method: 'post', - loading: true, + loading: false, data }) } diff --git a/frontend/src/api/panel/pdfTemplate.js b/frontend/src/api/panel/pdfTemplate.js index 729a3c2b97..3e898ca1fa 100644 --- a/frontend/src/api/panel/pdfTemplate.js +++ b/frontend/src/api/panel/pdfTemplate.js @@ -4,6 +4,6 @@ export function queryAll() { return request({ url: '/pdf-template/queryAll', method: 'get', - loading: true + loading: false }) } From 6987c5ecbf39fb25abc37d7de78166f41c6156f0 Mon Sep 17 00:00:00 2001 From: maninhill <41712985+maninhill@users.noreply.github.com> Date: Sat, 6 May 2023 11:28:31 +0800 Subject: [PATCH 2/5] chore: remove console.log --- frontend/src/views/dataset/data/UpdateInfo.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/frontend/src/views/dataset/data/UpdateInfo.vue b/frontend/src/views/dataset/data/UpdateInfo.vue index 0d13f46cd1..e6f68f94f6 100644 --- a/frontend/src/views/dataset/data/UpdateInfo.vue +++ b/frontend/src/views/dataset/data/UpdateInfo.vue @@ -909,7 +909,6 @@ export default { } this.incrementalConfig.tableId = this.table.id task.startTime = new Date(task.startTime).getTime() - console.log(task.endTime) task.endTime = new Date(task.endTime).getTime() task.tableId = this.table.id const form = JSON.parse(JSON.stringify(task)) From bb18ce8f60c68206cf153598ce9dd6dee59ee2a9 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Sat, 6 May 2023 12:30:13 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix:=20=E8=AF=86=E5=88=AB=20mysql=20BIGINT?= =?UTF-8?q?=20UNSIGNED?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dataset/ExtractDataService.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java index 35651738da..a97a74f52d 100644 --- a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java +++ b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java @@ -1310,6 +1310,17 @@ public class ExtractDataService { .replace("ExcelCompletion", ""); } + String handleMysqlBIGINTUNSIGNEDStr = ""; + if (datasourceType.equals(DatasourceTypes.mysql)) { + for (DatasetTableField datasetTableField : datasetTableFields) { + if(datasetTableField.getType().equalsIgnoreCase("BIGINT UNSIGNED")){ + handleMysqlBIGINTUNSIGNEDStr = handleMysqlBIGINTUNSIGNEDStr + handleMysqlBIGINTUNSIGNED.replace("BIGINTUNSIGNEDFIELD", datasetTableField.getDataeaseName()) + "; \n"; + } + } + } + tmp_code = tmp_code.replace("handleMysqlBIGINTUNSIGNED", handleMysqlBIGINTUNSIGNEDStr); + + UserDefinedJavaClassDef userDefinedJavaClassDef = new UserDefinedJavaClassDef(UserDefinedJavaClassDef.ClassType.TRANSFORM_CLASS, "Processor", tmp_code); userDefinedJavaClassDef.setActive(true); @@ -1403,6 +1414,16 @@ public class ExtractDataService { " }catch (Exception e){}\n" + " }"; + private final static String handleMysqlBIGINTUNSIGNED = "if(filed.equalsIgnoreCase(BIGINTUNSIGNEDFIELD)){\n" + + "\t\t\tif(tmp != null && tmp.endsWith(\".0\")){\n" + + " \ttry {\n" + + " Long.valueOf(tmp.substring(0, tmp.length()-2));\n" + + " get(Fields.Out, filed).setValue(r, tmp.substring(0, tmp.length()-2));\n" + + " get(Fields.Out, filed).getValueMeta().setType(2);\n" + + " }catch (Exception e){}\n" + + " \t\t}\n" + + "\t\t}"; + private final static String handleWraps = " if(tmp != null && ( tmp.contains(\"\\r\") || tmp.contains(\"\\n\"))){\n" + "\t\t\ttmp = tmp.trim();\n" + " tmp = tmp.replaceAll(\"\\r\",\" \");\n" + @@ -1445,6 +1466,7 @@ public class ExtractDataService { " List fields = Arrays.asList(\"Column_Fields\".split(\",\"));\n" + " for (String filed : fields) {\n" + " String tmp = get(Fields.In, filed).getString(r);\n" + + "handleMysqlBIGINTUNSIGNED \n" + "handleCharset \n" + "handleWraps \n" + "ExcelCompletion \n" + From 88afb50a6195ce736fc3602968cf3c34a4c867d0 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Sat, 6 May 2023 12:56:10 +0800 Subject: [PATCH 4/5] =?UTF-8?q?fix:=20=E8=AF=86=E5=88=AB=20mysql=20BIGINT?= =?UTF-8?q?=20UNSIGNED?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/dataease/service/dataset/ExtractDataService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java index a97a74f52d..4efc52dd57 100644 --- a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java +++ b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java @@ -1414,7 +1414,7 @@ public class ExtractDataService { " }catch (Exception e){}\n" + " }"; - private final static String handleMysqlBIGINTUNSIGNED = "if(filed.equalsIgnoreCase(BIGINTUNSIGNEDFIELD)){\n" + + private final static String handleMysqlBIGINTUNSIGNED = "if(filed.equalsIgnoreCase(\"BIGINTUNSIGNEDFIELD\")){\n" + "\t\t\tif(tmp != null && tmp.endsWith(\".0\")){\n" + " \ttry {\n" + " Long.valueOf(tmp.substring(0, tmp.length()-2));\n" + From 21dad506a38bcf09a8b372cdb56324d3d67023a0 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Tue, 9 May 2023 18:14:54 +0800 Subject: [PATCH 5/5] =?UTF-8?q?fix:=20=E7=B2=BE=E7=AE=80=E6=A8=A1=E5=BC=8F?= =?UTF-8?q?=E6=89=8B=E5=8A=A8=E4=BF=AE=E6=94=B9=E5=AD=97=E6=AE=B5=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E4=B8=BA=E6=95=B0=E5=80=BC=E5=90=8E=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataease/commons/utils/ExcelXlsxReader.java | 17 ++++++++++++++--- .../service/dataset/ExtractDataService.java | 7 ++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/backend/src/main/java/io/dataease/commons/utils/ExcelXlsxReader.java b/backend/src/main/java/io/dataease/commons/utils/ExcelXlsxReader.java index 15014155a6..5e2c2ea0ef 100644 --- a/backend/src/main/java/io/dataease/commons/utils/ExcelXlsxReader.java +++ b/backend/src/main/java/io/dataease/commons/utils/ExcelXlsxReader.java @@ -2,6 +2,7 @@ package io.dataease.commons.utils; import io.dataease.dto.dataset.ExcelSheetData; import io.dataease.i18n.Translator; +import io.dataease.plugins.common.base.domain.DatasetTableField; import io.dataease.plugins.common.dto.datasource.TableField; import org.apache.commons.collections4.CollectionUtils; import org.apache.poi.openxml4j.opc.OPCPackage; @@ -109,6 +110,16 @@ public class ExcelXlsxReader extends DefaultHandler { //定义该文档一行最大的单元格数,用来补全一行最后可能缺失的单元格 private String maxRef = null; + public List getDatasetTableFields() { + return datasetTableFields; + } + + public void setDatasetTableFields(List datasetTableFields) { + this.datasetTableFields = datasetTableFields; + } + + private List datasetTableFields = null; + /** * 单元格 */ @@ -418,10 +429,10 @@ public class ExcelXlsxReader extends DefaultHandler { break; case NUMBER: //数字 if (formatString != null && isDateFormat) { - if (obtainedNum != null) { - thisStr = formatter.formatRawCellContents(Double.parseDouble(value), formatIndex, formatString).trim(); - } else { + if (getDatasetTableFields() != null && getDatasetTableFields().get(curCol).getDeExtractType() == 1) { thisStr = formatter.formatRawCellContents(Double.parseDouble(value), formatIndex, "yyyy-mm-dd hh:mm:ss").trim(); + } else { + thisStr = formatter.formatRawCellContents(Double.parseDouble(value), formatIndex, formatString).trim(); } } else { thisStr = value; diff --git a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java index 4efc52dd57..71ff655b11 100644 --- a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java +++ b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java @@ -197,7 +197,7 @@ public class ExtractDataService { generateJobFile("all_scope", datasetTable, datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.joining(","))); extractData(datasetTable, "all_scope"); } else { - extractExcelDataForSimpleMode(datasetTable, "all_scope"); + extractExcelDataForSimpleMode(datasetTable, "all_scope", datasetTableFields); } replaceTable(TableUtils.tableName(datasetTableId)); saveSuccessLog(datasetTableTaskLog, false); @@ -250,7 +250,7 @@ public class ExtractDataService { generateJobFile("incremental_add", datasetTable, datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.joining(","))); extractData(datasetTable, "incremental_add"); } else { - extractExcelDataForSimpleMode(datasetTable, "incremental_add"); + extractExcelDataForSimpleMode(datasetTable, "incremental_add", datasetTableFields); } saveSuccessLog(datasetTableTaskLog, false); updateTableStatus(datasetTableId, JobStatus.Completed, execTime); @@ -724,7 +724,7 @@ public class ExtractDataService { return datasetTableTaskLog; } - private void extractExcelDataForSimpleMode(DatasetTable datasetTable, String extractType) throws Exception { + private void extractExcelDataForSimpleMode(DatasetTable datasetTable, String extractType, List datasetTableFields) throws Exception { List data = new ArrayList<>(); DataTableInfoDTO dataTableInfoDTO = new Gson().fromJson(datasetTable.getInfo(), DataTableInfoDTO.class); List excelSheetDataList = dataTableInfoDTO.getExcelSheetDataList(); @@ -738,6 +738,7 @@ public class ExtractDataService { } if (StringUtils.equalsIgnoreCase(suffix, "xlsx")) { ExcelXlsxReader excelXlsxReader = new ExcelXlsxReader(); + excelXlsxReader.setDatasetTableFields(datasetTableFields); excelXlsxReader.process(new FileInputStream(excelSheetData.getPath())); totalSheets = excelXlsxReader.totalSheets; }