Kaynağa Gözat

[FEATURE-4451][API]After the workflow editing page is submitted, the user chooses whether to go online or not. 0 means not to go online, 1 means online. (#4437)

* vvvv

* vvvvv

* vvvvv

* testReleaseProcessDefinition

Co-authored-by: zt-1997 <“18841012545@163.com”>
zt-1997 4 yıl önce
ebeveyn
işleme
2a98aee1bd

+ 139 - 128
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/ProcessDefinitionController.java

@@ -95,22 +95,22 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * create process definition
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
-     * @param name process definition name
-     * @param json process definition json
+     * @param name        process definition name
+     * @param json        process definition json
      * @param description description
-     * @param locations locations for nodes
-     * @param connects connects for nodes
+     * @param locations   locations for nodes
+     * @param connects    connects for nodes
      * @return create result code
      */
     @ApiOperation(value = "save", notes = "CREATE_PROCESS_DEFINITION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
-            @ApiImplicitParam(name = "processDefinitionJson", value = "PROCESS_DEFINITION_JSON", required = true, type = "String"),
-            @ApiImplicitParam(name = "locations", value = "PROCESS_DEFINITION_LOCATIONS", required = true, type = "String"),
-            @ApiImplicitParam(name = "connects", value = "PROCESS_DEFINITION_CONNECTS", required = true, type = "String"),
-            @ApiImplicitParam(name = "description", value = "PROCESS_DEFINITION_DESC", required = false, type = "String"),
+        @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
+        @ApiImplicitParam(name = "processDefinitionJson", value = "PROCESS_DEFINITION_JSON", required = true, type = "String"),
+        @ApiImplicitParam(name = "locations", value = "PROCESS_DEFINITION_LOCATIONS", required = true, type = "String"),
+        @ApiImplicitParam(name = "connects", value = "PROCESS_DEFINITION_CONNECTS", required = true, type = "String"),
+        @ApiImplicitParam(name = "description", value = "PROCESS_DEFINITION_DESC", required = false, type = "String"),
     })
     @PostMapping(value = "/save")
     @ResponseStatus(HttpStatus.CREATED)
@@ -124,26 +124,26 @@ public class ProcessDefinitionController extends BaseController {
                                           @RequestParam(value = "description", required = false) String description) throws JsonProcessingException {
 
         logger.info("login user {}, create  process definition, project name: {}, process definition name: {}, "
-                        + "process_definition_json: {}, desc: {} locations:{}, connects:{}",
-                loginUser.getUserName(), projectName, name, json, description, locations, connects);
+                + "process_definition_json: {}, desc: {} locations:{}, connects:{}",
+            loginUser.getUserName(), projectName, name, json, description, locations, connects);
         Map<String, Object> result = processDefinitionService.createProcessDefinition(loginUser, projectName, name, json,
-                description, locations, connects);
+            description, locations, connects);
         return returnDataList(result);
     }
 
     /**
      * copy  process definition
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser            login user
+     * @param projectName          project name
      * @param processDefinitionIds process definition ids
-     * @param targetProjectId target project id
+     * @param targetProjectId      target project id
      * @return copy result code
      */
     @ApiOperation(value = "copyProcessDefinition", notes = "COPY_PROCESS_DEFINITION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", required = true, dataType = "String", example = "3,4"),
-            @ApiImplicitParam(name = "targetProjectId", value = "TARGET_PROJECT_ID", required = true, dataType = "Int", example = "10")
+        @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", required = true, dataType = "String", example = "3,4"),
+        @ApiImplicitParam(name = "targetProjectId", value = "TARGET_PROJECT_ID", required = true, dataType = "Int", example = "10")
     })
     @PostMapping(value = "/copy")
     @ResponseStatus(HttpStatus.OK)
@@ -153,28 +153,28 @@ public class ProcessDefinitionController extends BaseController {
                                         @RequestParam(value = "processDefinitionIds", required = true) String processDefinitionIds,
                                         @RequestParam(value = "targetProjectId", required = true) int targetProjectId) {
         logger.info("batch copy process definition, login user:{}, project name:{}, process definition ids:{},target project id:{}",
-                StringUtils.replaceNRTtoUnderline(loginUser.getUserName()),
-                StringUtils.replaceNRTtoUnderline(projectName),
-                StringUtils.replaceNRTtoUnderline(processDefinitionIds),
-                StringUtils.replaceNRTtoUnderline(String.valueOf(targetProjectId)));
+            StringUtils.replaceNRTtoUnderline(loginUser.getUserName()),
+            StringUtils.replaceNRTtoUnderline(projectName),
+            StringUtils.replaceNRTtoUnderline(processDefinitionIds),
+            StringUtils.replaceNRTtoUnderline(String.valueOf(targetProjectId)));
 
         return returnDataList(
-                processDefinitionService.batchCopyProcessDefinition(loginUser, projectName, processDefinitionIds, targetProjectId));
+            processDefinitionService.batchCopyProcessDefinition(loginUser, projectName, processDefinitionIds, targetProjectId));
     }
 
     /**
      * move process definition
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser            login user
+     * @param projectName          project name
      * @param processDefinitionIds process definition ids
-     * @param targetProjectId target project id
+     * @param targetProjectId      target project id
      * @return move result code
      */
     @ApiOperation(value = "moveProcessDefinition", notes = "MOVE_PROCESS_DEFINITION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", required = true, dataType = "String", example = "3,4"),
-            @ApiImplicitParam(name = "targetProjectId", value = "TARGET_PROJECT_ID", required = true, dataType = "Int", example = "10")
+        @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", required = true, dataType = "String", example = "3,4"),
+        @ApiImplicitParam(name = "targetProjectId", value = "TARGET_PROJECT_ID", required = true, dataType = "Int", example = "10")
     })
     @PostMapping(value = "/move")
     @ResponseStatus(HttpStatus.OK)
@@ -184,26 +184,26 @@ public class ProcessDefinitionController extends BaseController {
                                         @RequestParam(value = "processDefinitionIds", required = true) String processDefinitionIds,
                                         @RequestParam(value = "targetProjectId", required = true) int targetProjectId) {
         logger.info("batch move process definition, login user:{}, project name:{}, process definition ids:{},target project id:{}",
-                StringUtils.replaceNRTtoUnderline(loginUser.getUserName()),
-                StringUtils.replaceNRTtoUnderline(projectName),
-                StringUtils.replaceNRTtoUnderline(processDefinitionIds),
-                StringUtils.replaceNRTtoUnderline(String.valueOf(targetProjectId)));
+            StringUtils.replaceNRTtoUnderline(loginUser.getUserName()),
+            StringUtils.replaceNRTtoUnderline(projectName),
+            StringUtils.replaceNRTtoUnderline(processDefinitionIds),
+            StringUtils.replaceNRTtoUnderline(String.valueOf(targetProjectId)));
 
         return returnDataList(
-                processDefinitionService.batchMoveProcessDefinition(loginUser, projectName, processDefinitionIds, targetProjectId));
+            processDefinitionService.batchMoveProcessDefinition(loginUser, projectName, processDefinitionIds, targetProjectId));
     }
 
     /**
      * verify process definition name unique
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
-     * @param name name
+     * @param name        name
      * @return true if process definition name not exists, otherwise false
      */
     @ApiOperation(value = "verify-name", notes = "VERIFY_PROCESS_DEFINITION_NAME_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String")
+        @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String")
     })
     @GetMapping(value = "/verify-name")
     @ResponseStatus(HttpStatus.OK)
@@ -212,7 +212,7 @@ public class ProcessDefinitionController extends BaseController {
                                               @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName,
                                               @RequestParam(value = "name", required = true) String name) {
         logger.info("verify process definition name unique, user:{}, project name:{}, process definition name:{}",
-                loginUser.getUserName(), projectName, name);
+            loginUser.getUserName(), projectName, name);
         Map<String, Object> result = processDefinitionService.verifyProcessDefinitionName(loginUser, projectName, name);
         return returnDataList(result);
     }
@@ -220,25 +220,26 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * update process definition
      *
-     * @param loginUser login user
-     * @param projectName project name
-     * @param name process definition name
-     * @param id process definition id
+     * @param loginUser             login user
+     * @param projectName           project name
+     * @param name                  process definition name
+     * @param id                    process definition id
      * @param processDefinitionJson process definition json
-     * @param description description
-     * @param locations locations for nodes
-     * @param connects connects for nodes
+     * @param description           description
+     * @param locations             locations for nodes
+     * @param connects              connects for nodes
      * @return update result code
      */
 
     @ApiOperation(value = "updateProcessDefinition", notes = "UPDATE_PROCESS_DEFINITION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
-            @ApiImplicitParam(name = "id", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "processDefinitionJson", value = "PROCESS_DEFINITION_JSON", required = true, type = "String"),
-            @ApiImplicitParam(name = "locations", value = "PROCESS_DEFINITION_LOCATIONS", required = true, type = "String"),
-            @ApiImplicitParam(name = "connects", value = "PROCESS_DEFINITION_CONNECTS", required = true, type = "String"),
-            @ApiImplicitParam(name = "description", value = "PROCESS_DEFINITION_DESC", required = false, type = "String"),
+        @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
+        @ApiImplicitParam(name = "id", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "processDefinitionJson", value = "PROCESS_DEFINITION_JSON", required = true, type = "String"),
+        @ApiImplicitParam(name = "locations", value = "PROCESS_DEFINITION_LOCATIONS", required = true, type = "String"),
+        @ApiImplicitParam(name = "connects", value = "PROCESS_DEFINITION_CONNECTS", required = true, type = "String"),
+        @ApiImplicitParam(name = "description", value = "PROCESS_DEFINITION_DESC", required = false, type = "String"),
+        @ApiImplicitParam(name = "releaseState", value = "RELEASE_PROCESS_DEFINITION_NOTES", required = false, dataType = "Int", example = "0")
     })
     @PostMapping(value = "/update")
     @ResponseStatus(HttpStatus.OK)
@@ -250,31 +251,41 @@ public class ProcessDefinitionController extends BaseController {
                                           @RequestParam(value = "processDefinitionJson", required = true) String processDefinitionJson,
                                           @RequestParam(value = "locations", required = false) String locations,
                                           @RequestParam(value = "connects", required = false) String connects,
-                                          @RequestParam(value = "description", required = false) String description) {
+                                          @RequestParam(value = "description", required = false) String description,
+                                          @RequestParam(value = "releaseState", required = false, defaultValue = "0") int releaseState) {
 
         logger.info("login user {}, update process define, project name: {}, process define name: {}, "
-                        + "process_definition_json: {}, desc: {}, locations:{}, connects:{}",
-                loginUser.getUserName(), projectName, name, processDefinitionJson, description, locations, connects);
+                + "process_definition_json: {}, desc: {}, locations:{}, connects:{}",
+            loginUser.getUserName(), projectName, name, processDefinitionJson, description, locations, connects);
         Map<String, Object> result = processDefinitionService.updateProcessDefinition(loginUser, projectName, id, name,
-                processDefinitionJson, description, locations, connects);
+            processDefinitionJson, description, locations, connects);
+        //  If the update fails, the result will be returned directly
+        Status status = (Status) result.get("status");
+        if (status.getCode() != 0) {
+            return returnDataList(result);
+        }
+        //  Judge whether to go online after editing,0 means offline, 1 means online
+        if (releaseState == 1) {
+            result = processDefinitionService.releaseProcessDefinition(loginUser, projectName, id, releaseState);
+        }
         return returnDataList(result);
     }
 
     /**
      * query process definition version paging list info
      *
-     * @param loginUser login user info
-     * @param projectName the process definition project name
-     * @param pageNo the process definition version list current page number
-     * @param pageSize the process definition version list page size
+     * @param loginUser           login user info
+     * @param projectName         the process definition project name
+     * @param pageNo              the process definition version list current page number
+     * @param pageSize            the process definition version list page size
      * @param processDefinitionId the process definition id
      * @return the process definition version list
      */
     @ApiOperation(value = "queryProcessDefinitionVersions", notes = "QUERY_PROCESS_DEFINITION_VERSIONS_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "pageNo", value = "PAGE_NO", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "pageSize", value = "PAGE_SIZE", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "pageNo", value = "PAGE_NO", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "pageSize", value = "PAGE_SIZE", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
     })
     @GetMapping(value = "/versions")
     @ResponseStatus(HttpStatus.OK)
@@ -286,23 +297,23 @@ public class ProcessDefinitionController extends BaseController {
                                                  @RequestParam(value = "processDefinitionId") int processDefinitionId) {
 
         Map<String, Object> result = processDefinitionVersionService.queryProcessDefinitionVersions(loginUser
-                , projectName, pageNo, pageSize, processDefinitionId);
+            , projectName, pageNo, pageSize, processDefinitionId);
         return returnDataList(result);
     }
 
     /**
      * switch certain process definition version
      *
-     * @param loginUser login user info
-     * @param projectName the process definition project name
+     * @param loginUser           login user info
+     * @param projectName         the process definition project name
      * @param processDefinitionId the process definition id
-     * @param version the version user want to switch
+     * @param version             the version user want to switch
      * @return switch version result code
      */
     @ApiOperation(value = "switchProcessDefinitionVersion", notes = "SWITCH_PROCESS_DEFINITION_VERSION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "version", value = "VERSION", required = true, dataType = "Long", example = "100")
+        @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "version", value = "VERSION", required = true, dataType = "Long", example = "100")
     })
     @GetMapping(value = "/version/switch")
     @ResponseStatus(HttpStatus.OK)
@@ -313,23 +324,23 @@ public class ProcessDefinitionController extends BaseController {
                                                  @RequestParam(value = "version") long version) {
 
         Map<String, Object> result = processDefinitionService.switchProcessDefinitionVersion(loginUser, projectName
-                , processDefinitionId, version);
+            , processDefinitionId, version);
         return returnDataList(result);
     }
 
     /**
      * delete the certain process definition version by version and process definition id
      *
-     * @param loginUser login user info
-     * @param projectName the process definition project name
+     * @param loginUser           login user info
+     * @param projectName         the process definition project name
      * @param processDefinitionId process definition id
-     * @param version the process definition version user want to delete
+     * @param version             the process definition version user want to delete
      * @return delete version result code
      */
     @ApiOperation(value = "deleteProcessDefinitionVersion", notes = "DELETE_PROCESS_DEFINITION_VERSION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "version", value = "VERSION", required = true, dataType = "Long", example = "100")
+        @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "version", value = "VERSION", required = true, dataType = "Long", example = "100")
     })
     @GetMapping(value = "/version/delete")
     @ResponseStatus(HttpStatus.OK)
@@ -346,17 +357,17 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * release process definition
      *
-     * @param loginUser login user
-     * @param projectName project name
-     * @param processId process definition id
+     * @param loginUser    login user
+     * @param projectName  project name
+     * @param processId    process definition id
      * @param releaseState release state
      * @return release result code
      */
     @ApiOperation(value = "releaseProcessDefinition", notes = "RELEASE_PROCESS_DEFINITION_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
-            @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "releaseState", value = "PROCESS_DEFINITION_CONNECTS", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "name", value = "PROCESS_DEFINITION_NAME", required = true, type = "String"),
+        @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "releaseState", value = "PROCESS_DEFINITION_CONNECTS", required = true, dataType = "Int", example = "100"),
     })
     @PostMapping(value = "/release")
     @ResponseStatus(HttpStatus.OK)
@@ -367,7 +378,7 @@ public class ProcessDefinitionController extends BaseController {
                                            @RequestParam(value = "releaseState", required = true) int releaseState) {
 
         logger.info("login user {}, release process definition, project name: {}, release state: {}",
-                loginUser.getUserName(), projectName, releaseState);
+            loginUser.getUserName(), projectName, releaseState);
         Map<String, Object> result = processDefinitionService.releaseProcessDefinition(loginUser, projectName, processId, releaseState);
         return returnDataList(result);
     }
@@ -375,14 +386,14 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * query datail of process definition by id
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
-     * @param processId process definition id
+     * @param processId   process definition id
      * @return process definition detail
      */
     @ApiOperation(value = "queryProcessDefinitionById", notes = "QUERY_PROCESS_DEFINITION_BY_ID_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
     })
     @GetMapping(value = "/select-by-id")
     @ResponseStatus(HttpStatus.OK)
@@ -392,7 +403,7 @@ public class ProcessDefinitionController extends BaseController {
                                              @RequestParam("processId") Integer processId
     ) {
         logger.info("query detail of process definition, login user:{}, project name:{}, process definition id:{}",
-                loginUser.getUserName(), projectName, processId);
+            loginUser.getUserName(), projectName, processId);
         Map<String, Object> result = processDefinitionService.queryProcessDefinitionById(loginUser, projectName, processId);
         return returnDataList(result);
     }
@@ -423,7 +434,7 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * query Process definition list
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
      * @return process definition list
      */
@@ -435,7 +446,7 @@ public class ProcessDefinitionController extends BaseController {
                                              @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName
     ) {
         logger.info("query process definition list, login user:{}, project name:{}",
-                loginUser.getUserName(), projectName);
+            loginUser.getUserName(), projectName);
         Map<String, Object> result = processDefinitionService.queryProcessDefinitionList(loginUser, projectName);
         return returnDataList(result);
     }
@@ -443,20 +454,20 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * query process definition list paging
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
-     * @param searchVal search value
-     * @param pageNo page number
-     * @param pageSize page size
-     * @param userId user id
+     * @param searchVal   search value
+     * @param pageNo      page number
+     * @param pageSize    page size
+     * @param userId      user id
      * @return process definition page
      */
     @ApiOperation(value = "queryProcessDefinitionListPaging", notes = "QUERY_PROCESS_DEFINITION_LIST_PAGING_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "pageNo", value = "PAGE_NO", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "searchVal", value = "SEARCH_VAL", required = false, type = "String"),
-            @ApiImplicitParam(name = "userId", value = "USER_ID", required = false, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "pageSize", value = "PAGE_SIZE", required = true, dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "pageNo", value = "PAGE_NO", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "searchVal", value = "SEARCH_VAL", required = false, type = "String"),
+        @ApiImplicitParam(name = "userId", value = "USER_ID", required = false, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "pageSize", value = "PAGE_SIZE", required = true, dataType = "Int", example = "100")
     })
     @GetMapping(value = "/list-paging")
     @ResponseStatus(HttpStatus.OK)
@@ -480,16 +491,16 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * encapsulation treeview structure
      *
-     * @param loginUser login user
+     * @param loginUser   login user
      * @param projectName project name
-     * @param id process definition id
-     * @param limit limit
+     * @param id          process definition id
+     * @param limit       limit
      * @return tree view json data
      */
     @ApiOperation(value = "viewTree", notes = "VIEW_TREE_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
-            @ApiImplicitParam(name = "limit", value = "LIMIT", required = true, dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "processId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100"),
+        @ApiImplicitParam(name = "limit", value = "LIMIT", required = true, dataType = "Int", example = "100")
     })
     @GetMapping(value = "/view-tree")
     @ResponseStatus(HttpStatus.OK)
@@ -505,24 +516,24 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * get tasks list by process definition id
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser           login user
+     * @param projectName         project name
      * @param processDefinitionId process definition id
      * @return task list
      */
     @ApiOperation(value = "getNodeListByDefinitionId", notes = "GET_NODE_LIST_BY_DEFINITION_ID_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", required = true, dataType = "Int", example = "100")
     })
     @GetMapping(value = "gen-task-list")
     @ResponseStatus(HttpStatus.OK)
     @ApiException(GET_TASKS_LIST_BY_PROCESS_DEFINITION_ID_ERROR)
     public Result getNodeListByDefinitionId(
-            @ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
-            @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName,
-            @RequestParam("processDefinitionId") Integer processDefinitionId) throws Exception {
+        @ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
+        @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName,
+        @RequestParam("processDefinitionId") Integer processDefinitionId) throws Exception {
         logger.info("query task node name list by definitionId, login user:{}, project name:{}, id : {}",
-                loginUser.getUserName(), projectName, processDefinitionId);
+            loginUser.getUserName(), projectName, processDefinitionId);
         Map<String, Object> result = processDefinitionService.getTaskNodeListByDefinitionId(processDefinitionId);
         return returnDataList(result);
     }
@@ -530,25 +541,25 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * get tasks list by process definition id
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser               login user
+     * @param projectName             project name
      * @param processDefinitionIdList process definition id list
      * @return node list data
      */
     @ApiOperation(value = "getNodeListByDefinitionIdList", notes = "GET_NODE_LIST_BY_DEFINITION_ID_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionIdList", value = "PROCESS_DEFINITION_ID_LIST", required = true, type = "String")
+        @ApiImplicitParam(name = "processDefinitionIdList", value = "PROCESS_DEFINITION_ID_LIST", required = true, type = "String")
     })
     @GetMapping(value = "get-task-list")
     @ResponseStatus(HttpStatus.OK)
     @ApiException(GET_TASKS_LIST_BY_PROCESS_DEFINITION_ID_ERROR)
     public Result getNodeListByDefinitionIdList(
-            @ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
-            @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName,
-            @RequestParam("processDefinitionIdList") String processDefinitionIdList) {
+        @ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
+        @ApiParam(name = "projectName", value = "PROJECT_NAME", required = true) @PathVariable String projectName,
+        @RequestParam("processDefinitionIdList") String processDefinitionIdList) {
 
         logger.info("query task node name list by definitionId list, login user:{}, project name:{}, id list: {}",
-                loginUser.getUserName(), projectName, processDefinitionIdList);
+            loginUser.getUserName(), projectName, processDefinitionIdList);
         Map<String, Object> result = processDefinitionService.getTaskNodeListByDefinitionIdList(processDefinitionIdList);
         return returnDataList(result);
     }
@@ -556,14 +567,14 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * delete process definition by id
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser           login user
+     * @param projectName         project name
      * @param processDefinitionId process definition id
      * @return delete result code
      */
     @ApiOperation(value = "deleteProcessDefinitionById", notes = "DELETE_PROCESS_DEFINITION_BY_ID_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", dataType = "Int", example = "100")
+        @ApiImplicitParam(name = "processDefinitionId", value = "PROCESS_DEFINITION_ID", dataType = "Int", example = "100")
     })
     @GetMapping(value = "/delete")
     @ResponseStatus(HttpStatus.OK)
@@ -573,7 +584,7 @@ public class ProcessDefinitionController extends BaseController {
                                               @RequestParam("processDefinitionId") Integer processDefinitionId
     ) {
         logger.info("delete process definition by id, login user:{}, project name:{}, process definition id:{}",
-                loginUser.getUserName(), projectName, processDefinitionId);
+            loginUser.getUserName(), projectName, processDefinitionId);
         Map<String, Object> result = processDefinitionService.deleteProcessDefinitionById(loginUser, projectName, processDefinitionId);
         return returnDataList(result);
     }
@@ -581,14 +592,14 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * batch delete process definition by ids
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser            login user
+     * @param projectName          project name
      * @param processDefinitionIds process definition id list
      * @return delete result code
      */
     @ApiOperation(value = "batchDeleteProcessDefinitionByIds", notes = "BATCH_DELETE_PROCESS_DEFINITION_BY_IDS_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", type = "String")
+        @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_IDS", type = "String")
     })
     @GetMapping(value = "/batch-delete")
     @ResponseStatus(HttpStatus.OK)
@@ -598,7 +609,7 @@ public class ProcessDefinitionController extends BaseController {
                                                     @RequestParam("processDefinitionIds") String processDefinitionIds
     ) {
         logger.info("delete process definition by ids, login user:{}, project name:{}, process definition ids:{}",
-                loginUser.getUserName(), projectName, processDefinitionIds);
+            loginUser.getUserName(), projectName, processDefinitionIds);
 
         Map<String, Object> result = new HashMap<>();
         List<String> deleteFailedIdList = new ArrayList<>();
@@ -631,15 +642,15 @@ public class ProcessDefinitionController extends BaseController {
     /**
      * batch export process definition by ids
      *
-     * @param loginUser login user
-     * @param projectName project name
+     * @param loginUser            login user
+     * @param projectName          project name
      * @param processDefinitionIds process definition ids
-     * @param response response
+     * @param response             response
      */
 
     @ApiOperation(value = "batchExportProcessDefinitionByIds", notes = "BATCH_EXPORT_PROCESS_DEFINITION_BY_IDS_NOTES")
     @ApiImplicitParams({
-            @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_ID", required = true, dataType = "String")
+        @ApiImplicitParam(name = "processDefinitionIds", value = "PROCESS_DEFINITION_ID", required = true, dataType = "String")
     })
     @GetMapping(value = "/export")
     @ResponseBody
@@ -649,7 +660,7 @@ public class ProcessDefinitionController extends BaseController {
                                                   HttpServletResponse response) {
         try {
             logger.info("batch export process definition by ids, login user:{}, project name:{}, process definition ids:{}",
-                    loginUser.getUserName(), projectName, processDefinitionIds);
+                loginUser.getUserName(), projectName, processDefinitionIds);
             processDefinitionService.batchExportProcessDefinitionByIds(loginUser, projectName, processDefinitionIds, response);
         } catch (Exception e) {
             logger.error(Status.BATCH_EXPORT_PROCESS_DEFINE_BY_IDS_ERROR.getMsg(), e);
@@ -670,7 +681,7 @@ public class ProcessDefinitionController extends BaseController {
     public Result queryProcessDefinitionAllByProjectId(@ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
                                                        @RequestParam("projectId") Integer projectId) {
         logger.info("query process definition list, login user:{}, project id:{}",
-                loginUser.getUserName(), projectId);
+            loginUser.getUserName(), projectId);
         Map<String, Object> result = processDefinitionService.queryProcessDefinitionAllByProjectId(projectId);
         return returnDataList(result);
     }

+ 2 - 1
dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/ProcessDefinitionControllerTest.java

@@ -142,6 +142,7 @@ public class ProcessDefinitionControllerTest {
         String description = "desc test";
         String connects = "[]";
         int id = 1;
+        int releaseState = 0;
         Map<String, Object> result = new HashMap<>();
         putMsg(result, Status.SUCCESS);
         result.put("processDefinitionId", 1);
@@ -150,7 +151,7 @@ public class ProcessDefinitionControllerTest {
                 description, locations, connects)).thenReturn(result);
 
         Result response = processDefinitionController.updateProcessDefinition(user, projectName, name, id, json,
-                locations, connects, description);
+                locations, connects, description,releaseState);
         Assert.assertEquals(Status.SUCCESS.getCode(), response.getCode().intValue());
     }