From cf434ffaceff7b3ff5872f861687b927f1d545d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E5=B0=81=E7=BE=BD?= <2360164671@qq.com> Date: Thu, 7 Jul 2022 12:06:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E5=B7=B2=E7=BB=93?= =?UTF-8?q?=E9=A1=B9=E9=A1=B9=E7=9B=AE=E7=9A=84=E5=B7=A5=E4=BD=9C=E9=A1=B9?= =?UTF-8?q?=E5=8F=98=E6=9B=B4=E6=93=8D=E4=BD=9C=E9=98=BB=E6=AD=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProjectGroupController.java | 3 --- .../projectmanagement/controller/TaskController.java | 11 ++++++++++- .../projectmanagement/service/IProjectService.java | 2 ++ .../service/impl/ProjectServiceImpl.java | 7 +++++++ 4 files changed, 19 insertions(+), 4 deletions(-) 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 aa02e34..4568b70 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,9 +8,6 @@ import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseMap; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import io.swagger.v3.oas.annotations.Parameter; -import io.swagger.v3.oas.annotations.media.Content; -import io.swagger.v3.oas.annotations.media.Schema; -import io.swagger.v3.oas.annotations.media.SchemaProperty; import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; 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 3dd7b95..1bd307c 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 @@ -2,6 +2,8 @@ package cn.edu.hfut.rmdjzz.projectmanagement.controller; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Task; import cn.edu.hfut.rmdjzz.projectmanagement.entity.dto.TaskDto; +import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; +import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; import cn.edu.hfut.rmdjzz.projectmanagement.service.ITaskService; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList; import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseMap; @@ -20,7 +22,8 @@ import java.util.List; public class TaskController { @Autowired private ITaskService taskService; - + @Autowired + private IProjectService projectService; @SneakyThrows @GetMapping("/{fatherId}/subtask") public ResponseList getSubTaskList( @@ -57,6 +60,8 @@ public class TaskController { @PathVariable("projectId") Integer projectId, @RequestBody Task task ) { + if(!projectService.checkOpenStatus(projectId)) + throw new BadRequestException("项目未开放"); task.setTaskProjectId(projectId); taskService.insertTask(token, task); return ResponseMap.ofSuccess("操作成功"); @@ -70,6 +75,8 @@ public class TaskController { @PathVariable("taskId") Long taskId, @RequestBody Task task ) { + if(!projectService.checkOpenStatus(projectId)) + throw new BadRequestException("项目未开放"); task.setTaskProjectId(projectId); task.setTaskId(taskId); taskService.modifyTask(token, task); @@ -83,6 +90,8 @@ public class TaskController { @PathVariable("projectId") Integer projectId, @PathVariable("taskId") Long taskId ) { + if(!projectService.checkOpenStatus(projectId)) + throw new BadRequestException("项目未开放"); taskService.deleteTaskAndSubTask(token, projectId, taskId); return ResponseMap.ofSuccess("删除成功"); } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectService.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectService.java index 7915e5e..920aaec 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectService.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectService.java @@ -22,4 +22,6 @@ public interface IProjectService extends IService { Boolean setProjectCompleted(String token, Integer projectId) throws BadRequestException; Boolean createProject(String token, Project project) throws BadRequestException; + + Boolean checkOpenStatus(Integer projectId); } 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 439d92e..2b02783 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 @@ -93,4 +93,11 @@ public class ProjectServiceImpl extends ServiceImpl impl } return false; } + + public Boolean checkOpenStatus(Integer projectId) { + if (projectId == null || projectId < 1) + return false; + Project project = baseMapper.selectOne(Wrappers.lambdaQuery().eq(Project::getProjectId, projectId)); + return project != null && !project.getCompleted(); + } }