[FixBug][seatunnel-web]Fix delete job task (#118)
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/JobDefinitionController.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/JobDefinitionController.java
index e95baa8..00f0120 100644
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/JobDefinitionController.java
+++ b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/JobDefinitionController.java
@@ -23,6 +23,7 @@
import org.apache.seatunnel.app.domain.response.PageInfo;
import org.apache.seatunnel.app.domain.response.job.JobDefinitionRes;
import org.apache.seatunnel.app.service.IJobDefinitionService;
+import org.apache.seatunnel.app.service.IJobTaskService;
import org.apache.seatunnel.server.common.CodeGenerateUtils;
import org.springframework.web.bind.annotation.DeleteMapping;
@@ -46,6 +47,8 @@
@Resource private IJobDefinitionService jobService;
+ @Resource private IJobTaskService jobTask;
+
/**
* create job definition
*
@@ -81,6 +84,7 @@
Result<Void> deleteJobDefinition(
@ApiParam(value = "id", required = true) @RequestParam long id) {
jobService.deleteJob(id);
+ jobTask.deleteTaskByVersionId(id);
return Result.success();
}
}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IJobTaskDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IJobTaskDao.java
index f9ae0a1..ffc9c6c 100644
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IJobTaskDao.java
+++ b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IJobTaskDao.java
@@ -38,4 +38,6 @@
void deleteTasks(List<Long> jobTaskIds);
void deleteTask(long jobVersionId, String pluginId);
+
+ void deleteTaskByVersionId(long id);
}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/JobTaskDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/JobTaskDaoImpl.java
index 540e4c7..5ab86f5 100644
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/JobTaskDaoImpl.java
+++ b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/JobTaskDaoImpl.java
@@ -87,4 +87,9 @@
.eq(JobTask::getVersionId, jobVersionId)
.and(i -> i.eq(JobTask::getPluginId, pluginId)));
}
+
+ @Override
+ public void deleteTaskByVersionId(long id) {
+ jobTaskMapper.delete(Wrappers.lambdaQuery(new JobTask()).eq(JobTask::getVersionId, id));
+ }
}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IJobTaskService.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IJobTaskService.java
index 71c7d30..7e213e3 100644
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IJobTaskService.java
+++ b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IJobTaskService.java
@@ -36,4 +36,6 @@
<T extends TransformOptions> T getTransformOptions(long jobVersionId, String pluginId);
void deleteSingleTask(long jobVersionId, String pluginId);
+
+ void deleteTaskByVersionId(long id);
}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/JobTaskServiceImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/JobTaskServiceImpl.java
index 7e38a6b..c0fe599 100644
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/JobTaskServiceImpl.java
+++ b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/JobTaskServiceImpl.java
@@ -554,6 +554,12 @@
jobTaskDao.deleteTask(jobVersionId, pluginId);
}
+ @Override
+ public void deleteTaskByVersionId(long id) {
+ funcPermissionCheck(SeatunnelFuncPermissionKeyConstant.SINGLE_TASK_DELETE, 0);
+ jobTaskDao.deleteTaskByVersionId(id);
+ }
+
private String getConnectorTypeFromDataSource(long datasourceId) {
String pluginName =
datasourceService