Unverified 提交 6965821b authored 作者: taojinlong's avatar taojinlong 提交者: GitHub

Merge pull request #385 from dataease/pr@v1.1@excel

fix: 修复excel 替换/追加
...@@ -267,6 +267,9 @@ public class ExtractDataService { ...@@ -267,6 +267,9 @@ public class ExtractDataService {
}); });
String dorisTablColumnSql = createDorisTablColumnSql(datasetTableFields); String dorisTablColumnSql = createDorisTablColumnSql(datasetTableFields);
boolean msg = false;
JobStatus jobStatus = JobStatus.Completed;
Long execTime = null;
switch (updateType) { switch (updateType) {
case all_scope: // 全量更新 case all_scope: // 全量更新
try { try {
...@@ -281,29 +284,22 @@ public class ExtractDataService { ...@@ -281,29 +284,22 @@ public class ExtractDataService {
} else { } else {
generateJobFile("all_scope", datasetTable, String.join(",", datasetTableFields.stream().map(DatasetTableField::getDataeaseName).collect(Collectors.toList()))); 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"); extractData(datasetTable, "all_scope");
replaceTable(DorisTableUtils.dorisName(datasetTableId)); replaceTable(DorisTableUtils.dorisName(datasetTableId));
saveSucessLog(datasetTableTaskLog); saveSucessLog(datasetTableTaskLog);
msg = true;
sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog, true); jobStatus = JobStatus.Completed;
deleteFile("all_scope", datasetTableId);
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Completed);
} catch (Exception e) { } catch (Exception e) {
saveErrorLog(datasetTableId, taskId, e); saveErrorLog(datasetTableId, taskId, e);
msg = false;
dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Error); jobStatus = JobStatus.Error;
sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,false);
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null);
dropDorisTable(DorisTableUtils.dorisTmpName(DorisTableUtils.dorisName(datasetTableId)));
deleteFile("all_scope", datasetTableId);
} finally { } 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; break;
...@@ -323,7 +319,7 @@ public class ExtractDataService { ...@@ -323,7 +319,7 @@ public class ExtractDataService {
if (datasetTableTask == null ) { if (datasetTableTask == null ) {
datasetTableTaskLog = writeDatasetTableTaskLog(datasetTableId, taskId); datasetTableTaskLog = writeDatasetTableTaskLog(datasetTableId, taskId);
} }
Long execTime = System.currentTimeMillis(); execTime = System.currentTimeMillis();
if (StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd()) && StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd().replace(" ", ""))) {// 增量添加 if (StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd()) && StringUtils.isNotEmpty(datasetTableIncrementalConfig.getIncrementalAdd().replace(" ", ""))) {// 增量添加
String sql = datasetTableIncrementalConfig.getIncrementalAdd().replace(lastUpdateTime, datasetTable.getLastUpdateTime().toString()) String sql = datasetTableIncrementalConfig.getIncrementalAdd().replace(lastUpdateTime, datasetTable.getLastUpdateTime().toString())
.replace(currentUpdateTime, Long.valueOf(System.currentTimeMillis()).toString()); .replace(currentUpdateTime, Long.valueOf(System.currentTimeMillis()).toString());
...@@ -341,24 +337,17 @@ public class ExtractDataService { ...@@ -341,24 +337,17 @@ public class ExtractDataService {
} }
saveSucessLog(datasetTableTaskLog); saveSucessLog(datasetTableTaskLog);
sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,true); msg = true;
jobStatus = JobStatus.Completed;
deleteFile("incremental_add", datasetTableId);
deleteFile("incremental_delete", datasetTableId);
updateTableStatus(datasetTableId, datasetTable, JobStatus.Completed, execTime);
dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Completed);
} catch (Exception e) { } catch (Exception e) {
saveErrorLog(datasetTableId, taskId, e); saveErrorLog(datasetTableId, taskId, e);
sendWebMsg(datasetTable, datasetTableTask, datasetTableTaskLog,false); msg = false;
updateTableStatus(datasetTableId, datasetTable, JobStatus.Error, null); jobStatus = JobStatus.Error;
dataSetTableTaskService.updateTaskStatus(datasetTableTask, JobStatus.Error);
deleteFile("incremental_add", datasetTableId);
deleteFile("incremental_delete", datasetTableId);
} finally { } finally {
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; break;
} }
......
...@@ -270,7 +270,7 @@ export default { ...@@ -270,7 +270,7 @@ export default {
type: 'excel', type: 'excel',
mode: parseInt(this.mode), mode: parseInt(this.mode),
// info: '{"data":"' + this.path + '"}', // 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 editType: this.param.editType ? this.param.editType : 0
} }
} }
......
<template> <template>
<el-col> <el-col>
<el-row> <el-row>
<el-button v-if="hasDataPermission('manage',param.privileges) || table.type !== 'excel'" icon="el-icon-setting" size="mini" @click="showConfig"> <el-button v-if="hasDataPermission('manage',param.privileges) && table.type !== 'excel'" icon="el-icon-setting" size="mini" @click="showConfig">
{{ $t('dataset.update_setting') }} {{ $t('dataset.update_setting') }}
</el-button> </el-button>
<el-button icon="el-icon-refresh" size="mini" @click="refreshLog"> <el-button icon="el-icon-refresh" size="mini" @click="refreshLog">
...@@ -149,9 +149,9 @@ ...@@ -149,9 +149,9 @@
<el-form-item class="form-item"> <el-form-item class="form-item">
<el-select v-model="taskForm.extraData.simple_cron_type" filterable size="mini" @change="onSimpleCronChange()" > <el-select v-model="taskForm.extraData.simple_cron_type" filterable size="mini" @change="onSimpleCronChange()" >
<el-option :label="$t('cron.minute')" value="minute" /> <el-option :label="$t('cron.minute_default')" value="minute" />
<el-option :label="$t('cron.hour')" value="hour" /> <el-option :label="$t('cron.hour_default')" value="hour" />
<el-option :label="$t('cron.day')" value="day" /> <el-option :label="$t('cron.day_default')" value="day" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item class="form-item" :label="$t('cron.every_exec')"> <el-form-item class="form-item" :label="$t('cron.every_exec')">
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论