You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@seatunnel.apache.org by ga...@apache.org on 2023/09/14 02:39:07 UTC

[seatunnel-web] branch main updated: [FixBug][seatunnel-web]Fix delete job task (#118)

This is an automated email from the ASF dual-hosted git repository.

gaojun2048 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/seatunnel-web.git


The following commit(s) were added to refs/heads/main by this push:
     new b1fba9e7 [FixBug][seatunnel-web]Fix delete job task (#118)
b1fba9e7 is described below

commit b1fba9e783e73be4dee5fadc27a808b220f3301a
Author: fang <56...@users.noreply.github.com>
AuthorDate: Thu Sep 14 10:39:01 2023 +0800

    [FixBug][seatunnel-web]Fix delete job task (#118)
---
 .../apache/seatunnel/app/controller/JobDefinitionController.java    | 4 ++++
 .../src/main/java/org/apache/seatunnel/app/dal/dao/IJobTaskDao.java | 2 ++
 .../java/org/apache/seatunnel/app/dal/dao/impl/JobTaskDaoImpl.java  | 5 +++++
 .../main/java/org/apache/seatunnel/app/service/IJobTaskService.java | 2 ++
 .../org/apache/seatunnel/app/service/impl/JobTaskServiceImpl.java   | 6 ++++++
 5 files changed, 19 insertions(+)

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 e95baa8e..00f0120a 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.request.job.JobReq;
 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 @@ public class JobDefinitionController {
 
     @Resource private IJobDefinitionService jobService;
 
+    @Resource private IJobTaskService jobTask;
+
     /**
      * create job definition
      *
@@ -81,6 +84,7 @@ public class JobDefinitionController {
     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 f9ae0a14..ffc9c6c0 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 @@ public interface IJobTaskDao {
     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 540e4c72..5ab86f59 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 @@ public class JobTaskDaoImpl implements IJobTaskDao {
                         .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 71c7d30f..7e213e3b 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 @@ public interface IJobTaskService {
     <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 7e38a6bc..c0fe599c 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 @@ public class JobTaskServiceImpl extends SeatunnelBaseServiceImpl implements IJob
         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