From a335f5d2c6ad9d0279da3dc125f52a1187dfbd7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Mon, 16 May 2022 00:26:15 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/xm/core/ctrl/XmTaskController.java | 12 ++++++------ .../com/xm/core/ctrl/XmTaskExecuserController.java | 10 +++++----- .../java/com/xm/core/service/XmGroupService.java | 4 ++-- .../mybatis/mapper/xm/core/dao/XmMenuMapper.xml | 2 +- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java index eca6b9c8..5bc91acb 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java @@ -257,7 +257,7 @@ public class XmTaskController { List no=new ArrayList<>(); User user = LoginUtils.getCurrentUserInfo(); for (XmTask xmTaskDb : xmTasksDb) { - tips=groupService.checkIsAdmOrTeamHeadOrAss(user,user.getUserid(),xmTaskDb.getProjectId()); + tips=groupService.checkIsAdmOrTeamHeadOrAss(user,xmTaskDb.getExecutorUserid(),xmTaskDb.getProjectId()); if(!tips.isOk()){ if(user.getUserid().equals(xmTaskDb.getExecutorUserid())||user.getUserid().equals(xmTaskDb.getCreateUserid())){ can.add(xmTaskDb); @@ -977,8 +977,8 @@ public class XmTaskController { }else{ for (XmTask xmTask : pt.getValue()) { if(!user.getUserid().equals(xmTask.getCreateUserid()) && !user.getUserid().equals(xmTask.getExecutorUserid())){ - if(!groupService.checkUserIsOtherUserTeamHeadOrAss(groupVoList,xmTask.getCreateUserid(),user.getUserid())){ - if(!groupService.checkUserIsOtherUserTeamHeadOrAss(groupVoList,xmTask.getExecutorUserid(),user.getUserid())){ + if(!groupService.checkUserIsOtherUserTeamHeadOrAss(groupVoList,user.getUserid(),xmTask.getCreateUserid())){ + if(!groupService.checkUserIsOtherUserTeamHeadOrAss(groupVoList,user.getUserid(),xmTask.getExecutorUserid())){ noAllowTasks.add(xmTask); } } @@ -1067,7 +1067,7 @@ public class XmTaskController { if(!projectId.equals(node.getProjectId()) ){ return ResponseHelper.failed("not-same-project","所有任务必须同属于一个项目"); } - boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,node.getCreateUserid(),user.getUserid()); + boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,user.getUserid(),node.getCreateUserid()); if(!isHead){ noAllowNodes.add(node); @@ -1204,7 +1204,7 @@ public class XmTaskController { pgroups=groupService.getProductGroupVoList(xmTaskDb.getProductId()); } for (XmTask task : xmTaskDbMap.values()) { - boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,task.getCreateUserid(),user.getUserid()); + boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,user.getUserid(),task.getCreateUserid()); if(!isHead){ noAllowTasksDbMap.put(task.getId(),task); }else { @@ -1349,7 +1349,7 @@ public class XmTaskController { boolean isAdm=groupService.checkUserIsProjectAdm(parentTask.getProjectId(),user.getUserid()); if(!isAdm){ for (XmTask task : canOpxmTasks) { - boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,task.getCreateUserid(),user.getUserid()); + boolean isHead=groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups,user.getUserid(),task.getCreateUserid()); if(!isHead){ noAllowTasksDbMap.put(task.getId(),task); }else { diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java index 6e507ab8..a464dce9 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmTaskExecuserController.java @@ -230,7 +230,7 @@ public class XmTaskExecuserController { boolean isPm=groupService.checkUserIsProjectAdm(xmTask.getProjectId(),user.getUserid()); if(!isPm){ List myGgroups=groupService.getProjectGroupVoList(projectId); - boolean isTeamHeader= groupService.checkUserIsOtherUserTeamHeadOrAss(myGgroups,xmTaskExecuser.getCreateUserid(),user.getUserid()); + boolean isTeamHeader= groupService.checkUserIsOtherUserTeamHeadOrAss(myGgroups,user.getUserid(),xmTaskExecuser.getCreateUserid()); if(!isTeamHeader){ return ResponseHelper.failed("no-qx","您无权操作!只有任务负责人、组长、项目管理者可以给任务分配候选人。"); } @@ -368,7 +368,7 @@ public class XmTaskExecuserController { User user=LoginUtils.getCurrentUserInfo(); boolean isTaskCreater=user.getUserid().equals(xmTask.getCreateUserid()); List pgroups=groupService.getProjectGroupVoList(projectId); - boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, xmTaskExecuser.getUserid(), user.getUserid()); + boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, user.getUserid(), xmTaskExecuser.getUserid()); if( isHead || isTaskCreater ) { //放行,组长和任务责任人可以将候选人变更为执行人 } else{ @@ -437,7 +437,7 @@ public class XmTaskExecuserController { String projectId=xmTaskExecuser.getProjectId(); if(!user.getUserid().equals(xmTaskExecuser.getUserid())) { List pgroups=groupService.getProjectGroupVoList(projectId); - boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, xmTaskExecuser.getUserid(), user.getUserid()); + boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, user.getUserid(), xmTaskExecuser.getUserid()); if( !isHead && !isTaskCreater ) { tips.setFailureMsg("无权操作!自己、任务责任人、组长可以修改任务的报价信息"); } @@ -491,7 +491,7 @@ public class XmTaskExecuserController { if(!user.getUserid().equals(xmTaskExecuser.getUserid())) { List pgroups=groupService.getProjectGroupVoList(projectId); - boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, xmTaskExecuser.getUserid(), user.getUserid()); + boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, user.getUserid(), xmTaskExecuser.getUserid()); if( !isHead && !isTaskCreater ) { tips.setFailureMsg("无权操作!任务责任人、组长可以邀请用户成为任务候选人,普通用户可以自己申请成为候选人"); } @@ -536,7 +536,7 @@ public class XmTaskExecuserController { String projectId=xmTaskExecuser.getProjectId(); if(!user.getUserid().equals(xmTaskExecuser.getUserid())) { List pgroups=groupService.getProjectGroupVoList(projectId); - boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, xmTaskExecuser.getUserid(), user.getUserid()); + boolean isHead= groupService.checkUserIsOtherUserTeamHeadOrAss(pgroups, user.getUserid(), xmTaskExecuser.getUserid()); if( !isHead && !isTaskCreater ) { tips.setFailureMsg("无权操作!只有自己、任务责任人、组长可以删除任务执行人."); } diff --git a/xm-core/src/main/java/com/xm/core/service/XmGroupService.java b/xm-core/src/main/java/com/xm/core/service/XmGroupService.java index df27fc02..882de500 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmGroupService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmGroupService.java @@ -398,11 +398,11 @@ public class XmGroupService extends BaseService { /** * 检查某个人是否另外一个人的组长 * @param xmGroupVoList + * @param headUserid 检查headUserid是不是memUserid的组长 * @param memUserid - * @param headUserid * @return */ - public boolean checkUserIsOtherUserTeamHeadOrAss(List xmGroupVoList, String memUserid, String headUserid){ + public boolean checkUserIsOtherUserTeamHeadOrAss(List xmGroupVoList, String headUserid, String memUserid){ if(xmGroupVoList==null || xmGroupVoList.size()==0) { return false; } diff --git a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml index ba51edd0..4412f4ef 100644 --- a/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml +++ b/xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml @@ -222,7 +222,7 @@ #{item} - and ( (p.adm_userid=#{mmUserid} or p.pm_userid=#{mmUserid} or pm.ass_userid=#{mmUserid}) + and ( (p.adm_userid=#{mmUserid} or p.pm_userid=#{mmUserid} or p.ass_userid=#{mmUserid}) or exists( select 1 from xm_menu m where FIND_IN_SET(m.menu_id,res.pid_paths) and m.mm_userid=#{mmUserid} ) )