From afe0bc3c2e42813c4db38a99e5b4109d6c1f1137 Mon Sep 17 00:00:00 2001 From: "yang.yongquan" <3395816735@qq.com> Date: Thu, 30 Jun 2022 17:59:32 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=BE=97?= =?UTF-8?q?=E6=89=80=E6=9C=89=E7=B1=BB=EF=BC=8C=E4=B8=AA=E4=BA=BA=E5=8F=82?= =?UTF-8?q?=E4=B8=8E=E9=A1=B9=E7=9B=AE=E6=80=BB=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProjectController.java | 14 ++++++++++++-- .../projectmanagement/entity/ResultProject.java | 2 ++ .../projectmanagement/mapper/ProjectMapper.java | 6 ++++++ .../projectmanagement/service/IProjectService.java | 3 +++ .../service/impl/ProjectServiceImpl.java | 14 +++++++++++--- 5 files changed, 34 insertions(+), 5 deletions(-) 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 08b8360..33cb784 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 @@ -1,6 +1,7 @@ package cn.edu.hfut.rmdjzz.projectmanagement.controller; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Project; +import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectType; import cn.edu.hfut.rmdjzz.projectmanagement.entity.ResultProject; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; import cn.edu.hfut.rmdjzz.projectmanagement.service.impl.ProjectServiceImpl; @@ -10,6 +11,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.*; import java.util.HashMap; @@ -28,14 +30,22 @@ public class ProjectController { @SneakyThrows @GetMapping - public ResponseMap getProjectListOfStaff( + public ResponseList getProjectListOfStaff( @RequestHeader("Token") String token, @RequestParam("pageCurrent") Integer pageCurrent, @RequestParam("pageSize") Integer pageSize, Map paramMap ) { Page page = projectServiceImpl.getOnePageProject(token, pageCurrent, pageSize, paramMap); - return ResponseMap.ofSuccess("返回列表", page); + return ResponseList.ofSuccess("成功返回列表", page); + } + + @SneakyThrows + @GetMapping("/total") + public ResponseMap getProjectNumOfStaff(@RequestHeader("Token") String token) { + Map res = new HashMap<>(); + res.put("totalNum", projectServiceImpl.getAllProjectOfStaff(token)); + return ResponseMap.ofSuccess("获得参与项目总数", res); } } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java index c58b2e7..c5ce5c8 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java @@ -25,5 +25,7 @@ public class ResultProject { Boolean IsDeleted; Boolean IsCompleted; LocalDate projectCloseTime; + Integer CompleteNum; + Integer TotalNum; // 带加的进度 Double projectProcess; } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/mapper/ProjectMapper.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/mapper/ProjectMapper.java index 27aede6..6845739 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/mapper/ProjectMapper.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/mapper/ProjectMapper.java @@ -18,6 +18,12 @@ import java.util.List; */ public interface ProjectMapper extends BaseMapper { + @Select(""" + SELECT COUNT(*) FROM project WHERE project_id IN + (SELECT DISTINCT project_id FROM project_group WHERE staff_id = #{id}) + """) + Long findProjectCount(@Param("id") Integer staffId); + @Select(""" SELECT * FROM (SELECT project_id, 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 f3b029d..3d8a200 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 @@ -14,6 +14,9 @@ import java.util.Map; * @since 2022/6/29 17:08 */ public interface IProjectService extends IService { + + Long getAllProjectOfStaff(String token) throws TokenException; + Page getOnePageProject(String token, Integer pageCurrent, Integer pageSize, Map params) throws TokenException; Boolean setProjectCompleted(String token, Project project) throws TokenException; 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 02c03b6..b7b568e 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 @@ -11,7 +11,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import io.swagger.models.auth.In; import org.springframework.stereotype.Service; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import java.util.Map; @@ -22,6 +24,12 @@ import java.util.Map; @Service public class ProjectServiceImpl extends ServiceImpl implements IProjectService { + @Override + public Long getAllProjectOfStaff(String token) throws TokenException { + Integer staffId = TokenUtils.getStaffId(token); + return baseMapper.findProjectCount(staffId); + } + @Override public Page getOnePageProject( String token, @@ -29,10 +37,10 @@ public class ProjectServiceImpl extends ServiceImpl impl Integer pageSize, Map params ) throws TokenException { - Integer staffId = 2; + Integer staffId = TokenUtils.getStaffId(token); IPage page = new Page<>(pageCurrent, pageSize); - baseMapper.findMyProject(page, staffId, WrapperUtils.allEqAndTimeIntervalQueryWrapper(params, false)); - return (Page) page; + IPage userPage = baseMapper.findMyProject(page, staffId, WrapperUtils.allEqAndTimeIntervalQueryWrapper(params, false)); + return (Page) userPage; } @Override From 51c0e2a1bf8190e6566ecd8fb3ec9444c75f212d Mon Sep 17 00:00:00 2001 From: "yang.yongquan" <3395816735@qq.com> Date: Thu, 30 Jun 2022 18:03:20 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=EF=BC=8C=20=E5=8C=85=E6=8B=AC=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=EF=BC=8C=E4=B8=AA=E4=BA=BA=E9=A1=B9=E7=9B=AE=E6=80=BB=E6=95=B0?= =?UTF-8?q?=EF=BC=8C=E6=89=80=E6=9C=89=E7=B1=BB=E8=8E=B7=E5=BE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectmanagement/config/WebConfig.java | 48 ------------------- .../controller/ProjectTypeController.java | 29 +++++++++++ .../service/IProjectTypeService.java | 15 ++++++ .../service/impl/ProjectTypeServiceImpl.java | 26 ++++++++++ 4 files changed, 70 insertions(+), 48 deletions(-) delete mode 100644 src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java create mode 100644 src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectTypeController.java create mode 100644 src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectTypeService.java create mode 100644 src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectTypeServiceImpl.java diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java deleted file mode 100644 index 8eca476..0000000 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java +++ /dev/null @@ -1,48 +0,0 @@ -package cn.edu.hfut.rmdjzz.projectmanagement.config; - -import cn.edu.hfut.rmdjzz.projectmanagement.interceptor.CorsInterceptor; -import cn.edu.hfut.rmdjzz.projectmanagement.interceptor.TokenInterceptor; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.InterceptorRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; - -/** - * @author 张韬 - * created at 2022/6/28 19:44 - */ -@Configuration -public class WebConfig implements WebMvcConfigurer { - @Bean - public CorsInterceptor getCorsInterceptor() { - return new CorsInterceptor(); - } - - @Bean - public TokenInterceptor getTokenInterceptor() { - return new TokenInterceptor(); - } - - @Override - public void addInterceptors(InterceptorRegistry registry) { - registry.addInterceptor(getCorsInterceptor()).addPathPatterns("/**"); - registry.addInterceptor(getTokenInterceptor()) - .addPathPatterns("/**") - .excludePathPatterns("/staff/login") - .excludePathPatterns("/hello") - .excludePathPatterns("/error") - .excludePathPatterns("/staff/timetest"); - } - /* - @Override - public void addCorsMappings(CorsRegistry registry) { - registry.addMapping("/**") - .allowedOriginPatterns("*") - .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS") - .allowedHeaders("token") - .allowCredentials(true) - .maxAge(3600) - .allowedHeaders("*"); - } - */ -} \ No newline at end of file diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectTypeController.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectTypeController.java new file mode 100644 index 0000000..cd07063 --- /dev/null +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/controller/ProjectTypeController.java @@ -0,0 +1,29 @@ +package cn.edu.hfut.rmdjzz.projectmanagement.controller; + +import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectType; +import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectTypeService; +import cn.edu.hfut.rmdjzz.projectmanagement.utils.response.ResponseList; +import cn.edu.hfut.rmdjzz.projectmanagement.utils.response.ResponseMap; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @author 阳勇权 + * @since 2022/6/30 16:36 + */ +@RestController +@RequestMapping("/projectType") +public class ProjectTypeController { + @Autowired + private IProjectTypeService projectTypeServiceImpl; + + @GetMapping + public ResponseList getAllProjectType() { + List res = projectTypeServiceImpl.findAllProjectType(); + return ResponseList.ofSuccess("获得所有类成功", res); + } +} diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectTypeService.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectTypeService.java new file mode 100644 index 0000000..8cac24b --- /dev/null +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectTypeService.java @@ -0,0 +1,15 @@ +package cn.edu.hfut.rmdjzz.projectmanagement.service; + +import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectType; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + * @author 阳勇权 + * @since 2022/6/30 16:27 + */ +public interface IProjectTypeService extends IService { + List findAllProjectType(); + +} diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectTypeServiceImpl.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectTypeServiceImpl.java new file mode 100644 index 0000000..ed7ed39 --- /dev/null +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/impl/ProjectTypeServiceImpl.java @@ -0,0 +1,26 @@ +package cn.edu.hfut.rmdjzz.projectmanagement.service.impl; + +import cn.edu.hfut.rmdjzz.projectmanagement.entity.Project; +import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectType; +import cn.edu.hfut.rmdjzz.projectmanagement.mapper.ProjectMapper; +import cn.edu.hfut.rmdjzz.projectmanagement.mapper.ProjectTypeMapper; +import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; +import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectTypeService; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author 阳勇权 + * @since 2022/6/30 16:28 + */ +@Service +public class ProjectTypeServiceImpl extends ServiceImpl implements IProjectTypeService { + + @Override + public List findAllProjectType() { + return baseMapper.selectList(Wrappers.lambdaQuery().ne(ProjectType::getProjectClassId, 0)); + } +} From 82adc61995ff9b5678cd000670bef980af410445 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, 30 Jun 2022 18:07:36 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E8=BF=98=E5=8E=9F=E4=BA=86=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectmanagement/config/WebConfig.java | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java new file mode 100644 index 0000000..8eca476 --- /dev/null +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/config/WebConfig.java @@ -0,0 +1,48 @@ +package cn.edu.hfut.rmdjzz.projectmanagement.config; + +import cn.edu.hfut.rmdjzz.projectmanagement.interceptor.CorsInterceptor; +import cn.edu.hfut.rmdjzz.projectmanagement.interceptor.TokenInterceptor; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +/** + * @author 张韬 + * created at 2022/6/28 19:44 + */ +@Configuration +public class WebConfig implements WebMvcConfigurer { + @Bean + public CorsInterceptor getCorsInterceptor() { + return new CorsInterceptor(); + } + + @Bean + public TokenInterceptor getTokenInterceptor() { + return new TokenInterceptor(); + } + + @Override + public void addInterceptors(InterceptorRegistry registry) { + registry.addInterceptor(getCorsInterceptor()).addPathPatterns("/**"); + registry.addInterceptor(getTokenInterceptor()) + .addPathPatterns("/**") + .excludePathPatterns("/staff/login") + .excludePathPatterns("/hello") + .excludePathPatterns("/error") + .excludePathPatterns("/staff/timetest"); + } + /* + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/**") + .allowedOriginPatterns("*") + .allowedMethods("GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS") + .allowedHeaders("token") + .allowCredentials(true) + .maxAge(3600) + .allowedHeaders("*"); + } + */ +} \ No newline at end of file From 8183b3963c65bc4f89d049de36a3809ec89710ba Mon Sep 17 00:00:00 2001 From: "yang.yongquan" <3395816735@qq.com> Date: Thu, 30 Jun 2022 18:14:52 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E4=BA=86=E7=BB=93?= =?UTF-8?q?=E9=A1=B9=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java index 71d71ac..ec432ee 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java @@ -22,6 +22,7 @@ public class Project { private LocalDate projectFirstTestTime; private LocalDate projectFinalTestTime; private LocalDate projectEndTime; + private LocalDate projectCloseTime; private String projectAbbreviation; private Integer projectClassId; private Integer projectSubclassId; From ac9b8feb33db4d9ab9c7901e73d92d89a9b533d0 Mon Sep 17 00:00:00 2001 From: "yang.yongquan" <3395816735@qq.com> Date: Thu, 30 Jun 2022 18:37:11 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E9=A1=B9=E7=9B=AE=E8=BF=9B=E5=BA=A6=E7=9A=84=E4=B8=A4?= =?UTF-8?q?=E4=B8=AA=E8=BF=94=E5=9B=9E=E5=80=BC=20=E5=88=86=E5=88=AB?= =?UTF-8?q?=E4=B8=BA50=EF=BC=8C=20100?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hfut/rmdjzz/projectmanagement/entity/ResultProject.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java index c5ce5c8..b6bf32f 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/ResultProject.java @@ -13,7 +13,6 @@ import java.time.LocalDate; * @since 2022/6/29 20:45 */ @Data -@NoArgsConstructor @AllArgsConstructor public class ResultProject { Integer projectId; @@ -27,5 +26,9 @@ public class ResultProject { LocalDate projectCloseTime; Integer CompleteNum; Integer TotalNum; + ResultProject() { + CompleteNum = 50; + TotalNum = 100; + } // 带加的进度 Double projectProcess; } From 592cca7f6a891ebd2d53aab64beaa69169503214 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, 30 Jun 2022 18:48:14 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BA=86=E7=BB=93?= =?UTF-8?q?=E9=A1=B9=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProjectController.java | 7 +++++++ .../projectmanagement/entity/Project.java | 2 +- .../service/IProjectService.java | 3 ++- .../service/impl/ProjectServiceImpl.java | 20 +++++++++++++++---- 4 files changed, 26 insertions(+), 6 deletions(-) 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 33cb784..9ebdf2e 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 @@ -48,4 +48,11 @@ public class ProjectController { return ResponseMap.ofSuccess("获得参与项目总数", res); } + @SneakyThrows + @PostMapping("/complete") + public ResponseMap completeProject(@RequestHeader("Token") String token,@RequestBody Map map){ + Integer targetProjectId=(Integer)map.get("projectId"); + projectServiceImpl.setProjectCompleted(token, targetProjectId); + return ResponseMap.ofSuccess("操作成功"); + } } diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java index ec432ee..3deb310 100644 --- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java +++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/entity/Project.java @@ -36,6 +36,6 @@ public class Project { private String projectDescription; private Boolean IsCompleted; @TableLogic - private Boolean deleted; + private Boolean isDeleted; private Integer projectCreator; } 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 3d8a200..80b8eec 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 @@ -2,6 +2,7 @@ package cn.edu.hfut.rmdjzz.projectmanagement.service; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Project; import cn.edu.hfut.rmdjzz.projectmanagement.entity.ResultProject; +import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; import cn.edu.hfut.rmdjzz.projectmanagement.exception.TokenException; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -19,7 +20,7 @@ public interface IProjectService extends IService { Page getOnePageProject(String token, Integer pageCurrent, Integer pageSize, Map params) throws TokenException; - Boolean setProjectCompleted(String token, Project project) throws TokenException; + Boolean setProjectCompleted(String token, Integer projectId) throws TokenException, BadRequestException; Boolean makeANewProject(Project project) throws TokenException; } 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 b7b568e..bb1151b 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 @@ -2,6 +2,7 @@ package cn.edu.hfut.rmdjzz.projectmanagement.service.impl; import cn.edu.hfut.rmdjzz.projectmanagement.entity.Project; import cn.edu.hfut.rmdjzz.projectmanagement.entity.ResultProject; +import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException; import cn.edu.hfut.rmdjzz.projectmanagement.exception.TokenException; import cn.edu.hfut.rmdjzz.projectmanagement.mapper.ProjectMapper; import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectService; @@ -15,7 +16,9 @@ import io.swagger.models.auth.In; import org.springframework.stereotype.Service; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import java.time.LocalDate; import java.util.Map; +import java.util.Objects; /** * @author 阳勇权 @@ -37,18 +40,27 @@ public class ProjectServiceImpl extends ServiceImpl impl Integer pageSize, Map params ) throws TokenException { - Integer staffId = TokenUtils.getStaffId(token); + Integer staffId = 2; IPage page = new Page<>(pageCurrent, pageSize); IPage userPage = baseMapper.findMyProject(page, staffId, WrapperUtils.allEqAndTimeIntervalQueryWrapper(params, false)); return (Page) userPage; } @Override - public Boolean setProjectCompleted(String token, Project project) throws TokenException { + public Boolean setProjectCompleted(String token, Integer projectId) throws TokenException, BadRequestException { Integer staffId = TokenUtils.getStaffId(token); + Project project=new Project(); + project.setProjectId(projectId); Project targetProject = baseMapper.selectOne(Wrappers.lambdaQuery().eq(Project::getProjectId, project.getProjectId())); - - return null; + if(targetProject==null) + throw new BadRequestException("项目不存在"); + if(!Objects.equals(staffId, targetProject.getProjectCreator())) + throw new BadRequestException("用户请求非法"); + targetProject.setIsCompleted(true); + targetProject.setProjectCloseTime(LocalDate.now()); + if(baseMapper.updateById(targetProject)==1) + return true; + throw new BadRequestException("操作失败"); } @Override From 63bcda51d7de8deaf57d3614115dd981bad1028f 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, 30 Jun 2022 18:56:08 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E9=87=8D=E5=A4=8D=E7=BB=93=E9=A1=B9=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../projectmanagement/service/impl/ProjectServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) 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 bb1151b..eb46a9d 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 @@ -56,6 +56,8 @@ public class ProjectServiceImpl extends ServiceImpl impl throw new BadRequestException("项目不存在"); if(!Objects.equals(staffId, targetProject.getProjectCreator())) throw new BadRequestException("用户请求非法"); + if(targetProject.getIsCompleted()) + throw new BadRequestException("该项目已结项"); targetProject.setIsCompleted(true); targetProject.setProjectCloseTime(LocalDate.now()); if(baseMapper.updateById(targetProject)==1)