From f607650c73daeef5f19005bff7f214ff2c1a14fb Mon Sep 17 00:00:00 2001 From: ArgonarioD Date: Fri, 13 Jan 2023 22:45:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=BB=E5=BA=95=E5=B0=86=E9=89=B4=E6=9D=83?= =?UTF-8?q?=E9=83=A8=E5=88=86=E6=8C=AA=E7=A7=BB=E5=88=B0=E5=88=87=E9=9D=A2?= =?UTF-8?q?=E5=A4=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AnnouncementController.java | 5 --- .../controller/ProjectController.java | 11 ++---- .../controller/ProjectGroupController.java | 14 ++++--- .../controller/TaskController.java | 2 - .../projectmanagement/entity/ProjectType.java | 1 - .../projectmanagement/entity/dto/TaskDTO.java | 2 - .../entity/dto/TaskTrendDTO.java | 8 ++-- .../interceptor/CorsInterceptor.java | 5 +-- .../service/ITaskService.java | 5 ++- .../service/impl/ProjectGroupServiceImpl.java | 4 +- .../service/impl/ProjectServiceImpl.java | 4 +- .../service/impl/TaskServiceImpl.java | 39 +++++++++---------- 12 files changed, 43 insertions(+), 57 deletions(-) diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/AnnouncementController.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/AnnouncementController.java index 30f27c6..36cf12d 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/AnnouncementController.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/AnnouncementController.java @@ -4,10 +4,7 @@ import cn.edu.hfut.rmdjzz.projectmanagement.annotation.ProjectAuthorize; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Announcement; import cn.edu.hfut.rmdjzz.projectmanagement.entity.dto.AnnouncementDTO; import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; -import cn.edu.hfut.rmdjzz.projectmanagement.exception.ForbiddenException; import cn.edu.hfut.rmdjzz.projectmanagement.service.IAnnouncementService; -import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseMap; import lombok.SneakyThrows; @@ -24,8 +21,6 @@ public class AnnouncementController { @Autowired private IAnnouncementService announcementService; - @Autowired - private IProjectGroupService projectGroupService; @SneakyThrows @ProjectAuthorize("a != 0") diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectController.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectController.java index 9861934..e22d539 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectController.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectController.java @@ -5,10 +5,7 @@ import cn.edu.hfut.rmdjzz.projectmanagement.annotation.RateLimit; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Project; import cn.edu.hfut.rmdjzz.projectmanagement.entity.dto.ProjectDTO; import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; -import cn.edu.hfut.rmdjzz.projectmanagement.exception.ForbiddenException; -import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.RequestPage; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseMap; @@ -35,8 +32,6 @@ public class ProjectController { @Autowired private IProjectService projectService; - @Autowired - private IProjectGroupService projectGroupService; @Operation(summary = "根据Token获取该员工的ProjectList") @RateLimit(key = "ProjectPage", permitsPerSecond = 50, maxBurstSeconds = 15, timeout = 1200) @@ -50,7 +45,7 @@ public class ProjectController { @Parameter(description = "参数列表见Project实体类,时间可以用xxxxStart与xxxxEnd来确定区间" , required = true) @RequestParam("paramMap") Map paramMap ) { - if(globalAccessLevel == 1) staffId = null; + if (globalAccessLevel == 1) staffId = null; Page result = projectService.pageMyProjects(staffId, page, paramMap); return ResponseList.ofSuccess(result); } @@ -81,9 +76,9 @@ public class ProjectController { @PostMapping("/complete/{projectId}") public ResponseMap completeProject( // @RequestHeader(TokenUtils.HEADER_TOKEN) String token, - @RequestAttribute Project targetProject, + @RequestAttribute Project targetProject/*, @Parameter(description = "只需要传projectId即可,例:{\"projectId\": 1}") - @PathVariable Integer projectId + @PathVariable Integer projectId*/ ) { if (targetProject.getCompleted()) throw new BadRequestException(PROJECT_COMPLETED); diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectGroupController.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectGroupController.java index 5d1508a..4898da9 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectGroupController.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectGroupController.java @@ -8,7 +8,6 @@ import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; import cn.edu.hfut.rmdjzz.projectmanagement.service.IStaffService; import cn.edu.hfut.rmdjzz.projectmanagement.service.ITaskService; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.ValidateUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.RequestPage; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; @@ -85,6 +84,7 @@ public class ProjectGroupController { @Operation(description = "body中只传staffUsername和projectStaffPosition") @SneakyThrows + @ProjectAuthorize("a == 1") @PostMapping public ResponseMap addGroupMember( // @RequestHeader(TokenUtils.HEADER_TOKEN) String token, @@ -99,6 +99,7 @@ public class ProjectGroupController { } @SneakyThrows + @ProjectAuthorize("a == 1") @DeleteMapping("/{staffId}") public ResponseMap deleteGroupMember( // @RequestHeader(TokenUtils.HEADER_TOKEN) String token, @@ -114,6 +115,7 @@ public class ProjectGroupController { @Operation(description = "body中只传projectStaffPosition") @SneakyThrows + @ProjectAuthorize("a > 0 && a <= 2") @PutMapping("/{staffId}") public ResponseMap modifyDesignatedStaffPosition( // @RequestHeader(TokenUtils.HEADER_TOKEN) String token, @@ -140,14 +142,15 @@ public class ProjectGroupController { @Operation(description = "请求体是一个key为taskId,value为staffId的map") @SneakyThrows + @ProjectAuthorize("a > 0 && a <= 2") @PutMapping("/{staffId}/transfer") public ResponseMap transferStaffTasks( - @RequestHeader(TokenUtils.HEADER_TOKEN) String token, +// @RequestHeader(TokenUtils.HEADER_TOKEN) String token, @PathVariable Integer projectId, @PathVariable Integer staffId, @RequestBody Map transferMap ) { - if (taskService.transferStaffTasks(token, projectId, staffId, transferMap)) { + if (taskService.transferStaffTasks(projectId, staffId, transferMap)) { return ResponseMap.ofSuccess(); } throw new BadRequestException(BadRequestException.OPERATE_FAILED); @@ -155,14 +158,15 @@ public class ProjectGroupController { @Operation(description = "将staffId的所有工作项转移至targetStaffId") @SneakyThrows + @ProjectAuthorize("a > 0 && a <= 2") @PutMapping("/{staffId}/transfer/{targetStaffId}") public ResponseMap transferTasksToSingleStaff( - @RequestHeader(TokenUtils.HEADER_TOKEN) String token, +// @RequestHeader(TokenUtils.HEADER_TOKEN) String token, @PathVariable Integer projectId, @PathVariable Integer staffId, @PathVariable Integer targetStaffId ) { - if (taskService.transferTasksToSingleStaff(token, projectId, staffId, targetStaffId)) { + if (taskService.transferTasksToSingleStaff(projectId, staffId, targetStaffId)) { return ResponseMap.ofSuccess(); } throw new BadRequestException(BadRequestException.OPERATE_FAILED); diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/TaskController.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/TaskController.java index 0095235..94ae9a7 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/TaskController.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/TaskController.java @@ -10,8 +10,6 @@ import cn.edu.hfut.rmdjzz.projectmanagement.exception.ForbiddenException; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; import cn.edu.hfut.rmdjzz.projectmanagement.service.ITaskService; -import cn.edu.hfut.rmdjzz.projectmanagement.service.impl.TaskServiceImpl; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseMap; import lombok.SneakyThrows; diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ProjectType.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ProjectType.java index c34a278..e4f421c 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ProjectType.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ProjectType.java @@ -2,7 +2,6 @@ package cn.edu.hfut.rmdjzz.projectmanagement.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; /** diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskDTO.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskDTO.java index e3fe5b4..0bdb1bd 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskDTO.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskDTO.java @@ -1,7 +1,5 @@ package cn.edu.hfut.rmdjzz.projectmanagement.entity.dto; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import lombok.Data; import java.time.LocalDateTime; diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskTrendDTO.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskTrendDTO.java index 7213909..f764f8c 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskTrendDTO.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/dto/TaskTrendDTO.java @@ -2,7 +2,6 @@ package cn.edu.hfut.rmdjzz.projectmanagement.entity.dto; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Task; import lombok.Data; -import lombok.NonNull; import java.time.LocalDate; import java.util.Objects; @@ -18,15 +17,16 @@ public class TaskTrendDTO { Long taskNum; public void changeForUnclosed(TaskTrendDTO taskTrend) { - if(Objects.equals(Task.STATUS_UNCLOSED, taskStatus)) { + if (Objects.equals(Task.STATUS_UNCLOSED, taskStatus)) { taskNum += taskTrend.getTaskNum(); } } + public void changeForClosed(TaskTrendDTO taskTrend) { - if(Objects.equals(Task.STATUS_UNCLOSED, taskStatus)) { + if (Objects.equals(Task.STATUS_UNCLOSED, taskStatus)) { taskNum -= taskTrend.getTaskNum(); } else { - if(Objects.equals(taskTrend.getTaskStatus(), taskStatus)) { + if (Objects.equals(taskTrend.getTaskStatus(), taskStatus)) { taskNum += taskTrend.getTaskNum(); } } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/interceptor/CorsInterceptor.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/interceptor/CorsInterceptor.java index 2e2a95b..ae1e730 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/interceptor/CorsInterceptor.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/interceptor/CorsInterceptor.java @@ -1,5 +1,6 @@ package cn.edu.hfut.rmdjzz.projectmanagement.interceptor; +import org.jetbrains.annotations.NotNull; import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Component; @@ -7,8 +8,6 @@ import org.springframework.web.servlet.HandlerInterceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.util.Enumeration; -import java.util.Iterator; /** * @author 张韬 @@ -18,7 +17,7 @@ import java.util.Iterator; public class CorsInterceptor implements HandlerInterceptor { @Override - public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) { + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, @NotNull Object handler) { response.setHeader("Access-Control-Allow-Origin", "*"); response.setHeader("Access-Control-Allow-Methods", "*"); response.setHeader("Access-Control-Allow-Headers", "Content-Type,Token"); diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/ITaskService.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/ITaskService.java index 81ac9a8..580e9bb 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/ITaskService.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/ITaskService.java @@ -15,6 +15,7 @@ import java.util.Map; * @author 张韬 * created at 2022/7/4 14:49 */ +@SuppressWarnings("UnusedReturnValue") public interface ITaskService extends IService { List listSubtasks(Integer projectId, Long fatherId) throws BadRequestException, ForbiddenException; @@ -48,9 +49,9 @@ public interface ITaskService extends IService { Map> getProjectTaskTrend(Integer projectId) throws ForbiddenException; - Boolean transferStaffTasks(String token, Integer projectId, Integer transferredStaffId, Map transferMap) throws ForbiddenException, BadRequestException; + Boolean transferStaffTasks(Integer projectId, Integer transferredStaffId, Map transferMap) throws ForbiddenException, BadRequestException; - Boolean transferTasksToSingleStaff(String token, Integer projectId, Integer transferredStaffId, Integer targetStaffId) throws ForbiddenException, BadRequestException; + Boolean transferTasksToSingleStaff(Integer projectId, Integer transferredStaffId, Integer targetStaffId) throws ForbiddenException, BadRequestException; Map getProjectProcessOfEveryone(Integer projectId) throws ForbiddenException; } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectGroupServiceImpl.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectGroupServiceImpl.java index ce20207..dc2a817 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectGroupServiceImpl.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectGroupServiceImpl.java @@ -114,12 +114,12 @@ public class ProjectGroupServiceImpl extends ServiceImpl 2 || accessLevel >= originProjectGroup.getProjectAccessLevel()) { throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); - } + }*/ String[] positionArray = positions.split(","); for (String position : positionArray) { position = position.strip(); diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectServiceImpl.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectServiceImpl.java index 3040f7a..6868230 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectServiceImpl.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectServiceImpl.java @@ -8,7 +8,6 @@ import cn.edu.hfut.rmdjzz.projectmanagement.exception.ForbiddenException; import cn.edu.hfut.rmdjzz.projectmanagement.mapper.ProjectMapper; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.WrapperUtils; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.RequestPage; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -63,8 +62,7 @@ public class ProjectServiceImpl extends ServiceImpl impl @Override public Boolean setProjectCompleted( Project targetProject - ) throws BadRequestException, ForbiddenException - { + ) throws BadRequestException, ForbiddenException { // Project targetProject = baseMapper.selectById(project.getProjectId()); // if (targetProject == null) // throw new BadRequestException(BadRequestException.WRONG_PARAMETERS); diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java index 1e97672..6c0f85a 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/TaskServiceImpl.java @@ -10,7 +10,6 @@ import cn.edu.hfut.rmdjzz.projectmanagement.exception.ForbiddenException; import cn.edu.hfut.rmdjzz.projectmanagement.mapper.TaskMapper; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService; import cn.edu.hfut.rmdjzz.projectmanagement.service.ITaskService; -import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.toolkit.SimpleQuery; @@ -106,7 +105,7 @@ public class TaskServiceImpl extends ServiceImpl implements IT } @Transactional(isolation = Isolation.SERIALIZABLE, rollbackFor = Exception.class) - public Boolean closeTaskAndSubTask(Integer staffId, Integer globalAccessLevel, Integer projectId, Long taskId) throws BadRequestException { + public Boolean closeTaskAndSubTask(Integer staffId, Integer globalAccessLevel, Long taskId) throws BadRequestException { Integer level = getHolderLevel(staffId, globalAccessLevel, taskId); // if (projectGroupService.getProjectAccessLevel(token, projectId) == 0) { // throw new BadRequestException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); @@ -367,7 +366,7 @@ public class TaskServiceImpl extends ServiceImpl implements IT task.setTaskClosedTime(LocalDateTime.now()); } if (typeChangeValue == 2) { - closed = closeTaskAndSubTask(staffId, globalAccessLevel, task.getTaskProjectId(), task.getTaskId()); + closed = closeTaskAndSubTask(staffId, globalAccessLevel, task.getTaskId()); } if (Objects.equals(rawTask, task)) { return task; @@ -410,8 +409,8 @@ public class TaskServiceImpl extends ServiceImpl implements IT List taskList = new ArrayList<>(); ListIterator closedIter = closedList.listIterator(); ListIterator unclosedIter = unclosedList.listIterator(); - TaskTrendDTO closedTaskTrend = null; - TaskTrendDTO unclosedTaskTrend = null; + TaskTrendDTO closedTaskTrend; + TaskTrendDTO unclosedTaskTrend; // 关闭与未关闭的任务的中间累加对象 closedTaskTrend = closedIter.next(); @@ -453,8 +452,8 @@ public class TaskServiceImpl extends ServiceImpl implements IT private List getResultTaskStatus(Integer projectId, LocalDate startDate) { List resList = baseMapper.selectClosedTaskTrendBeforeDate(projectId, startDate); List taskList = new ArrayList<>(); - Boolean existClosed = false; - Boolean existCompleted = false; + boolean existClosed = false; + boolean existCompleted = false; for (TaskTrendDTO taskTrendDTO : resList) { if (Objects.equals(Task.STATUS_CLOSED, taskTrendDTO.getTaskStatus())) { existClosed = true; @@ -486,12 +485,12 @@ public class TaskServiceImpl extends ServiceImpl implements IT // FIXME @Transactional(isolation = Isolation.SERIALIZABLE, rollbackFor = Exception.class) @Override - public Boolean transferStaffTasks(String token, Integer projectId, Integer transferredStaffId, Map transferMap) throws ForbiddenException, BadRequestException { - if ( -// projectGroupService.getProjectAccessLevel(token, projectId) == 0 || - projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(transferredStaffId, projectId) == 0) { - throw new ForbiddenException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); - } + public Boolean transferStaffTasks(Integer projectId, Integer transferredStaffId, Map transferMap) throws ForbiddenException, BadRequestException { +// if ( +//// projectGroupService.getProjectAccessLevel(token, projectId) == 0 || +// projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(transferredStaffId, projectId) == 0) { +// throw new ForbiddenException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); +// } // if (projectGroupService.compareProjectAccessLevel(projectId, token, transferredStaffId) > 0) { // throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); // } @@ -542,13 +541,13 @@ public class TaskServiceImpl extends ServiceImpl implements IT // FIXME @Transactional(isolation = Isolation.SERIALIZABLE, rollbackFor = Exception.class) @Override - public Boolean transferTasksToSingleStaff(String token, Integer projectId, Integer transferredStaffId, Integer targetStaffId) throws ForbiddenException, BadRequestException { - if ( -// projectGroupService.getProjectAccessLevel(token, projectId) == 0 || - projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(transferredStaffId, projectId) == 0 - || projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(targetStaffId, projectId) == 0) { - throw new ForbiddenException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); - } + public Boolean transferTasksToSingleStaff(Integer projectId, Integer transferredStaffId, Integer targetStaffId) throws ForbiddenException, BadRequestException { +// if ( +//// projectGroupService.getProjectAccessLevel(token, projectId) == 0 || +// projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(transferredStaffId, projectId) == 0 +// || projectGroupService.getProjectAccessLevelIgnoreGlobalLevel(targetStaffId, projectId) == 0) { +// throw new ForbiddenException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); +// } // if (projectGroupService.compareProjectAccessLevel(projectId, token, transferredStaffId) > 0) { // throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); // }