You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@seatunnel.apache.org by ki...@apache.org on 2022/09/28 01:44:11 UTC

[incubator-seatunnel] 01/01: Remove web related modules

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

kirs pushed a commit to branch remove-web-module
in repository https://gitbox.apache.org/repos/asf/incubator-seatunnel.git

commit 259d5e201071a5b13347a5fe801dad1fda733967
Author: CalvinKirs <ki...@apache.org>
AuthorDate: Wed Sep 28 09:41:23 2022 +0800

    Remove web related modules
    
    We discussed:
    https://lists.apache.org/thread/cvncorb4hqnz08c9dg5432bqqg9yyypl
    The new repository is here: https://github.com/apache/incubator-seatunnel-web/
---
 docs/en/start/local.mdx                            |    6 +-
 pom.xml                                            |    1 -
 seatunnel-server/pom.xml                           |  149 -
 seatunnel-server/seatunnel-app/pom.xml             |  211 --
 .../apache/seatunnel/app/SeatunnelApplication.java |   38 -
 .../seatunnel/app/adapter/SeatunnelWebAdapter.java |   62 -
 .../apache/seatunnel/app/aspect/LoginAspect.java   |   75 -
 .../apache/seatunnel/app/aspect/LogoutAspect.java  |   58 -
 .../org/apache/seatunnel/app/aspect/UserId.java    |   28 -
 .../seatunnel/app/common/DatasourceStatusEnum.java |   41 -
 .../org/apache/seatunnel/app/common/Result.java    |   99 -
 .../apache/seatunnel/app/common/RoleTypeEnum.java  |   40 -
 .../app/common/ScriptParamStatusEnum.java          |   40 -
 .../seatunnel/app/common/ScriptStatusEnum.java     |   41 -
 .../seatunnel/app/common/ScriptTypeEnum.java       |   40 -
 .../seatunnel/app/common/UserStatusEnum.java       |   39 -
 .../seatunnel/app/common/UserTokenStatusEnum.java  |   28 -
 .../apache/seatunnel/app/common/UserTypeEnum.java  |   40 -
 .../org/apache/seatunnel/app/config/Swagger2.java  |   53 -
 .../seatunnel/app/controller/AuthController.java   |   51 -
 .../seatunnel/app/controller/ScriptController.java |  141 -
 .../seatunnel/app/controller/TaskController.java   |  115 -
 .../seatunnel/app/controller/UserController.java   |  112 -
 .../org/apache/seatunnel/app/dal/dao/IRoleDao.java |   27 -
 .../app/dal/dao/IRoleUserRelationDao.java          |   29 -
 .../seatunnel/app/dal/dao/ISchedulerConfigDao.java |   26 -
 .../apache/seatunnel/app/dal/dao/IScriptDao.java   |   39 -
 .../seatunnel/app/dal/dao/IScriptJobApplyDao.java  |   27 -
 .../seatunnel/app/dal/dao/IScriptParamDao.java     |   31 -
 .../org/apache/seatunnel/app/dal/dao/IUserDao.java |   53 -
 .../seatunnel/app/dal/dao/impl/RoleDaoImpl.java    |   44 -
 .../app/dal/dao/impl/RoleUserRelationDaoImpl.java  |   50 -
 .../app/dal/dao/impl/SchedulerConfigDaoImpl.java   |   45 -
 .../seatunnel/app/dal/dao/impl/ScriptDaoImpl.java  |   90 -
 .../app/dal/dao/impl/ScriptJobApplyDaoImpl.java    |   59 -
 .../app/dal/dao/impl/ScriptParamDaoImpl.java       |   64 -
 .../seatunnel/app/dal/dao/impl/UserDaoImpl.java    |  141 -
 .../org/apache/seatunnel/app/dal/entity/Role.java  |   44 -
 .../seatunnel/app/dal/entity/RoleUserRelation.java |   42 -
 .../seatunnel/app/dal/entity/SchedulerConfig.java  |   47 -
 .../apache/seatunnel/app/dal/entity/Script.java    |   45 -
 .../seatunnel/app/dal/entity/ScriptJobApply.java   |   39 -
 .../seatunnel/app/dal/entity/ScriptParam.java      |   39 -
 .../org/apache/seatunnel/app/dal/entity/User.java  |   39 -
 .../seatunnel/app/dal/entity/UserLoginLog.java     |   37 -
 .../seatunnel/app/dal/mapper/RoleMapper.java       |   29 -
 .../app/dal/mapper/RoleUserRelationMapper.java     |   32 -
 .../app/dal/mapper/SchedulerConfigMapper.java      |   32 -
 .../app/dal/mapper/ScriptJobApplyMapper.java       |   34 -
 .../seatunnel/app/dal/mapper/ScriptMapper.java     |   40 -
 .../app/dal/mapper/ScriptParamMapper.java          |   34 -
 .../app/dal/mapper/UserLoginLogMapper.java         |   34 -
 .../seatunnel/app/dal/mapper/UserMapper.java       |   44 -
 .../app/domain/dto/job/PushScriptDto.java          |   28 -
 .../app/domain/dto/job/RecycleScriptDto.java       |   28 -
 .../app/domain/dto/job/ScriptJobApplyDto.java      |   30 -
 .../app/domain/dto/script/AddEmptyScriptDto.java   |   31 -
 .../domain/dto/script/CheckScriptDuplicateDto.java |   28 -
 .../app/domain/dto/script/ListScriptsDto.java      |   28 -
 .../domain/dto/script/UpdateScriptContentDto.java  |   30 -
 .../domain/dto/script/UpdateScriptParamDto.java    |   30 -
 .../seatunnel/app/domain/dto/user/ListUserDto.java |   27 -
 .../app/domain/dto/user/UpdateUserDto.java         |   31 -
 .../app/domain/dto/user/UserLoginLogDto.java       |   33 -
 .../seatunnel/app/domain/request/BasePageReq.java  |   33 -
 .../domain/request/script/AddEmptyScriptReq.java   |   37 -
 .../domain/request/script/PublishScriptReq.java    |   35 -
 .../app/domain/request/script/ScriptListReq.java   |   33 -
 .../request/script/UpdateScriptContentReq.java     |   38 -
 .../request/script/UpdateScriptParamReq.java       |   36 -
 .../app/domain/request/task/ExecuteReq.java        |   47 -
 .../app/domain/request/task/InstanceListReq.java   |   31 -
 .../app/domain/request/task/InstanceLogRes.java    |   34 -
 .../app/domain/request/task/JobListReq.java        |   31 -
 .../app/domain/request/task/RecycleScriptReq.java  |   35 -
 .../app/domain/request/user/AddUserReq.java        |   24 -
 .../app/domain/request/user/BaseUserReq.java       |   37 -
 .../app/domain/request/user/UpdateUserReq.java     |   32 -
 .../app/domain/request/user/UserListReq.java       |   31 -
 .../app/domain/request/user/UserLoginReq.java      |   26 -
 .../seatunnel/app/domain/response/PageInfo.java    |   77 -
 .../domain/response/script/AddEmptyScriptRes.java  |   25 -
 .../domain/response/script/BaseScriptInfoRes.java  |   43 -
 .../app/domain/response/script/ScriptParamRes.java |   33 -
 .../response/script/ScriptSimpleInfoRes.java       |   26 -
 .../response/task/InstanceSimpleInfoRes.java       |   49 -
 .../app/domain/response/task/JobSimpleInfoRes.java |   43 -
 .../app/domain/response/user/AddUserRes.java       |   27 -
 .../app/domain/response/user/BaseUserInfoRes.java  |   39 -
 .../domain/response/user/UserSimpleInfoRes.java    |   37 -
 .../app/interceptor/AuthenticationInterceptor.java |   97 -
 .../app/resolver/UserIdMethodArgumentResolver.java |   45 -
 .../apache/seatunnel/app/security/JwtUtils.java    |   66 -
 .../apache/seatunnel/app/service/IRoleService.java |   26 -
 .../seatunnel/app/service/IScriptService.java      |   48 -
 .../apache/seatunnel/app/service/ITaskService.java |   44 -
 .../apache/seatunnel/app/service/IUserService.java |   43 -
 .../app/service/impl/RoleServiceImpl.java          |   88 -
 .../app/service/impl/ScriptServiceImpl.java        |  226 --
 .../app/service/impl/TaskServiceImpl.java          |  303 --
 .../app/service/impl/UserServiceImpl.java          |  158 -
 .../app/utils/GlobalExceptionHandler.java          |   62 -
 .../org/apache/seatunnel/app/utils/Md5Utils.java   |   31 -
 .../apache/seatunnel/app/utils/PasswordUtils.java  |   30 -
 .../src/main/resources/application.yml             |   43 -
 .../src/main/resources/logback-spring.xml          |   56 -
 .../apache/seatunnel/app/dal/mapper/RoleMapper.xml |   39 -
 .../app/dal/mapper/RoleUserRelationMapper.xml      |   43 -
 .../app/dal/mapper/SchedulerConfigMapper.xml       |   71 -
 .../app/dal/mapper/ScriptJobApplyMapper.xml        |   66 -
 .../seatunnel/app/dal/mapper/ScriptMapper.xml      |  102 -
 .../seatunnel/app/dal/mapper/ScriptParamMapper.xml |   62 -
 .../app/dal/mapper/UserLoginLogMapper.xml          |   58 -
 .../apache/seatunnel/app/dal/mapper/UserMapper.xml |   99 -
 .../seatunnel/app/WebMvcApplicationTest.java       |   36 -
 .../app/controller/UserControllerTest.java         |   67 -
 seatunnel-server/seatunnel-scheduler/pom.xml       |   40 -
 .../seatunnel-scheduler-dolphinscheduler/pom.xml   |   66 -
 .../dolphinscheduler/ExecuteTypeEnum.java          |   27 -
 .../dolphinscheduler/IDolphinschedulerService.java |   69 -
 .../constants/DolphinschedulerConstants.java       |  187 --
 .../dolphinscheduler/dto/BaseListDto.java          |   27 -
 .../dolphinscheduler/dto/ConditionResult.java      |   30 -
 .../dto/ListProcessDefinitionDto.java              |   24 -
 .../dto/ListProcessInstanceDto.java                |   24 -
 .../dolphinscheduler/dto/ListTaskInstanceDto.java  |   24 -
 .../scheduler/dolphinscheduler/dto/LocalParam.java |   30 -
 .../dolphinscheduler/dto/LocationDto.java          |   29 -
 .../dto/OnlineCreateResourceDto.java               |   46 -
 .../dolphinscheduler/dto/ProcessDefinitionDto.java |   50 -
 .../dolphinscheduler/dto/ProcessInstanceDto.java   |   77 -
 .../scheduler/dolphinscheduler/dto/ProjectDto.java |   28 -
 .../dolphinscheduler/dto/ResourceDto.java          |   28 -
 .../dolphinscheduler/dto/SchedulerDto.java         |   53 -
 .../dto/StartProcessDefinitionDto.java             |   60 -
 .../dolphinscheduler/dto/TaskDefinitionDto.java    |   42 -
 .../dolphinscheduler/dto/TaskDescriptionDto.java   |   34 -
 .../dolphinscheduler/dto/TaskInstanceDto.java      |   64 -
 .../dolphinscheduler/dto/TaskParamDto.java         |   36 -
 .../dolphinscheduler/dto/TaskRelationDto.java      |   33 -
 .../dto/UpdateProcessDefinitionDto.java            |   34 -
 .../impl/DolphinschedulerServiceImpl.java          |  679 -----
 .../dolphinscheduler/impl/InstanceServiceImpl.java |   73 -
 .../dolphinscheduler/impl/JobServiceImpl.java      |  243 --
 .../dolphinscheduler/utils/HttpUtils.java          |  173 --
 seatunnel-server/seatunnel-server-common/pom.xml   |   40 -
 .../apache/seatunnel/server/common/Constants.java  |   28 -
 .../apache/seatunnel/server/common/DateUtils.java  |   73 -
 .../apache/seatunnel/server/common/PageData.java   |   45 -
 .../server/common/SeatunnelErrorEnum.java          |   70 -
 .../server/common/SeatunnelException.java          |   46 -
 seatunnel-server/seatunnel-spi/pom.xml             |   36 -
 .../seatunnel/spi/scheduler/IInstanceService.java  |   29 -
 .../seatunnel/spi/scheduler/IJobService.java       |   38 -
 .../spi/scheduler/constants/SchedulerConstant.java |   24 -
 .../spi/scheduler/dto/ComplementDataDto.java       |   31 -
 .../seatunnel/spi/scheduler/dto/ExecuteDto.java    |   32 -
 .../seatunnel/spi/scheduler/dto/InstanceDto.java   |   37 -
 .../spi/scheduler/dto/InstanceListDto.java         |   29 -
 .../spi/scheduler/dto/InstanceLogDto.java          |   27 -
 .../apache/seatunnel/spi/scheduler/dto/JobDto.java |   35 -
 .../seatunnel/spi/scheduler/dto/JobListDto.java    |   29 -
 .../spi/scheduler/dto/JobSimpleInfoDto.java        |   34 -
 .../spi/scheduler/dto/SchedulerConfigDto.java      |   33 -
 .../spi/scheduler/enums/ExecuteTypeEnum.java       |   39 -
 seatunnel-ui/.env.development                      |   18 -
 seatunnel-ui/.env.production                       |   18 -
 seatunnel-ui/.eslintignore                         |   18 -
 seatunnel-ui/.eslintrc.js                          |   71 -
 seatunnel-ui/.gitignore                            |   29 -
 seatunnel-ui/.prettierignore                       |   18 -
 seatunnel-ui/.prettierrc.js                        |   30 -
 seatunnel-ui/README.md                             |    0
 seatunnel-ui/index.html                            |   30 -
 seatunnel-ui/package.json                          |   54 -
 seatunnel-ui/pnpm-lock.yaml                        | 3190 --------------------
 seatunnel-ui/postcss.config.js                     |   23 -
 seatunnel-ui/src/App.tsx                           |   67 -
 seatunnel-ui/src/components/chart/index.ts         |   87 -
 seatunnel-ui/src/components/log/index.tsx          |   41 -
 seatunnel-ui/src/components/modal/index.tsx        |  113 -
 .../src/components/monaco-editor/index.tsx         |  172 --
 seatunnel-ui/src/components/monaco-editor/types.ts |   22 -
 seatunnel-ui/src/env.d.ts                          |   34 -
 seatunnel-ui/src/index.css                         |   23 -
 .../src/layouts/dashboard/header/index.tsx         |   43 -
 .../src/layouts/dashboard/header/logo/index.tsx    |   32 -
 .../src/layouts/dashboard/header/menu/index.tsx    |   50 -
 .../src/layouts/dashboard/header/menu/use-menu.ts  |   45 -
 .../src/layouts/dashboard/header/setting/index.tsx |   51 -
 .../header/setting/use-setting-dropdown.ts         |   52 -
 .../src/layouts/dashboard/header/user/index.tsx    |   52 -
 .../dashboard/header/user/use-user-dropdown.ts     |   51 -
 seatunnel-ui/src/layouts/dashboard/index.tsx       |   40 -
 seatunnel-ui/src/locales/en_US/data-pipes.ts       |   62 -
 seatunnel-ui/src/locales/en_US/index.ts            |   36 -
 seatunnel-ui/src/locales/en_US/jobs.ts             |   28 -
 seatunnel-ui/src/locales/en_US/log.ts              |   21 -
 seatunnel-ui/src/locales/en_US/login.ts            |   25 -
 seatunnel-ui/src/locales/en_US/menu.ts             |   26 -
 seatunnel-ui/src/locales/en_US/modal.ts            |   21 -
 seatunnel-ui/src/locales/en_US/tasks.ts            |   37 -
 seatunnel-ui/src/locales/en_US/user-manage.ts      |   38 -
 seatunnel-ui/src/locales/index.ts                  |   32 -
 seatunnel-ui/src/locales/zh_CN/index.ts            |   18 -
 seatunnel-ui/src/main.ts                           |   40 -
 seatunnel-ui/src/router/data-pipes.ts              |   66 -
 seatunnel-ui/src/router/index.ts                   |   32 -
 seatunnel-ui/src/router/jobs.ts                    |   42 -
 seatunnel-ui/src/router/routes.ts                  |   44 -
 seatunnel-ui/src/router/tasks.ts                   |   42 -
 seatunnel-ui/src/router/user-manage.ts             |   42 -
 seatunnel-ui/src/service/script/index.ts           |   80 -
 seatunnel-ui/src/service/script/types.ts           |   30 -
 seatunnel-ui/src/service/service.ts                |   61 -
 seatunnel-ui/src/service/task/index.ts             |   69 -
 seatunnel-ui/src/service/task/types.ts             |   41 -
 seatunnel-ui/src/service/types.ts                  |   34 -
 seatunnel-ui/src/service/user/index.ts             |   79 -
 seatunnel-ui/src/service/user/types.ts             |   39 -
 seatunnel-ui/src/store/locale/index.ts             |   37 -
 seatunnel-ui/src/store/locale/types.ts             |   24 -
 seatunnel-ui/src/store/theme/index.ts              |   37 -
 seatunnel-ui/src/store/theme/types.ts              |   22 -
 seatunnel-ui/src/store/user/index.ts               |   38 -
 seatunnel-ui/src/store/user/types.ts               |   24 -
 seatunnel-ui/src/themes/index.ts                   |   26 -
 seatunnel-ui/src/themes/modules/dark.ts            |   20 -
 seatunnel-ui/src/themes/modules/light.ts           |   34 -
 seatunnel-ui/src/utils/index.ts                    |   28 -
 seatunnel-ui/src/utils/log.ts                      |   80 -
 seatunnel-ui/src/utils/mapping.ts                  |   40 -
 seatunnel-ui/src/utils/trim.ts                     |   22 -
 .../create/components/configuration-modal.tsx      |   98 -
 .../create/components/use-configuration-modal.ts   |   85 -
 seatunnel-ui/src/views/data-pipes/create/index.tsx |  167 -
 .../detail/components/detail-overview.tsx          |  130 -
 .../detail/components/use-detail-overview.ts       |   51 -
 seatunnel-ui/src/views/data-pipes/detail/index.tsx |   97 -
 seatunnel-ui/src/views/data-pipes/edit/index.tsx   |  100 -
 .../data-pipes/list/components/delete-modal.tsx    |   66 -
 .../data-pipes/list/components/publish-modal.tsx   |   66 -
 seatunnel-ui/src/views/data-pipes/list/index.tsx   |  115 -
 .../src/views/data-pipes/list/use-table.ts         |  100 -
 seatunnel-ui/src/views/jobs/list/index.tsx         |   85 -
 seatunnel-ui/src/views/jobs/list/use-table.ts      |   68 -
 seatunnel-ui/src/views/login/index.tsx             |   89 -
 seatunnel-ui/src/views/login/use-form.ts           |   68 -
 seatunnel-ui/src/views/tasks/list/index.tsx        |   95 -
 seatunnel-ui/src/views/tasks/list/use-table.ts     |  116 -
 .../user-manage/list/components/delete-modal.tsx   |   66 -
 .../user-manage/list/components/form-modal.tsx     |  162 -
 .../user-manage/list/components/use-form-modal.ts  |   87 -
 seatunnel-ui/src/views/user-manage/list/index.tsx  |  130 -
 .../src/views/user-manage/list/use-table.ts        |  135 -
 seatunnel-ui/tailwind.config.js                    |   28 -
 seatunnel-ui/tsconfig.json                         |   21 -
 seatunnel-ui/vite.config.ts                        |   50 -
 258 files changed, 3 insertions(+), 17464 deletions(-)

diff --git a/docs/en/start/local.mdx b/docs/en/start/local.mdx
index 52be5a0c0..d6dd37676 100644
--- a/docs/en/start/local.mdx
+++ b/docs/en/start/local.mdx
@@ -32,13 +32,13 @@ tar -xzvf "apache-seatunnel-incubating-${version}-bin.tar.gz"
 <!-- TODO: We should add example module as quick start which is no need for install Spark or Flink -->
 
 ## Install connectors plugin
-Since 2.2.0, the binary package does not provide connector dependencies by default, so when using it for the first time, we need to execute the following command to install the connector: (Of course, you can also manually download the connector from [Apache Maven Repository](https://repo. maven.apache.org/maven2/org/apache/seatunnel/ to download, then manually move to the connectors directory).
+Since 2.2.0-beta, the binary package does not provide connector dependencies by default, so when using it for the first time, we need to execute the following command to install the connector: (Of course, you can also manually download the connector from [Apache Maven Repository](https://repo. maven.apache.org/maven2/org/apache/seatunnel/ to download, then manually move to the connectors directory).
 ```bash
 sh bin/install_plugin.sh
 ````
-If you need to specify the version of the connector, take 2.2.0 as an example, we need to execute
+If you need to specify the version of the connector, take 2.2.0-beta as an example, we need to execute
 ```bash
-sh bin/install_plugin.sh 2.2.0
+sh bin/install_plugin.sh 2.2.0-beta
 ````
 Usually we don't need all the connector plugins, so you can specify the plugins you need by configuring `config/plugin_config`, for example, you only need the `flink-assert` plugin, then you can modify plugin.properties as
 ````plugin_config
diff --git a/pom.xml b/pom.xml
index e54d67d69..1f8c6a007 100644
--- a/pom.xml
+++ b/pom.xml
@@ -88,7 +88,6 @@
         <module>seatunnel-plugin-discovery</module>
         <module>seatunnel-formats</module>
         <module>seatunnel-dist</module>
-	    <module>seatunnel-server</module>
     </modules>
 
     <profiles>
diff --git a/seatunnel-server/pom.xml b/seatunnel-server/pom.xml
deleted file mode 100644
index 49964e409..000000000
--- a/seatunnel-server/pom.xml
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-server</artifactId>
-    <packaging>pom</packaging>
-    <modules>
-        <module>seatunnel-app</module>
-        <module>seatunnel-spi</module>
-        <module>seatunnel-scheduler</module>
-        <module>seatunnel-server-common</module>
-    </modules>
-
-    <properties>
-        <spring-boot.version>2.6.8</spring-boot.version>
-        <spring.version>5.3.20</spring.version>
-        <mybatis-spring-boot-starter.version>2.2.2</mybatis-spring-boot-starter.version>
-        <druid-spring-boot-starter.version>1.2.9</druid-spring-boot-starter.version>
-        <springfox-swagger.version>2.6.1</springfox-swagger.version>
-        <swagger-annotations.version>1.5.10</swagger-annotations.version>
-        <hibernate.validator.version>6.2.2.Final</hibernate.validator.version>
-        <javax.annotation-api.version>1.3.2</javax.annotation-api.version>
-        <jsoup.version>1.14.3</jsoup.version>
-        <jwt.version>0.10.7</jwt.version>
-    </properties>
-
-    <dependencyManagement>
-        <dependencies>
-            <!-- springboot -->
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-web</artifactId>
-                <version>${spring-boot.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-jetty</artifactId>
-                <version>${spring-boot.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-starter-aop</artifactId>
-                <version>${spring-boot.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>com.alibaba</groupId>
-                <artifactId>druid-spring-boot-starter</artifactId>
-                <version>${druid-spring-boot-starter.version}</version>
-            </dependency>
-
-            <!-- ORM -->
-            <dependency>
-                <groupId>org.mybatis.spring.boot</groupId>
-                <artifactId>mybatis-spring-boot-starter</artifactId>
-                <version>${mybatis-spring-boot-starter.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>org.hibernate.validator</groupId>
-                <artifactId>hibernate-validator</artifactId>
-                <version>${hibernate.validator.version}</version>
-            </dependency>
-
-            <!-- swagger -->
-            <dependency>
-                <groupId>io.springfox</groupId>
-                <artifactId>springfox-swagger2</artifactId>
-                <version>${springfox-swagger.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>io.springfox</groupId>
-                <artifactId>springfox-swagger-ui</artifactId>
-                <version>${springfox-swagger.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>io.swagger</groupId>
-                <artifactId>swagger-annotations</artifactId>
-                <version>${swagger-annotations.version}</version>
-            </dependency>
-
-            <!-- JWT -->
-            <dependency>
-                <groupId>io.jsonwebtoken</groupId>
-                <artifactId>jjwt-api</artifactId>
-                <version>${jwt.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>io.jsonwebtoken</groupId>
-                <artifactId>jjwt-impl</artifactId>
-                <version>${jwt.version}</version>
-                <scope>runtime</scope>
-            </dependency>
-            <dependency>
-                <groupId>io.jsonwebtoken</groupId>
-                <artifactId>jjwt-jackson</artifactId>
-                <version>${jwt.version}</version>
-                <scope>runtime</scope>
-            </dependency>
-
-            <!--      http      -->
-            <dependency>
-                <groupId>org.jsoup</groupId>
-                <artifactId>jsoup</artifactId>
-                <version>${jsoup.version}</version>
-            </dependency>
-        </dependencies>
-    </dependencyManagement>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.scala-lang</groupId>
-            <artifactId>scala-library</artifactId>
-            <scope>provided</scope>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-dependency-plugin</artifactId>
-                <configuration>
-                    <skip>true</skip>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-app/pom.xml b/seatunnel-server/seatunnel-app/pom.xml
deleted file mode 100644
index 6acf7ead6..000000000
--- a/seatunnel-server/seatunnel-app/pom.xml
+++ /dev/null
@@ -1,211 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel-server</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-app</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.seatunnel</groupId>
-            <artifactId>seatunnel-common</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <!--springboot-->
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-web</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.springframework.boot</groupId>
-                    <artifactId>spring-boot-starter-tomcat</artifactId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>log4j-to-slf4j</artifactId>
-                    <groupId>org.apache.logging.log4j</groupId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-jetty</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.eclipse.jetty.websocket</groupId>
-                    <artifactId>javax-websocket-server-impl</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>org.eclipse.jetty.websocket</groupId>
-                    <artifactId>websocket-server</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.mybatis.spring.boot</groupId>
-            <artifactId>mybatis-spring-boot-starter</artifactId>
-            <version>${mybatis-spring-boot-starter.version}</version>
-            <exclusions>
-                <exclusion>
-                    <artifactId>spring-beans</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-boot-autoconfigure</artifactId>
-                    <groupId>org.springframework.boot</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-core</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-boot-starter</artifactId>
-                    <groupId>org.springframework.boot</groupId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger2</artifactId>
-            <version>${springfox-swagger.version}</version>
-            <exclusions>
-                <exclusion>
-                    <artifactId>spring-aop</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-beans</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-                <exclusion>
-                    <artifactId>spring-context</artifactId>
-                    <groupId>org.springframework</groupId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>io.springfox</groupId>
-            <artifactId>springfox-swagger-ui</artifactId>
-            <version>${springfox-swagger.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>io.swagger</groupId>
-            <artifactId>swagger-annotations</artifactId>
-            <version>${swagger-annotations.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.hibernate.validator</groupId>
-            <artifactId>hibernate-validator</artifactId>
-            <exclusions>
-                <exclusion>
-                    <artifactId>classmate</artifactId>
-                    <groupId>com.fasterxml</groupId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.commons</groupId>
-            <artifactId>commons-lang3</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-            <version>${mysql.version}</version>
-            <scope>provided</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.scala-lang</groupId>
-            <artifactId>scala-library</artifactId>
-            <scope>provided</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.seatunnel</groupId>
-            <artifactId>seatunnel-spi</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.seatunnel</groupId>
-            <artifactId>seatunnel-scheduler-dolphinscheduler</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <version>${spring-boot.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>io.jsonwebtoken</groupId>
-            <artifactId>jjwt-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.jsonwebtoken</groupId>
-            <artifactId>jjwt-impl</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.jsonwebtoken</groupId>
-            <artifactId>jjwt-jackson</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-aop</artifactId>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <configuration>
-                    <source>1.8</source>
-                    <target>1.8</target>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.springframework.boot</groupId>
-                <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>${spring-boot.version}</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>repackage</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/SeatunnelApplication.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/SeatunnelApplication.java
deleted file mode 100644
index 4947195fe..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/SeatunnelApplication.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app;
-
-import org.mybatis.spring.annotation.MapperScan;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.scheduling.annotation.EnableAsync;
-import org.springframework.scheduling.annotation.EnableScheduling;
-import org.springframework.transaction.annotation.EnableTransactionManagement;
-
-@SpringBootApplication(scanBasePackages = {"org.apache.seatunnel.app", "org.apache.seatunnel.scheduler"})
-@EnableTransactionManagement
-@EnableConfigurationProperties
-@EnableScheduling
-@EnableAsync(proxyTargetClass = true)
-@MapperScan({"org.apache.seatunnel.app.dal"})
-public class SeatunnelApplication {
-    public static void main(String[] args) {
-        SpringApplication.run(SeatunnelApplication.class, args);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/adapter/SeatunnelWebAdapter.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/adapter/SeatunnelWebAdapter.java
deleted file mode 100644
index 9f1d4ab0f..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/adapter/SeatunnelWebAdapter.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.adapter;
-
-import org.apache.seatunnel.app.interceptor.AuthenticationInterceptor;
-import org.apache.seatunnel.app.resolver.UserIdMethodArgumentResolver;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.method.support.HandlerMethodArgumentResolver;
-import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-
-@Configuration
-public class SeatunnelWebAdapter implements WebMvcConfigurer {
-    @Bean
-    public AuthenticationInterceptor authenticationInterceptor() {
-        return new AuthenticationInterceptor();
-    }
-
-    @Resource
-    private UserIdMethodArgumentResolver currentUserMethodArgumentResolver;
-
-    @Override
-    public void addInterceptors(InterceptorRegistry registry) {
-        registry.addInterceptor(authenticationInterceptor()).order(1).addPathPatterns("/**")
-                // exclude swagger api path
-                .excludePathPatterns(
-                        "/swagger-resources/**",
-                        "/webjars/**",
-                        "/v2/**",
-                        "/swagger-ui.html**"
-                )
-                // exclude login
-                .excludePathPatterns("/api/v1/user/login**")
-        ;
-    }
-
-    @Override
-    public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
-        argumentResolvers.add(currentUserMethodArgumentResolver);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LoginAspect.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LoginAspect.java
deleted file mode 100644
index 1bba7f74a..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LoginAspect.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.aspect;
-
-import static org.apache.seatunnel.server.common.Constants.TOKEN;
-
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.common.UserTokenStatusEnum;
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.domain.dto.user.UserLoginLogDto;
-import org.apache.seatunnel.app.domain.response.user.UserSimpleInfoRes;
-import org.apache.seatunnel.app.security.JwtUtils;
-
-import lombok.extern.slf4j.Slf4j;
-import org.aspectj.lang.JoinPoint;
-import org.aspectj.lang.annotation.AfterReturning;
-import org.aspectj.lang.annotation.Aspect;
-import org.aspectj.lang.annotation.Pointcut;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
-
-@Slf4j
-@Aspect
-@Component
-@Order(2)
-public class LoginAspect {
-    @Resource
-    private JwtUtils jwtUtils;
-
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Pointcut("execution(public * org.apache.seatunnel.app.controller.UserController.login(..))")
-    public void loginPointCut() {
-
-    }
-
-    @AfterReturning(value = "loginPointCut()", returning = "obj")
-    public void check(JoinPoint pjp, Object obj) {
-        final Result<UserSimpleInfoRes> target = (Result<UserSimpleInfoRes>) obj;
-        final UserSimpleInfoRes data = target.getData();
-
-        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
-        final HttpServletResponse response = attributes.getResponse();
-        final String token = jwtUtils.genToken(data.toMap());
-        response.setHeader(TOKEN, token);
-
-        final UserLoginLogDto logDto = UserLoginLogDto.builder()
-                .token(token)
-                .tokenStatus(UserTokenStatusEnum.ENABLE.enable())
-                .userId(data.getId())
-                .build();
-        userDaoImpl.insertLoginLog(logDto);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LogoutAspect.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LogoutAspect.java
deleted file mode 100644
index 3d481c2f5..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/LogoutAspect.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.aspect;
-
-import static org.apache.seatunnel.server.common.Constants.USER_ID;
-
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-
-import lombok.extern.slf4j.Slf4j;
-import org.aspectj.lang.JoinPoint;
-import org.aspectj.lang.annotation.Aspect;
-import org.aspectj.lang.annotation.Before;
-import org.aspectj.lang.annotation.Pointcut;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-
-@Slf4j
-@Aspect
-@Component
-@Order(2)
-public class LogoutAspect {
-
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Pointcut("execution(public * org.apache.seatunnel.app.controller.UserController.logout(..))")
-    public void logoutPointCut() {
-
-    }
-
-    @Before("logoutPointCut()")
-    public void check(JoinPoint pjp) {
-        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
-        HttpServletRequest request = attributes.getRequest();
-        final Integer userId = (Integer) request.getAttribute(USER_ID);
-        userDaoImpl.disableToken(userId);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/UserId.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/UserId.java
deleted file mode 100644
index 628e103ca..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/aspect/UserId.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.aspect;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-@Target({ElementType.PARAMETER})
-@Retention(RetentionPolicy.RUNTIME)
-public @interface UserId {
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/DatasourceStatusEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/DatasourceStatusEnum.java
deleted file mode 100644
index b271a5b04..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/DatasourceStatusEnum.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum DatasourceStatusEnum {
-    ONLINE(1, "online"),
-    OFFLINE(2, "offline"),
-    DELETED(3, "deleted"),
-    ;
-
-    private final int code;
-    private final String description;
-
-    DatasourceStatusEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/Result.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/Result.java
deleted file mode 100644
index e08323ffc..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/Result.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-import org.apache.seatunnel.server.common.SeatunnelErrorEnum;
-
-public class Result<T> {
-
-    private static final Result<Void> OK = success();
-
-    private int code = 0;
-
-    private String msg;
-
-    private T data;
-
-    private Result() {
-        this.data = null;
-    }
-
-    private Result(SeatunnelErrorEnum errorEnum) {
-        this.code = errorEnum.getCode();
-        this.msg = errorEnum.getMsg();
-        this.data = null;
-    }
-
-    private Result(SeatunnelErrorEnum errorEnum, String... messages) {
-        this.code = errorEnum.getCode();
-        this.msg = String.format(errorEnum.getTemplate(), messages);
-        this.data = null;
-    }
-
-    public static <T> Result<T> success() {
-        return new Result<>();
-    }
-
-    public static <T> Result<T> success(T data) {
-        Result<T> result = success();
-        result.setData(data);
-        return result;
-    }
-
-    public static <T> Result<T> failure(SeatunnelErrorEnum errorEnum) {
-        Result<T> result = new Result<>(errorEnum);
-        return result;
-    }
-
-    public static <T> Result<T> failure(SeatunnelErrorEnum errorEnum, String... messages) {
-        Result<T> result = new Result<>(errorEnum, messages);
-        return result;
-    }
-
-    public boolean isSuccess() {
-        return OK.getCode() == this.code;
-    }
-
-    public boolean isFailed() {
-        return !this.isSuccess();
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public void setCode(int code) {
-        this.code = code;
-    }
-
-    public String getMsg() {
-        return msg;
-    }
-
-    public void setMsg(String msg) {
-        this.msg = msg;
-    }
-
-    public T getData() {
-        return data;
-    }
-
-    public void setData(T data) {
-        this.data = data;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/RoleTypeEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/RoleTypeEnum.java
deleted file mode 100644
index cd2566abc..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/RoleTypeEnum.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum RoleTypeEnum {
-    NORMAL(0, "NORMAL_ROLE"),
-    ADMIN(1, "ADMIN_ROLE"),
-    ;
-
-    private final int code;
-    private final String  description;
-
-    RoleTypeEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptParamStatusEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptParamStatusEnum.java
deleted file mode 100644
index 56195dd8d..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptParamStatusEnum.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum ScriptParamStatusEnum {
-    NORMAL(0, "normal"),
-    DELETED(1, "deleted"),
-    ;
-
-    private final int code;
-    private final String  description;
-
-    ScriptParamStatusEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptStatusEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptStatusEnum.java
deleted file mode 100644
index 17704a217..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptStatusEnum.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum ScriptStatusEnum {
-    UNPUBLISHED(0, "unpublished"),
-    PUBLISHED(1, "published"),
-    DELETED(2, "deleted"),
-    ;
-
-    private final int code;
-    private final String  description;
-
-    ScriptStatusEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptTypeEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptTypeEnum.java
deleted file mode 100644
index 89d627c60..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/ScriptTypeEnum.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum ScriptTypeEnum {
-    OFFLINE(0, "offline"),
-    REALTIME(1, "realtime"),
-    ;
-
-    private final int code;
-    private final String  description;
-
-    ScriptTypeEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserStatusEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserStatusEnum.java
deleted file mode 100644
index c62b7e1cf..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserStatusEnum.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum UserStatusEnum {
-    ENABLE(0, "enable"),
-    DISABLE(1, "disable"),
-    ;
-    private final int code;
-    private final String  description;
-
-    UserStatusEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTokenStatusEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTokenStatusEnum.java
deleted file mode 100644
index 502a9647a..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTokenStatusEnum.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum UserTokenStatusEnum {
-    ENABLE,
-    DISABLE,
-    ;
-
-    public boolean enable() {
-        return this == ENABLE;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTypeEnum.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTypeEnum.java
deleted file mode 100644
index b583e6f48..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/common/UserTypeEnum.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.common;
-
-public enum UserTypeEnum {
-    NORMAL(0, "normal"),
-    ADMIN(1, "admin"),
-    ;
-
-    private final int code;
-    private final String  description;
-
-    UserTypeEnum(int code, String description) {
-        this.code = code;
-        this.description = description;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getDescription() {
-        return description;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/config/Swagger2.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/config/Swagger2.java
deleted file mode 100644
index 3eb93a856..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/config/Swagger2.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.config;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import springfox.documentation.builders.ApiInfoBuilder;
-import springfox.documentation.builders.PathSelectors;
-import springfox.documentation.builders.RequestHandlerSelectors;
-import springfox.documentation.service.ApiInfo;
-import springfox.documentation.spi.DocumentationType;
-import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
-
-@Configuration
-@EnableSwagger2
-public class Swagger2{
-    @Bean
-    public Docket createRestApi() {
-
-        return new Docket(DocumentationType.SWAGGER_2)
-                .apiInfo(apiInfo())
-                .select()
-                .apis(RequestHandlerSelectors.basePackage("org.apache.seatunnel.app.controller"))
-                .paths(PathSelectors.any())
-                .build();
-    }
-
-    private ApiInfo apiInfo() {
-        return new ApiInfoBuilder()
-                .title("seatunnel api docs")
-                .version("1.0.0")
-                .description("API description of Seatunnel")
-                .termsOfServiceUrl("https://seatunnel.apache.org/")
-                .build();
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/AuthController.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/AuthController.java
deleted file mode 100644
index 3f720be88..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/AuthController.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.controller;
-
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.service.IRoleService;
-
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.annotation.Resource;
-import javax.validation.constraints.NotNull;
-
-@RequestMapping("/api/v1/auth")
-@RestController
-public class AuthController {
-
-    @Resource
-    private IRoleService roleServiceImpl;
-
-    @GetMapping("/userRole")
-    @ApiOperation(value = "check relation between user and role", httpMethod = "GET")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "username", value = "user name", dataType = "String"),
-            @ApiImplicitParam(name = "roleName", value = "role name", dataType = "String"),
-    })
-    public Result<Boolean> userRole(@RequestParam("username") @NotNull String username, @RequestParam("roleName") @NotNull String roleName){
-        final boolean b = roleServiceImpl.checkUserRole(username, roleName);
-        return Result.success(b);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/ScriptController.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/ScriptController.java
deleted file mode 100644
index f983cbdbd..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/ScriptController.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.controller;
-
-import org.apache.seatunnel.app.aspect.UserId;
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.domain.request.script.AddEmptyScriptReq;
-import org.apache.seatunnel.app.domain.request.script.PublishScriptReq;
-import org.apache.seatunnel.app.domain.request.script.ScriptListReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptContentReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptParamReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.script.AddEmptyScriptRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptParamRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptSimpleInfoRes;
-import org.apache.seatunnel.app.service.IScriptService;
-
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PatchMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-import springfox.documentation.annotations.ApiIgnore;
-
-import javax.annotation.Resource;
-import javax.validation.constraints.NotNull;
-
-import java.util.List;
-
-@RequestMapping("/api/v1/script")
-@RestController
-public class ScriptController {
-    @Resource
-    private IScriptService iScriptService;
-
-    @PostMapping
-    @ApiOperation(value = "add an empty script", httpMethod = "POST")
-    public Result<AddEmptyScriptRes> addEmptyScript(@RequestBody @NotNull AddEmptyScriptReq addEmptyScriptReq,
-                                                    @ApiIgnore @UserId Integer operatorId) {
-        addEmptyScriptReq.setCreatorId(operatorId);
-        return Result.success(iScriptService.addEmptyScript(addEmptyScriptReq));
-    }
-
-    @PutMapping("/{scriptId}/content")
-    @ApiOperation(value = "update script", httpMethod = "PUT")
-    public Result<Void> updateScriptContent(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId,
-                                            @RequestBody @NotNull String content,
-                                            @ApiIgnore @UserId Integer operatorId) {
-        final UpdateScriptContentReq req = new UpdateScriptContentReq();
-        req.setScriptId(scriptId);
-        req.setContent(content);
-        req.setMenderId(operatorId);
-
-        iScriptService.updateScriptContent(req);
-        return Result.success();
-    }
-
-    @DeleteMapping("/{scriptId}")
-    @ApiOperation(value = "delete script", httpMethod = "DELETE")
-    public Result<Void> delete(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId) {
-        iScriptService.delete(scriptId);
-        return Result.success();
-    }
-
-    @GetMapping
-    @ApiOperation(value = "script list", httpMethod = "GET")
-    public Result<PageInfo<ScriptSimpleInfoRes>> list(@ApiParam(value = "script name") @RequestParam(required = false) String name,
-                                                      @ApiParam(value = "script status") @RequestParam(required = false) Byte status,
-                                                      @ApiParam(value = "page num", required = true) @RequestParam Integer pageNo,
-                                                      @ApiParam(value = "page size", required = true) @RequestParam Integer pageSize) {
-
-        final ScriptListReq req = new ScriptListReq();
-        req.setName(name);
-        req.setStatus(status);
-        req.setPageNo(pageNo);
-        req.setPageSize(pageSize);
-
-        return Result.success(iScriptService.list(req));
-    }
-
-    @GetMapping("/{scriptId}/content")
-    @ApiOperation(value = "fetch script content", httpMethod = "GET")
-    public Result<String> fetchScriptContent(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId) {
-        return Result.success(iScriptService.fetchScriptContent(scriptId));
-    }
-
-    @PutMapping("/{scriptId}/param")
-    @ApiOperation(value = "update script param", httpMethod = "PUT")
-    public Result<Void> updateScriptParam(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId,
-                                          @RequestBody @NotNull UpdateScriptParamReq updateScriptParamReq) {
-        updateScriptParamReq.setScriptId(scriptId);
-        iScriptService.updateScriptParam(updateScriptParamReq);
-        return Result.success();
-    }
-
-    @GetMapping("/{scriptId}/param")
-    @ApiOperation(value = "fetch script param", httpMethod = "GET")
-    @ApiImplicitParams({
-            @ApiImplicitParam(name = "id", value = "script id", dataType = "Integer"),
-    })
-    public Result<List<ScriptParamRes>> fetchScriptParam(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId) {
-        return Result.success(iScriptService.fetchScriptParam(scriptId));
-    }
-
-    @PatchMapping("/{scriptId}/publish")
-    @ApiOperation(value = "publish script", httpMethod = "PATCH")
-    public Result<Void> publish(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId,
-                                @ApiIgnore @UserId Integer operatorId) {
-
-        final PublishScriptReq req = new PublishScriptReq();
-        req.setScriptId(scriptId);
-        req.setOperatorId(operatorId);
-
-        iScriptService.publishScript(req);
-        return Result.success();
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/TaskController.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/TaskController.java
deleted file mode 100644
index 5ca3ace8c..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/TaskController.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.controller;
-
-import org.apache.seatunnel.app.aspect.UserId;
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.domain.request.task.ExecuteReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceListReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceLogRes;
-import org.apache.seatunnel.app.domain.request.task.JobListReq;
-import org.apache.seatunnel.app.domain.request.task.RecycleScriptReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.task.InstanceSimpleInfoRes;
-import org.apache.seatunnel.app.domain.response.task.JobSimpleInfoRes;
-import org.apache.seatunnel.app.service.ITaskService;
-
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PatchMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-import springfox.documentation.annotations.ApiIgnore;
-
-import javax.annotation.Resource;
-import javax.validation.constraints.NotNull;
-
-@RequestMapping("/api/v1/task")
-@RestController
-public class TaskController {
-
-    @Resource
-    private ITaskService iTaskService;
-
-    @PatchMapping("/{scriptId}/recycle")
-    @ApiOperation(value = "recycle script", httpMethod = "PATCH")
-    Result<Void> recycle(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId,
-                         @ApiIgnore @UserId Integer operatorId) {
-        final RecycleScriptReq req = new RecycleScriptReq();
-        req.setScriptId(scriptId);
-        req.setOperatorId(operatorId);
-
-        iTaskService.recycleScriptFromScheduler(req);
-        return Result.success();
-    }
-
-    @GetMapping("/job")
-    @ApiOperation(value = "list job", httpMethod = "GET")
-    Result<PageInfo<JobSimpleInfoRes>> listJob(@ApiParam(value = "job name") @RequestParam(required = false) String name,
-                                               @ApiParam(value = "page num", required = true) @RequestParam Integer pageNo,
-                                               @ApiParam(value = "page size", required = true) @RequestParam Integer pageSize) {
-        final JobListReq req = new JobListReq();
-        req.setName(name);
-        req.setPageNo(pageNo);
-        req.setPageSize(pageSize);
-
-        return Result.success(iTaskService.listJob(req));
-    }
-
-    @GetMapping("/instance")
-    @ApiOperation(value = "list instance", httpMethod = "GET")
-    Result<PageInfo<InstanceSimpleInfoRes>> listInstance(@ApiParam(value = "job name") @RequestParam(required = false) String name,
-                                                         @ApiParam(value = "page num", required = true) @RequestParam Integer pageNo,
-                                                         @ApiParam(value = "page size", required = true) @RequestParam Integer pageSize) {
-        final InstanceListReq req = new InstanceListReq();
-        req.setName(name);
-        req.setPageNo(pageNo);
-        req.setPageSize(pageSize);
-
-        return Result.success(iTaskService.listInstance(req));
-    }
-
-    @PostMapping("/{scriptId}/execute")
-    @ApiOperation(value = "execute script temporary", httpMethod = "POST")
-    Result<InstanceSimpleInfoRes> tmpExecute(@ApiParam(value = "script id", required = true) @PathVariable(value = "scriptId") Integer scriptId,
-                                             @RequestBody @NotNull ExecuteReq req,
-                                             @ApiIgnore @UserId Integer operatorId) {
-        req.setScriptId(scriptId);
-        req.setOperatorId(operatorId);
-
-        return Result.success(iTaskService.tmpExecute(req));
-    }
-
-    @GetMapping("/{taskInstanceId}")
-    @ApiOperation(value = "query instance log", httpMethod = "GET")
-    Result<InstanceLogRes> queryInstanceLog(@ApiParam(value = "task instance id", required = true) @PathVariable(value = "taskInstanceId") Long taskInstanceId) {
-        return Result.success(iTaskService.queryInstanceLog(taskInstanceId));
-    }
-
-    @PatchMapping("/{taskInstanceId}")
-    @ApiOperation(value = "kill running instance", httpMethod = "POST")
-    Result<Void> kill(@ApiParam(value = "task instance id", required = true) @PathVariable(value = "taskInstanceId") Long taskInstanceId) {
-        iTaskService.kill(taskInstanceId);
-        return Result.success();
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/UserController.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/UserController.java
deleted file mode 100644
index 59a59ee85..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/controller/UserController.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.controller;
-
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.domain.request.user.AddUserReq;
-import org.apache.seatunnel.app.domain.request.user.UpdateUserReq;
-import org.apache.seatunnel.app.domain.request.user.UserListReq;
-import org.apache.seatunnel.app.domain.request.user.UserLoginReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.user.AddUserRes;
-import org.apache.seatunnel.app.domain.response.user.UserSimpleInfoRes;
-import org.apache.seatunnel.app.service.IUserService;
-
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PatchMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.annotation.Resource;
-import javax.validation.constraints.NotNull;
-
-@RequestMapping("/api/v1/user")
-@RestController
-public class UserController {
-
-    @Resource
-    private IUserService iUserService;
-
-    @PostMapping
-    @ApiOperation(value = "add user", httpMethod = "POST")
-    public Result<AddUserRes> add(@RequestBody @NotNull AddUserReq addReq) {
-        return Result.success(iUserService.add(addReq));
-    }
-
-    @PutMapping("/{userId}")
-    @ApiOperation(value = "update user", httpMethod = "PUT")
-    public Result<Void> update(@ApiParam(value = "user id", required = true) @PathVariable(value = "userId") Integer userId,
-                               @RequestBody @NotNull UpdateUserReq updateReq) {
-        updateReq.setUserId(userId);
-
-        iUserService.update(updateReq);
-        return Result.success();
-    }
-
-    @DeleteMapping("/{userId}")
-    @ApiOperation(value = "delete user", httpMethod = "DELETE")
-    public Result<Void> delete(@ApiParam(value = "user id", required = true) @PathVariable(value = "userId") Integer userId) {
-        iUserService.delete(userId);
-        return Result.success();
-    }
-
-    @GetMapping
-    @ApiOperation(value = "user list", httpMethod = "GET")
-    public Result<PageInfo<UserSimpleInfoRes>> list(@ApiParam(value = "job name") @RequestParam(required = false) String name,
-                                                    @ApiParam(value = "page num", required = true) @RequestParam Integer pageNo,
-                                                    @ApiParam(value = "page size", required = true) @RequestParam Integer pageSize) {
-        final UserListReq req = new UserListReq();
-        req.setName(name);
-        req.setPageNo(pageNo);
-        req.setPageSize(pageSize);
-
-        return Result.success(iUserService.list(req));
-    }
-
-    @PatchMapping("/{userId}/enable")
-    @ApiOperation(value = "enable a user", httpMethod = "PATCH")
-    public Result<Void> enable(@ApiParam(value = "user id", required = true) @PathVariable(value = "userId") Integer userId) {
-        iUserService.enable(userId);
-        return Result.success();
-    }
-
-    @PutMapping("/{userId}/disable")
-    @ApiOperation(value = "disable a user", httpMethod = "PUT")
-    public Result<Void> disable(@ApiParam(value = "user id", required = true) @PathVariable(value = "userId") Integer userId) {
-        iUserService.disable(userId);
-        return Result.success();
-    }
-
-    @PostMapping("/login")
-    public Result<UserSimpleInfoRes> login(@RequestBody UserLoginReq req) {
-        return Result.success(iUserService.login(req));
-    }
-
-    @PatchMapping("/logout")
-    public Result<Void> logout() {
-        return Result.success();
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleDao.java
deleted file mode 100644
index e7552e189..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleDao.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.Role;
-
-public interface IRoleDao {
-
-    void add(Role role);
-
-    Role getByRoleName(String roleName);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleUserRelationDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleUserRelationDao.java
deleted file mode 100644
index d5f0da714..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IRoleUserRelationDao.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.RoleUserRelation;
-
-public interface IRoleUserRelationDao {
-
-    void add(RoleUserRelation roleUserRelation);
-
-    RoleUserRelation getByUserAndRole(Integer userId, Integer roleId);
-
-    void deleteByUserId(Integer userId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/ISchedulerConfigDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/ISchedulerConfigDao.java
deleted file mode 100644
index 1844db15f..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/ISchedulerConfigDao.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.SchedulerConfig;
-
-public interface ISchedulerConfigDao {
-    boolean exists(int scriptId);
-
-    SchedulerConfig getSchedulerConfig(int scriptId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptDao.java
deleted file mode 100644
index 0178b58b3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptDao.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.Script;
-import org.apache.seatunnel.app.domain.dto.script.AddEmptyScriptDto;
-import org.apache.seatunnel.app.domain.dto.script.CheckScriptDuplicateDto;
-import org.apache.seatunnel.app.domain.dto.script.ListScriptsDto;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptContentDto;
-import org.apache.seatunnel.server.common.PageData;
-
-public interface IScriptDao {
-    void checkScriptDuplicate(CheckScriptDuplicateDto dto);
-
-    int addEmptyScript(AddEmptyScriptDto dto);
-
-    Script getScript(Integer id);
-
-    void updateScriptContent(UpdateScriptContentDto dto);
-
-    void deleteScript(int id);
-
-    PageData<Script> list(ListScriptsDto dto, Integer pageNo, Integer pageSize);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptJobApplyDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptJobApplyDao.java
deleted file mode 100644
index 0efdae262..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptJobApplyDao.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.ScriptJobApply;
-import org.apache.seatunnel.app.domain.dto.job.ScriptJobApplyDto;
-
-public interface IScriptJobApplyDao {
-    void insertOrUpdate(ScriptJobApplyDto dto);
-
-    ScriptJobApply getByScriptId(Integer id);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptParamDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptParamDao.java
deleted file mode 100644
index 2e0689597..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IScriptParamDao.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.ScriptParam;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptParamDto;
-
-import java.util.List;
-
-public interface IScriptParamDao {
-    List<ScriptParam> getParamsByScriptId(int id);
-
-    void updateStatusByScriptId(int scriptId, int code);
-
-    void batchInsert(UpdateScriptParamDto dto);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IUserDao.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IUserDao.java
deleted file mode 100644
index db2f16623..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/IUserDao.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao;
-
-import org.apache.seatunnel.app.dal.entity.User;
-import org.apache.seatunnel.app.dal.entity.UserLoginLog;
-import org.apache.seatunnel.app.domain.dto.user.ListUserDto;
-import org.apache.seatunnel.app.domain.dto.user.UpdateUserDto;
-import org.apache.seatunnel.app.domain.dto.user.UserLoginLogDto;
-import org.apache.seatunnel.server.common.PageData;
-
-public interface IUserDao {
-    int add(UpdateUserDto dto);
-
-    void checkUserExists(String username);
-
-    void update(UpdateUserDto dto);
-
-    void delete(int id);
-
-    void enable(int id);
-
-    void disable(int id);
-
-    PageData<User> list(ListUserDto dto, int pageNo, int pageSize);
-
-    User getById(int operatorId);
-
-    User getByName(String user);
-
-    User checkPassword(String username, String password);
-
-    long insertLoginLog(UserLoginLogDto dto);
-
-    void disableToken(int userId);
-
-    UserLoginLog getLastLoginLog(Integer userId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleDaoImpl.java
deleted file mode 100644
index ae0b32629..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleDaoImpl.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import org.apache.seatunnel.app.dal.dao.IRoleDao;
-import org.apache.seatunnel.app.dal.entity.Role;
-import org.apache.seatunnel.app.dal.mapper.RoleMapper;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-@Repository
-public class RoleDaoImpl implements IRoleDao {
-
-    @Resource
-    private RoleMapper roleMapper;
-
-    @Override
-    public void add(Role role){
-        roleMapper.insert(role);
-    }
-
-    @Override
-    public Role getByRoleName(String roleName) {
-        return roleMapper.selectByRole(roleName);
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleUserRelationDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleUserRelationDaoImpl.java
deleted file mode 100644
index 8bc66ddce..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/RoleUserRelationDaoImpl.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import org.apache.seatunnel.app.dal.dao.IRoleUserRelationDao;
-import org.apache.seatunnel.app.dal.entity.RoleUserRelation;
-import org.apache.seatunnel.app.dal.mapper.RoleUserRelationMapper;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-@Repository
-public class RoleUserRelationDaoImpl implements IRoleUserRelationDao {
-
-    @Resource
-    private RoleUserRelationMapper roleUserRelationMapper;
-
-    @Override
-    public void add(RoleUserRelation roleUserRelation){
-        roleUserRelationMapper.insert(roleUserRelation);
-    }
-
-    @Override
-    public RoleUserRelation getByUserAndRole(Integer userId, Integer roleId) {
-        final RoleUserRelation roleUserRelation = roleUserRelationMapper.selectByUserIdAndRoleId(userId, roleId);
-        return roleUserRelation;
-    }
-
-    @Override
-    public void deleteByUserId(Integer userId) {
-        roleUserRelationMapper.deleteByUserId(userId);
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/SchedulerConfigDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/SchedulerConfigDaoImpl.java
deleted file mode 100644
index fa78042bd..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/SchedulerConfigDaoImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import org.apache.seatunnel.app.dal.dao.ISchedulerConfigDao;
-import org.apache.seatunnel.app.dal.entity.SchedulerConfig;
-import org.apache.seatunnel.app.dal.mapper.SchedulerConfigMapper;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-import java.util.Objects;
-
-@Repository
-public class SchedulerConfigDaoImpl implements ISchedulerConfigDao {
-    @Resource
-    private SchedulerConfigMapper schedulerConfigMapper;
-
-    @Override
-    public boolean exists(int scriptId) {
-        SchedulerConfig config = schedulerConfigMapper.selectByScriptId(scriptId);
-        return Objects.nonNull(config);
-    }
-
-    @Override
-    public SchedulerConfig getSchedulerConfig(int scriptId) {
-        return schedulerConfigMapper.selectByScriptId(scriptId);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptDaoImpl.java
deleted file mode 100644
index 0f2c73571..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptDaoImpl.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.SCRIPT_ALREADY_EXIST;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.apache.seatunnel.app.common.ScriptStatusEnum;
-import org.apache.seatunnel.app.dal.dao.IScriptDao;
-import org.apache.seatunnel.app.dal.entity.Script;
-import org.apache.seatunnel.app.dal.mapper.ScriptMapper;
-import org.apache.seatunnel.app.domain.dto.script.AddEmptyScriptDto;
-import org.apache.seatunnel.app.domain.dto.script.CheckScriptDuplicateDto;
-import org.apache.seatunnel.app.domain.dto.script.ListScriptsDto;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptContentDto;
-import org.apache.seatunnel.server.common.PageData;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-import java.util.Objects;
-
-@Repository
-public class ScriptDaoImpl implements IScriptDao {
-
-    @Resource
-    private ScriptMapper scriptMapper;
-
-    @Override
-    public void checkScriptDuplicate(CheckScriptDuplicateDto dto) {
-        final Script script = scriptMapper.selectByNameAndCreatorAndStatusNotEq(dto.getName(), dto.getCreatorId(), (byte) ScriptStatusEnum.DELETED.getCode());
-        checkState(Objects.isNull(script), String.format(SCRIPT_ALREADY_EXIST.getTemplate(), dto.getName()));
-    }
-
-    @Override
-    public int addEmptyScript(AddEmptyScriptDto dto) {
-        final Script script = new Script();
-        script.setName(dto.getName());
-        script.setType(dto.getType());
-        script.setStatus(dto.getStatus());
-        script.setCreatorId(dto.getCreatorId());
-        script.setMenderId(dto.getMenderId());
-        scriptMapper.insert(script);
-        return script.getId();
-    }
-
-    @Override
-    public Script getScript(Integer id) {
-        return scriptMapper.selectByPrimaryKey(id);
-    }
-
-    @Override
-    public void updateScriptContent(UpdateScriptContentDto dto) {
-        scriptMapper.updateContentByPrimaryKey(dto.getId(), dto.getContent(), dto.getContentMd5(), dto.getMenderId());
-    }
-
-    @Override
-    public void deleteScript(int id) {
-        scriptMapper.updateStatus(id, (byte) ScriptStatusEnum.DELETED.getCode());
-    }
-
-    @Override
-    public PageData<Script> list(ListScriptsDto dto, Integer pageNo, Integer pageSize) {
-        final Script script = new Script();
-        script.setName(dto.getName());
-        script.setStatus(dto.getStatus());
-
-        final List<Script> scripts = scriptMapper.selectBySelectiveAndPage(script, pageNo * pageSize, pageSize);
-        int count = scriptMapper.countBySelectiveAndPage(script);
-
-        return new PageData<Script>(count, scripts);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptJobApplyDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptJobApplyDaoImpl.java
deleted file mode 100644
index 1b5b1d50c..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptJobApplyDaoImpl.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import org.apache.seatunnel.app.dal.dao.IScriptJobApplyDao;
-import org.apache.seatunnel.app.dal.entity.ScriptJobApply;
-import org.apache.seatunnel.app.dal.mapper.ScriptJobApplyMapper;
-import org.apache.seatunnel.app.domain.dto.job.ScriptJobApplyDto;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-import java.util.Objects;
-
-@Repository
-public class ScriptJobApplyDaoImpl implements IScriptJobApplyDao {
-
-    @Resource
-    private ScriptJobApplyMapper scriptJobApplyMapper;
-
-    @Override
-    public void insertOrUpdate(ScriptJobApplyDto dto) {
-        ScriptJobApply apply = scriptJobApplyMapper.selectByScriptId(dto.getScriptId());
-        if (Objects.isNull(apply)) {
-            apply = new ScriptJobApply();
-            apply.setScriptId(dto.getScriptId());
-            apply.setJobId(dto.getJobId());
-            apply.setOperatorId(dto.getUserId());
-            apply.setSchedulerConfigId(dto.getSchedulerConfigId());
-            scriptJobApplyMapper.insert(apply);
-        } else {
-            apply.setJobId(dto.getJobId());
-            apply.setOperatorId(dto.getUserId());
-            apply.setSchedulerConfigId(dto.getSchedulerConfigId());
-            scriptJobApplyMapper.update(apply);
-        }
-    }
-
-    @Override
-    public ScriptJobApply getByScriptId(Integer id) {
-        return scriptJobApplyMapper.selectByScriptId(id);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptParamDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptParamDaoImpl.java
deleted file mode 100644
index fad680cb3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/ScriptParamDaoImpl.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import org.apache.seatunnel.app.common.ScriptParamStatusEnum;
-import org.apache.seatunnel.app.dal.dao.IScriptParamDao;
-import org.apache.seatunnel.app.dal.entity.ScriptParam;
-import org.apache.seatunnel.app.dal.mapper.ScriptParamMapper;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptParamDto;
-
-import com.google.common.collect.Lists;
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-import java.util.Map;
-
-@Repository
-public class ScriptParamDaoImpl implements IScriptParamDao {
-    @Resource
-    private ScriptParamMapper scriptParamMapper;
-
-    @Override
-    public List<ScriptParam> getParamsByScriptId(int id) {
-        return scriptParamMapper.selectByScriptId(id);
-    }
-
-    @Override
-    public void updateStatusByScriptId(int scriptId, int code) {
-        scriptParamMapper.updateStatusByScriptId(scriptId, (byte) code);
-    }
-
-    @Override
-    public void batchInsert(UpdateScriptParamDto dto) {
-        final Map<String, String> keyAndValue = dto.getParams();
-        final List<ScriptParam> scriptParams = Lists.newArrayListWithCapacity(keyAndValue.size());
-        keyAndValue.forEach((k, v) -> {
-            final ScriptParam scriptParam = new ScriptParam();
-            scriptParam.setStatus((byte) ScriptParamStatusEnum.NORMAL.getCode());
-            scriptParam.setKey(k);
-            scriptParam.setValue(v);
-            scriptParam.setScriptId(dto.getScriptId());
-            scriptParams.add(scriptParam);
-        });
-
-        scriptParamMapper.batchInsert(scriptParams);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/UserDaoImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/UserDaoImpl.java
deleted file mode 100644
index a94ee5eac..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/dao/impl/UserDaoImpl.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.dao.impl;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.NO_SUCH_USER;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.USER_ALREADY_EXISTS;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.apache.seatunnel.app.common.UserStatusEnum;
-import org.apache.seatunnel.app.common.UserTokenStatusEnum;
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.dal.entity.User;
-import org.apache.seatunnel.app.dal.entity.UserLoginLog;
-import org.apache.seatunnel.app.dal.mapper.UserLoginLogMapper;
-import org.apache.seatunnel.app.dal.mapper.UserMapper;
-import org.apache.seatunnel.app.domain.dto.user.ListUserDto;
-import org.apache.seatunnel.app.domain.dto.user.UpdateUserDto;
-import org.apache.seatunnel.app.domain.dto.user.UserLoginLogDto;
-import org.apache.seatunnel.server.common.PageData;
-
-import org.springframework.stereotype.Repository;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-import java.util.Objects;
-
-@Repository
-public class UserDaoImpl implements IUserDao {
-    @Resource
-    private UserMapper userMapper;
-    @Resource
-    private UserLoginLogMapper userLoginLogMapper;
-
-    @Override
-    public int add(UpdateUserDto dto) {
-        final User user = new User();
-        user.setUsername(dto.getUsername());
-        user.setPassword(dto.getPassword());
-        user.setType((byte) dto.getType());
-        user.setStatus((byte) dto.getStatus());
-
-        userMapper.insert(user);
-        return user.getId();
-    }
-
-    @Override
-    public void checkUserExists(String username) {
-        User user = userMapper.selectByName(username);
-        checkState(Objects.isNull(user), String.format(USER_ALREADY_EXISTS.getTemplate(), username));
-    }
-
-    @Override
-    public void update(UpdateUserDto dto) {
-        final User user = new User();
-        user.setUsername(dto.getUsername());
-        user.setPassword(dto.getPassword());
-        user.setType((byte) dto.getType());
-        user.setStatus((byte) dto.getStatus());
-        user.setId(dto.getId());
-
-        final int i = userMapper.updateByPrimaryKey(user);
-        checkState(i == 1, NO_SUCH_USER.getTemplate());
-    }
-
-    @Override
-    public void delete(int id) {
-        userMapper.deleteByPrimaryKey(id);
-    }
-
-    @Override
-    public void enable(int id) {
-        userMapper.updateStatus(id, (byte) UserStatusEnum.ENABLE.getCode());
-    }
-
-    @Override
-    public void disable(int id) {
-        userMapper.updateStatus(id, (byte) UserStatusEnum.DISABLE.getCode());
-    }
-
-    @Override
-    public PageData<User> list(ListUserDto dto, int pageNo, int pageSize) {
-        final User user = new User();
-        user.setUsername(dto.getName());
-
-        int count = userMapper.countBySelective(user);
-        final List<User> userList = userMapper.selectBySelectiveAndPage(user, pageNo * pageSize, pageSize);
-        return new PageData<User>(count, userList);
-    }
-
-    @Override
-    public User getById(int operatorId) {
-        return userMapper.selectByPrimaryKey(operatorId);
-    }
-
-    @Override
-    public User getByName(String user) {
-        return userMapper.selectByName(user);
-    }
-
-    @Override
-    public User checkPassword(String username, String password) {
-        return userMapper.selectByNameAndPasswd(username, password);
-    }
-
-    @Override
-    public long insertLoginLog(UserLoginLogDto dto) {
-        final UserLoginLog log = new UserLoginLog();
-        log.setToken(dto.getToken());
-        log.setTokenStatus(dto.getTokenStatus());
-        log.setUserId(dto.getUserId());
-
-        userLoginLogMapper.insert(log);
-        return log.getId();
-    }
-
-    @Override
-    public void disableToken(int userId) {
-        userLoginLogMapper.updateStatus(userId, UserTokenStatusEnum.DISABLE.enable());
-    }
-
-    @Override
-    public UserLoginLog getLastLoginLog(Integer userId) {
-        return userLoginLogMapper.checkLastTokenEnable(userId);
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Role.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Role.java
deleted file mode 100644
index f3e218cf6..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Role.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.util.Date;
-
-@Data
-@Builder
-@AllArgsConstructor
-@NoArgsConstructor
-public class Role {
-
-    private Integer id;
-
-    private Integer type;
-
-    private String roleName;
-
-    private String description;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/RoleUserRelation.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/RoleUserRelation.java
deleted file mode 100644
index 7eeb44cad..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/RoleUserRelation.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.util.Date;
-
-@Data
-@Builder
-@AllArgsConstructor
-@NoArgsConstructor
-public class RoleUserRelation {
-
-    private Integer id;
-
-    private Integer roleId;
-
-    private Integer userId;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/SchedulerConfig.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/SchedulerConfig.java
deleted file mode 100644
index b529c3030..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/SchedulerConfig.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class SchedulerConfig {
-    private Integer id;
-
-    private Integer scriptId;
-
-    private String triggerExpression;
-
-    private Integer retryTimes;
-
-    private Integer retryInterval;
-
-    private Date activeStartTime;
-
-    private Date activeEndTime;
-
-    private Date createTime;
-
-    private Date updateTime;
-
-    private Integer creatorId;
-
-    private Integer updateId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Script.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Script.java
deleted file mode 100644
index 3b1d7db77..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/Script.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class Script {
-    private Integer id;
-
-    private String name;
-
-    private Byte type;
-
-    private Byte status;
-
-    private String content;
-
-    private String contentMd5;
-
-    private Integer creatorId;
-
-    private Integer menderId;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptJobApply.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptJobApply.java
deleted file mode 100644
index d986bc5c3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptJobApply.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class ScriptJobApply {
-    private Integer id;
-
-    private Integer scriptId;
-
-    private Integer schedulerConfigId;
-
-    private Long jobId;
-
-    private Integer operatorId;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptParam.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptParam.java
deleted file mode 100644
index 96d9b31b8..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/ScriptParam.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class ScriptParam {
-    private Integer id;
-
-    private Integer scriptId;
-
-    private String key;
-
-    private String value;
-
-    private Byte status;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/User.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/User.java
deleted file mode 100644
index 737776534..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/User.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class User {
-    private Integer id;
-
-    private String username;
-
-    private String password;
-
-    private Byte status;
-
-    private Byte type;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/UserLoginLog.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/UserLoginLog.java
deleted file mode 100644
index 008d46d76..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/entity/UserLoginLog.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.entity;
-
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class UserLoginLog {
-    private Long id;
-
-    private Integer userId;
-
-    private String token;
-
-    private Boolean tokenStatus;
-
-    private Date createTime;
-
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleMapper.java
deleted file mode 100644
index 4e81a45f3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleMapper.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.Role;
-
-import org.apache.ibatis.annotations.Param;
-
-public interface RoleMapper {
-
-    int insert(Role record);
-
-    Role selectByRole(@Param("roleName") String roleName);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.java
deleted file mode 100644
index 5ba02dc6a..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.RoleUserRelation;
-
-import org.apache.ibatis.annotations.Param;
-
-public interface RoleUserRelationMapper {
-
-    int insert(RoleUserRelation record);
-
-    RoleUserRelation selectByUserIdAndRoleId(@Param("userId")Integer userId, @Param("roleId")Integer roleId);
-
-    void deleteByUserId(@Param("userId")Integer userId);
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.java
deleted file mode 100644
index ab4ee6cec..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.SchedulerConfig;
-
-import org.apache.ibatis.annotations.Param;
-
-public interface SchedulerConfigMapper {
-    int deleteByPrimaryKey(Integer id);
-
-    int insert(SchedulerConfig record);
-
-    SchedulerConfig selectByPrimaryKey(Integer id);
-
-    SchedulerConfig selectByScriptId(@Param("scriptId") int scriptId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.java
deleted file mode 100644
index 4115fd9ca..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.ScriptJobApply;
-
-import org.apache.ibatis.annotations.Param;
-
-public interface ScriptJobApplyMapper {
-    int deleteByPrimaryKey(Integer id);
-
-    int insert(ScriptJobApply record);
-
-    ScriptJobApply selectByPrimaryKey(Integer id);
-
-    void update(ScriptJobApply record);
-
-    ScriptJobApply selectByScriptId(@Param("scriptId") int scriptId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptMapper.java
deleted file mode 100644
index 0732ad0d6..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptMapper.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.Script;
-
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface ScriptMapper {
-    Script selectByPrimaryKey(Integer id);
-
-    void insert(Script script);
-
-    void updateContentByPrimaryKey(@Param("id") int id, @Param("content") String content, @Param("contentMd5") String contentMd5, @Param("menderId") int menderId);
-
-    void updateStatus(@Param("id") int id, @Param("code") byte code);
-
-    List<Script> selectBySelectiveAndPage(@Param("script") Script script, @Param("start") int start, @Param("offset") int offset);
-
-    Script selectByNameAndCreatorAndStatusNotEq(@Param("name") String name, @Param("creatorId") int creatorId, @Param("status") byte status);
-
-    int countBySelectiveAndPage(@Param("script") Script script);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.java
deleted file mode 100644
index aa473c458..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.ScriptParam;
-
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface ScriptParamMapper {
-    ScriptParam selectByPrimaryKey(Integer id);
-
-    List<ScriptParam> selectByScriptId(@Param("scriptId") int scriptId);
-
-    void updateStatusByScriptId(@Param("scriptId") int scriptId, @Param("code") byte code);
-
-    void batchInsert(@Param("params") List<ScriptParam> params);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.java
deleted file mode 100644
index 448011691..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.UserLoginLog;
-
-import org.apache.ibatis.annotations.Param;
-
-public interface UserLoginLogMapper {
-    int insert(UserLoginLog userLoginLog);
-
-    int updateStatus(@Param("userId") int userId, @Param("enable") boolean enable);
-
-    UserLoginLog checkLastTokenEnable(@Param("userId") Integer userId);
-}
-
-
-
-
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserMapper.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserMapper.java
deleted file mode 100644
index 3bd74f226..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/dal/mapper/UserMapper.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.dal.mapper;
-
-import org.apache.seatunnel.app.dal.entity.User;
-
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface UserMapper {
-    User selectByPrimaryKey(@Param("id") Integer id);
-
-    void insert(User user);
-
-    int updateByPrimaryKey(User user);
-
-    void deleteByPrimaryKey(@Param("id") int id);
-
-    List<User> selectBySelectiveAndPage(@Param("user") User user, @Param("start") int start, @Param("offset") int offset);
-
-    void updateStatus(@Param("id") int id, @Param("status") byte status);
-
-    User selectByName(@Param("username") String username);
-
-    int countBySelective(@Param("user") User user);
-
-    User selectByNameAndPasswd(@Param("username") String username, @Param("password") String password);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/PushScriptDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/PushScriptDto.java
deleted file mode 100644
index c17a22bd4..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/PushScriptDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.job;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Data
-@Builder
-public class PushScriptDto {
-    private int scriptId;
-    private int userId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/RecycleScriptDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/RecycleScriptDto.java
deleted file mode 100644
index b8480a351..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/RecycleScriptDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.job;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class RecycleScriptDto {
-    private int scriptId;
-    private int operatorId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/ScriptJobApplyDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/ScriptJobApplyDto.java
deleted file mode 100644
index 2b1ffe9c3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/job/ScriptJobApplyDto.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.job;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Data
-@Builder
-public class ScriptJobApplyDto {
-    private int scriptId;
-    private int schedulerConfigId;
-    private long jobId;
-    private int userId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/AddEmptyScriptDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/AddEmptyScriptDto.java
deleted file mode 100644
index f2245c4a5..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/AddEmptyScriptDto.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.script;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class AddEmptyScriptDto {
-    private String name;
-    private byte type;
-    private int creatorId;
-    private int menderId;
-    private byte status;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/CheckScriptDuplicateDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/CheckScriptDuplicateDto.java
deleted file mode 100644
index f1c9576b1..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/CheckScriptDuplicateDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.script;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class CheckScriptDuplicateDto {
-    private String name;
-    private Integer creatorId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/ListScriptsDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/ListScriptsDto.java
deleted file mode 100644
index 8d15cccdc..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/ListScriptsDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.script;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class ListScriptsDto {
-    private String name;
-    private Byte status;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptContentDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptContentDto.java
deleted file mode 100644
index b0bf1c1a3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptContentDto.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.script;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class UpdateScriptContentDto {
-    private int id;
-    private String content;
-    private String contentMd5;
-    private int menderId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptParamDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptParamDto.java
deleted file mode 100644
index 69f7551d3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/script/UpdateScriptParamDto.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.script;
-
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Map;
-
-@Builder
-@Data
-public class UpdateScriptParamDto {
-    private int scriptId;
-    private Map<String, String> params;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/ListUserDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/ListUserDto.java
deleted file mode 100644
index 5fe208918..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/ListUserDto.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.user;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class ListUserDto {
-    private String name;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UpdateUserDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UpdateUserDto.java
deleted file mode 100644
index d65383ed8..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UpdateUserDto.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.user;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Builder
-@Data
-public class UpdateUserDto {
-    private Integer id;
-    private String username;
-    private String password;
-    private int status;
-    private int type;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UserLoginLogDto.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UserLoginLogDto.java
deleted file mode 100644
index 55af565c7..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/dto/user/UserLoginLogDto.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.dto.user;
-
-import lombok.Builder;
-import lombok.Data;
-
-@Data
-@Builder
-public class UserLoginLogDto {
-    private Long id;
-
-    private Integer userId;
-
-    private String token;
-
-    private Boolean tokenStatus;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/BasePageReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/BasePageReq.java
deleted file mode 100644
index a04f8af24..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/BasePageReq.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-public class BasePageReq {
-    @ApiModelProperty(value = "page number", required = true, dataType = "Integer")
-    private Integer pageNo;
-    @ApiModelProperty(value = "page size", required = true, dataType = "Integer")
-    private Integer pageSize;
-
-    public int getRealPageNo() {
-        return pageNo - 1;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/AddEmptyScriptReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/AddEmptyScriptReq.java
deleted file mode 100644
index 4bd650d6d..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/AddEmptyScriptReq.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.script;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotNull;
-
-@Data
-@ApiModel(value = "addEmptyScriptReq", description = "add a new empty script")
-public class AddEmptyScriptReq {
-    @ApiModelProperty(value = "script name", required = true, dataType = "String")
-    private String name;
-    @ApiModelProperty(value = "script type", required = true, dataType = "Byte")
-    @NotNull
-    private Byte type;
-    @ApiModelProperty(value = "script creator id", required = true, dataType = "Integer", hidden = true)
-    @NotNull
-    private Integer creatorId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/PublishScriptReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/PublishScriptReq.java
deleted file mode 100644
index 1b1352f4c..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/PublishScriptReq.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.script;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotNull;
-
-@Data
-@ApiModel(value = "publishScriptReq", description = "publish script")
-public class PublishScriptReq {
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer")
-    @NotNull
-    private int scriptId;
-    @ApiModelProperty(value = "operator id", required = true, dataType = "Integer")
-    @NotNull
-    private int operatorId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/ScriptListReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/ScriptListReq.java
deleted file mode 100644
index 3ac64ba16..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/ScriptListReq.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.script;
-
-import org.apache.seatunnel.app.domain.request.BasePageReq;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@ApiModel(value = "scriptListReq", description = "script list")
-@Data
-public class ScriptListReq extends BasePageReq {
-    @ApiModelProperty(value = "script name", required = false, dataType = "String")
-    private String name;
-    @ApiModelProperty(value = "script status", required = false, dataType = "Integer")
-    private Byte status;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptContentReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptContentReq.java
deleted file mode 100644
index 5a70d69f3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptContentReq.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.script;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-@Data
-@ApiModel(value = "updateScriptContentReq", description = "update an exist script content request")
-public class UpdateScriptContentReq {
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer", hidden = true)
-    private Integer scriptId;
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer")
-    @NotBlank
-    private String content;
-    @ApiModelProperty(value = "script mender id", required = true, dataType = "Integer", hidden = true)
-    @NotNull
-    private Integer menderId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptParamReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptParamReq.java
deleted file mode 100644
index df1057034..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/script/UpdateScriptParamReq.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.script;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotEmpty;
-
-import java.util.Map;
-
-@Data
-@ApiModel(value = "update", description = "update script param request")
-public class UpdateScriptParamReq {
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer", hidden = true)
-    private Integer scriptId;
-    @ApiModelProperty(value = "script params", required = true, dataType = "Map")
-    @NotEmpty
-    private Map<String, String> params;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/ExecuteReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/ExecuteReq.java
deleted file mode 100644
index fd853d435..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/ExecuteReq.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.task;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotEmpty;
-
-import java.util.Date;
-import java.util.Map;
-
-@Data
-public class ExecuteReq {
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer", hidden = true)
-    private Integer scriptId;
-    @ApiModelProperty(value = "execute content", required = true, dataType = "String")
-    private String content;
-    @ApiModelProperty(value = "operator id", required = true, dataType = "Integer", hidden = true)
-    private Integer operatorId;
-    @ApiModelProperty(value = "script params", required = true, dataType = "Map")
-    @NotEmpty
-    private Map<String, Object> params;
-    @ApiModelProperty(value = "execute type", required = true, dataType = "Integer", allowableValues = "0, 1, 2, 3")
-    private Integer executeType;
-    @ApiModelProperty(value = "start time", required = false, dataType = "Date", hidden = true)
-    private Date startTime = new Date();
-    @ApiModelProperty(value = "end time", required = false, dataType = "Date", hidden = true)
-    private Date endTime = new Date();
-    @ApiModelProperty(value = "parallelism number", required = false, dataType = "Integer", hidden = true)
-    private Integer parallelismNum = 1;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceListReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceListReq.java
deleted file mode 100644
index dcabb54b1..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceListReq.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.task;
-
-import org.apache.seatunnel.app.domain.request.BasePageReq;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "listInstanceReq", description = "list instance")
-public class InstanceListReq extends BasePageReq {
-    @ApiModelProperty(value = "instance name", required = true, dataType = "String")
-    private String name;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceLogRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceLogRes.java
deleted file mode 100644
index 60d371b02..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/InstanceLogRes.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.task;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Builder;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "instanceLogRes", description = "instance log")
-@Builder
-public class InstanceLogRes {
-    @ApiModelProperty(value = "instance id", dataType = "long")
-    private long instanceId;
-
-    @ApiModelProperty(value = "instance id", dataType = "String")
-    private String logContent;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/JobListReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/JobListReq.java
deleted file mode 100644
index 55be19be8..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/JobListReq.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.task;
-
-import org.apache.seatunnel.app.domain.request.BasePageReq;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "listJobReq", description = "list job")
-public class JobListReq extends BasePageReq {
-    @ApiModelProperty(value = "job name", required = true, dataType = "String")
-    private String name;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/RecycleScriptReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/RecycleScriptReq.java
deleted file mode 100644
index 5ee65d637..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/task/RecycleScriptReq.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.task;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotNull;
-
-@Data
-@ApiModel(value = "recycleScriptReq", description = "recycle script")
-public class RecycleScriptReq {
-    @ApiModelProperty(value = "script id", required = true, dataType = "Integer")
-    @NotNull
-    private int scriptId;
-    @ApiModelProperty(value = "operator id", required = true, dataType = "Integer")
-    @NotNull
-    private int operatorId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/AddUserReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/AddUserReq.java
deleted file mode 100644
index fab6512d3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/AddUserReq.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.user;
-
-import io.swagger.annotations.ApiModel;
-
-@ApiModel(value = "addUserReq", description = "add a new user request")
-public class AddUserReq extends BaseUserReq{
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/BaseUserReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/BaseUserReq.java
deleted file mode 100644
index 8ee3b6713..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/BaseUserReq.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.user;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotNull;
-
-@Data
-public class BaseUserReq {
-    @ApiModelProperty(value = "user name", required = true, dataType = "String")
-    private String username;
-    @ApiModelProperty(value = "user password", required = true, dataType = "String")
-    private String password;
-    @ApiModelProperty(value = "user status", required = true, dataType = "Byte")
-    @NotNull
-    private Byte status;
-    @ApiModelProperty(value = "user type", required = true, dataType = "Byte")
-    @NotNull
-    private Byte type;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UpdateUserReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UpdateUserReq.java
deleted file mode 100644
index 29fae94c3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UpdateUserReq.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.user;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotNull;
-
-@ApiModel(value = "updateUserReq", description = "update an exists user request")
-@Data
-public class UpdateUserReq extends BaseUserReq{
-    @ApiModelProperty(value = "user id", required = true, dataType = "Integer", hidden = true)
-    @NotNull
-    private Integer userId;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserListReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserListReq.java
deleted file mode 100644
index 80bcdf972..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserListReq.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.user;
-
-import org.apache.seatunnel.app.domain.request.BasePageReq;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@ApiModel(value = "userListReq", description = "user list")
-@Data
-public class UserListReq extends BasePageReq {
-    @ApiModelProperty(value = "user name", required = false, dataType = "String")
-    private String name;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserLoginReq.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserLoginReq.java
deleted file mode 100644
index fdf2cd3f7..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/request/user/UserLoginReq.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.request.user;
-
-import lombok.Data;
-
-@Data
-public class UserLoginReq {
-    private String username;
-    private String password;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/PageInfo.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/PageInfo.java
deleted file mode 100644
index f4ced6e86..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/PageInfo.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response;
-
-import io.swagger.annotations.ApiModel;
-
-import java.util.List;
-
-@ApiModel(value = "pageInfo", description = "page info")
-@SuppressWarnings("MagicNumber")
-public class PageInfo<T> {
-    private List<T> data;
-    private Integer totalCount = 0;
-    private Integer totalPage = 0;
-    private Integer pageNo = 1;
-    private Integer pageSize = 20;
-
-    public List<T> getData() {
-        return data;
-    }
-
-    public void setData(List<T> data) {
-        this.data = data;
-    }
-
-    public Integer getTotalCount() {
-        return totalCount;
-    }
-
-    public void setTotalCount(Integer totalCount) {
-        this.totalCount = totalCount;
-
-        if (pageSize == null || pageSize == 0) {
-            pageSize = 20;
-        }
-        if (this.totalCount % this.pageSize == 0) {
-            this.totalPage = this.totalCount / this.pageSize == 0 ? 1 : this.totalCount / this.pageSize;
-            return;
-        }
-        this.totalPage = this.totalCount / this.pageSize + 1;
-    }
-
-    public Integer getTotalPage() {
-        return totalPage;
-    }
-
-    public Integer getPageNo() {
-        return pageNo;
-    }
-
-    public void setPageNo(Integer pageNo) {
-        this.pageNo = pageNo;
-    }
-
-    public Integer getPageSize() {
-        return pageSize;
-    }
-
-    public void setPageSize(Integer pageSize) {
-        this.pageSize = pageSize;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/AddEmptyScriptRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/AddEmptyScriptRes.java
deleted file mode 100644
index 1037f9f8f..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/AddEmptyScriptRes.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.script;
-
-import lombok.Data;
-
-@Data
-public class AddEmptyScriptRes {
-    private int id;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/BaseScriptInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/BaseScriptInfoRes.java
deleted file mode 100644
index 435805820..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/BaseScriptInfoRes.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.script;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class BaseScriptInfoRes {
-    @ApiModelProperty(value = "script id", dataType = "int")
-    private int id;
-    @ApiModelProperty(value = "script name", dataType = "String")
-    private String name;
-    @ApiModelProperty(value = "script status", dataType = "type")
-    private byte status;
-    @ApiModelProperty(value = "script type", dataType = "type")
-    private byte type;
-    @ApiModelProperty(value = "script creator id", required = true, dataType = "Integer")
-    private Integer creatorId;
-    @ApiModelProperty(value = "script mender id", required = true, dataType = "Integer")
-    private Integer menderId;
-    @ApiModelProperty(value = "script create time", dataType = "Date")
-    private Date createTime;
-    @ApiModelProperty(value = "script update time", dataType = "Date")
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptParamRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptParamRes.java
deleted file mode 100644
index ae9e61618..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptParamRes.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.script;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "scriptParamRes", description = "script param")
-public class ScriptParamRes {
-    @ApiModelProperty(value = "script param id", dataType = "String")
-    private int id;
-    @ApiModelProperty(value = "script param key", dataType = "String")
-    private String key;
-    @ApiModelProperty(value = "script param value", dataType = "String")
-    private String value;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptSimpleInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptSimpleInfoRes.java
deleted file mode 100644
index 82de8886d..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/script/ScriptSimpleInfoRes.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.script;
-
-import io.swagger.annotations.ApiModel;
-import lombok.Data;
-
-@ApiModel(value = "scriptSimpleInfoRes", description = "script simple information")
-@Data
-public class ScriptSimpleInfoRes extends BaseScriptInfoRes {
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/InstanceSimpleInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/InstanceSimpleInfoRes.java
deleted file mode 100644
index 2a6815740..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/InstanceSimpleInfoRes.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.task;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-@Builder
-@ApiModel(value = "instanceSimpleInfoRes", description = "instance simple information")
-public class InstanceSimpleInfoRes {
-    @ApiModelProperty(value = "instance id", dataType = "Long")
-    private long instanceId;
-    @ApiModelProperty(value = "job id", dataType = "Long")
-    private long jobId;
-    @ApiModelProperty(value = "instance name", dataType = "String")
-    private String instanceName;
-    @ApiModelProperty(value = "submit time", dataType = "Date")
-    private Date submitTime;
-    @ApiModelProperty(value = "start time", dataType = "Date")
-    private Date startTime;
-    @ApiModelProperty(value = "end time", dataType = "Date")
-    private Date endTime;
-    @ApiModelProperty(value = "task status", dataType = "String")
-    private String status;
-    @ApiModelProperty(value = "execution duration", dataType = "String")
-    private String executionDuration;
-    @ApiModelProperty(value = "retry times", dataType = "Long")
-    private long retryTimes;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/JobSimpleInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/JobSimpleInfoRes.java
deleted file mode 100644
index 40b003bee..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/task/JobSimpleInfoRes.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.task;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Date;
-
-@ApiModel(value = "jobSimpleInfoRes", description = "job simple information")
-@Data
-@Builder
-public class JobSimpleInfoRes {
-    @ApiModelProperty(value = "job id", dataType = "Long")
-    private long jobId;
-    @ApiModelProperty(value = "job status", dataType = "String")
-    private String jobStatus;
-    @ApiModelProperty(value = "job creator", dataType = "String")
-    private String creatorName;
-    @ApiModelProperty(value = "job mender", dataType = "String")
-    private String menderName;
-    @ApiModelProperty(value = "job create time", dataType = "String")
-    private Date createTime;
-    @ApiModelProperty(value = "job update time", dataType = "String")
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/AddUserRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/AddUserRes.java
deleted file mode 100644
index e115a9350..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/AddUserRes.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.user;
-
-import io.swagger.annotations.ApiModel;
-import lombok.Data;
-
-@Data
-@ApiModel(value = "addUserRes", description = "add user response")
-public class AddUserRes {
-    private int id;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/BaseUserInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/BaseUserInfoRes.java
deleted file mode 100644
index a50a2cea9..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/BaseUserInfoRes.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.user;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class BaseUserInfoRes {
-    @ApiModelProperty(value = "user id", dataType = "int")
-    private int id;
-    @ApiModelProperty(value = "user name", dataType = "String")
-    private String name;
-    @ApiModelProperty(value = "user status", dataType = "type")
-    private byte status;
-    @ApiModelProperty(value = "user type", dataType = "type")
-    private byte type;
-    @ApiModelProperty(value = "user create time", dataType = "Date")
-    private Date createTime;
-    @ApiModelProperty(value = "user update time", dataType = "Date")
-    private Date updateTime;
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/UserSimpleInfoRes.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/UserSimpleInfoRes.java
deleted file mode 100644
index b1c6af20e..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/domain/response/user/UserSimpleInfoRes.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.domain.response.user;
-
-import com.google.common.collect.Maps;
-import io.swagger.annotations.ApiModel;
-
-import java.util.HashMap;
-import java.util.Map;
-
-@ApiModel(value = "userSimpleInfoRes", description = "user simple information")
-public class UserSimpleInfoRes extends BaseUserInfoRes {
-
-    public Map<String, Object> toMap() {
-        final HashMap<String, Object> userMap = Maps.newHashMap();
-        userMap.put("id", getId());
-        userMap.put("name", getName());
-        userMap.put("status", getStatus());
-        userMap.put("type", getType());
-        return userMap;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/interceptor/AuthenticationInterceptor.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/interceptor/AuthenticationInterceptor.java
deleted file mode 100644
index 3b4326256..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/interceptor/AuthenticationInterceptor.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.interceptor;
-
-import static org.apache.seatunnel.server.common.Constants.OPTIONS;
-import static org.apache.seatunnel.server.common.Constants.TOKEN;
-import static org.apache.seatunnel.server.common.Constants.USER_ID;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.TOKEN_ILLEGAL;
-import static io.jsonwebtoken.Claims.EXPIRATION;
-
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.dal.entity.UserLoginLog;
-import org.apache.seatunnel.app.security.JwtUtils;
-import org.apache.seatunnel.server.common.SeatunnelException;
-
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.web.servlet.HandlerInterceptor;
-import org.springframework.web.servlet.ModelAndView;
-
-import javax.annotation.Resource;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import java.util.Map;
-import java.util.Objects;
-
-@Slf4j
-public class AuthenticationInterceptor implements HandlerInterceptor {
-
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Resource
-    private JwtUtils jwtUtils;
-
-    @Override
-    @SuppressWarnings("MagicNumber")
-    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-        if (request.getMethod().equals(OPTIONS)) {
-            response.setHeader("Access-Control-Allow-Origin", "*");
-            response.setHeader("Access-Control-Allow-Headers", "*");
-            response.setHeader("Access-Control-Allow-Methods", "*");
-            response.setHeader("Access-Control-Allow-Credentials", "true");
-            response.setHeader("Access-Control-Max-Age", "3600");
-            return true;
-        }
-        long currentTimestamp = System.currentTimeMillis();
-        final String token = request.getHeader(TOKEN);
-        if (StringUtils.isBlank(token)) {
-            throw new SeatunnelException(TOKEN_ILLEGAL);
-        }
-        final Map<String, Object> map = jwtUtils.parseToken(token);
-        final Integer userId = (Integer) map.get(USER_ID);
-        if (Objects.isNull(userId)) {
-            throw new SeatunnelException(TOKEN_ILLEGAL);
-        }
-        final UserLoginLog userLoginLog = userDaoImpl.getLastLoginLog(userId);
-        if (Objects.isNull(userLoginLog) || !userLoginLog.getTokenStatus()) {
-            throw new SeatunnelException(TOKEN_ILLEGAL);
-        }
-
-        final Integer expireDate = (Integer) map.get(EXPIRATION);
-        if (Objects.isNull(expireDate) || currentTimestamp - (long) expireDate * 1000 > 0) {
-            throw new SeatunnelException(TOKEN_ILLEGAL);
-        }
-
-        map.forEach(request::setAttribute);
-
-        return true;
-    }
-
-    @Override
-    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
-        // do nothing
-    }
-
-    @Override
-    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
-        // do nothing
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/resolver/UserIdMethodArgumentResolver.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/resolver/UserIdMethodArgumentResolver.java
deleted file mode 100644
index 3ebfca7af..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/resolver/UserIdMethodArgumentResolver.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.resolver;
-
-import static org.apache.seatunnel.server.common.Constants.USER_ID;
-
-import org.apache.seatunnel.app.aspect.UserId;
-
-import org.springframework.core.MethodParameter;
-import org.springframework.stereotype.Component;
-import org.springframework.web.bind.support.WebDataBinderFactory;
-import org.springframework.web.context.request.NativeWebRequest;
-import org.springframework.web.context.request.RequestAttributes;
-import org.springframework.web.method.support.HandlerMethodArgumentResolver;
-import org.springframework.web.method.support.ModelAndViewContainer;
-
-@Component
-public class UserIdMethodArgumentResolver implements HandlerMethodArgumentResolver {
-    @Override
-    public boolean supportsParameter(MethodParameter parameter) {
-        return parameter.getParameterType().isAssignableFrom(Integer.class)
-                && parameter.hasParameterAnnotation(UserId.class);
-    }
-
-    @Override
-    public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
-        return (Integer) webRequest.getAttribute(USER_ID, RequestAttributes.SCOPE_REQUEST);
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/security/JwtUtils.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/security/JwtUtils.java
deleted file mode 100644
index 9ddc9b40f..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/security/JwtUtils.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.security;
-
-import io.jsonwebtoken.Claims;
-import io.jsonwebtoken.Jws;
-import io.jsonwebtoken.Jwts;
-import io.jsonwebtoken.SignatureAlgorithm;
-import org.apache.commons.lang3.time.DateUtils;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import java.nio.charset.StandardCharsets;
-import java.util.Date;
-import java.util.Map;
-import java.util.UUID;
-
-@Component
-public class JwtUtils implements InitializingBean {
-    @Value("${jwt.expireTime}")
-    private int expireTime;
-    @Value("${jwt.secretKey}")
-    private String secretKey;
-    @Value("${jwt.algorithm}")
-    private String algorithmString;
-    private SignatureAlgorithm algorithm = null;
-
-    @Override
-    public void afterPropertiesSet() throws Exception {
-        algorithm = SignatureAlgorithm.valueOf(algorithmString);
-    }
-
-    public String genToken(Map<String, Object> data) {
-        final Date currentDate = new Date();
-        final Date expireDate = DateUtils.addSeconds(currentDate, expireTime);
-
-        return Jwts.builder()
-                .signWith(SignatureAlgorithm.HS256, secretKey.getBytes(StandardCharsets.UTF_8))
-                .setId(UUID.randomUUID().toString())
-                .setClaims(data)
-                .setIssuedAt(currentDate)
-                .setExpiration(expireDate)
-                .compact();
-    }
-
-    public Map<String, Object> parseToken(String token) {
-        final Jws<Claims> claims = Jwts.parser().setSigningKey(secretKey.getBytes(StandardCharsets.UTF_8)).parseClaimsJws(token);
-        return claims.getBody();
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IRoleService.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IRoleService.java
deleted file mode 100644
index 3dcf1e321..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IRoleService.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service;
-
-public interface IRoleService {
-    boolean addUserToRole(Integer userId, Integer type);
-
-    boolean checkUserRole(String username, String roleName);
-
-    void deleteByUserId(Integer id);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IScriptService.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IScriptService.java
deleted file mode 100644
index 4e9a9ebbd..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IScriptService.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service;
-
-import org.apache.seatunnel.app.domain.request.script.AddEmptyScriptReq;
-import org.apache.seatunnel.app.domain.request.script.PublishScriptReq;
-import org.apache.seatunnel.app.domain.request.script.ScriptListReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptContentReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptParamReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.script.AddEmptyScriptRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptParamRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptSimpleInfoRes;
-
-import java.util.List;
-
-public interface IScriptService {
-    AddEmptyScriptRes addEmptyScript(AddEmptyScriptReq addEmptyScriptReq);
-
-    void updateScriptContent(UpdateScriptContentReq updateScriptContentReq);
-
-    void delete(Integer id);
-
-    PageInfo<ScriptSimpleInfoRes> list(ScriptListReq scriptListReq);
-
-    String fetchScriptContent(Integer id);
-
-    List<ScriptParamRes> fetchScriptParam(Integer id);
-
-    void updateScriptParam(UpdateScriptParamReq updateScriptParamReq);
-
-    void publishScript(PublishScriptReq req);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/ITaskService.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/ITaskService.java
deleted file mode 100644
index a197f1e75..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/ITaskService.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service;
-
-import org.apache.seatunnel.app.domain.dto.job.PushScriptDto;
-import org.apache.seatunnel.app.domain.request.task.ExecuteReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceListReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceLogRes;
-import org.apache.seatunnel.app.domain.request.task.JobListReq;
-import org.apache.seatunnel.app.domain.request.task.RecycleScriptReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.task.InstanceSimpleInfoRes;
-import org.apache.seatunnel.app.domain.response.task.JobSimpleInfoRes;
-
-public interface ITaskService {
-    Long pushScriptToScheduler(PushScriptDto pushScriptDto);
-
-    void recycleScriptFromScheduler(RecycleScriptReq req);
-
-    PageInfo<JobSimpleInfoRes> listJob(JobListReq req);
-
-    PageInfo<InstanceSimpleInfoRes> listInstance(InstanceListReq req);
-
-    InstanceSimpleInfoRes tmpExecute(ExecuteReq req);
-
-    InstanceLogRes queryInstanceLog(Long instanceId);
-
-    void kill(Long instanceId);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IUserService.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IUserService.java
deleted file mode 100644
index 60ba8d430..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/IUserService.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service;
-
-import org.apache.seatunnel.app.domain.request.user.AddUserReq;
-import org.apache.seatunnel.app.domain.request.user.UpdateUserReq;
-import org.apache.seatunnel.app.domain.request.user.UserListReq;
-import org.apache.seatunnel.app.domain.request.user.UserLoginReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.user.AddUserRes;
-import org.apache.seatunnel.app.domain.response.user.UserSimpleInfoRes;
-
-public interface IUserService {
-
-    AddUserRes add(AddUserReq addReq);
-
-    void update(UpdateUserReq updateReq);
-
-    void delete(int id);
-
-    PageInfo<UserSimpleInfoRes> list(UserListReq userListReq);
-
-    void enable(int id);
-
-    void disable(int id);
-
-    UserSimpleInfoRes login(UserLoginReq req);
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/RoleServiceImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/RoleServiceImpl.java
deleted file mode 100644
index e0f317163..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/RoleServiceImpl.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service.impl;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.NO_SUCH_USER;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.apache.seatunnel.app.common.RoleTypeEnum;
-import org.apache.seatunnel.app.dal.dao.IRoleDao;
-import org.apache.seatunnel.app.dal.dao.IRoleUserRelationDao;
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.dal.entity.Role;
-import org.apache.seatunnel.app.dal.entity.RoleUserRelation;
-import org.apache.seatunnel.app.dal.entity.User;
-import org.apache.seatunnel.app.service.IRoleService;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-
-import java.util.Objects;
-
-@Service
-@Slf4j
-public class RoleServiceImpl implements IRoleService {
-
-    @Resource
-    private IRoleDao roleDaoImpl;
-
-    @Resource
-    private IRoleUserRelationDao roleUserRelationDaoImpl;
-
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Override
-    public boolean addUserToRole(Integer userId, Integer type){
-
-        String roleName = type == RoleTypeEnum.ADMIN.getCode() ? RoleTypeEnum.ADMIN.getDescription() : RoleTypeEnum.NORMAL.getDescription();
-
-        final Role role = roleDaoImpl.getByRoleName(roleName);
-
-        final RoleUserRelation build = RoleUserRelation.builder()
-                .roleId(role.getId())
-                .userId(userId)
-                .build();
-
-        roleUserRelationDaoImpl.add(build);
-        return true;
-    }
-
-    @Override
-    public boolean checkUserRole(String username, String roleName){
-
-        final User user = userDaoImpl.getByName(username);
-
-        checkState(!Objects.isNull(user), NO_SUCH_USER.getTemplate());
-
-        final Role role = roleDaoImpl.getByRoleName(roleName);
-
-        final RoleUserRelation byUserAndRole = roleUserRelationDaoImpl.getByUserAndRole(user.getId(), role.getId());
-
-        return !Objects.isNull(byUserAndRole);
-
-    }
-
-    @Override
-    public void deleteByUserId(Integer userId) {
-        roleUserRelationDaoImpl.deleteByUserId(userId);
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/ScriptServiceImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/ScriptServiceImpl.java
deleted file mode 100644
index 6d654c974..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/ScriptServiceImpl.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service.impl;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.NO_SUCH_SCRIPT;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.apache.seatunnel.app.common.ScriptParamStatusEnum;
-import org.apache.seatunnel.app.common.ScriptStatusEnum;
-import org.apache.seatunnel.app.dal.dao.IScriptDao;
-import org.apache.seatunnel.app.dal.dao.IScriptParamDao;
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.dal.entity.Script;
-import org.apache.seatunnel.app.dal.entity.ScriptParam;
-import org.apache.seatunnel.app.domain.dto.job.PushScriptDto;
-import org.apache.seatunnel.app.domain.dto.script.AddEmptyScriptDto;
-import org.apache.seatunnel.app.domain.dto.script.CheckScriptDuplicateDto;
-import org.apache.seatunnel.app.domain.dto.script.ListScriptsDto;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptContentDto;
-import org.apache.seatunnel.app.domain.dto.script.UpdateScriptParamDto;
-import org.apache.seatunnel.app.domain.request.script.AddEmptyScriptReq;
-import org.apache.seatunnel.app.domain.request.script.PublishScriptReq;
-import org.apache.seatunnel.app.domain.request.script.ScriptListReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptContentReq;
-import org.apache.seatunnel.app.domain.request.script.UpdateScriptParamReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.script.AddEmptyScriptRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptParamRes;
-import org.apache.seatunnel.app.domain.response.script.ScriptSimpleInfoRes;
-import org.apache.seatunnel.app.service.IScriptService;
-import org.apache.seatunnel.app.service.ITaskService;
-import org.apache.seatunnel.app.utils.Md5Utils;
-import org.apache.seatunnel.scheduler.dolphinscheduler.impl.InstanceServiceImpl;
-import org.apache.seatunnel.server.common.PageData;
-
-import com.google.common.base.Strings;
-import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import javax.annotation.Resource;
-
-import java.util.Collections;
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-@Component
-public class ScriptServiceImpl implements IScriptService {
-
-    @Resource
-    private IScriptDao scriptDaoImpl;
-
-    @Resource
-    private IScriptParamDao scriptParamDaoImpl;
-
-    @Resource
-    private InstanceServiceImpl instanceService;
-
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Resource
-    private ITaskService iTaskService;
-
-    @Override
-    public AddEmptyScriptRes addEmptyScript(AddEmptyScriptReq addEmptyScriptReq) {
-        // 1. check script name.
-        checkDuplicate(addEmptyScriptReq.getName(), addEmptyScriptReq.getCreatorId());
-        // 2. create an empty script
-        int scriptId = addEmptyScript(addEmptyScriptReq.getName(), addEmptyScriptReq.getCreatorId(), addEmptyScriptReq.getCreatorId(), addEmptyScriptReq.getType());
-
-        final AddEmptyScriptRes res = new AddEmptyScriptRes();
-        res.setId(scriptId);
-        return res;
-    }
-
-    private int addEmptyScript(String name, Integer creatorId, Integer menderId, Byte type) {
-        final AddEmptyScriptDto dto = AddEmptyScriptDto.builder()
-                .name(name)
-                .menderId(creatorId)
-                .creatorId(menderId)
-                .type(type)
-                .status((byte) ScriptStatusEnum.UNPUBLISHED.getCode())
-                .build();
-        return scriptDaoImpl.addEmptyScript(dto);
-    }
-
-    private void checkDuplicate(String name, Integer creatorId) {
-        final CheckScriptDuplicateDto dto = CheckScriptDuplicateDto.builder()
-                .creatorId(creatorId)
-                .name(name)
-                .build();
-        scriptDaoImpl.checkScriptDuplicate(dto);
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void updateScriptContent(UpdateScriptContentReq updateScriptContentReq) {
-        // 1. check content md5 is consistent
-        final String content = updateScriptContentReq.getContent();
-        final String contentMd5 = Strings.isNullOrEmpty(content) ? "" : Md5Utils.toMd5(content);
-
-        final boolean needSave = checkIfNeedSave(updateScriptContentReq.getScriptId(), contentMd5);
-
-        if (needSave){
-            final UpdateScriptContentDto dto = UpdateScriptContentDto.builder()
-                    .id(updateScriptContentReq.getScriptId())
-                    .content(content)
-                    .contentMd5(contentMd5)
-                    .menderId(updateScriptContentReq.getMenderId())
-                    .build();
-            scriptDaoImpl.updateScriptContent(dto);
-        }
-    }
-
-    private boolean checkIfNeedSave(int id, String newContentMd5) {
-        Script script = scriptDaoImpl.getScript(id);
-        checkState(Objects.nonNull(script) && (int) script.getStatus() != ScriptStatusEnum.DELETED.getCode(), NO_SUCH_SCRIPT.getTemplate());
-
-        final String oldContentMd5 = Strings.isNullOrEmpty(script.getContentMd5()) ? "" : script.getContentMd5();
-        return !newContentMd5.equals(oldContentMd5);
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void delete(Integer id) {
-        // no need check script if exist.
-        scriptDaoImpl.deleteScript(id);
-    }
-
-    @Override
-    public PageInfo<ScriptSimpleInfoRes> list(ScriptListReq scriptListReq) {
-
-        final ListScriptsDto dto = ListScriptsDto.builder()
-                .name(scriptListReq.getName())
-                .status(scriptListReq.getStatus())
-                .build();
-
-        PageData<Script> scriptPageData = scriptDaoImpl.list(dto, scriptListReq.getRealPageNo(), scriptListReq.getPageSize());
-        final List<ScriptSimpleInfoRes> data = scriptPageData.getData().stream().map(this::translate).collect(Collectors.toList());
-
-        final PageInfo<ScriptSimpleInfoRes> pageInfo = new PageInfo<>();
-        pageInfo.setPageNo(scriptListReq.getPageNo());
-        pageInfo.setPageSize(scriptListReq.getPageSize());
-        pageInfo.setTotalCount(scriptPageData.getTotalCount());
-        pageInfo.setData(data);
-        return pageInfo;
-    }
-
-    @Override
-    public String fetchScriptContent(Integer id) {
-        Script script = scriptDaoImpl.getScript(id);
-        checkState(Objects.nonNull(script), NO_SUCH_SCRIPT.getTemplate());
-        return script.getContent();
-    }
-
-    @Override
-    public List<ScriptParamRes> fetchScriptParam(Integer id) {
-        List<ScriptParam> scriptParamRes = scriptParamDaoImpl.getParamsByScriptId(id);
-        if (CollectionUtils.isEmpty(scriptParamRes)){
-            return Collections.emptyList();
-        }
-        return scriptParamRes.stream().map(this::translate).collect(Collectors.toList());
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void updateScriptParam(UpdateScriptParamReq updateScriptParamReq) {
-        // 1. delete all old params first.
-        // 2. save new params. (check params correctness)
-        scriptParamDaoImpl.updateStatusByScriptId(updateScriptParamReq.getScriptId(), ScriptParamStatusEnum.DELETED.getCode());
-
-        UpdateScriptParamDto dto = UpdateScriptParamDto.builder()
-                .scriptId(updateScriptParamReq.getScriptId())
-                .params(updateScriptParamReq.getParams())
-                .build();
-
-        scriptParamDaoImpl.batchInsert(dto);
-    }
-
-    @Override
-    public void publishScript(PublishScriptReq req){
-        final PushScriptDto dto = PushScriptDto.builder()
-                .scriptId(req.getScriptId())
-                .userId(req.getOperatorId())
-                .build();
-        iTaskService.pushScriptToScheduler(dto);
-    }
-
-    private ScriptParamRes translate(ScriptParam scriptParam) {
-        final ScriptParamRes res = new ScriptParamRes();
-        res.setId(scriptParam.getId());
-        res.setKey(scriptParam.getKey());
-        res.setValue(scriptParam.getValue());
-        return res;
-    }
-
-    private ScriptSimpleInfoRes translate(Script script) {
-        final ScriptSimpleInfoRes res = new ScriptSimpleInfoRes();
-        res.setId(script.getId());
-        res.setName(script.getName());
-        res.setStatus(script.getStatus());
-        res.setType(script.getType());
-        res.setCreatorId(script.getCreatorId());
-        res.setMenderId(script.getMenderId());
-        res.setCreateTime(script.getCreateTime());
-        res.setUpdateTime(script.getUpdateTime());
-        return res;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/TaskServiceImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/TaskServiceImpl.java
deleted file mode 100644
index c687c93db..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/TaskServiceImpl.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service.impl;
-
-import static org.apache.seatunnel.server.common.Constants.UNDERLINE;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.NO_SUCH_SCRIPT;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.SCHEDULER_CONFIG_NOT_EXIST;
-import static org.apache.seatunnel.spi.scheduler.constants.SchedulerConstant.NEVER_TRIGGER_EXPRESSION;
-import static org.apache.seatunnel.spi.scheduler.constants.SchedulerConstant.RETRY_INTERVAL_DEFAULT;
-import static org.apache.seatunnel.spi.scheduler.constants.SchedulerConstant.RETRY_TIMES_DEFAULT;
-
-import org.apache.seatunnel.app.dal.dao.ISchedulerConfigDao;
-import org.apache.seatunnel.app.dal.dao.IScriptDao;
-import org.apache.seatunnel.app.dal.dao.IScriptJobApplyDao;
-import org.apache.seatunnel.app.dal.dao.IScriptParamDao;
-import org.apache.seatunnel.app.dal.entity.SchedulerConfig;
-import org.apache.seatunnel.app.dal.entity.Script;
-import org.apache.seatunnel.app.dal.entity.ScriptJobApply;
-import org.apache.seatunnel.app.dal.entity.ScriptParam;
-import org.apache.seatunnel.app.domain.dto.job.PushScriptDto;
-import org.apache.seatunnel.app.domain.dto.job.ScriptJobApplyDto;
-import org.apache.seatunnel.app.domain.request.task.ExecuteReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceListReq;
-import org.apache.seatunnel.app.domain.request.task.InstanceLogRes;
-import org.apache.seatunnel.app.domain.request.task.JobListReq;
-import org.apache.seatunnel.app.domain.request.task.RecycleScriptReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.task.InstanceSimpleInfoRes;
-import org.apache.seatunnel.app.domain.response.task.JobSimpleInfoRes;
-import org.apache.seatunnel.app.service.ITaskService;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.server.common.SeatunnelException;
-import org.apache.seatunnel.spi.scheduler.IInstanceService;
-import org.apache.seatunnel.spi.scheduler.IJobService;
-import org.apache.seatunnel.spi.scheduler.dto.ExecuteDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceListDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceLogDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobListDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobSimpleInfoDto;
-import org.apache.seatunnel.spi.scheduler.dto.SchedulerConfigDto;
-import org.apache.seatunnel.spi.scheduler.enums.ExecuteTypeEnum;
-
-import com.google.common.collect.Maps;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
-
-import javax.annotation.Resource;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.concurrent.CompletableFuture;
-import java.util.stream.Collectors;
-
-@Component
-@Slf4j
-public class TaskServiceImpl implements ITaskService {
-
-    @Resource
-    private IJobService iJobService;
-
-    @Resource
-    private IInstanceService iInstanceService;
-
-    @Resource
-    private IScriptDao scriptDaoImpl;
-
-    @Resource
-    private IScriptParamDao scriptParamDaoImpl;
-
-    @Resource
-    private ISchedulerConfigDao schedulerConfigDaoImpl;
-
-    @Resource
-    private IScriptJobApplyDao scriptJobApplyDaoImpl;
-
-    @Override
-    public Long pushScriptToScheduler(PushScriptDto pushScriptDto) {
-        final int scriptId = pushScriptDto.getScriptId();
-        final int userId = pushScriptDto.getUserId();
-
-        // check scheduler param
-        SchedulerConfig config = schedulerConfigDaoImpl.getSchedulerConfig(scriptId);
-        if (Objects.isNull(config)) {
-            throw new SeatunnelException(SCHEDULER_CONFIG_NOT_EXIST);
-        }
-
-        final Script script = checkAndGetScript(scriptId);
-        final List<ScriptParam> scriptParams = scriptParamDaoImpl.getParamsByScriptId(scriptId);
-        Map<String, Object> params = getScriptParamMap(scriptParams);
-
-        final SchedulerConfigDto schedulerConfigDto = SchedulerConfigDto.builder()
-                .retryInterval(config.getRetryInterval())
-                .retryTimes(config.getRetryTimes())
-                .startTime(config.getActiveStartTime())
-                .endTime(config.getActiveEndTime())
-                .triggerExpression(config.getTriggerExpression())
-                .build();
-
-        final JobDto jobDto = JobDto.builder()
-                .jobName(script.getName())
-                .jobContent(script.getContent())
-                .params(params)
-                .operatorId(userId)
-                .schedulerConfigDto(schedulerConfigDto)
-                //todo fix to real execute script
-                .executorScript(script.getContent())
-                .jobId(null)
-                .build();
-
-        ScriptJobApply apply = scriptJobApplyDaoImpl.getByScriptId(script.getId());
-        if (Objects.nonNull(apply)) {
-            jobDto.setJobId(apply.getJobId());
-        }
-
-        // push script
-        final long jobId = iJobService.submitJob(jobDto);
-
-        // Use future to ensure that the page does not show exceptions due to database errors.
-        syncScriptJobMapping(scriptId, userId, config.getId(), jobId);
-        return jobId;
-    }
-
-    @Override
-    public void recycleScriptFromScheduler(RecycleScriptReq req) {
-        final Script script = checkAndGetScript(req.getScriptId());
-        ScriptJobApply apply = scriptJobApplyDaoImpl.getByScriptId(script.getId());
-
-        final JobDto jobDto = JobDto.builder()
-                .jobId(apply.getJobId())
-                .jobName(script.getName())
-                .operatorId(req.getOperatorId())
-                .build();
-
-        iJobService.offlineJob(jobDto);
-
-        syncScriptJobMapping(script.getId(), req.getOperatorId(), apply.getSchedulerConfigId(), apply.getJobId());
-    }
-
-    @Override
-    public PageInfo<JobSimpleInfoRes> listJob(JobListReq req) {
-        // Search from scheduler.
-        final JobListDto dto = JobListDto.builder()
-                .name(req.getName())
-                .pageNo(req.getPageNo())
-                .pageSize(req.getPageSize())
-                .build();
-        final PageData<JobSimpleInfoDto> jobPageData = iJobService.list(dto);
-        final List<JobSimpleInfoRes> data = jobPageData.getData().stream().map(this::translate).collect(Collectors.toList());
-        final PageInfo<JobSimpleInfoRes> pageInfo = new PageInfo<>();
-        pageInfo.setData(data);
-        pageInfo.setTotalCount(jobPageData.getTotalCount());
-        pageInfo.setPageNo(req.getPageNo());
-        pageInfo.setPageSize(req.getPageSize());
-
-        return pageInfo;
-    }
-
-    @Override
-    public PageInfo<InstanceSimpleInfoRes> listInstance(InstanceListReq req) {
-        // Search from scheduler.
-        final InstanceListDto dto = InstanceListDto.builder()
-                .name(req.getName())
-                .pageNo(req.getPageNo())
-                .pageSize(req.getPageSize())
-                .build();
-        final PageData<InstanceDto> instancePageData = iInstanceService.list(dto);
-        final List<InstanceSimpleInfoRes> data = instancePageData.getData().stream().map(this::translate).collect(Collectors.toList());
-        final PageInfo<InstanceSimpleInfoRes> pageInfo = new PageInfo<>();
-        pageInfo.setData(data);
-        pageInfo.setTotalCount(instancePageData.getTotalCount());
-        pageInfo.setPageNo(req.getPageNo());
-        pageInfo.setPageSize(req.getPageSize());
-
-        return pageInfo;
-    }
-
-    @Override
-    public InstanceSimpleInfoRes tmpExecute(ExecuteReq req) {
-        final Script script = checkAndGetScript(req.getScriptId());
-
-        final SchedulerConfigDto schedulerConfigDto = SchedulerConfigDto.builder()
-                .retryInterval(RETRY_INTERVAL_DEFAULT)
-                .retryTimes(RETRY_TIMES_DEFAULT)
-                .startTime(new Date())
-                .endTime(new Date())
-                .triggerExpression(NEVER_TRIGGER_EXPRESSION)
-                .build();
-
-        final JobDto jobDto = JobDto.builder()
-                .jobName(script.getName().concat(UNDERLINE).concat(String.valueOf(System.currentTimeMillis())))
-                .jobContent(req.getContent())
-                .params(req.getParams())
-                .operatorId(req.getOperatorId())
-                .schedulerConfigDto(schedulerConfigDto)
-                //todo fix to real execute script
-                .executorScript(script.getContent())
-                .jobId(null)
-                .build();
-
-        final ExecuteDto dto = ExecuteDto.builder()
-                .jobDto(jobDto)
-                .executeTypeEnum(ExecuteTypeEnum.parse(req.getExecuteType()))
-                .complementDataDto(null)
-                .build();
-
-        return this.translate(iJobService.execute(dto));
-    }
-
-    @Override
-    public InstanceLogRes queryInstanceLog(Long instanceId) {
-        final InstanceLogDto dto = iInstanceService.queryInstanceLog(instanceId);
-
-        return InstanceLogRes.builder()
-            .instanceId(instanceId)
-            .logContent(dto.getLogContent())
-            .build();
-    }
-
-    @Override
-    public void kill(Long instanceId) {
-        iJobService.kill(instanceId);
-    }
-
-    private JobSimpleInfoRes translate(JobSimpleInfoDto dto) {
-        return JobSimpleInfoRes.builder()
-                .jobId(dto.getJobId())
-                .jobStatus(dto.getJobStatus())
-                .creatorName(dto.getCreatorName())
-                .menderName(dto.getMenderName())
-                .createTime(dto.getCreateTime())
-                .updateTime(dto.getUpdateTime())
-                .build();
-    }
-
-    private InstanceSimpleInfoRes translate(InstanceDto dto) {
-        return InstanceSimpleInfoRes.builder()
-                .instanceId(dto.getInstanceId())
-                .jobId(dto.getJobId())
-                .instanceName(dto.getInstanceName())
-                .submitTime(dto.getSubmitTime())
-                .startTime(dto.getStartTime())
-                .endTime(dto.getEndTime())
-                .status(dto.getStatus())
-                .executionDuration(dto.getExecutionDuration())
-                .retryTimes(dto.getRetryTimes())
-                .build();
-    }
-
-    private Script checkAndGetScript(int scriptId) {
-        final Script script = scriptDaoImpl.getScript(scriptId);
-        if (Objects.isNull(script)) {
-            throw new SeatunnelException(NO_SUCH_SCRIPT);
-        }
-        return script;
-    }
-
-    private void syncScriptJobMapping(int scriptId, int userId, int schedulerConfigId, long jobId) {
-        CompletableFuture.runAsync(() -> {
-            // store script and job mapping
-            final ScriptJobApplyDto dto = ScriptJobApplyDto.builder()
-                    .scriptId(scriptId)
-                    .schedulerConfigId(schedulerConfigId)
-                    .jobId(jobId)
-                    .userId(userId)
-                    .build();
-            scriptJobApplyDaoImpl.insertOrUpdate(dto);
-        }).whenComplete((_return, e) -> {
-            if (Objects.nonNull(e)) {
-                log.error("Store script and job mapping failed, please maintain this mapping manually. \n" +
-                        "scriptId [{}], schedulerConfigId [{}], jobId [{}], userId [{}]", scriptId, schedulerConfigId, jobId, userId, e);
-            }
-        });
-    }
-
-    private Map<String, Object> getScriptParamMap(List<ScriptParam> scriptParams) {
-        Map<String, Object> params = Maps.newHashMap();
-
-        if (!CollectionUtils.isEmpty(params)) {
-            scriptParams.forEach(scriptParam -> params.put(scriptParam.getKey(), scriptParam.getValue()));
-        }
-        return params;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/UserServiceImpl.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/UserServiceImpl.java
deleted file mode 100644
index aa63f60c3..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/service/impl/UserServiceImpl.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.service.impl;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.USERNAME_PASSWORD_NO_MATCHED;
-
-import org.apache.seatunnel.app.dal.dao.IUserDao;
-import org.apache.seatunnel.app.dal.entity.User;
-import org.apache.seatunnel.app.domain.dto.user.ListUserDto;
-import org.apache.seatunnel.app.domain.dto.user.UpdateUserDto;
-import org.apache.seatunnel.app.domain.request.user.AddUserReq;
-import org.apache.seatunnel.app.domain.request.user.UpdateUserReq;
-import org.apache.seatunnel.app.domain.request.user.UserListReq;
-import org.apache.seatunnel.app.domain.request.user.UserLoginReq;
-import org.apache.seatunnel.app.domain.response.PageInfo;
-import org.apache.seatunnel.app.domain.response.user.AddUserRes;
-import org.apache.seatunnel.app.domain.response.user.UserSimpleInfoRes;
-import org.apache.seatunnel.app.service.IRoleService;
-import org.apache.seatunnel.app.service.IUserService;
-import org.apache.seatunnel.app.utils.PasswordUtils;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.server.common.SeatunnelException;
-
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-import org.springframework.transaction.annotation.Transactional;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-@Component
-public class UserServiceImpl implements IUserService {
-    @Resource
-    private IUserDao userDaoImpl;
-
-    @Resource
-    private IRoleService roleServiceImpl;
-
-    @Value("${user.default.passwordSalt:seatunnel}")
-    private String defaultSalt;
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public AddUserRes add(AddUserReq addReq) {
-        // 1. check duplicate user first
-        userDaoImpl.checkUserExists(addReq.getUsername());
-
-        // 2. add a new user.
-        final UpdateUserDto dto = UpdateUserDto.builder()
-                .id(null)
-                .username(addReq.getUsername())
-                // encryption user's password
-                .password(PasswordUtils.encryptWithSalt(defaultSalt, addReq.getPassword()))
-                .status(addReq.getStatus())
-                .type(addReq.getType())
-                .build();
-
-        final int userId = userDaoImpl.add(dto);
-        final AddUserRes res = new AddUserRes();
-        res.setId(userId);
-
-        // 3. add to role
-        roleServiceImpl.addUserToRole(userId, addReq.getType().intValue());
-        return res;
-    }
-
-    @Override
-    public void update(UpdateUserReq updateReq) {
-        final UpdateUserDto dto = UpdateUserDto.builder()
-                .id(updateReq.getUserId())
-                .username(updateReq.getUsername())
-                // encryption user's password
-                .password(PasswordUtils.encryptWithSalt(defaultSalt, updateReq.getPassword()))
-                .status(updateReq.getStatus())
-                .type(updateReq.getType())
-                .build();
-
-        userDaoImpl.update(dto);
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void delete(int id) {
-        userDaoImpl.delete(id);
-        roleServiceImpl.deleteByUserId(id);
-    }
-
-    @Override
-    public PageInfo<UserSimpleInfoRes> list(UserListReq userListReq) {
-
-        final ListUserDto dto = ListUserDto.builder()
-                .name(userListReq.getName())
-                .build();
-
-        final PageData<User> userPageData = userDaoImpl.list(dto, userListReq.getRealPageNo(), userListReq.getPageSize());
-
-        final List<UserSimpleInfoRes> data = userPageData.getData().stream().map(this::translate).collect(Collectors.toList());
-        final PageInfo<UserSimpleInfoRes> pageInfo = new PageInfo<>();
-        pageInfo.setPageNo(userListReq.getPageNo());
-        pageInfo.setPageSize(userListReq.getPageSize());
-        pageInfo.setData(data);
-        pageInfo.setTotalCount(userPageData.getTotalCount());
-
-        return pageInfo;
-    }
-
-    @Override
-    public void enable(int id) {
-        userDaoImpl.enable(id);
-    }
-
-    @Override
-    public void disable(int id) {
-        userDaoImpl.disable(id);
-    }
-
-    @Override
-    public UserSimpleInfoRes login(UserLoginReq req) {
-
-        final String username = req.getUsername();
-        final String password = PasswordUtils.encryptWithSalt(defaultSalt, req.getPassword());
-
-        final User user = userDaoImpl.checkPassword(username, password);
-        if (Objects.isNull(user)) {
-            throw new SeatunnelException(USERNAME_PASSWORD_NO_MATCHED);
-        }
-        return translate(user);
-    }
-
-    private UserSimpleInfoRes translate(User user) {
-        final UserSimpleInfoRes info = new UserSimpleInfoRes();
-        info.setId(user.getId());
-        info.setStatus(user.getStatus());
-        info.setType(user.getType());
-        info.setCreateTime(user.getCreateTime());
-        info.setUpdateTime(user.getUpdateTime());
-        info.setName(user.getUsername());
-        return info;
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/GlobalExceptionHandler.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/GlobalExceptionHandler.java
deleted file mode 100644
index 307ea9576..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/GlobalExceptionHandler.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.utils;
-
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.server.common.SeatunnelErrorEnum;
-import org.apache.seatunnel.server.common.SeatunnelException;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-import org.springframework.web.bind.annotation.RestControllerAdvice;
-
-import java.util.Optional;
-
-@RestControllerAdvice
-@Slf4j
-public class GlobalExceptionHandler {
-
-    @ExceptionHandler(value = SeatunnelException.class)
-    private Result<String> portalExceptionHandler(SeatunnelException e) {
-        logError(e);
-
-        final SeatunnelException seatunnelException = Optional.ofNullable(e).orElse(SeatunnelException.newInstance(SeatunnelErrorEnum.UNKNOWN));
-
-        final String message = seatunnelException.getMessage();
-        final SeatunnelErrorEnum errorEnum = seatunnelException.getErrorEnum();
-
-        return Result.failure(errorEnum, message);
-    }
-
-    @ExceptionHandler(value = IllegalStateException.class)
-    private Result<String> exceptionHandler(IllegalStateException e) {
-        logError(e);
-        return Result.failure(SeatunnelErrorEnum.ILLEGAL_STATE, e.getMessage());
-    }
-
-    @ExceptionHandler(value = Exception.class)
-    private Result<String> exceptionHandler(Exception e) {
-        logError(e);
-        return Result.failure(SeatunnelErrorEnum.UNKNOWN, e.getMessage());
-    }
-
-    private void logError(Throwable throwable) {
-        log.error(throwable.getMessage(), throwable);
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/Md5Utils.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/Md5Utils.java
deleted file mode 100644
index 781e95a2b..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/Md5Utils.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.utils;
-
-import org.springframework.util.DigestUtils;
-
-import java.nio.charset.StandardCharsets;
-
-public class Md5Utils {
-    private Md5Utils() {
-    }
-
-    public static String toMd5(String origin) {
-        return DigestUtils.md5DigestAsHex(origin.getBytes(StandardCharsets.UTF_8));
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/PasswordUtils.java b/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/PasswordUtils.java
deleted file mode 100644
index 53fcb00c1..000000000
--- a/seatunnel-server/seatunnel-app/src/main/java/org/apache/seatunnel/app/utils/PasswordUtils.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.utils;
-
-import org.springframework.util.DigestUtils;
-
-import javax.validation.constraints.NotBlank;
-
-import java.nio.charset.StandardCharsets;
-
-public class PasswordUtils {
-    public static String encryptWithSalt(@NotBlank String salt, @NotBlank String password){
-        return DigestUtils.md5DigestAsHex(salt.concat(password).getBytes(StandardCharsets.UTF_8));
-    }
-}
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/application.yml b/seatunnel-server/seatunnel-app/src/main/resources/application.yml
deleted file mode 100644
index 1d05098d6..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/application.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-spring:
-  application:
-    name: seatunnel
-  datasource:
-    driver-class-name: com.mysql.jdbc.Driver
-    url: jdbc:mysql://127.0.0.1:3306/seatunnel?useSSL=false&useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true
-    username: root
-    password: 123456
-  mvc:
-    pathmatch:
-      matching-strategy: ant_path_matcher
-ds:
-  script:
-    dir: /dj
-  project:
-    default: test_dj
-  tenant:
-    default: default
-  api:
-    token: 12345678
-    prefix: http://127.0.0.1:12345/dolphinscheduler
-
-jwt:
-  expireTime: 86400
-  secretKey: https://github.com/apache/incubator-seatunnel
-  algorithm: HS256
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/logback-spring.xml b/seatunnel-server/seatunnel-app/src/main/resources/logback-spring.xml
deleted file mode 100644
index eb41353f7..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/logback-spring.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<configuration scan="true" scanPeriod="10 seconds">
-    <springProperty scope="context" name="APP_NAME" source="spring.application.name"/>
-    <property name="APP_LOG_PATH" value="./logs" />
-    <property name="HOST_NAME" value="${HOSTNAME:-UNKNOWN}"/>
-    <property name="TRACE" value="[tr:%X{X-B3-TraceId:-},sp:%X{X-B3-SpanId:-}]"/>
-    <include resource="org/springframework/boot/logging/logback/defaults.xml" />
-
-    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
-        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${APP_NAME} ${HOST_NAME} %p ${TRACE} [%thread] [%C{0}.%M\(\):%L] - %m%n</pattern>
-            <charset>UTF-8</charset>
-        </encoder>
-    </appender>
-
-    <appender name="thirdPartyAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
-        <file>${APP_LOG_PATH}/thirdParty.${APP_NAME}.log</file>
-        <append>true</append>
-        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
-            <FileNamePattern>${APP_LOG_PATH}/thirdParty.${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
-            <MaxHistory>30</MaxHistory>
-            <MaxFileSize>100MB</MaxFileSize>
-        </rollingPolicy>
-        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${APP_NAME} ${HOST_NAME} %p [%thread] [%C{0}.%M\(\):%L] - %m%n</pattern>
-            <charset>UTF-8</charset>
-        </encoder>
-    </appender>
-
-    <logger name="org.apache.seatunnel.app.dal.mapper" level="DEBUG" additivity="false">
-        <appender-ref ref="console" />
-    </logger>
-
-    <logger name="org.springframework" level="INFO" additivity="false">
-        <appender-ref ref="thirdPartyAppender" />
-        <appender-ref ref="console" />
-    </logger>
-
-    <root level="INFO">
-        <appender-ref ref="console" />
-    </root>
-</configuration>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleMapper.xml
deleted file mode 100644
index e1c133dbb..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleMapper.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.RoleMapper">
-  <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.Role">
-    <id column="id" jdbcType="INTEGER" property="id" />
-    <result column="type" jdbcType="INTEGER" property="type" />
-    <result column="role_name" jdbcType="VARCHAR" property="roleName" />
-    <result column="description" jdbcType="VARCHAR" property="description" />
-    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
-    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
-  </resultMap>
-  <sql id="Base_Column_List">
-    id, `type`, `role_name`, `description`, create_time, update_time
-  </sql>
-  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="org.apache.seatunnel.app.dal.entity.Role" useGeneratedKeys="true">
-    insert into `role` (`type`, `role_name`, `description`)
-    values (#{type,jdbcType=INTEGER}, #{roleName,jdbcType=VARCHAR}, #{description,jdbcType=VARCHAR})
-  </insert>
-  <select id="selectByRole" resultMap="BaseResultMap">
-    select
-    <include refid="Base_Column_List" />
-    from `role`
-    where role_name = #{roleName,jdbcType=VARCHAR}
-  </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.xml
deleted file mode 100644
index 27d5132c4..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/RoleUserRelationMapper.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.RoleUserRelationMapper">
-  <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.RoleUserRelation">
-    <id column="id" jdbcType="INTEGER" property="id" />
-    <result column="role_id" jdbcType="INTEGER" property="roleId" />
-    <result column="user_id" jdbcType="INTEGER" property="userId" />
-    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
-    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
-  </resultMap>
-  <sql id="Base_Column_List">
-    id, role_id, user_id, create_time, update_time
-  </sql>
-  <insert id="insert" parameterType="org.apache.seatunnel.app.dal.entity.RoleUserRelation">
-    insert into role_user_relation (id, role_id, user_id)
-    values (#{id,jdbcType=INTEGER}, #{roleId,jdbcType=INTEGER}, #{userId,jdbcType=INTEGER})
-  </insert>
-  <select id="selectByUserIdAndRoleId" resultMap="BaseResultMap">
-    select
-    <include refid="Base_Column_List" />
-    from role_user_relation
-    where role_id = #{roleId,jdbcType=INTEGER}
-    and user_id = #{userId,jdbcType=INTEGER}
-  </select>
-  <delete id="deleteByUserId">
-    delete from role_user_relation
-    where user_id = #{userId,jdbcType=INTEGER}
-  </delete>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.xml
deleted file mode 100644
index 30a6ad933..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/SchedulerConfigMapper.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.SchedulerConfigMapper">
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.SchedulerConfig">
-        <id column="id" jdbcType="INTEGER" property="id"/>
-        <result column="script_id" jdbcType="INTEGER" property="scriptId"/>
-        <result column="trigger_expression" jdbcType="VARCHAR" property="triggerExpression"/>
-        <result column="retry_times" jdbcType="INTEGER" property="retryTimes"/>
-        <result column="retry_interval" jdbcType="INTEGER" property="retryInterval"/>
-        <result column="active_start_time" jdbcType="TIMESTAMP" property="activeStartTime"/>
-        <result column="active_end_time" jdbcType="TIMESTAMP" property="activeEndTime"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-        <result column="creator_id" jdbcType="INTEGER" property="creatorId"/>
-        <result column="update_id" jdbcType="INTEGER" property="updateId"/>
-    </resultMap>
-    <sql id="Base_Column_List">
-        id,
-        script_id,
-        trigger_expression,
-        retry_times,
-        retry_interval,
-        active_start_time,
-        active_end_time,
-        create_time,
-        update_time,
-        creator_id,
-        update_id
-    </sql>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from scheduler_config
-        where id = #{id,jdbcType=INTEGER}
-    </select>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
-        delete
-        from scheduler_config
-        where id = #{id,jdbcType=INTEGER}
-    </delete>
-    <insert id="insert" keyColumn="id" keyProperty="id"
-            parameterType="org.apache.seatunnel.app.dal.entity.SchedulerConfig" useGeneratedKeys="true">
-        insert into scheduler_config (script_id, trigger_expression, retry_times, retry_interval,
-                                      active_start_time, active_end_time, create_time,
-                                      update_time, creator_id, update_id)
-        values (#{scriptId,jdbcType=INTEGER}, #{retryTimes,jdbcType=INTEGER}, #{retryInterval,jdbcType=INTEGER},
-                #{activeStartTime,jdbcType=TIMESTAMP}, #{activeEndTime,jdbcType=TIMESTAMP},
-                #{createTime,jdbcType=TIMESTAMP},
-                #{updateTime,jdbcType=TIMESTAMP}, #{creatorId,jdbcType=INTEGER}, #{updateId,jdbcType=INTEGER})
-    </insert>
-    <select id="selectByScriptId" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from scheduler_config
-        where script_id = #{scriptId,jdbcType=INTEGER}
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.xml
deleted file mode 100644
index c5e28ed67..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptJobApplyMapper.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.ScriptJobApplyMapper">
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.ScriptJobApply">
-        <id column="id" jdbcType="INTEGER" property="id"/>
-        <result column="script_id" jdbcType="INTEGER" property="scriptId"/>
-        <result column="scheduler_config_id" jdbcType="INTEGER" property="schedulerConfigId"/>
-        <result column="job_id" jdbcType="BIGINT" property="jobId"/>
-        <result column="operator_id" jdbcType="INTEGER" property="operatorId"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="Base_Column_List">
-        id,
-        script_id,
-        scheduler_config_id,
-        job_id,
-        operator_id,
-        create_time,
-        update_time
-    </sql>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script_job_apply
-        where id = #{id,jdbcType=INTEGER}
-    </select>
-    <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
-        delete
-        from script_job_apply
-        where id = #{id,jdbcType=INTEGER}
-    </delete>
-    <insert id="insert" parameterType="org.apache.seatunnel.app.dal.entity.ScriptJobApply">
-        insert into script_job_apply (script_id, scheduler_config_id,
-                                      job_id, operator_id)
-        values (#{scriptId,jdbcType=INTEGER}, #{schedulerConfigId,jdbcType=INTEGER},
-                #{jobId,jdbcType=BIGINT}, #{operatorId,jdbcType=INTEGER})
-    </insert>
-    <update id="update">
-        update script_job_apply
-        set script_id           = #{scriptId,jdbcType=INTEGER},
-            scheduler_config_id = #{schedulerConfigId,jdbcType=INTEGER},
-            job_id              = #{jobId},
-            operator_id     = #{operatorId,jdbcType=INTEGER}
-    </update>
-    <select id="selectByScriptId" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script_job_apply
-        where script_id = #{scriptId,jdbcType=INTEGER}
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptMapper.xml
deleted file mode 100644
index c74563b9e..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptMapper.xml
+++ /dev/null
@@ -1,102 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.ScriptMapper">
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.Script">
-        <id column="id" jdbcType="INTEGER" property="id"/>
-        <result column="name" jdbcType="VARCHAR" property="name"/>
-        <result column="type" jdbcType="TINYINT" property="type"/>
-        <result column="status" jdbcType="TINYINT" property="status"/>
-        <result column="content" jdbcType="LONGVARCHAR" property="content"/>
-        <result column="content_md5" jdbcType="VARCHAR" property="contentMd5"/>
-        <result column="creator_id" jdbcType="INTEGER" property="creatorId"/>
-        <result column="mender_id" jdbcType="INTEGER" property="menderId"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="Base_Column_List">
-        id,
-        `name`,
-        `type`,
-        `status`,
-        content,
-        content_md5,
-        creator_id,
-        mender_id,
-        create_time,
-        update_time
-    </sql>
-    <insert id="insert" keyColumn="id" keyProperty="id" parameterType="org.apache.seatunnel.app.dal.entity.Script"
-            useGeneratedKeys="true">
-        insert into `script` (name, type, status, creator_id, mender_id)
-        VALUES (#{name,jdbcType=VARCHAR}, #{type,jdbcType=TINYINT}, #{status,jdbcType=TINYINT},
-                #{creatorId,jdbcType=INTEGER},
-                #{menderId,jdbcType=INTEGER})
-    </insert>
-    <update id="updateContentByPrimaryKey">
-        update `script`
-        set `content`     = #{content,jdbcType=VARCHAR},
-            `content_md5` = #{contentMd5,jdbcType=VARCHAR},
-            `mender_id`   = #{menderId, jdbcType=INTEGER}
-        where id = #{id,jdbcType=INTEGER}
-    </update>
-    <update id="updateStatus">
-        update `script`
-        set `status` = #{code,jdbcType=TINYINT}
-        where id = #{id,jdbcType=INTEGER}
-    </update>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script
-        where id = #{id,jdbcType=INTEGER}
-    </select>
-    <select id="selectBySelectiveAndPage" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script
-        <where>
-            <if test="script.name != null and script.name != ''">
-                and `name` = #{script.name,jdbcType=VARCHAR}
-            </if>
-            <if test="script.status != null">
-                and `status` = #{script.status,jdbcType=TINYINT}
-            </if>
-        </where>
-        limit #{start,jdbcType=INTEGER}, #{offset,jdbcType=INTEGER}
-    </select>
-    <select id="selectByNameAndCreatorAndStatusNotEq" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script
-        where `name` = #{name,jdbcType=VARCHAR}
-          and `creator_id` = #{creatorId,jdbcType=INTEGER}
-          and `status` != #{status,jdbcType=TINYINT}
-    </select>
-    <select id="countBySelectiveAndPage" resultType="java.lang.Integer">
-    select
-        count(1)
-        from script
-        <where>
-            <if test="script.name != null and script.name != ''">
-                and `name` = #{script.name,jdbcType=VARCHAR}
-            </if>
-            <if test="script.status != null">
-                and `status` = #{script.status,jdbcType=TINYINT}
-            </if>
-        </where>
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.xml
deleted file mode 100644
index 6971fc8cd..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/ScriptParamMapper.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.ScriptParamMapper">
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.ScriptParam">
-        <id column="id" jdbcType="INTEGER" property="id"/>
-        <result column="script_id" jdbcType="INTEGER" property="scriptId"/>
-        <result column="key" jdbcType="VARCHAR" property="key"/>
-        <result column="value" jdbcType="VARCHAR" property="value"/>
-        <result column="status" jdbcType="TINYINT" property="status"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="Base_Column_List">
-        id,
-        script_id,
-        `key`,
-        `value`,
-        `status`,
-        create_time,
-        update_time
-    </sql>
-    <insert id="batchInsert" parameterType="map">
-        insert into `script_param` (`script_id`, `key`, `value`, `status`)
-                values
-        <foreach collection="params" item="item" separator=",">
-            (#{item.scriptId,jdbcType=INTEGER}, #{item.key,jdbcType=VARCHAR}, #{item.value,jdbcType=VARCHAR},
-             #{item.status,jdbcType=TINYINT})
-        </foreach>
-    </insert>
-    <update id="updateStatusByScriptId">
-        update `script_param`
-        set `status` = #{code, jdbcType=TINYINT}
-        where `script_id` = #{scriptId, jdbcType=INTEGER}
-    </update>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from script_param
-        where id = #{id,jdbcType=INTEGER}
-    </select>
-    <select id="selectByScriptId" resultType="org.apache.seatunnel.app.dal.entity.ScriptParam">
-        select
-        <include refid="Base_Column_List"/>
-        from script_param
-        where script_id = #{scriptId,jdbcType=INTEGER}
-        and `status` != 1
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.xml
deleted file mode 100644
index f8f944421..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserLoginLogMapper.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper
-        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.UserLoginLogMapper">
-
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.UserLoginLog">
-        <id property="id" column="id" jdbcType="BIGINT"/>
-        <result property="userId" column="user_id" jdbcType="INTEGER"/>
-        <result property="token" column="token" jdbcType="VARCHAR"/>
-        <result property="tokenStatus" column="token_status" jdbcType="BOOLEAN"/>
-        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
-        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
-    </resultMap>
-
-    <sql id="Base_Column_List">
-        id,
-        user_id,
-        token,
-        token_status,
-        create_time,
-        update_time
-    </sql>
-
-    <insert id="insert" keyColumn="id" keyProperty="id" parameterType="org.apache.seatunnel.app.dal.entity.UserLoginLog"
-            useGeneratedKeys="true">
-        insert into `user_login_log` (user_id, token, `token_status`)
-        VALUES (#{userId,jdbcType=INTEGER}, #{token,jdbcType=VARCHAR}, #{tokenStatus,jdbcType=BOOLEAN})
-    </insert>
-
-    <update id="updateStatus">
-        update user_login_log
-        set token_status = #{enable,jdbcType=BOOLEAN}
-        where user_id = #{userId,jdbcType=INTEGER} and token_status != #{enable}
-    </update>
-    <select id="checkLastTokenEnable" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from user_login_log
-        where user_id = #{userId,jdbcType=INTEGER}
-        order by id desc
-        limit 1
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserMapper.xml b/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserMapper.xml
deleted file mode 100644
index 1c22238b8..000000000
--- a/seatunnel-server/seatunnel-app/src/main/resources/org/apache/seatunnel/app/dal/mapper/UserMapper.xml
+++ /dev/null
@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.apache.seatunnel.app.dal.mapper.UserMapper">
-    <resultMap id="BaseResultMap" type="org.apache.seatunnel.app.dal.entity.User">
-        <id column="id" jdbcType="INTEGER" property="id"/>
-        <result column="username" jdbcType="VARCHAR" property="username"/>
-        <result column="password" jdbcType="VARCHAR" property="password"/>
-        <result column="status" jdbcType="TINYINT" property="status"/>
-        <result column="type" jdbcType="TINYINT" property="type"/>
-        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
-        <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
-    </resultMap>
-    <sql id="Base_Column_List">
-        id,
-        username,
-        `password`,
-        `status`,
-        `type`,
-        create_time,
-        update_time
-    </sql>
-    <insert id="insert" keyColumn="id" keyProperty="id" parameterType="org.apache.seatunnel.app.dal.entity.User"
-            useGeneratedKeys="true">
-        insert into `user` (username, password, status, type)
-                value (#{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, #{status,jdbcType=TINYINT},
-                       #{type,jdbcType=TINYINT})
-    </insert>
-    <update id="updateByPrimaryKey">
-        update `user`
-        set username = #{username,jdbcType=VARCHAR},
-            password = #{password,jdbcType=VARCHAR},
-            status   = #{status,jdbcType=TINYINT},
-            type     = #{type,jdbcType=TINYINT}
-        where id = #{id,jdbcType=INTEGER}
-    </update>
-    <update id="updateStatus">
-        update `user`
-        set status = #{status,jdbcType=TINYINT}
-        where id = #{id,jdbcType=INTEGER}
-    </update>
-    <delete id="deleteByPrimaryKey">
-        delete
-        from `user`
-        where id = #{id,jdbcType=INTEGER}
-    </delete>
-    <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from `user`
-        where id = #{id,jdbcType=INTEGER}
-    </select>
-    <select id="selectBySelectiveAndPage" resultType="org.apache.seatunnel.app.dal.entity.User">
-        select
-        <include refid="Base_Column_List"/>
-        from `user`
-        <where>
-            <if test="user.username != null and user.username != ''">
-                and `username` = #{user.username,jdbcType=VARCHAR}
-            </if>
-        </where>
-        limit #{start,jdbcType=INTEGER}, #{offset,jdbcType=INTEGER}
-    </select>
-    <select id="selectByName" resultType="org.apache.seatunnel.app.dal.entity.User">
-        select
-        <include refid="Base_Column_List"/>
-        from `user`
-        where username = #{username,jdbcType=VARCHAR}
-    </select>
-    <select id="countBySelective" resultType="java.lang.Integer">
-    select
-        count(1)
-        from `user`
-        <where>
-            <if test="user.username != null and user.username != ''">
-                and `username` = #{user.username,jdbcType=VARCHAR}
-            </if>
-        </where>
-    </select>
-    <select id="selectByNameAndPasswd" resultType="org.apache.seatunnel.app.dal.entity.User">
-        select
-        <include refid="Base_Column_List"/>
-        from `user`
-        where username = #{username,jdbcType=VARCHAR} and password = #{password,jdbcType=VARCHAR}
-    </select>
-</mapper>
diff --git a/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/WebMvcApplicationTest.java b/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/WebMvcApplicationTest.java
deleted file mode 100644
index 97526ca9c..000000000
--- a/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/WebMvcApplicationTest.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.boot.web.server.LocalServerPort;
-import org.springframework.test.web.servlet.MockMvc;
-
-@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
-@AutoConfigureMockMvc
-public class WebMvcApplicationTest {
-
-    @LocalServerPort
-    protected int port;
-
-    @Autowired
-    protected MockMvc mockMvc;
-
-}
diff --git a/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/controller/UserControllerTest.java b/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/controller/UserControllerTest.java
deleted file mode 100644
index 4b1b9116d..000000000
--- a/seatunnel-server/seatunnel-app/src/test/java/org/apache/seatunnel/app/controller/UserControllerTest.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.app.controller;
-
-import static org.mockito.Mockito.when;
-import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
-import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
-
-import org.apache.seatunnel.app.WebMvcApplicationTest;
-import org.apache.seatunnel.app.common.Result;
-import org.apache.seatunnel.app.dal.dao.impl.UserDaoImpl;
-import org.apache.seatunnel.app.domain.request.user.AddUserReq;
-import org.apache.seatunnel.app.domain.response.user.AddUserRes;
-import org.apache.seatunnel.common.utils.JsonUtils;
-
-import com.fasterxml.jackson.core.type.TypeReference;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
-import org.mockito.Mockito;
-import org.springframework.boot.test.mock.mockito.MockBean;
-import org.springframework.http.MediaType;
-import org.springframework.test.web.servlet.MvcResult;
-import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
-
-@Disabled("todo:this test is not working, waiting fix")
-public class UserControllerTest extends WebMvcApplicationTest {
-
-    @MockBean
-    private UserDaoImpl userDaoImpl;
-
-    @Test
-    public void testAdd() throws Exception {
-        AddUserReq requestDTO = new AddUserReq();
-        requestDTO.setUsername("admin");
-        requestDTO.setPassword("123456");
-        requestDTO.setStatus(new Byte("1"));
-        requestDTO.setType(new Byte("1"));
-        String url = "/api/v1/user/user";
-        when(this.userDaoImpl.add(Mockito.any())).thenReturn(1);
-        MvcResult mvcResult = mockMvc.perform(post(url).contentType(MediaType.APPLICATION_JSON).content(JsonUtils.toJsonString(requestDTO)))
-                .andExpect(status().isOk())
-                .andDo(MockMvcResultHandlers.print())
-                .andReturn();
-        String result = mvcResult.getResponse().getContentAsString();
-        Result<AddUserRes> data = JsonUtils.parseObject(result, new TypeReference<Result<AddUserRes>>() {
-        });
-        Assertions.assertTrue(data.isSuccess());
-        Assertions.assertNotNull(data.getData());
-    }
-
-}
diff --git a/seatunnel-server/seatunnel-scheduler/pom.xml b/seatunnel-server/seatunnel-scheduler/pom.xml
deleted file mode 100644
index 682437b8a..000000000
--- a/seatunnel-server/seatunnel-scheduler/pom.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel-server</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-scheduler</artifactId>
-    <packaging>pom</packaging>
-    <modules>
-        <module>seatunnel-scheduler-dolphinscheduler</module>
-    </modules>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.seatunnel</groupId>
-            <artifactId>seatunnel-spi</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/pom.xml b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/pom.xml
deleted file mode 100644
index 1a283d7ea..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/pom.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel-scheduler</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-scheduler-dolphinscheduler</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-aop</artifactId>
-            <version>${spring.version}</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.springframework</groupId>
-            <artifactId>spring-context</artifactId>
-            <version>${spring.version}</version>
-            <scope>provided</scope>
-        </dependency>
-        <!--      http      -->
-        <dependency>
-            <groupId>org.jsoup</groupId>
-            <artifactId>jsoup</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.commons</groupId>
-            <artifactId>commons-collections4</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>javax.annotation</groupId>
-            <artifactId>javax.annotation-api</artifactId>
-            <version>${javax.annotation-api.version}</version>
-        </dependency>
-    </dependencies>
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/ExecuteTypeEnum.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/ExecuteTypeEnum.java
deleted file mode 100644
index f8b77a877..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/ExecuteTypeEnum.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler;
-
-public enum ExecuteTypeEnum {
-    NONE,
-    REPEAT_RUNNING,
-    RECOVER_SUSPENDED_PROCESS,
-    START_FAILURE_TASK_PROCESS,
-    STOP,
-    PAUSE
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/IDolphinschedulerService.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/IDolphinschedulerService.java
deleted file mode 100644
index a460ec275..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/IDolphinschedulerService.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler;
-
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListTaskInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ResourceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.SchedulerDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.StartProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.UpdateProcessDefinitionDto;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceLogDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobDto;
-
-import java.util.List;
-
-public interface IDolphinschedulerService {
-
-    ProcessDefinitionDto createOrUpdateProcessDefinition(UpdateProcessDefinitionDto dto);
-
-    PageData<ProcessDefinitionDto> listProcessDefinition(ListProcessDefinitionDto dto);
-
-    ProcessDefinitionDto fetchProcessDefinitionByName(String processDefinitionName);
-
-    void startProcessDefinition(StartProcessDefinitionDto dto);
-
-    void updateProcessDefinitionState(long processDefinitionCode, String processDefinitionName, String state);
-
-    SchedulerDto createOrUpdateSchedule(JobDto dto);
-
-    List<SchedulerDto> listSchedule(long processDefinitionCode);
-
-    void scheduleOnline(int scheduleId);
-
-    void scheduleOffline(int scheduleId);
-
-    List<Long> genTaskCodes(long projectCode, int num);
-
-    ResourceDto createOrUpdateScriptContent(String resourceName, String content);
-
-    PageData<TaskInstanceDto> listTaskInstance(ListTaskInstanceDto dto);
-
-    void deleteProcessDefinition(long code);
-
-    PageData<ProcessInstanceDto> listProcessInstance(ListProcessInstanceDto dto);
-
-    InstanceLogDto queryInstanceLog(long instanceId);
-
-    void killProcessInstance(long processInstanceId);
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/constants/DolphinschedulerConstants.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/constants/DolphinschedulerConstants.java
deleted file mode 100644
index e8f886f15..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/constants/DolphinschedulerConstants.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.constants;
-
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-public class DolphinschedulerConstants {
-
-    /**
-     * api url
-     */
-    public static final String QUERY_PROJECT_LIST_PAGING = "/projects";
-    public static final String QUERY_LIST_PAGING = "/projects/%s/process-definition";
-    public static final String GEN_TASK_CODE_LIST = "/projects/%s/task-definition/gen-task-codes";
-    public static final String VERIFY_RESOURCE_NAME = "/resources/verify-name";
-    public static final String QUERY_RESOURCE = "/resources/%s";
-    public static final String ONLINE_CREATE_RESOURCE = "/resources/online-create";
-    public static final String UPDATE_CONTENT = "/resources/%s/update-content";
-    public static final String LOG_DETAIL = "/log/detail";
-    public static final String RELEASE = "/projects/%s/process-definition/%s/release";
-    public static final String START_PROCESS_INSTANCE = "/projects/%s/executors/start-process-instance";
-    public static final String QUERY_PROCESS_DEFINITION_BY_NAME = "/projects/%s/process-definition/query-by-name";
-    public static final String QUERY_TASK_LIST_PAGING = "/projects/%s/task-instances";
-    public static final String CREATE_PROCESS_DEFINITION = "/projects/%s/process-definition/";
-    public static final String CREATE_SCHEDULE = "/projects/%s/schedules/";
-    public static final String QUERY_SCHEDULE_LIST_PAGING = "/projects/%s/schedules";
-    public static final String SCHEDULE_ONLINE = "/projects/%s/schedules/%s/online";
-    public static final String SCHEDULE_OFFLINE = "/projects/%s/schedules/%s/offline";
-    public static final String DELETE_PROCESS_DEFINITION = "/projects/%s/process-definition/%s";
-    public static final String PROCESS_INSTANCE_LIST = "/projects/%s/process-instances";
-    public static final String EXECUTE = "/projects/%s/executors/execute";
-
-    /**
-     * request param
-     */
-    public static final String TOKEN = "token";
-    public static final String SEARCH_VAL = "searchVal";
-    public static final String PAGE_SIZE = "pageSize";
-    public static final int PAGE_SIZE_DEFAULT = 10;
-    public static final int PAGE_SIZE_MIN = 1;
-    public static final String PAGE_NO = "pageNo";
-    public static final int PAGE_NO_DEFAULT = 1;
-    public static final String GEN_NUM = "genNum";
-    public static final int GEN_NUM_DEFAULT = 1;
-    public static final String RESOURCE_SEPARATOR = "/";
-    public static final String FULL_NAME = "fullName";
-    public static final String RESOURCE_TYPE = "type";
-    public static final String RESOURCE_TYPE_FILE = "FILE";
-    public static final String RESOURCE_TYPE_FILE_SUFFIX = "suffix";
-    public static final String RESOURCE_TYPE_FILE_SUFFIX_DEFAULT = "conf";
-    public static final String RESOURCE_TYPE_FILE_CONTENT = "content";
-    public static final String RESOURCE_TYPE_UDF = "UDF";
-    public static final int RESOURCE_ID_DEFAULT = 0;
-    public static final String RESOURCE_ID = "id";
-    public static final String TASK_INSTANCE_ID = "taskInstanceId";
-    public static final String LOG_SKIP_LINE_NUM = "skipLineNum";
-    public static final String LOG_LIMIT_NUM = "limit";
-    public static final String PROCESS_DEFINITION_NAME = "name";
-    public static final String RELEASE_STATE = "releaseState";
-    public static final String RELEASE_STATE_ONLINE = "ONLINE";
-    public static final String RELEASE_STATE_OFFLINE = "OFFLINE";
-    public static final String FAILURE_STRATEGY = "failureStrategy";
-    public static final String FAILURE_STRATEGY_DEFAULT = "CONTINUE";
-    public static final String WORKER_GROUP = "workerGroup";
-    public static final String WORKER_GROUP_DEFAULT = "default";
-    public static final String WARNING_TYPE = "warningType";
-    public static final String WARNING_TYPE_DEFAULT = "NONE";
-    public static final String WARNING_GROUP_ID = "warningGroupId";
-    public static final int WARNING_GROUP_ID_DEFAULT = 0;
-    public static final String TASK_DEPEND_TYPE_DEFAULT = "TASK_POST";
-    public static final String RUN_MODE_DEFAULT = "RUN_MODE_SERIAL";
-    public static final String RUN_MODE_PARALLEL = "RUN_MODE_PARALLEL";
-    public static final String PROCESS_INSTANCE_PRIORITY = "processInstancePriority";
-    public static final String PROCESS_INSTANCE_PRIORITY_DEFAULT = "MEDIUM";
-    public static final int DRY_RUN = 0;
-    public static final String PROCESS_DEFINITION = "processDefinition";
-    public static final String PROCESS_INSTANCE_NAME = "processInstanceName";
-    public static final String LOCATIONS = "locations";
-    public static final String LOCATIONS_X = "x";
-    public static final int LOCATIONS_X_DEFAULT = 200;
-    public static final String LOCATIONS_Y = "y";
-    public static final int LOCATIONS_Y_DEFAULT = 200;
-    public static final String TASK_CODE = "taskCode";
-    public static final String TASK_DEFINITION_JSON = "taskDefinitionJson";
-    public static final String TASK_RELATION_JSON = "taskRelationJson";
-    public static final String TENANT_CODE = "tenantCode";
-    public static final String TASK_RELATION_JSON_NAME = "name";
-    public static final String PRE_TASK_CODE = "preTaskCode";
-    public static final long PRE_TASK_CODE_DEFAULT = 0;
-    public static final String PRE_TASK_VERSION = "preTaskVersion";
-    public static final int PRE_TASK_VERSION_DEFAULT = 0;
-    public static final String POST_TASK_CODE = "postTaskCode";
-    public static final String POST_TASK_VERSION = "postTaskVersion";
-    public static final int POST_TASK_VERSION_DEFAULT = 1;
-    public static final String CONDITION_TYPE = "conditionType";
-    public static final int CONDITION_TYPE_DEFAULT = 0;
-    public static final String CONDITION_PARAMS = "conditionParams";
-    public static final String TASK_DEFINITION_JSON_CODE = "code";
-    public static final String TASK_DEFINITION_JSON_NAME = "name";
-    public static final String VERSION = "version";
-    public static final int VERSION_DEFAULT = 1;
-    public static final String DESCRIPTION = "description";
-    public static final String DESCRIPTION_DEFAULT = "";
-    public static final String DELAY_TIME = "delayTime";
-    public static final int DELAY_TIME_DEFAULT = 0;
-    public static final String TASK_TYPE = "taskType";
-    public static final String TASK_TYPE_DEFAULT = "SHELL";
-    public static final String TASK_PARAMS = "taskParams";
-    public static final String RESOURCE_LIST = "resourceList";
-    public static final String LOCAL_PARAMS = "localParams";
-    public static final String LOCAL_PARAMS_PROP = "prop";
-    public static final String LOCAL_PARAMS_DIRECT = "direct";
-    public static final String LOCAL_PARAMS_DIRECT_DEFAULT = "IN";
-    public static final String LOCAL_PARAMS_TYPE = "type";
-    public static final String LOCAL_PARAMS_TYPE_DEFAULT = "VARCHAR";
-    public static final String LOCAL_PARAMS_VALUE = "value";
-    public static final String RAW_SCRIPT = "rawScript";
-    public static final String DEPENDENCE = "dependence";
-    public static final Map<String, Object> DEPENDENCE_DEFAULT = Collections.emptyMap();
-    public static final String CONDITION_RESULT = "conditionResult";
-    public static final String SUCCESS_NODE = "successNode";
-    public static final List<Object> SUCCESS_NODE_DEFAULT = Collections.emptyList();
-    public static final String FAILED_NODE = "failedNode";
-    public static final List<Object> FAILED_NODE_DEFAULT = Collections.emptyList();
-    public static final String WAIT_START_TIMEOUT = "waitStartTimeout";
-    public static final int WAIT_START_TIMEOUT_DEFAULT = 0;
-    public static final String SWITCH_RESULT = "switchResult";
-    public static final int SWITCH_RESULT_DEFAULT = 0;
-    public static final String FLAG = "flag";
-    public static final String FLAG_DEFAULT = "YES";
-    public static final String TASK_PRIORITY = "taskPriority";
-    public static final String TASK_PRIORITY_DEFAULT = "MEDIUM";
-    public static final String FAIL_RETRY_TIMES = "failRetryTimes";
-    public static final String FAIL_RETRY_INTERVAL = "failRetryInterval";
-    public static final String TIMEOUT_FLAG = "timeoutFlag";
-    public static final String TIMEOUT_FLAG_DEFAULT = "CLOSE";
-    public static final String TIMEOUT_NOTIFY_STRATEGY = "timeoutNotifyStrategy";
-    public static final String TIMEOUT_NOTIFY_STRATEGY_DEFAULT = "WARN";
-    public static final String TIMEOUT = "timeout";
-    public static final int TIMEOUT_DEFAULT = 0;
-    public static final String ENVIRONMENT_CODE = "environmentCode";
-    public static final int ENVIRONMENT_CODE_DEFAULT = -1;
-    public static final String PROCESS_DEFINITION_CODE = "processDefinitionCode";
-    public static final String START_TIME = "startTime";
-    public static final String END_TIME = "endTime";
-    public static final String CRONTAB = "crontab";
-    public static final String TIMEZONE_ID = "timezoneId";
-    public static final String TIMEZONE_ID_DEFAULT = "Asia/Shanghai";
-    public static final String SCHEDULE = "schedule";
-    public static final String SCHEDULE_ID = "id";
-    public static final String DEFAULT_FILE_SUFFIX = ".conf";
-    public static final String EXEC_TYPE_DEFAULT = "START_PROCESS";
-    public static final String EXEC_TYPE_COMPLEMENT = "COMPLEMENT_DATA";
-    public static final String DEPENDENT_MODE_DEFAULT = "OFF_MODE";
-    public static final String PROCESS_INSTANCE_ID = "processInstanceId";
-    public static final String EXECUTE_TYPE = "executeType";
-    public static final int LOG_SKIP_LINE_NUM_DEFAULT = 0;
-    public static final int LOG_LIMIT_NUM_DEFAULT = Integer.MAX_VALUE;
-
-    /**
-     * response param
-     */
-    public static final String DATA = "data";
-    public static final String DATA_TOTAL_LIST = "totalList";
-    public static final String DATA_TOTAL = "total";
-    public static final String CODE = "code";
-    public static final int CODE_SUCCESS = 0;
-    public static final String MSG = "msg";
-    public static final String LOG_MESSAGE = "message";
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/BaseListDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/BaseListDto.java
deleted file mode 100644
index 844e9ab83..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/BaseListDto.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Data;
-
-@Data
-public class BaseListDto {
-    protected String name;
-    protected int pageNo;
-    protected int pageSize;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ConditionResult.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ConditionResult.java
deleted file mode 100644
index 629b2be9d..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ConditionResult.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-import java.util.List;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class ConditionResult {
-    private List<Object> successNode;
-    private List<Object> failedNode;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessDefinitionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessDefinitionDto.java
deleted file mode 100644
index 19f293aff..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessDefinitionDto.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Data;
-
-@Data
-public class ListProcessDefinitionDto extends BaseListDto{
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessInstanceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessInstanceDto.java
deleted file mode 100644
index 3cef3d5fa..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListProcessInstanceDto.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Data;
-
-@Data
-public class ListProcessInstanceDto extends BaseListDto{
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListTaskInstanceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListTaskInstanceDto.java
deleted file mode 100644
index 27e78a85b..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ListTaskInstanceDto.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Data;
-
-@Data
-public class ListTaskInstanceDto extends BaseListDto{
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocalParam.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocalParam.java
deleted file mode 100644
index 4596d02fb..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocalParam.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class LocalParam {
-    private String prop;
-    private String direct;
-    private String type;
-    private Object value;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocationDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocationDto.java
deleted file mode 100644
index 33fa65389..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/LocationDto.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class LocationDto {
-    private Long taskCode;
-    private int x;
-    private int y;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/OnlineCreateResourceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/OnlineCreateResourceDto.java
deleted file mode 100644
index acd909b73..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/OnlineCreateResourceDto.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.google.common.collect.Maps;
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Map;
-
-@Builder
-@Data
-public class OnlineCreateResourceDto {
-    private String type;
-    private int pid;
-    private String currentDir;
-    private String fileName;
-    private String suffix;
-    private String content;
-
-    public Map<String, Object> toMap() {
-        final Map<String, Object> map = Maps.newHashMap();
-        map.put("type", type);
-        map.put("pid", pid);
-        map.put("currentDir", currentDir);
-        map.put("fileName", fileName);
-        map.put("suffix", suffix);
-        map.put("content", content);
-        return map;
-    }
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessDefinitionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessDefinitionDto.java
deleted file mode 100644
index 58be7eb05..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessDefinitionDto.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import static org.apache.seatunnel.server.common.DateUtils.DEFAULT_DATETIME_FORMAT;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class ProcessDefinitionDto {
-    private int id;
-    private long code;
-    private String name;
-    private String releaseState;
-    private long projectCode;
-    private String description;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date createTime;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date updateTime;
-    private String username;
-    private String projectName;
-    private String locations;
-    private String scheduleReleaseState;
-    private int timeout;
-    private int tenantId;
-    private String tenantCode;
-    private String modifyBy;
-    private int warningGroupId;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessInstanceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessInstanceDto.java
deleted file mode 100644
index 9cdcafac4..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProcessInstanceDto.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import static org.apache.seatunnel.server.common.DateUtils.DEFAULT_DATETIME_FORMAT;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class ProcessInstanceDto {
-    private int id;
-    private long processDefinitionCode;
-    private int processDefinitionVersion;
-    private String state;
-    private String recovery;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date startTime;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date endTime;
-    private int runTimes;
-    private String name;
-    private String host;
-    private String processDefinition;
-    private String commandType;
-    private String commandParam;
-    private String taskDependType;
-    private int maxTryTimes;
-    private String failureStrategy;
-    private String warningType;
-    private String warningGroupId;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date scheduleTime;
-    private String commandStartTime;
-    private String globalParams;
-    private String dagData;
-    private int executorId;
-    private String executorName;
-    private String tenantCode;
-    private String queue;
-    private String isSubProcess;
-    private String locations;
-    private String historyCmd;
-    private String dependenceScheduleTimes;
-    private String duration;
-    private String processInstancePriority;
-    private String workerGroup;
-    private String environmentCode;
-    private int timeout;
-    private int tenantId;
-    private String varPool;
-    private int nextProcessInstanceId;
-    private int dryRun;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date restartTime;
-    private String cmdTypeIfComplement;
-    private boolean complementData;
-    private boolean blocked;
-    private boolean processInstanceStop;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProjectDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProjectDto.java
deleted file mode 100644
index edcf1998b..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ProjectDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class ProjectDto {
-    private long code;
-    private String name;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ResourceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ResourceDto.java
deleted file mode 100644
index 995e981c4..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/ResourceDto.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true, value = {"pid"})
-public class ResourceDto {
-    private int id;
-    private int pid;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/SchedulerDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/SchedulerDto.java
deleted file mode 100644
index acc660072..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/SchedulerDto.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import static org.apache.seatunnel.server.common.DateUtils.DEFAULT_DATETIME_FORMAT;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-public class SchedulerDto {
-    private int id;
-    private long processDefinitionCode;
-    private String processDefinitionName;
-    private String projectName;
-    private String definitionDescription;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date startTime;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date endTime;
-    private String timezoneId;
-    private String crontab;
-    private String failureStrategy;
-    private String warningType;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date createTime;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date updateTime;
-    private int userId;
-    private String userName;
-    private String releaseState;
-    private int warningGroupId;
-    private String processInstancePriority;
-    private String workerGroup;
-    private int environmentCode;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/StartProcessDefinitionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/StartProcessDefinitionDto.java
deleted file mode 100644
index 81e6d7579..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/StartProcessDefinitionDto.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.google.common.collect.Maps;
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Map;
-
-@Builder
-@Data
-public class StartProcessDefinitionDto {
-    private long processDefinitionCode;
-    private String failureStrategy;
-    private String warningType;
-    private int warningGroupId;
-    private String taskDependType;
-    private String runMode;
-    private String processInstancePriority;
-    private String workerGroup;
-    private int dryRun;
-    private String scheduleTime;
-    private String execType;
-    private String dependentMode;
-    private Integer expectedParallelismNumber;
-
-    public Map<String, String> toMap() {
-        final Map<String, String> map = Maps.newHashMap();
-        map.put("processDefinitionCode", String.valueOf(processDefinitionCode));
-        map.put("failureStrategy", failureStrategy);
-        map.put("warningType", warningType);
-        map.put("warningGroupId", String.valueOf(warningGroupId));
-        map.put("taskDependType", taskDependType);
-        map.put("runMode", runMode);
-        map.put("processInstancePriority", processInstancePriority);
-        map.put("workerGroup", workerGroup);
-        map.put("dryRun", String.valueOf(dryRun));
-        map.put("scheduleTime", scheduleTime);
-        map.put("execType", execType);
-        map.put("dependentMode", dependentMode);
-        map.put("expectedParallelismNumber", String.valueOf(expectedParallelismNumber));
-        return map;
-    }
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDefinitionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDefinitionDto.java
deleted file mode 100644
index c0b02569e..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDefinitionDto.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class TaskDefinitionDto {
-    private Long code;
-    private String name;
-    private String description;
-    private String taskType;
-    private TaskParamDto taskParams;
-    private String flag;
-    private String taskPriority;
-    private String workerGroup;
-    private int failRetryTimes;
-    private int failRetryInterval;
-    private String timeoutFlag;
-    private String timeoutNotifyStrategy;
-    private int timeout;
-    private int delayTime;
-    private int environmentCode;
-    private int version;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDescriptionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDescriptionDto.java
deleted file mode 100644
index 1dc971611..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskDescriptionDto.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Map;
-
-@Data
-@Builder
-public class TaskDescriptionDto {
-    private String name;
-    private String executeScript;
-    private String content;
-    private Map<String, Object> params;
-    private int retryInterval;
-    private int retryTimes;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskInstanceDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskInstanceDto.java
deleted file mode 100644
index c036df943..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskInstanceDto.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import static org.apache.seatunnel.server.common.DateUtils.DEFAULT_DATETIME_FORMAT;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class TaskInstanceDto {
-    private boolean taskComplete;
-    private boolean firstRun;
-    private int dryRun;
-    private String flag;
-    private long environmentCode;
-    private String processInstance;
-    private int pid;
-    private String taskParams;
-    private String duration;
-    private String taskType;
-    private long taskCode;
-    private String taskInstancePriority;
-    private String host;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date startTime;
-    private int id;
-    private String state;
-    private String workerGroup;
-    private String processInstancePriority;
-    private int processInstanceId;
-    private int executorId;
-    private String firstSubmitTime;
-    private String resources;
-    private int maxRetryTimes;
-    private int retryTimes;
-    private String executorName;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date submitTime;
-    private String name;
-    private int retryInterval;
-    @JsonFormat(pattern = DEFAULT_DATETIME_FORMAT)
-    private Date endTime;
-    private String processInstanceName;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskParamDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskParamDto.java
deleted file mode 100644
index 36ab04ee3..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskParamDto.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-import java.util.List;
-import java.util.Map;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class TaskParamDto {
-    private List<ResourceDto> resourceList;
-    private List<LocalParam> localParams;
-    private String rawScript;
-    private Map<String, Object> dependence;
-    private ConditionResult conditionResult;
-    private int waitStartTimeout;
-    private int switchResult;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskRelationDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskRelationDto.java
deleted file mode 100644
index c0c80b228..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/TaskRelationDto.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import lombok.Data;
-
-@Data
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class TaskRelationDto {
-    private String name;
-    private long preTaskCode;
-    private int preTaskVersion;
-    private long postTaskCode;
-    private long postTaskVersion;
-    private int conditionType;
-    private String conditionParams;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/UpdateProcessDefinitionDto.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/UpdateProcessDefinitionDto.java
deleted file mode 100644
index 1486e4464..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/dto/UpdateProcessDefinitionDto.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.dto;
-
-import lombok.Builder;
-import lombok.Data;
-
-import java.util.Date;
-
-@Data
-@Builder
-public class UpdateProcessDefinitionDto {
-    private Long processDefinitionCode;
-    private String name;
-    private Date startTime;
-    private Date endTime;
-    private String cronExpression;
-    private TaskDescriptionDto taskDescriptionDto;
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/DolphinschedulerServiceImpl.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/DolphinschedulerServiceImpl.java
deleted file mode 100644
index 3cca66fec..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/DolphinschedulerServiceImpl.java
+++ /dev/null
@@ -1,679 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.impl;
-
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CODE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CODE_SUCCESS;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CONDITION_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CREATE_PROCESS_DEFINITION;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CREATE_SCHEDULE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.CRONTAB;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DATA;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DATA_TOTAL;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DATA_TOTAL_LIST;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DEFAULT_FILE_SUFFIX;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DELAY_TIME_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DELETE_PROCESS_DEFINITION;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DEPENDENCE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DESCRIPTION_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.END_TIME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.ENVIRONMENT_CODE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.ENVIRONMENT_CODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.EXECUTE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.EXECUTE_TYPE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FAILED_NODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FAILURE_STRATEGY;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FAILURE_STRATEGY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FLAG_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FULL_NAME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.GEN_NUM;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.GEN_NUM_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.GEN_TASK_CODE_LIST;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOCAL_PARAMS_DIRECT_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOCAL_PARAMS_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOCATIONS;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOCATIONS_X_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOCATIONS_Y_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_DETAIL;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_LIMIT_NUM;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_LIMIT_NUM_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_MESSAGE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_SKIP_LINE_NUM;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.LOG_SKIP_LINE_NUM_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.MSG;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.ONLINE_CREATE_RESOURCE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_NO;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_NO_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_SIZE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_SIZE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.POST_TASK_VERSION_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PRE_TASK_CODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PRE_TASK_VERSION_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_DEFINITION;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_DEFINITION_CODE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_DEFINITION_NAME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_LIST;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_NAME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_PRIORITY;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_PRIORITY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_LIST_PAGING;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_PROCESS_DEFINITION_BY_NAME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_PROJECT_LIST_PAGING;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_RESOURCE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_SCHEDULE_LIST_PAGING;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.QUERY_TASK_LIST_PAGING;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RELEASE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RELEASE_STATE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RELEASE_STATE_OFFLINE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_ID_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_SEPARATOR;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_TYPE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_TYPE_FILE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_TYPE_FILE_CONTENT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RESOURCE_TYPE_FILE_SUFFIX_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SCHEDULE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SCHEDULE_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SCHEDULE_OFFLINE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SCHEDULE_ONLINE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SEARCH_VAL;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.START_PROCESS_INSTANCE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.START_TIME;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SUCCESS_NODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.SWITCH_RESULT_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_DEFINITION_JSON;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_INSTANCE_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_PRIORITY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_RELATION_JSON;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TENANT_CODE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TIMEOUT_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TIMEOUT_FLAG_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TIMEOUT_NOTIFY_STRATEGY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TIMEZONE_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TIMEZONE_ID_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TOKEN;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.UPDATE_CONTENT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.VERSION_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WAIT_START_TIMEOUT_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_GROUP_ID;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_GROUP_ID_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_TYPE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WORKER_GROUP;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WORKER_GROUP_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.utils.HttpUtils.createParamMap;
-import static org.apache.seatunnel.server.common.Constants.BLANK_SPACE;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.NO_MATCHED_PROJECT;
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.UNEXPECTED_RETURN_CODE;
-
-import org.apache.seatunnel.scheduler.dolphinscheduler.ExecuteTypeEnum;
-import org.apache.seatunnel.scheduler.dolphinscheduler.IDolphinschedulerService;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ConditionResult;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListTaskInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.LocalParam;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.LocationDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.OnlineCreateResourceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProjectDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ResourceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.SchedulerDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.StartProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskDescriptionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskParamDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskRelationDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.UpdateProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.utils.HttpUtils;
-import org.apache.seatunnel.server.common.DateUtils;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.server.common.SeatunnelErrorEnum;
-import org.apache.seatunnel.server.common.SeatunnelException;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceLogDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobDto;
-
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.collections4.MapUtils;
-import org.jsoup.Connection;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
-
-import java.io.IOException;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-@Slf4j
-@Component
-public class DolphinschedulerServiceImpl implements IDolphinschedulerService, InitializingBean {
-
-    @Value("${ds.api.prefix}")
-    private String apiPrefix;
-    @Value("${ds.api.token}")
-    private String token;
-    @Value("${ds.tenant.default}")
-    private String defaultTenantName;
-    @Value("${ds.project.default}")
-    private String defaultProjectName;
-    @Value("${ds.script.dir}")
-    private String defaultScriptDir;
-    private long defaultProjectCode;
-
-    private static final ObjectMapper MAPPER = new ObjectMapper();
-
-    @Override
-    public void afterPropertiesSet() throws Exception {
-        final ProjectDto projectDto = queryProjectCodeByName(defaultProjectName);
-        defaultProjectCode = projectDto.getCode();
-    }
-
-    @Override
-    public ProcessDefinitionDto createOrUpdateProcessDefinition(UpdateProcessDefinitionDto dto) {
-        // gen task code
-        final List<Long> taskCodes = genTaskCodes(defaultProjectCode, GEN_NUM_DEFAULT);
-
-        // build taskDefinitionJson and taskRelationJson.
-        final Long taskCode = taskCodes.get(0);
-        List<TaskDefinitionDto> taskDefinitionJson = Collections.singletonList(buildTaskDefinitionJson(taskCode, dto.getTaskDescriptionDto()));
-        List<TaskRelationDto> taskRelationJson = buildTaskRelationJson(taskCode, dto.getTaskDescriptionDto());
-        List<LocationDto> locations = buildLocation(taskCodes);
-
-        String url = apiPrefix.concat(String.format(CREATE_PROCESS_DEFINITION, defaultProjectCode));
-        Connection.Method method = Connection.Method.POST;
-        if (Objects.nonNull(dto.getProcessDefinitionCode())) {
-            method = Connection.Method.PUT;
-            url = url.concat(String.valueOf(dto.getProcessDefinitionCode()));
-            // offline process
-            updateProcessDefinitionState(dto.getProcessDefinitionCode(), dto.getName(), RELEASE_STATE_OFFLINE);
-        }
-
-        final Map<String, String> paramMap = createParamMap(LOCATIONS, locations,
-                TASK_DEFINITION_JSON, this.objectToString(taskDefinitionJson),
-                TASK_RELATION_JSON, this.objectToString(taskRelationJson),
-                TENANT_CODE, defaultTenantName,
-                PROCESS_DEFINITION_NAME, dto.getName());
-
-        final Map result = HttpUtils.builder()
-                .withUrl(url)
-                .withMethod(method)
-                .withData(paramMap)
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-
-        checkResult(result, false);
-        final Map<String, Object> map = MapUtils.getMap(result, DATA);
-        return mapToPojo(map, ProcessDefinitionDto.class);
-    }
-
-    @Override
-    public PageData<ProcessDefinitionDto> listProcessDefinition(ListProcessDefinitionDto dto) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(QUERY_LIST_PAGING, defaultProjectCode)))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(SEARCH_VAL, dto.getName(), PAGE_NO, dto.getPageNo(), PAGE_SIZE, dto.getPageSize()))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        final Map map = MapUtils.getMap(result, DATA);
-        final int total = MapUtils.getIntValue(map, DATA_TOTAL);
-        final List<Map<String, Object>> processDefinitionList = (List<Map<String, Object>>) map.get(DATA_TOTAL_LIST);
-
-        if (CollectionUtils.isEmpty(processDefinitionList)) {
-            return new PageData<>(total, Collections.emptyList());
-        }
-        final List<ProcessDefinitionDto> data = processDefinitionList.stream().map(m -> this.mapToPojo(m, ProcessDefinitionDto.class)).collect(Collectors.toList());
-
-        return new PageData<>(total, data);
-    }
-
-    @Override
-    public ProcessDefinitionDto fetchProcessDefinitionByName(String processDefinitionName) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(QUERY_PROCESS_DEFINITION_BY_NAME, defaultProjectCode)))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(PROCESS_DEFINITION_NAME, processDefinitionName))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        final Map<String, Object> map = (Map<String, Object>) MapUtils.getMap(result, DATA).get(PROCESS_DEFINITION);
-        return this.mapToPojo(map, ProcessDefinitionDto.class);
-    }
-
-    @Override
-    public void startProcessDefinition(StartProcessDefinitionDto dto) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(START_PROCESS_INSTANCE, defaultProjectCode)))
-                .withMethod(Connection.Method.POST)
-                .withData(dto.toMap())
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    @Override
-    public void updateProcessDefinitionState(long processDefinitionCode, String processDefinitionName, String state) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(RELEASE, defaultProjectCode, processDefinitionCode)))
-                .withMethod(Connection.Method.POST)
-                .withData(createParamMap(PROCESS_DEFINITION_NAME, processDefinitionName, RELEASE_STATE, state))
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    @Override
-    public SchedulerDto createOrUpdateSchedule(JobDto dto) {
-        final Map<String, Object> map = Maps.newHashMap();
-        map.put(FAILURE_STRATEGY, FAILURE_STRATEGY_DEFAULT);
-        map.put(WARNING_TYPE, WARNING_TYPE_DEFAULT);
-        map.put(PROCESS_INSTANCE_PRIORITY, PROCESS_INSTANCE_PRIORITY_DEFAULT);
-        map.put(WARNING_GROUP_ID, WARNING_GROUP_ID_DEFAULT);
-        map.put(WORKER_GROUP, WORKER_GROUP_DEFAULT);
-        map.put(ENVIRONMENT_CODE, ENVIRONMENT_CODE_DEFAULT);
-        map.put(PROCESS_DEFINITION_CODE, dto.getJobId());
-
-        final Map<String, Object> schedule = Maps.newHashMap();
-        schedule.put(START_TIME, DateUtils.format(dto.getSchedulerConfigDto().getStartTime()));
-        schedule.put(END_TIME, DateUtils.format(dto.getSchedulerConfigDto().getEndTime()));
-        schedule.put(CRONTAB, dto.getSchedulerConfigDto().getTriggerExpression());
-        schedule.put(TIMEZONE_ID, TIMEZONE_ID_DEFAULT);
-
-        map.put(SCHEDULE, this.objectToString(schedule));
-
-        String url = String.format(CREATE_SCHEDULE, defaultProjectCode);
-
-        final List<SchedulerDto> schedulerDtos = listSchedule(dto.getJobId());
-        boolean flag = false;
-        if (!CollectionUtils.isEmpty(schedulerDtos)) {
-            url = url.concat(String.valueOf(schedulerDtos.get(0).getId()));
-            flag = true;
-        }
-
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(url))
-                .withData(translate(map))
-                .withMethod(flag ? Connection.Method.PUT : Connection.Method.POST)
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        if (flag){
-            schedulerDtos.clear();
-            schedulerDtos.addAll(listSchedule(dto.getJobId()));
-            return schedulerDtos.get(0);
-        }
-
-        Map<String, Object> resultMap = MapUtils.getMap(result, DATA);
-        return this.mapToPojo(resultMap, SchedulerDto.class);
-    }
-
-    @Override
-    public List<SchedulerDto> listSchedule(long processDefinitionCode) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(QUERY_SCHEDULE_LIST_PAGING, defaultProjectCode)))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(PROCESS_DEFINITION_CODE, processDefinitionCode, PAGE_NO, PAGE_NO_DEFAULT, PAGE_SIZE, PAGE_SIZE_DEFAULT))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        final List<Map<String, Object>> scheduleList = (List<Map<String, Object>>) MapUtils.getMap(result, DATA).get(DATA_TOTAL_LIST);
-        if (CollectionUtils.isEmpty(scheduleList)) {
-            return Collections.emptyList();
-        }
-        return scheduleList.stream().map(m -> this.mapToPojo(m, SchedulerDto.class)).collect(Collectors.toList());
-    }
-
-    @Override
-    public void scheduleOnline(int scheduleId) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(SCHEDULE_ONLINE, defaultProjectCode, scheduleId)))
-                .withMethod(Connection.Method.POST)
-                .withData(createParamMap(SCHEDULE_ID, scheduleId))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    @Override
-    public void scheduleOffline(int scheduleId) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(SCHEDULE_OFFLINE, defaultProjectCode, scheduleId)))
-                .withMethod(Connection.Method.POST)
-                .withData(createParamMap(SCHEDULE_ID, scheduleId))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    @Override
-    public List<Long> genTaskCodes(long projectCode, int num) {
-        final String url = String.format(GEN_TASK_CODE_LIST, projectCode);
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(url))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(GEN_NUM, num))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        return (List<Long>) result.get(DATA);
-    }
-
-    @Override
-    public ResourceDto createOrUpdateScriptContent(String resourceName, String content) {
-        // check resource exists
-        final String fullName = defaultScriptDir.concat(RESOURCE_SEPARATOR.concat(resourceName));
-        final ResourceDto parentResourceDto = getResourceDto(defaultScriptDir, RESOURCE_TYPE_FILE);
-        if (Objects.isNull(parentResourceDto)) {
-            throw new SeatunnelException(SeatunnelErrorEnum.NO_MATCHED_SCRIPT_SAVE_DIR, defaultScriptDir);
-        }
-        final ResourceDto dto = getResourceDto(fullName.concat(DEFAULT_FILE_SUFFIX), RESOURCE_TYPE_FILE);
-        if (Objects.isNull(dto)) {
-            final OnlineCreateResourceDto createDto = OnlineCreateResourceDto.builder()
-                    .type(RESOURCE_TYPE_FILE)
-                    .pid(parentResourceDto.getId())
-                    .fileName(resourceName)
-                    .currentDir(defaultScriptDir)
-                    .suffix(RESOURCE_TYPE_FILE_SUFFIX_DEFAULT)
-                    .content(content)
-                    .build();
-            onlineCreateResource(createDto);
-            return getResourceDto(fullName.concat(DEFAULT_FILE_SUFFIX), RESOURCE_TYPE_FILE);
-        } else {
-            updateContent(dto.getId(), content);
-            return dto;
-        }
-    }
-
-    @Override
-    public PageData<TaskInstanceDto> listTaskInstance(ListTaskInstanceDto dto) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(QUERY_TASK_LIST_PAGING, defaultProjectCode)))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(PROCESS_INSTANCE_NAME, dto.getName(), PAGE_NO, dto.getPageNo(), PAGE_SIZE, dto.getPageSize()))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-
-        checkResult(result, false);
-        final Map map = MapUtils.getMap(result, DATA);
-        final List<Map<String, Object>> taskInstanceList = (List<Map<String, Object>>) map.get(DATA_TOTAL_LIST);
-        final int total = MapUtils.getIntValue(map, DATA_TOTAL);
-        if (CollectionUtils.isEmpty(taskInstanceList)) {
-            return PageData.empty();
-        }
-
-        final List<TaskInstanceDto> data = taskInstanceList.stream().map(m -> this.mapToPojo(m, TaskInstanceDto.class)).collect(Collectors.toList());
-        return new PageData<>(total, data);
-    }
-
-    @Override
-    public void deleteProcessDefinition(long code) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(DELETE_PROCESS_DEFINITION, defaultProjectCode, code)))
-                .withMethod(Connection.Method.DELETE)
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    @Override
-    public PageData<ProcessInstanceDto> listProcessInstance(ListProcessInstanceDto dto) {
-        final Map result = HttpUtils.builder()
-            .withUrl(apiPrefix.concat(String.format(PROCESS_INSTANCE_LIST, defaultProjectCode)))
-            .withMethod(Connection.Method.GET)
-            .withData(createParamMap(SEARCH_VAL, dto.getName(), PAGE_NO, dto.getPageNo(), PAGE_SIZE, dto.getPageSize()))
-            .withToken(TOKEN, token)
-            .execute(Map.class);
-
-        final Map map = MapUtils.getMap(result, DATA);
-        final List<Map<String, Object>> processInstanceList = (List<Map<String, Object>>) map.get(DATA_TOTAL_LIST);
-        final int total = MapUtils.getIntValue(map, DATA_TOTAL);
-        if (CollectionUtils.isEmpty(processInstanceList)) {
-            return PageData.empty();
-        }
-
-        final List<ProcessInstanceDto> data = processInstanceList.stream().map(m -> this.mapToPojo(m, ProcessInstanceDto.class)).collect(Collectors.toList());
-        return new PageData<>(total, data);
-    }
-
-    @Override
-    public void killProcessInstance(long processInstanceId) {
-        execute(processInstanceId, ExecuteTypeEnum.STOP);
-    }
-
-    @Override
-    public InstanceLogDto queryInstanceLog(long instanceId) {
-
-        final Map result = HttpUtils.builder()
-            .withUrl(apiPrefix.concat(LOG_DETAIL))
-            .withData(createParamMap(TASK_INSTANCE_ID, instanceId, LOG_SKIP_LINE_NUM, LOG_SKIP_LINE_NUM_DEFAULT, LOG_LIMIT_NUM, LOG_LIMIT_NUM_DEFAULT))
-            .withMethod(Connection.Method.GET)
-            .withToken(TOKEN, token)
-            .execute(Map.class);
-        checkResult(result, false);
-
-        final Map map = MapUtils.getMap(result, DATA);
-        final String logContent = MapUtils.getString(map, LOG_MESSAGE);
-
-        return InstanceLogDto.builder()
-            .logContent(logContent)
-            .build();
-    }
-
-    private ProjectDto queryProjectCodeByName(String projectName) throws IOException {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(QUERY_PROJECT_LIST_PAGING))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(SEARCH_VAL, projectName, PAGE_NO, PAGE_NO_DEFAULT, PAGE_SIZE, PAGE_SIZE_DEFAULT))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-
-        final List<Map<String, Object>> projectList = (List<Map<String, Object>>) MapUtils.getMap(result, DATA).get(DATA_TOTAL_LIST);
-        final ProjectDto projectDto = projectList.stream().map(m -> this.mapToPojo(m, ProjectDto.class)).filter(p -> p.getName().equalsIgnoreCase(projectName)).findAny().orElse(null);
-        if (Objects.isNull(projectDto)) {
-            throw new SeatunnelException(NO_MATCHED_PROJECT, projectName);
-        }
-        return projectDto;
-    }
-
-    private void execute(long processInstanceId, ExecuteTypeEnum executeType) {
-        final Map result = HttpUtils.builder()
-            .withUrl(apiPrefix.concat(String.format(EXECUTE, defaultProjectCode)))
-            .withMethod(Connection.Method.POST)
-            .withRequestBody(this.objectToString(null))
-            .withData(createParamMap(PROCESS_INSTANCE_ID, processInstanceId, EXECUTE_TYPE, executeType.name()))
-            .withToken(TOKEN, token)
-            .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    private TaskDefinitionDto buildTaskDefinitionJson(Long taskCode, TaskDescriptionDto taskDescriptionDto) {
-        final ResourceDto resourceDto = createOrUpdateScriptContent(taskDescriptionDto.getName(), taskDescriptionDto.getContent());
-        final TaskDefinitionDto taskDefinitionDto = new TaskDefinitionDto();
-        taskDefinitionDto.setCode(taskCode);
-        taskDefinitionDto.setName(taskDescriptionDto.getName());
-        taskDefinitionDto.setDescription(DESCRIPTION_DEFAULT);
-        taskDefinitionDto.setTaskType(TASK_TYPE_DEFAULT);
-
-        final TaskParamDto taskParamDto = new TaskParamDto();
-
-        taskParamDto.setResourceList(Collections.singletonList(resourceDto));
-
-        final List<LocalParam> localParams = getLocalParams(taskDescriptionDto);
-        taskParamDto.setLocalParams(localParams);
-        taskParamDto.setRawScript(taskDescriptionDto.getExecuteScript());
-        taskParamDto.setDependence(DEPENDENCE_DEFAULT);
-
-        final ConditionResult conditionResult = new ConditionResult();
-        conditionResult.setSuccessNode(SUCCESS_NODE_DEFAULT);
-        conditionResult.setFailedNode(FAILED_NODE_DEFAULT);
-
-        taskParamDto.setConditionResult(conditionResult);
-        taskParamDto.setWaitStartTimeout(WAIT_START_TIMEOUT_DEFAULT);
-        taskParamDto.setSwitchResult(SWITCH_RESULT_DEFAULT);
-
-        taskDefinitionDto.setTaskParams(taskParamDto);
-        taskDefinitionDto.setFlag(FLAG_DEFAULT);
-        taskDefinitionDto.setTaskPriority(TASK_PRIORITY_DEFAULT);
-        taskDefinitionDto.setWorkerGroup(WORKER_GROUP_DEFAULT);
-        taskDefinitionDto.setFailRetryTimes(taskDescriptionDto.getRetryTimes());
-        taskDefinitionDto.setFailRetryInterval(taskDescriptionDto.getRetryInterval());
-        taskDefinitionDto.setTimeoutFlag(TIMEOUT_FLAG_DEFAULT);
-        taskDefinitionDto.setTimeoutNotifyStrategy(TIMEOUT_NOTIFY_STRATEGY_DEFAULT);
-        taskDefinitionDto.setTimeout(TIMEOUT_DEFAULT);
-        taskDefinitionDto.setDelayTime(DELAY_TIME_DEFAULT);
-        taskDefinitionDto.setEnvironmentCode(ENVIRONMENT_CODE_DEFAULT);
-        taskDefinitionDto.setVersion(VERSION_DEFAULT);
-        return taskDefinitionDto;
-    }
-
-    private List<LocalParam> getLocalParams(TaskDescriptionDto taskDescriptionDto) {
-        final Map<String, Object> params = taskDescriptionDto.getParams();
-        if (CollectionUtils.isEmpty(params)) {
-            return Collections.emptyList();
-        }
-        final List<LocalParam> localParams = Lists.newArrayListWithCapacity(params.size());
-        params.forEach((k, v) -> {
-            final LocalParam localParam = new LocalParam();
-            localParam.setProp(k);
-            localParam.setDirect(LOCAL_PARAMS_DIRECT_DEFAULT);
-            localParam.setType(LOCAL_PARAMS_TYPE_DEFAULT);
-            localParam.setValue(v);
-            localParams.add(localParam);
-        });
-        return localParams;
-    }
-
-    private List<TaskRelationDto> buildTaskRelationJson(Long taskCode, TaskDescriptionDto taskDescriptionDto) {
-
-        final TaskRelationDto taskRelationDto = new TaskRelationDto();
-        taskRelationDto.setName(BLANK_SPACE);
-        taskRelationDto.setPreTaskCode(PRE_TASK_CODE_DEFAULT);
-        taskRelationDto.setPreTaskVersion(PRE_TASK_VERSION_DEFAULT);
-        taskRelationDto.setPostTaskCode(taskCode);
-        taskRelationDto.setPostTaskVersion(POST_TASK_VERSION_DEFAULT);
-        taskRelationDto.setConditionType(CONDITION_TYPE_DEFAULT);
-        taskRelationDto.setConditionParams(null);
-        return Collections.singletonList(taskRelationDto);
-    }
-
-    private List<LocationDto> buildLocation(List<Long> taskCode) {
-        final List<LocationDto> locations = Lists.newArrayListWithCapacity(taskCode.size());
-        for (int i = 0; i < taskCode.size(); i++) {
-            final LocationDto locationDto = new LocationDto();
-            locationDto.setTaskCode(taskCode.get(i));
-            locationDto.setX(LOCATIONS_X_DEFAULT * i);
-            locationDto.setY(LOCATIONS_Y_DEFAULT * i);
-            locations.add(locationDto);
-        }
-        return locations;
-    }
-
-    private void updateContent(int id, String content) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(UPDATE_CONTENT, id)))
-                .withMethod(Connection.Method.PUT)
-                .withData(createParamMap(RESOURCE_ID, id, RESOURCE_TYPE_FILE_CONTENT, content))
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    private void onlineCreateResource(OnlineCreateResourceDto createDto) {
-        final Map<String, Object> map = createDto.toMap();
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(ONLINE_CREATE_RESOURCE))
-                .withMethod(Connection.Method.POST)
-                .withData(translate(map))
-                .withRequestBody(this.objectToString(null))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        checkResult(result, false);
-    }
-
-    private ResourceDto getResourceDto(String fullName, String fileType) {
-        final Map result = HttpUtils.builder()
-                .withUrl(apiPrefix.concat(String.format(QUERY_RESOURCE, RESOURCE_ID_DEFAULT)))
-                .withMethod(Connection.Method.GET)
-                .withData(createParamMap(FULL_NAME, fullName, RESOURCE_TYPE, RESOURCE_TYPE_FILE))
-                .withToken(TOKEN, token)
-                .execute(Map.class);
-        final int code = checkResult(result, true);
-        if (code != CODE_SUCCESS) {
-            return null;
-        }
-        final Map<String, Object> map = MapUtils.getMap(result, DATA);
-        return this.mapToPojo(map, ResourceDto.class);
-    }
-
-    private int checkResult(Map result, boolean ignore) {
-        final int intValue = MapUtils.getIntValue(result, CODE, -1);
-        if (!ignore && CODE_SUCCESS != intValue) {
-            final String msg = MapUtils.getString(result, MSG);
-            throw new SeatunnelException(UNEXPECTED_RETURN_CODE, intValue, msg);
-        }
-        return intValue;
-    }
-
-    private Map<String, String> translate(Map<String, Object> origin) {
-        final HashMap<String, String> map = Maps.newHashMapWithExpectedSize(origin.size());
-        origin.forEach((k, v) -> map.put(k, String.valueOf(v)));
-        return map;
-    }
-
-    private <T> T mapToPojo(Map map, Class<T> pojo) {
-        try {
-            return MAPPER.readValue(MAPPER.writeValueAsString(map), pojo);
-        } catch (JsonProcessingException e) {
-            log.error("Map translate to Pojo failed.", e);
-            throw new SeatunnelException(SeatunnelErrorEnum.JSON_TRANSFORM_FAILED);
-        }
-    }
-
-    private String objectToString(Object o) {
-        try {
-            return MAPPER.writeValueAsString(o);
-        } catch (JsonProcessingException e) {
-            log.error("Map translate to Pojo failed.", e);
-            throw new SeatunnelException(SeatunnelErrorEnum.JSON_TRANSFORM_FAILED);
-        }
-    }
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/InstanceServiceImpl.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/InstanceServiceImpl.java
deleted file mode 100644
index 42a27efbe..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/InstanceServiceImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.impl;
-
-import org.apache.seatunnel.scheduler.dolphinscheduler.IDolphinschedulerService;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessInstanceDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessInstanceDto;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.spi.scheduler.IInstanceService;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceListDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceLogDto;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Component;
-
-import javax.annotation.Resource;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-@Slf4j
-@Component
-public class InstanceServiceImpl implements IInstanceService {
-
-    @Resource
-    private IDolphinschedulerService iDolphinschedulerService;
-
-    @Override
-    public PageData<InstanceDto> list(InstanceListDto dto) {
-
-        final ListProcessInstanceDto listDto = new ListProcessInstanceDto();
-        listDto.setName(dto.getName());
-        listDto.setPageNo(dto.getPageNo());
-        listDto.setPageSize(dto.getPageSize());
-
-        // use list process instance instead of list task instance.
-        final PageData<ProcessInstanceDto> instancePageData = iDolphinschedulerService.listProcessInstance(listDto);
-
-        final List<InstanceDto> data = instancePageData.getData().stream().map(t -> InstanceDto.builder()
-                .instanceId(t.getId())
-                .jobId(t.getProcessDefinitionCode())
-                .instanceName(t.getName())
-                .status(t.getState())
-                .startTime(t.getStartTime())
-                .endTime(t.getEndTime())
-                .submitTime(t.getScheduleTime())
-                .executionDuration(t.getDuration())
-                .retryTimes(t.getRunTimes())
-                .build()).collect(Collectors.toList());
-        return new PageData<>(instancePageData.getTotalCount(), data);
-    }
-
-    @Override
-    public InstanceLogDto queryInstanceLog(long instanceId) {
-        return iDolphinschedulerService.queryInstanceLog(instanceId);
-    }
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/JobServiceImpl.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/JobServiceImpl.java
deleted file mode 100644
index 5cdab9b00..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/impl/JobServiceImpl.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.impl;
-
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DEPENDENT_MODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.DRY_RUN;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.EXEC_TYPE_COMPLEMENT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.EXEC_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.FAILURE_STRATEGY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_NO_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PAGE_SIZE_MIN;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.PROCESS_INSTANCE_PRIORITY_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RELEASE_STATE_OFFLINE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RELEASE_STATE_ONLINE;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RUN_MODE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.RUN_MODE_PARALLEL;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.TASK_DEPEND_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_GROUP_ID_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WARNING_TYPE_DEFAULT;
-import static org.apache.seatunnel.scheduler.dolphinscheduler.constants.DolphinschedulerConstants.WORKER_GROUP_DEFAULT;
-import static org.apache.seatunnel.server.common.Constants.COMMA;
-import static org.apache.seatunnel.server.common.DateUtils.DEFAULT_DATETIME_FORMAT;
-
-import org.apache.seatunnel.scheduler.dolphinscheduler.IDolphinschedulerService;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ListProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.ProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.SchedulerDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.StartProcessDefinitionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.TaskDescriptionDto;
-import org.apache.seatunnel.scheduler.dolphinscheduler.dto.UpdateProcessDefinitionDto;
-import org.apache.seatunnel.server.common.DateUtils;
-import org.apache.seatunnel.server.common.PageData;
-import org.apache.seatunnel.server.common.SeatunnelErrorEnum;
-import org.apache.seatunnel.server.common.SeatunnelException;
-import org.apache.seatunnel.spi.scheduler.IInstanceService;
-import org.apache.seatunnel.spi.scheduler.IJobService;
-import org.apache.seatunnel.spi.scheduler.dto.ComplementDataDto;
-import org.apache.seatunnel.spi.scheduler.dto.ExecuteDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceDto;
-import org.apache.seatunnel.spi.scheduler.dto.InstanceListDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobListDto;
-import org.apache.seatunnel.spi.scheduler.dto.JobSimpleInfoDto;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
-
-import javax.annotation.Resource;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.concurrent.CompletableFuture;
-import java.util.stream.Collectors;
-
-@Component
-@Slf4j
-public class JobServiceImpl implements IJobService {
-    @Resource
-    private IDolphinschedulerService iDolphinschedulerService;
-
-    @Resource
-    private IInstanceService iInstanceService;
-
-    @Value("${maxWaitingTimes:10}")
-    private long maxWaitingTimes;
-    @Value("${waitingSleepTime:100}")
-    private long waitingSleepTime;
-
-    @Override
-    public long submitJob(JobDto dto) {
-        // one process == one seatunnel script == one job
-
-        final ProcessDefinitionDto processDefinition = getProcessDefinitionDto(dto);
-
-        dto.setJobId(processDefinition.getCode());
-        iDolphinschedulerService.updateProcessDefinitionState(processDefinition.getCode(), processDefinition.getName(), RELEASE_STATE_ONLINE);
-        final SchedulerDto schedulerDto = iDolphinschedulerService.createOrUpdateSchedule(dto);
-        iDolphinschedulerService.scheduleOnline(schedulerDto.getId());
-
-        return processDefinition.getCode();
-    }
-
-    @Override
-    public void offlineJob(JobDto dto) {
-        iDolphinschedulerService.updateProcessDefinitionState(dto.getJobId(), dto.getJobName(), RELEASE_STATE_OFFLINE);
-    }
-
-    @Override
-    public PageData<JobSimpleInfoDto> list(JobListDto dto) {
-        final ListProcessDefinitionDto listDto = new ListProcessDefinitionDto();
-        listDto.setName(dto.getName());
-        listDto.setPageNo(dto.getPageNo());
-        listDto.setPageSize(dto.getPageSize());
-
-        final PageData<ProcessDefinitionDto> processPageData = iDolphinschedulerService.listProcessDefinition(listDto);
-        final List<JobSimpleInfoDto> data = processPageData.getData().stream().map(p -> JobSimpleInfoDto.builder()
-                .jobId(p.getCode())
-                .jobStatus(p.getReleaseState())
-                .createTime(p.getCreateTime())
-                .updateTime(p.getUpdateTime())
-                .creatorName(p.getUsername())
-                .menderName(p.getUsername())
-                .build())
-                .collect(Collectors.toList());
-        return new PageData<>(processPageData.getTotalCount(), data);
-    }
-
-    @Override
-    @SuppressWarnings("magicnumber")
-    public InstanceDto execute(ExecuteDto dto) {
-        ProcessDefinitionDto processDefinition = null;
-        final JobDto jobDto = dto.getJobDto();
-        if (Objects.isNull(jobDto.getJobId())) {
-            // need to create a temporary process definition and execute it.
-            processDefinition = getProcessDefinitionDto(jobDto);
-            jobDto.setJobId(processDefinition.getCode());
-            iDolphinschedulerService.updateProcessDefinitionState(processDefinition.getCode(), processDefinition.getName(), RELEASE_STATE_ONLINE);
-        }
-
-        final ComplementDataDto complementDataDto = dto.getComplementDataDto();
-        String execType;
-        String runMode = RUN_MODE_DEFAULT;
-
-        Date startTime = new Date();
-        Date endTime = new Date();
-        int parallelismNum = 1;
-        if (Objects.isNull(complementDataDto)) {
-            execType = EXEC_TYPE_DEFAULT;
-        } else {
-            execType = EXEC_TYPE_COMPLEMENT;
-            if (Objects.nonNull(complementDataDto.getParallelismNum())) {
-                runMode = RUN_MODE_PARALLEL;
-            }
-            startTime = complementDataDto.getStartTime();
-            endTime = complementDataDto.getEndTime();
-            parallelismNum = complementDataDto.getParallelismNum();
-        }
-
-        final StartProcessDefinitionDto startProcessDefinitionDto = StartProcessDefinitionDto.builder()
-                .processDefinitionCode(jobDto.getJobId())
-                .failureStrategy(FAILURE_STRATEGY_DEFAULT)
-                .warningType(WARNING_TYPE_DEFAULT)
-                .warningGroupId(WARNING_GROUP_ID_DEFAULT)
-                .taskDependType(TASK_DEPEND_TYPE_DEFAULT)
-                .runMode(runMode)
-                .processInstancePriority(PROCESS_INSTANCE_PRIORITY_DEFAULT)
-                .workerGroup(WORKER_GROUP_DEFAULT)
-                .dryRun(DRY_RUN)
-                .scheduleTime(DateUtils.format(startTime, DEFAULT_DATETIME_FORMAT).concat(COMMA).concat(DateUtils.format(endTime, DEFAULT_DATETIME_FORMAT)))
-                .execType(execType)
-                .dependentMode(DEPENDENT_MODE_DEFAULT)
-                .expectedParallelismNumber(parallelismNum)
-                .build();
-        iDolphinschedulerService.startProcessDefinition(startProcessDefinitionDto);
-
-        if (Objects.nonNull(processDefinition)){
-
-            final long code = processDefinition.getCode();
-            final String name = processDefinition.getName();
-
-            InstanceDto instanceDto = null;
-            // waiting dolphinscheduler generate instance.
-            for (int i = 0; i < maxWaitingTimes; i++) {
-                // get instance by process definition name
-                final InstanceListDto instanceListDto = InstanceListDto.builder()
-                        .pageNo(PAGE_NO_DEFAULT)
-                        .pageSize(PAGE_SIZE_MIN)
-                        .name(processDefinition.getName())
-                        .build();
-                final PageData<InstanceDto> instancePageData = iInstanceService.list(instanceListDto);
-                if (!CollectionUtils.isEmpty(instancePageData.getData())) {
-                    instanceDto = instancePageData.getData().get(0);
-                    break;
-                }
-                try {
-                    Thread.sleep(waitingSleepTime);
-                } catch (InterruptedException e) {
-                    log.error("waiting for getting instance failed", e);
-                    throw new SeatunnelException(SeatunnelErrorEnum.GET_INSTANCE_FAILED);
-                }
-            }
-
-            CompletableFuture.runAsync(() -> {
-                // clear temporary process definition
-                iDolphinschedulerService.updateProcessDefinitionState(code, name, RELEASE_STATE_OFFLINE);
-            }).whenComplete((_return, e) -> {
-                if (Objects.nonNull(e)) {
-                    log.error("clear temporary process definition failed, process definition code is [{}], name is [{}]",
-                            code, name, e);
-                }
-            });
-            return instanceDto;
-
-        } else {
-            return null;
-        }
-    }
-
-    @Override
-    public void kill(Long instanceId) {
-        iDolphinschedulerService.killProcessInstance(instanceId);
-    }
-
-    private ProcessDefinitionDto getProcessDefinitionDto(JobDto dto) {
-        final TaskDescriptionDto taskDescriptionDto = TaskDescriptionDto.builder()
-                .name(dto.getJobName())
-                .executeScript(dto.getExecutorScript())
-                .content(dto.getJobContent())
-                .params(dto.getParams())
-                .retryInterval(dto.getSchedulerConfigDto().getRetryInterval())
-                .retryTimes(dto.getSchedulerConfigDto().getRetryTimes())
-                .build();
-
-        final UpdateProcessDefinitionDto processDto = UpdateProcessDefinitionDto.builder()
-                .name(dto.getJobName())
-                .startTime(dto.getSchedulerConfigDto().getStartTime())
-                .endTime(dto.getSchedulerConfigDto().getEndTime())
-                .cronExpression(dto.getSchedulerConfigDto().getTriggerExpression())
-                .taskDescriptionDto(taskDescriptionDto)
-                .processDefinitionCode(dto.getJobId())
-                .build();
-
-        return iDolphinschedulerService.createOrUpdateProcessDefinition(processDto);
-    }
-}
diff --git a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/utils/HttpUtils.java b/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/utils/HttpUtils.java
deleted file mode 100644
index 67512f70c..000000000
--- a/seatunnel-server/seatunnel-scheduler/seatunnel-scheduler-dolphinscheduler/src/main/java/org/apache/seatunnel/scheduler/dolphinscheduler/utils/HttpUtils.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.scheduler.dolphinscheduler.utils;
-
-import static org.apache.seatunnel.server.common.SeatunnelErrorEnum.HTTP_REQUEST_FAILED;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.apache.seatunnel.server.common.SeatunnelException;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.google.common.base.Strings;
-import com.google.common.collect.Maps;
-import lombok.extern.slf4j.Slf4j;
-import org.jsoup.Connection;
-import org.jsoup.Jsoup;
-
-import java.io.IOException;
-import java.lang.reflect.Type;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Optional;
-
-@Slf4j
-public class HttpUtils {
-
-    private static final ObjectMapper MAPPER = new ObjectMapper();
-
-    @SuppressWarnings("MagicNumber")
-    public static Map<String, String> createParamMap(Object... elements) {
-        if (elements == null || elements.length == 0 || elements.length % 2 == 1) {
-            throw new IllegalArgumentException("params length must be even!");
-        }
-        Map<String, String> paramMap = Maps.newHashMapWithExpectedSize(elements.length / 2);
-        for (int i = 0; i < elements.length / 2; i++) {
-            Object key = elements[2 * i];
-            Object value = elements[2 * i + 1];
-            if (key == null) {
-                continue;
-            }
-
-            paramMap.put(key.toString(), value == null ? "" : value.toString());
-        }
-
-        return paramMap;
-    }
-
-    public static Builder builder() {
-        return new Builder();
-    }
-
-    @SuppressWarnings("MagicNumber")
-    public static class Builder {
-        private Connection connection;
-        private String url;
-        private Optional<Map<String, String>> data = Optional.empty();
-        private Optional<String> requestBody = Optional.empty();
-        private Optional<Integer> maxBodySize = Optional.of(2147483647);
-        private Optional<String> postDataCharset = Optional.of("UTF-8");
-        private Optional<Boolean> ignoreContentType = Optional.of(true);
-        private Optional<Integer> timeout = Optional.of(30000);
-        private Optional<Map<String, String>> headers;
-        private Optional<Connection.Method> method = Optional.empty();
-
-        private Optional<Type> type;
-
-        public Builder() {
-            HashMap<String, String> defaultMap = Maps.newHashMap();
-            defaultMap.put("Content-Type", "application/json; charset=UTF-8");
-            headers = Optional.of(defaultMap);
-        }
-
-        public Builder withUrl(String url) {
-            this.url = url;
-            return this;
-        }
-
-        public Builder withData(Map<String, String> data) {
-            this.data = Optional.ofNullable(data);
-            return this;
-        }
-
-        public Builder withRequestBody(String requestBody) {
-            this.requestBody = Optional.ofNullable(requestBody);
-            return this;
-        }
-
-        public Builder withMaxBodySize(int maxBodySize) {
-            this.maxBodySize = Optional.of(maxBodySize);
-            return this;
-        }
-
-        public Builder withPostDataCharset(String postDataCharset) {
-            this.postDataCharset = Optional.ofNullable(postDataCharset);
-            return this;
-        }
-
-        public Builder withIgnoreContentType(boolean ignoreContentType) {
-            this.ignoreContentType = Optional.of(ignoreContentType);
-            return this;
-        }
-
-        public Builder withTimeout(int timeout) {
-            this.timeout = Optional.of(timeout);
-            return this;
-        }
-
-        public Builder withHeaders(Map<String, String> headers) {
-            this.headers = Optional.ofNullable(headers);
-            return this;
-        }
-
-        public Builder withMethod(Connection.Method method) {
-            this.method = Optional.ofNullable(method);
-            return this;
-        }
-
-        public Builder withToken(String tokenKey, String tokenValue) {
-            this.headers.ifPresent(map -> map.put(tokenKey, tokenValue));
-            return this;
-        }
-
-        private Connection build() {
-            checkState(!Strings.isNullOrEmpty(url), "request url is empty");
-            connection = Jsoup.connect(url);
-            data.ifPresent(connection::data);
-            requestBody.ifPresent(connection::requestBody);
-            maxBodySize.ifPresent(connection::maxBodySize);
-            postDataCharset.ifPresent(connection::postDataCharset);
-            ignoreContentType.ifPresent(connection::ignoreContentType);
-            timeout.ifPresent(connection::timeout);
-            headers.ifPresent(connection::headers);
-            method.ifPresent(connection::method);
-
-            return connection;
-        }
-
-        public <T> T execute(Class<T> type) {
-            this.build();
-            try {
-                Connection.Response response = connection.execute();
-                return MAPPER.readValue(response.body(), type);
-            } catch (IOException e) {
-                log.error("Request url {} failed", this.url, e);
-                throw new SeatunnelException(HTTP_REQUEST_FAILED, this.url);
-            }
-        }
-
-        public void execute() throws IOException {
-            this.build();
-            try {
-                connection.execute();
-            } catch (IOException e) {
-                log.error("Request url {} failed", this.url, e);
-                throw new SeatunnelException(HTTP_REQUEST_FAILED, this.url);
-            }
-        }
-    }
-}
diff --git a/seatunnel-server/seatunnel-server-common/pom.xml b/seatunnel-server/seatunnel-server-common/pom.xml
deleted file mode 100644
index 82a48acd4..000000000
--- a/seatunnel-server/seatunnel-server-common/pom.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel-server</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-server-common</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.scala-lang</groupId>
-            <artifactId>scala-library</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-databind</artifactId>
-            <scope>provided</scope>
-        </dependency>
-    </dependencies>
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/Constants.java b/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/Constants.java
deleted file mode 100644
index f55aa89d2..000000000
--- a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/Constants.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.server.common;
-
-public class Constants {
-    public static final String BLANK_SPACE = " ";
-    public static final String COMMA = ",";
-    public static final String UNDERLINE = "_";
-    public static final String TOKEN = "token";
-    public static final String USER_ID = "id";
-
-    public static final String OPTIONS = "OPTIONS";
-}
diff --git a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/DateUtils.java b/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/DateUtils.java
deleted file mode 100644
index 69a7f6de4..000000000
--- a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/DateUtils.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.server.common;
-
-import lombok.extern.slf4j.Slf4j;
-
-import java.time.Instant;
-import java.time.LocalDateTime;
-import java.time.ZoneId;
-import java.time.format.DateTimeFormatter;
-import java.util.Date;
-
-@Slf4j
-public class DateUtils {
-    public static final String DEFAULT_DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
-    public static final String DEFAULT_DATETIME_FORMAT_WITH_TIMEZONE = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZ";
-
-    /**
-     * parse Date to String Date, use default datetime format 'yyyy-MM-dd HH:mm:ss'
-     * @param date which need been format to String date
-     * @return String date
-     */
-    public static String format(Date date) {
-        return format(date2LocalDateTime(date), DEFAULT_DATETIME_FORMAT);
-    }
-
-    public static String format(Date date, String format) {
-        return format(date2LocalDateTime(date), format);
-    }
-
-    public static String format(LocalDateTime localDateTime, String format) {
-        return localDateTime.format(DateTimeFormatter.ofPattern(format));
-    }
-
-    private static LocalDateTime date2LocalDateTime(Date date) {
-        return LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
-    }
-
-    /**
-     * parse String date to Date, use default datetime format 'yyyy-MM-dd HH:mm:ss'
-     * @param date which need been parse to Date
-     * @return Date
-     */
-    public static Date parse(String date) {
-        LocalDateTime localDateTime = LocalDateTime.parse(date, DateTimeFormatter.ofPattern(DEFAULT_DATETIME_FORMAT));
-        return localDateTime2Date(localDateTime);
-    }
-
-    public static Date parse(String date, String format) {
-        LocalDateTime localDateTime = LocalDateTime.parse(date, DateTimeFormatter.ofPattern(format));
-        return localDateTime2Date(localDateTime);
-    }
-
-    private static Date localDateTime2Date(LocalDateTime localDateTime) {
-        Instant instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
-        return Date.from(instant);
-    }
-}
diff --git a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/PageData.java b/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/PageData.java
deleted file mode 100644
index 85cc07054..000000000
--- a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/PageData.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.server.common;
-
-import lombok.Data;
-
-import java.util.Collections;
-import java.util.List;
-
-@Data
-public class PageData<T> {
-    private int totalCount;
-    private List<T> data;
-
-    public PageData(int totalCount, List<T> data) {
-        this.totalCount = totalCount;
-        this.data = data;
-    }
-
-    public static <T> PageData<T> empty() {
-        return new PageData<>(0, Collections.emptyList());
-    }
-
-    public List<T> getData() {
-        if (data == null || data.size() == 0) {
-            return Collections.emptyList();
-        }
-        return data;
-    }
-}
diff --git a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelErrorEnum.java b/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelErrorEnum.java
deleted file mode 100644
index 9e9f494ec..000000000
--- a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelErrorEnum.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.server.common;
-
-public enum SeatunnelErrorEnum {
-
-    SCRIPT_ALREADY_EXIST(10001, "script already exist", "You already have a script with the same name : '%s'"),
-    NO_SUCH_SCRIPT(10002, "no such script", "No such script. Maybe deleted by others."),
-    USER_ALREADY_EXISTS(10003, "user already exist", "The same username [%s] is exist."),
-    NO_SUCH_USER(10004, "no such user", "No such user. Maybe deleted by others."),
-    SCHEDULER_CONFIG_NOT_EXIST(10005, "scheduler config not exist", "This script's scheduler config not exist, please check your config."),
-    JSON_TRANSFORM_FAILED(10006, "json transform failed", "Json transform failed, it may be a bug."),
-
-    USERNAME_PASSWORD_NO_MATCHED(10007, "username and password no matched", "The user name and password do not match, please check your input"),
-
-    TOKEN_ILLEGAL(10008, "token illegal", "The token is expired or invalid, please login again."),
-
-    /**
-     * request dolphinscheduler failed
-     */
-    UNEXPECTED_RETURN_CODE(20000, "Unexpected return code", "Unexpected return code : [%s], error msg is [%s]"),
-    QUERY_PROJECT_CODE_FAILED(20001, "query project code failed", "Request ds for querying project code failed"),
-    NO_MATCHED_PROJECT(20002, "no matched project", "No matched project [%s], please check your configuration"),
-    NO_MATCHED_SCRIPT_SAVE_DIR(20003, "no matched script save dir", "No matched script save dir [%s], please check your configuration"),
-    GET_INSTANCE_FAILED(20004, "get instance failed", "Get instance failed"),
-
-    NO_SUCH_ELEMENT(99995, "no such element", "No such element."),
-    UNSUPPORTED_OPERATION(99996, "unsupported operation", "This operation [%s] is not supported now."),
-    HTTP_REQUEST_FAILED(99997, "http request failed", "Http request failed, url is %s"),
-    ILLEGAL_STATE(99998, "illegal state", "%s"),
-    UNKNOWN(99999, "unknown exception", "Unknown exception")
-    ;
-
-    private final int code;
-    private final String msg;
-    private final String template;
-
-    SeatunnelErrorEnum(int code, String msg, String template) {
-        this.code = code;
-        this.msg = msg;
-        this.template = template;
-    }
-
-    public int getCode() {
-        return code;
-    }
-
-    public String getMsg() {
-        return msg;
-    }
-
-    public String getTemplate() {
-        return template;
-    }
-}
diff --git a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelException.java b/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelException.java
deleted file mode 100644
index 49d5a8c81..000000000
--- a/seatunnel-server/seatunnel-server-common/src/main/java/org/apache/seatunnel/server/common/SeatunnelException.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.seatunnel.server.common;
-
-public class SeatunnelException extends RuntimeException{
-    private SeatunnelErrorEnum errorEnum;
-
-    public SeatunnelException(SeatunnelErrorEnum e) {
-        super(e.getMsg());
-        this.errorEnum = e;
-    }
-
-    public SeatunnelException(SeatunnelErrorEnum e, Object... msg) {
-        super(String.format(e.getTemplate(), msg));
-        this.errorEnum = e;
-    }
-
-    public static SeatunnelException newInstance(SeatunnelErrorEnum e, Object... msg) {
-        return new SeatunnelException(e, msg);
-
-    }
-
-    public static SeatunnelException newInstance(SeatunnelErrorEnum e) {
-        return new SeatunnelException(e);
-
-    }
-
-    public SeatunnelErrorEnum getErrorEnum() {
-        return errorEnum;
-    }
-}
diff --git a/seatunnel-server/seatunnel-spi/pom.xml b/seatunnel-server/seatunnel-spi/pom.xml
deleted file mode 100644
index 8d5920974..000000000
--- a/seatunnel-server/seatunnel-spi/pom.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-       http://www.apache.org/licenses/LICENSE-2.0
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>seatunnel-server</artifactId>
-        <groupId>org.apache.seatunnel</groupId>
-        <version>${revision}</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>seatunnel-spi</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.seatunnel</groupId>
-            <artifactId>seatunnel-server-common</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file
diff --git a/seatunnel-server/seatunnel-spi/src/main/java/org/apache/seatunnel/spi/scheduler/IInstanceService.java b/seatunnel-server/seatunnel-spi/src/main/java/org/apache/seatunnel/spi/scheduler/IInstanceService.java
deleted file mode 100644
index dad0ee4e9..000000000
--- a/seatunnel-server/seatunnel-spi/src/main/java/org/apache/seatunnel/spi/scheduler/IInstanceService.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
... 9307 lines suppressed ...