From 93a0d7ba2832a60ff12d7b2275652919118fb4a9 Mon Sep 17 00:00:00 2001
From: ShiPengHui <1527550984@qq.com>
Date: Wed, 6 Jul 2022 17:26:13 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B8=A6=E6=9D=83=E9=99=90=E7=9A=84=E9=A1=B9?=
=?UTF-8?q?=E7=9B=AE=E6=88=90=E5=91=98id=E6=9F=A5=E8=AF=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 10 ++++++++++
.../controller/ProjectGroupController.java | 10 +++-------
.../projectmanagement/mapper/ProjectMapper.java | 2 +-
.../service/IProjectGroupService.java | 3 ++-
.../service/impl/ProjectGroupServiceImpl.java | 12 +++++++++---
5 files changed, 25 insertions(+), 12 deletions(-)
diff --git a/pom.xml b/pom.xml
index 1547933..74203e2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,6 +15,8 @@
ProjectManagementBackend
17
+ ${java.version}
+ ${java.version}
@@ -154,6 +156,14 @@
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ 15
+
+
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 3141609..75fefcd 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
@@ -1,14 +1,10 @@
package cn.edu.hfut.rmdjzz.projectmanagement.controller;
-import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException;
import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService;
import cn.edu.hfut.rmdjzz.projectmanagement.utils.http.ResponseList;
import lombok.SneakyThrows;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import java.util.List;
@@ -25,8 +21,8 @@ public class ProjectGroupController {
@SneakyThrows
@GetMapping
- public ResponseList getGroupNumber(@PathVariable Integer projectId) {
- List res = projectGroupService.findAllProjectNumber(projectId);
+ public ResponseList getGroupNumber(@PathVariable Integer projectId, @RequestHeader("Token") String token) {
+ List res = projectGroupService.findAllProjectNumber(token, projectId);
return ResponseList.ofSuccess("查询成功", res);
}
}
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 a62c50d..d4fd88c 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,7 +18,7 @@ import org.apache.ibatis.annotations.Select;
public interface ProjectMapper extends BaseMapper {
@Select("""
- SELECT COUNT(*) FROM project WHERE project_id IN
+ 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);
diff --git a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectGroupService.java b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectGroupService.java
index 3f63b5c..e612f6c 100644
--- a/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectGroupService.java
+++ b/src/main/java/cn/edu/hfut/rmdjzz/projectmanagement/service/IProjectGroupService.java
@@ -2,6 +2,7 @@ package cn.edu.hfut.rmdjzz.projectmanagement.service;
import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectGroup;
import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException;
+import cn.edu.hfut.rmdjzz.projectmanagement.exception.TokenException;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -18,5 +19,5 @@ public interface IProjectGroupService extends IService {
*/
Integer getUserLevelInGroup(String token, Integer projectId);
- List findAllProjectNumber(Integer projectId) throws BadRequestException;
+ List findAllProjectNumber(String token, Integer projectId) throws TokenException, BadRequestException;
}
\ No newline at end of file
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 4d5d953..6e0e592 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
@@ -2,6 +2,7 @@ package cn.edu.hfut.rmdjzz.projectmanagement.service.impl;
import cn.edu.hfut.rmdjzz.projectmanagement.entity.ProjectGroup;
import cn.edu.hfut.rmdjzz.projectmanagement.exception.BadRequestException;
+import cn.edu.hfut.rmdjzz.projectmanagement.exception.TokenException;
import cn.edu.hfut.rmdjzz.projectmanagement.mapper.ProjectGroupMapper;
import cn.edu.hfut.rmdjzz.projectmanagement.service.IProjectGroupService;
import cn.edu.hfut.rmdjzz.projectmanagement.utils.TokenUtils;
@@ -48,14 +49,19 @@ public class ProjectGroupServiceImpl extends ServiceImpl findAllProjectNumber(Integer projectId) throws BadRequestException {
+ public List findAllProjectNumber(String token, Integer projectId) throws TokenException, BadRequestException {
List res = new ArrayList<>();
+ Integer staffId = TokenUtils.getStaffId(token);
List targetProject = baseMapper.selectList(Wrappers.lambdaQuery().eq(ProjectGroup::getProjectId, projectId));
+
+
if (targetProject.size() == 0)
throw new BadRequestException("项目不存在");
- for (int i = 0; i < targetProject.size(); i++) {
- res.add(targetProject.get(i).getStaffId());
+ for (ProjectGroup projectGroup : targetProject) {
+ res.add(projectGroup.getStaffId());
}
+ if(!res.contains(staffId))
+ throw new BadRequestException("用户请求非法");
return res;
}
}