From a48249c8db3c89778da7cd34e1265e73100645fd Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 24 May 2021 18:43:45 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=A2=84=E8=A7=88=20excel=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=9B=86=E6=97=B6=EF=BC=8C=E7=BB=99=E5=87=BA=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E4=BF=A1=E6=81=AF=EF=BC=9A=E5=A4=84=E7=90=86=E4=B8=AD?= =?UTF-8?q?/=E5=A4=84=E7=90=86=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/dataease/job/sechedule/ExtractDataJob.java | 1 - .../service/dataset/DataSetTableService.java | 13 +++++++++++++ .../service/dataset/DataSetTableTaskLogService.java | 6 ++++++ .../main/resources/i18n/messages_en_US.properties | 1 + .../main/resources/i18n/messages_zh_CN.properties | 1 + .../main/resources/i18n/messages_zh_TW.properties | 1 + 6 files changed, 22 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/io/dataease/job/sechedule/ExtractDataJob.java b/backend/src/main/java/io/dataease/job/sechedule/ExtractDataJob.java index ec91fbdce7..d6411e3b96 100644 --- a/backend/src/main/java/io/dataease/job/sechedule/ExtractDataJob.java +++ b/backend/src/main/java/io/dataease/job/sechedule/ExtractDataJob.java @@ -13,7 +13,6 @@ public class ExtractDataJob extends DeScheduleJob{ extractDataService = (ExtractDataService) CommonBeanFactory.getBean(ExtractDataService.class); } - @Override void businessExecute(JobExecutionContext context) { extractDataService.extractData(datasetTableId, taskId, updateType); 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 efe1615205..d3f00a6633 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -7,6 +7,7 @@ import io.dataease.base.mapper.DatasetTableIncrementalConfigMapper; import io.dataease.base.mapper.DatasetTableMapper; import io.dataease.base.mapper.DatasourceMapper; import io.dataease.base.mapper.ext.ExtDataSetTableMapper; +import io.dataease.commons.constants.JobStatus; import io.dataease.commons.utils.*; import io.dataease.controller.request.dataset.DataSetTableRequest; import io.dataease.datasource.dto.TableFiled; @@ -71,6 +72,8 @@ public class DataSetTableService { private DatasetTableIncrementalConfigMapper datasetTableIncrementalConfigMapper; @Resource private DataSetTableUnionService dataSetTableUnionService; + @Resource + private DataSetTableTaskLogService dataSetTableTaskLogService; @Value("${upload.file.path}") private String path; @@ -256,6 +259,16 @@ public class DataSetTableService { e.printStackTrace(); } } else if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "excel")) { + List datasetTableTaskLogs = dataSetTableTaskLogService.getByTableId(datasetTable.getId()); + if(CollectionUtils.isEmpty(datasetTableTaskLogs)){ + throw new Exception("no records"); + } + if(datasetTableTaskLogs.get(0).getStatus().equalsIgnoreCase(JobStatus.Underway.name())){ + throw new Exception(Translator.get("i18n_processing_data")); + } + if(datasetTableTaskLogs.get(0).getStatus().equalsIgnoreCase(JobStatus.Error.name())){ + throw new Exception("Failed to extract data: " + datasetTableTaskLogs.get(0).getInfo()); + } Datasource ds = (Datasource) CommonBeanFactory.getBean("DorisDatasource"); JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class); DatasourceRequest datasourceRequest = new DatasourceRequest(); diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskLogService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskLogService.java index 9f1054db50..b0072fc786 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskLogService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskLogService.java @@ -49,4 +49,10 @@ public class DataSetTableTaskLogService { datasetTableTaskLogMapper.deleteByExample(datasetTableTaskLogExample); } + public List getByTableId(String datasetId){ + DatasetTableTaskLogExample datasetTableTaskLogExample = new DatasetTableTaskLogExample(); + DatasetTableTaskLogExample.Criteria criteria = datasetTableTaskLogExample.createCriteria(); + criteria.andTableIdEqualTo(datasetId); + return datasetTableTaskLogMapper.selectByExampleWithBLOBs(datasetTableTaskLogExample); + } } diff --git a/backend/src/main/resources/i18n/messages_en_US.properties b/backend/src/main/resources/i18n/messages_en_US.properties index 4271da9eb0..b8488fb325 100644 --- a/backend/src/main/resources/i18n/messages_en_US.properties +++ b/backend/src/main/resources/i18n/messages_en_US.properties @@ -235,3 +235,4 @@ i18n_cron_expression_error=Cron expression error i18n_same_folder_can_not_repeat=Same Folder Can Not Repeat i18n_default_panel=Default Panel i18n_panel_list=Panel List +i18n_processing_data=Processing data now, Refresh later \ No newline at end of file diff --git a/backend/src/main/resources/i18n/messages_zh_CN.properties b/backend/src/main/resources/i18n/messages_zh_CN.properties index 2262059625..428ee4eab3 100644 --- a/backend/src/main/resources/i18n/messages_zh_CN.properties +++ b/backend/src/main/resources/i18n/messages_zh_CN.properties @@ -236,3 +236,4 @@ i18n_cron_expression_error=Cron表达式校验错误 i18n_same_folder_can_not_repeat=相同的目录下名称不能重复 i18n_default_panel=默认仪表盘 i18n_panel_list=仪表盘列表 +i18n_processing_data=正在处理数据,稍后刷新 diff --git a/backend/src/main/resources/i18n/messages_zh_TW.properties b/backend/src/main/resources/i18n/messages_zh_TW.properties index 4b3dea3692..4307cc1605 100644 --- a/backend/src/main/resources/i18n/messages_zh_TW.properties +++ b/backend/src/main/resources/i18n/messages_zh_TW.properties @@ -236,3 +236,4 @@ i18n_cron_expression_error=Cron表達式校驗錯誤 i18n_same_folder_can_not_repeat=相同的目录下名称不能重复 i18n_default_panel=默认仪表盘 i18n_panel_list=仪表盘列表 +i18n_processing_data=正在處理數據,稍後刷新 \ No newline at end of file