diff --git a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/SchedulerService.java b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/SchedulerService.java index c1a2835b46..317b40e587 100644 --- a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/SchedulerService.java +++ b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/SchedulerService.java @@ -104,9 +104,9 @@ public class SchedulerService extends BaseService { Project project = projectMapper.queryByName(projectName); // check project auth - Map checkResult = checkAuth(loginUser, projectName, project); - if (checkResult != null) { - return checkResult; + boolean hasProjectAndPerm = projectService.hasProjectAndPerm(loginUser, project, result); + if (!hasProjectAndPerm) { + return result; } // check work flow define release state @@ -186,9 +186,9 @@ public class SchedulerService extends BaseService { Project project = projectMapper.queryByName(projectName); // check project auth - Map checkResult = checkAuth(loginUser, projectName, project); - if (checkResult != null) { - return checkResult; + boolean hasProjectAndPerm = projectService.hasProjectAndPerm(loginUser, project, result); + if (!hasProjectAndPerm) { + return result; } // check schedule exists @@ -276,9 +276,10 @@ public class SchedulerService extends BaseService { Map result = new HashMap(5); Project project = projectMapper.queryByName(projectName); - Map checkResult = checkAuth(loginUser, projectName, project); - if (checkResult != null) { - return checkResult; + // check project auth + boolean hasProjectAndPerm = projectService.hasProjectAndPerm(loginUser, project, result); + if (!hasProjectAndPerm) { + return result; } // check schedule exists @@ -389,9 +390,9 @@ public class SchedulerService extends BaseService { Project project = projectMapper.queryByName(projectName); // check project auth - Map checkResult = checkAuth(loginUser, projectName, project); - if (checkResult != null) { - return checkResult; + boolean hasProjectAndPerm = projectService.hasProjectAndPerm(loginUser, project, result); + if (!hasProjectAndPerm) { + return result; } ProcessDefinition processDefinition = processDao.findProcessDefineById(processDefineId); @@ -426,9 +427,9 @@ public class SchedulerService extends BaseService { Project project = projectMapper.queryByName(projectName); // check project auth - Map checkResult = checkAuth(loginUser, projectName, project); - if (checkResult != null) { - return checkResult; + boolean hasProjectAndPerm = projectService.hasProjectAndPerm(loginUser, project, result); + if (!hasProjectAndPerm) { + return result; } List schedules = scheduleMapper.querySchedulerListByProjectName(projectName); @@ -500,23 +501,6 @@ public class SchedulerService extends BaseService { return false; } - /** - * - * @param loginUser - * @param projectName - * @param project - * @return - */ - private Map checkAuth(User loginUser, String projectName, Project project) { - // check project auth - Map checkResult = projectService.checkProjectAndAuth(loginUser, project, projectName); - Status resultEnum = (Status) checkResult.get(Constants.STATUS); - if (resultEnum != Status.SUCCESS) { - return checkResult; - } - return null; - } - /** * delete schedule by id * @@ -589,7 +573,7 @@ public class SchedulerService extends BaseService { return result; } List selfFireDateList = CronUtils.getSelfFireDateList(startTime, endTime,cronExpression); - result.put(Constants.DATA_LIST, selfFireDateList.stream().map(t -> DateUtils.dateToString(t)).limit(org.apache.dolphinscheduler.common.Constants.PREVIEW_SCHEDULE_EXECUTE_COUNT)); + result.put(Constants.DATA_LIST, selfFireDateList.stream().map(t -> DateUtils.dateToString(t)).limit(Constants.PREVIEW_SCHEDULE_EXECUTE_COUNT)); putMsg(result, Status.SUCCESS); return result; }