From 7cc006fe4ae3755afef2c47ea0eac51be70f667d Mon Sep 17 00:00:00 2001 From: taojinlong Date: Wed, 28 Jul 2021 16:41:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Dexcel=20=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2/=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/dataset/ExtractDataService.java | 59 +++++++------------ frontend/src/views/dataset/add/AddExcel.vue | 2 +- .../src/views/dataset/data/UpdateInfo.vue | 47 +++++++-------- 3 files changed, 47 insertions(+), 61 deletions(-) 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 593f12c13a..e49ee0bfa4 100644 --- a/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java +++ b/backend/src/main/java/io/dataease/service/dataset/ExtractDataService.java @@ -267,6 +267,9 @@ public class ExtractDataService { }); String dorisTablColumnSql = createDorisTablColumnSql(datasetTableFields); + boolean msg = false; + JobStatus jobStatus = JobStatus.Completed; + Long execTime = null; switch (updateType) { case all_scope: // 全量更新 try { @@ -281,29 +284,22 @@ public class ExtractDataService { } else { generateJobFile("all_scope", datasetTable, String.join(",", datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.toList()))); } - Long execTime = System.currentTimeMillis(); + execTime = System.currentTimeMillis(); extractData(datasetTable, "all_scope"); replaceTable(DorisTableUtils.dorisName(datasetTableId)); saveSucessLog(datasetTableTaskLog); - - sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog, true); - - deleteFile("all_scope", datasetTableId); - - updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime); - - dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Completed); - + msg = true; + jobStatus = JobStatus.Completed; } catch (Exception e) { saveErrorLog(datasetTableId, taskId, e); - - dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Error); - - sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,false); - updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null); - dropDorisTable(DorisTableUtils.dorisTmpName(DorisTableUtils.dorisName(datasetTableId))); - deleteFile("all_scope", datasetTableId); + msg = false; + jobStatus = JobStatus.Error; } finally { + try { deleteFile("all_scope", datasetTableId); }catch (Exception ignore){} + try { sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog, msg); }catch (Exception ignore){} + try { dataSetTableTaskService.updateTaskStatus(datasetTableTask, jobStatus); }catch (Exception ignore){} + try { updateTableStatus(datasetTableId, datasetTable, jobStatus, execTime); }catch (Exception ignore){} + try { dropDorisTable(DorisTableUtils.dorisTmpName(DorisTableUtils.dorisName(datasetTableId))); }catch (Exception ignore){} } break; @@ -323,7 +319,7 @@ public class ExtractDataService { if (datasetTableTask == null ) { datasetTableTaskLog = writeDatasetTableTaskLog(datasetTableId, taskId); } - Long execTime = System.currentTimeMillis(); + execTime = System.currentTimeMillis(); if (StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd()) && StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd().replace(" ", ""))) {// 增量添加 String sql = datasetTableIncrementalConfig.getIncrementalAdd().replace(lastUpdateTime, datasetTable.getLastUpdateTime().toString()) .replace(currentUpdateTime, Long.valueOf(System.currentTimeMillis()).toString()); @@ -341,28 +337,17 @@ public class ExtractDataService { } saveSucessLog(datasetTableTaskLog); - sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,true); - - deleteFile("incremental_add", datasetTableId); - deleteFile("incremental_delete", datasetTableId); - - updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime); - - dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Completed); + msg = true; + jobStatus = JobStatus.Completed; } catch (Exception e) { saveErrorLog(datasetTableId, taskId, e); - sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,false); - updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null); - - dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Error); - - deleteFile("incremental_add", datasetTableId); - deleteFile("incremental_delete", datasetTableId); + msg = false; + jobStatus = JobStatus.Error; } finally { - if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) { - datasetTableTask.setStatus(TaskStatus.Stopped.name()); - dataSetTableTaskService.update(datasetTableTask); - } + try { deleteFile("incremental_add", datasetTableId); deleteFile("incremental_delete", datasetTableId); }catch (Exception ignore){} + try { sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog, msg); }catch (Exception ignore){} + try { dataSetTableTaskService.updateTaskStatus(datasetTableTask, jobStatus); }catch (Exception ignore){} + try { updateTableStatus(datasetTableId, datasetTable, jobStatus, execTime); }catch (Exception ignore){} } break; } diff --git a/frontend/src/views/dataset/add/AddExcel.vue b/frontend/src/views/dataset/add/AddExcel.vue index c7aee57a3e..b777f543ba 100644 --- a/frontend/src/views/dataset/add/AddExcel.vue +++ b/frontend/src/views/dataset/add/AddExcel.vue @@ -270,7 +270,7 @@ export default { type: 'excel', mode: parseInt(this.mode), // info: '{"data":"' + this.path + '"}', - info: JSON.stringify({ data: this.path }), + info: JSON.stringify({ data: this.path, sheets: [this.sheets[0]] }), editType: this.param.editType ? this.param.editType : 0 } } diff --git a/frontend/src/views/dataset/data/UpdateInfo.vue b/frontend/src/views/dataset/data/UpdateInfo.vue index 0b8fd0351b..1ba0a51c7f 100644 --- a/frontend/src/views/dataset/data/UpdateInfo.vue +++ b/frontend/src/views/dataset/data/UpdateInfo.vue @@ -1,7 +1,7 @@