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 a74b955d40..518042cb89 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java @@ -37,6 +37,8 @@ public class DataSetTableService { private DatasourceMapper datasourceMapper; @Resource private DataSetTableFieldsService dataSetTableFieldsService; + @Resource + private DataSetTableTaskService dataSetTableTaskService; public void batchInsert(List datasetTable) throws Exception { for (DatasetTable table : datasetTable) { @@ -67,11 +69,13 @@ public class DataSetTableService { public void delete(String id) { datasetTableMapper.deleteByPrimaryKey(id); dataSetTableFieldsService.deleteByTableId(id); + // 删除同步任务 + dataSetTableTaskService.deleteByTableId(id); } public List list(DataSetTableRequest dataSetTableRequest) { DatasetTableExample datasetTableExample = new DatasetTableExample(); - if(StringUtils.isNotEmpty(dataSetTableRequest.getSceneId())){ + if (StringUtils.isNotEmpty(dataSetTableRequest.getSceneId())) { datasetTableExample.createCriteria().andSceneIdEqualTo(dataSetTableRequest.getSceneId()); } if (StringUtils.isNotEmpty(dataSetTableRequest.getSort())) { @@ -173,7 +177,7 @@ public class DataSetTableService { return map; } - public List getDataSetData(String datasourceId, String table, List fields){ + public List getDataSetData(String datasourceId, String table, List fields) { List data = new ArrayList<>(); Datasource ds = datasourceMapper.selectByPrimaryKey(datasourceId); DatasourceProvider datasourceProvider = ProviderFactory.getProvider(ds.getType()); @@ -188,7 +192,7 @@ public class DataSetTableService { return data; } - public Long getDataSetTotalData(String datasourceId, String table){ + public Long getDataSetTotalData(String datasourceId, String table) { List data = new ArrayList<>(); Datasource ds = datasourceMapper.selectByPrimaryKey(datasourceId); DatasourceProvider datasourceProvider = ProviderFactory.getProvider(ds.getType()); @@ -203,7 +207,7 @@ public class DataSetTableService { return 0l; } - public List getDataSetPageData(String datasourceId, String table, List fields, Long startPage, Long pageSize){ + public List getDataSetPageData(String datasourceId, String table, List fields, Long startPage, Long pageSize) { List data = new ArrayList<>(); Datasource ds = datasourceMapper.selectByPrimaryKey(datasourceId); DatasourceProvider datasourceProvider = ProviderFactory.getProvider(ds.getType()); diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskService.java index 4f54ea0b3e..ba494c375a 100644 --- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskService.java +++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableTaskService.java @@ -7,6 +7,7 @@ import io.dataease.service.ScheduleService; import org.apache.commons.lang3.StringUtils; import org.quartz.CronExpression; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; @@ -17,6 +18,7 @@ import java.util.UUID; * @Date 2021/3/4 1:26 下午 */ @Service +@Transactional public class DataSetTableTaskService { @Resource private DatasetTableTaskMapper datasetTableTaskMapper; @@ -50,6 +52,20 @@ public class DataSetTableTaskService { dataSetTableTaskLogService.deleteByTaskId(id); } + public void delete(DatasetTableTask task) { + datasetTableTaskMapper.deleteByPrimaryKey(task.getId()); + scheduleService.deleteSchedule(task); + dataSetTableTaskLogService.deleteByTaskId(task.getId()); + } + + public void deleteByTableId(String id) { + DatasetTableTaskExample datasetTableTaskExample = new DatasetTableTaskExample(); + DatasetTableTaskExample.Criteria criteria = datasetTableTaskExample.createCriteria(); + criteria.andTableIdEqualTo(id); + List datasetTableTasks = datasetTableTaskMapper.selectByExample(datasetTableTaskExample); + datasetTableTasks.forEach(this::delete); + } + public DatasetTableTask get(String id) { return datasetTableTaskMapper.selectByPrimaryKey(id); } diff --git a/frontend/src/views/dataset/data/ViewTable.vue b/frontend/src/views/dataset/data/ViewTable.vue index c006c8082b..b297149ec1 100644 --- a/frontend/src/views/dataset/data/ViewTable.vue +++ b/frontend/src/views/dataset/data/ViewTable.vue @@ -24,7 +24,7 @@ 关联视图 TODO - + diff --git a/frontend/src/views/dataset/group/Group.vue b/frontend/src/views/dataset/group/Group.vue index a01c0f53a9..5d6304ce5b 100644 --- a/frontend/src/views/dataset/group/Group.vue +++ b/frontend/src/views/dataset/group/Group.vue @@ -215,10 +215,10 @@ - - {{ $t('dataset.direct_connect') }} - {{ $t('dataset.sync_data') }} - + + + +