feat: 优化任务状态的切换

This commit is contained in:
taojinlong 2021-08-03 15:37:32 +08:00
parent 38e05c2dc6
commit a3defb1a88
6 changed files with 35 additions and 15 deletions

View File

@ -66,7 +66,7 @@ public class DataSetTableTaskController {
@ApiOperation("更新状态")
@PostMapping("/updateStatus")
public void updateStatus(@RequestBody DatasetTableTask datasetTableTask) {
public void updateStatus(@RequestBody DatasetTableTask datasetTableTask) throws Exception{
dataSetTableTaskService.updateDatasetTableTaskStatus(datasetTableTask);
}

View File

@ -52,8 +52,6 @@ public class DataSetTableTaskService {
private ExtDataSetTaskMapper extDataSetTaskMapper;
@Resource
private DatasetTableMapper datasetTableMapper;
@Resource
private UtilMapper utilMapper;
public DatasetTableTask save(DataSetTaskRequest dataSetTaskRequest) throws Exception {
checkName(dataSetTaskRequest);
@ -98,9 +96,10 @@ public class DataSetTableTaskService {
// simple
if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) { // SIMPLE 类型提前占位
execNow(datasetTableTask);
}else {
checkTaskIsStopped(datasetTableTask);
}
scheduleService.addSchedule(datasetTableTask);
checkTaskIsStopped(datasetTableTask);
return datasetTableTask;
}
@ -281,7 +280,13 @@ public class DataSetTableTaskService {
}
}
public void updateDatasetTableTaskStatus(DatasetTableTask datasetTableTask){
public void updateDatasetTableTaskStatus(DatasetTableTask datasetTableTask)throws Exception{
DatasetTableTask dbDatasetTableTask = datasetTableTaskMapper.selectByPrimaryKey(datasetTableTask.getId());
if(dbDatasetTableTask.getStatus().equalsIgnoreCase(TaskStatus.Exec.name()) || dbDatasetTableTask.getStatus().equals(TaskStatus.Stopped.name())){
throw new Exception(Translator.get("i18n_change_task_status_error") + Translator.get("i18n_" + dbDatasetTableTask.getStatus()));
}
DatasetTableTaskExample datasetTableTaskExample = new DatasetTableTaskExample();
DatasetTableTaskExample.Criteria criteria = datasetTableTaskExample.createCriteria();
criteria.andIdEqualTo(datasetTableTask.getId());

View File

@ -277,4 +277,7 @@ i18n_data_not_sync=Please sync data first
i18n_excel_colume_change=The column name of Excel is inconsistent with the original data set
i18n_timed_task=Timed Task
i18n_datasource_connect_error=Data source connection exception:
i18n_check_sql_error=Check incremental SQL exception,
i18n_check_sql_error=Check incremental SQL exception,
i18n_change_task_status_error=Suspension is not allowed. The task status is
i18n_Stopped=END
i18n_Exec=Running

View File

@ -277,3 +277,7 @@ i18n_excel_colume_change=Excel的列名与原数据集不一致
i18n_timed_task=定时任务
i18n_datasource_connect_error=数据源连接异常:
i18n_check_sql_error=校验增量 SQL 异常,
i18n_change_task_status_error=不允许暂停,任务状态为:
i18n_Stopped=执行结束
i18n_Exec=运行中

View File

@ -279,4 +279,7 @@ i18n_data_not_sync=請先完成數據同步
i18n_excel_colume_change=Excel的列名與原數據集不一致
i18n_timed_task=定時任務
i18n_datasource_connect_error=數據源連接異常:
i18n_check_sql_error=校驗增量SQL異常,
i18n_check_sql_error=校驗增量SQL異常,
i18n_change_task_status_error=不允許暫停,任務狀態為:
i18n_Stopped=執行結束
i18n_Exec=運行中

View File

@ -416,15 +416,20 @@ export default {
this.update_task = true
},
changeTaskStatus(task) {
const param = task
param.status = task.status === 'Underway' ? 'Pending' : 'Underway'
let param = JSON.parse(JSON.stringify(task));
post('/dataset/task/updateStatus', task).then(response => {
task.status = param.status
this.$message({
message: this.$t('dataset.task.change_success'),
type: 'success',
showClose: true
})
if(response.success){
task.status = param.status
this.$message({
message: this.$t('dataset.task.change_success'),
type: 'success',
showClose: true
})
}else {
this.search(this.last_condition, false)
}
}).catch(() => {
this.search(this.last_condition, false)
})
},
execTask(task) {