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] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=88=97=E8=A1=A8=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=BE=97=E6=89=80?= =?UTF-8?q?=E6=9C=89=E7=B1=BB=EF=BC=8C=E4=B8=AA=E4=BA=BA=E5=8F=82=E4=B8=8E?= =?UTF-8?q?=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