From 70ecdff768d186943d8a985c5ff75a8f4567933d Mon Sep 17 00:00:00 2001 From: ArgonarioD Date: Thu, 14 Jul 2022 09:21:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86update=E6=97=B6?= =?UTF-8?q?=E5=A6=82=E6=9E=9C=E5=AE=8C=E5=85=A8=E6=B2=A1=E6=9C=89=E6=94=B9?= =?UTF-8?q?=E5=8A=A8=E4=BC=9A=E6=8A=A5=E9=94=99=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ProjectGroupServiceImpl.java | 15 ++++++++++++--- .../service/impl/ProjectServiceImpl.java | 3 +++ 2 files changed, 15 insertions(+), 3 deletions(-) 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 6a6b5e4..24ffd0c 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 @@ -19,6 +19,7 @@ import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; /** * @author 张韬 @@ -99,16 +100,24 @@ public class ProjectGroupServiceImpl extends ServiceImpllambdaQuery() + .select(ProjectGroup::getProjectStaffPosition, ProjectGroup::getProjectAccessLevel) + .eq(ProjectGroup::getStaffId, targetId) + .eq(ProjectGroup::getProjectId, projectId) + ); + if (originProjectGroup == null || originProjectGroup.getProjectAccessLevel() == 0) { throw new BadRequestException("该项目中不存在该成员"); } + if (Objects.equals(positions, originProjectGroup.getProjectStaffPosition())) { + return true; + } int targetLevel = 3; if (accessLevel == 0) { throw new ForbiddenException(IProjectGroupService.UNABLE_TO_ACCESS_PROJECT); } - if (accessLevel > 2 || accessLevel >= originTargetLevel) { + if (accessLevel > 2 || accessLevel >= originProjectGroup.getProjectAccessLevel()) { throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); } String[] positionArray = positions.split(","); 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 ed378bf..512dcb7 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 @@ -123,6 +123,9 @@ public class ProjectServiceImpl extends ServiceImpl impl throw new ForbiddenException(ForbiddenException.UNABLE_TO_OPERATE); } Project rawProject = baseMapper.selectById(project.getProjectId()); + if (Objects.equals(project, rawProject)) { + return true; + } if (!project.checkModification(rawProject)) { throw new BadRequestException(BadRequestException.WRONG_PARAMETERS); }