diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java index df3aa9eb..37ab28a7 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java @@ -6,7 +6,6 @@ import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.ResponseHelper; import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.mybatis.PageUtils; -import com.mdp.qx.HasQx; import com.mdp.safe.client.entity.User; import com.mdp.safe.client.utils.LoginUtils; import com.mdp.swagger.ApiEntityParams; @@ -112,21 +111,21 @@ public class XmGroupController { } } if(StringUtils.hasText(group.getLeaderUserid()) && !group.getLeaderUserid().equals(groupDb.getLeaderUserid())){ - tips = projectQxService.checkProjectQx(null,project,0,user, groupDb.getLeaderUserid(),groupDb.getLeaderUsername(),null); + tips = projectQxService.checkProjectQx(project,0,user, groupDb.getLeaderUserid(),groupDb.getLeaderUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } - tips=projectQxService.checkProjectScopeQx(null,project,0,group.getLeaderUserid(),group.getLeaderUsername(),null); + tips=projectQxService.checkProjectScopeQx(project,0,group.getLeaderUserid(),group.getLeaderUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } } if(StringUtils.hasText(group.getAssUserid()) && !group.getAssUserid().equals(groupDb.getAssUserid())){ - tips = projectQxService.checkProjectQx(null,project,0,user, groupDb.getAssUserid(),groupDb.getAssUsername(),null); + tips = projectQxService.checkProjectQx(project,0,user, groupDb.getAssUserid(),groupDb.getAssUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } - tips=projectQxService.checkProjectScopeQx(null,project,0,group.getAssUserid(),group.getAssUsername(),null); + tips=projectQxService.checkProjectScopeQx(project,0,group.getAssUserid(),group.getAssUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } @@ -145,7 +144,7 @@ public class XmGroupController { if(!tips.isOk()){ return ResponseHelper.failed(tips); } - tips=productQxService.checkProductScopeQx(null,product,0,group.getLeaderUserid(),group.getLeaderUsername(),null); + tips=productQxService.checkProductScopeQx(product,0,group.getLeaderUserid(),group.getLeaderUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } @@ -155,7 +154,7 @@ public class XmGroupController { if(!tips.isOk()){ return ResponseHelper.failed(tips); } - tips=productQxService.checkProductScopeQx(null,product,0,group.getAssUserid(),group.getAssUsername(),null); + tips=productQxService.checkProductScopeQx(product,0,group.getAssUserid(),group.getAssUsername(),null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } @@ -347,19 +346,19 @@ public class XmGroupController { public Tips checkProductGroupQxForAdd(XmProduct xmProduct,User u,XmGroup xmGroup){ Tips tips=new Tips(); - Map> groupsMap=new HashMap<>(); - tips=productQxService.checkProductQx(groupsMap,xmProduct,0,u); + + tips=productQxService.checkProductQx(xmProduct,0,u); if(!tips.isOk()){ return tips; } if(StringUtils.hasText(xmGroup.getLeaderUserid()) && !xmGroup.getLeaderUserid().equals(u.getUserid())){ - tips=productQxService.checkProductScopeQx(groupsMap,xmProduct,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null); + tips=productQxService.checkProductScopeQx(xmProduct,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null); } if(!tips.isOk()){ return tips; } if(StringUtils.hasText(xmGroup.getAssUserid()) && !xmGroup.getAssUserid().equals(u.getUserid())){ - tips=productQxService.checkProductScopeQx(groupsMap,xmProduct,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null); + tips=productQxService.checkProductScopeQx(xmProduct,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null); } return tips; } @@ -367,19 +366,19 @@ public class XmGroupController { public Tips checkProjectGroupQxForAdd(XmProject project,User u,XmGroup xmGroup){ Tips tips=new Tips(); - Map> groupsMap=new HashMap<>(); - tips=projectQxService.checkProjectQx(groupsMap,project,0,u); + + tips=projectQxService.checkProjectQx(project,0,u); if(!tips.isOk()){ return tips; } if(StringUtils.hasText(xmGroup.getLeaderUserid()) && !xmGroup.getLeaderUserid().equals(u.getUserid())){ - tips=projectQxService.checkProjectScopeQx(groupsMap,project,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null); + tips=projectQxService.checkProjectScopeQx(project,0,xmGroup.getLeaderUserid(),xmGroup.getLeaderUsername(),null); } if(!tips.isOk()){ return tips; } if(StringUtils.hasText(xmGroup.getAssUserid()) && !xmGroup.getAssUserid().equals(u.getUserid())){ - tips=projectQxService.checkProjectScopeQx(groupsMap,project,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null); + tips=projectQxService.checkProjectScopeQx(project,0,xmGroup.getAssUserid(),xmGroup.getAssUsername(),null); } return tips; } @@ -408,7 +407,7 @@ public class XmGroupController { } boolean isPm=xmGroupService.checkUserIsProjectAdm(project,u.getUserid()); if(!isPm) { - tips=projectQxService.checkProjectQx(null,project,0,u,groupDb.getLeaderUserid(),groupDb.getLeaderUsername(), null); + tips=projectQxService.checkProjectQx(project,0,u,groupDb.getLeaderUserid(),groupDb.getLeaderUsername(), null); if(!tips.isOk()){ return ResponseHelper.failed(tips); } diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java index 75e83afb..75dce04d 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java @@ -19,7 +19,6 @@ import com.xm.core.entity.XmTask; import com.xm.core.queue.XmMenuSumParentsPushService; import com.xm.core.service.*; import com.xm.core.vo.BatchChangeParentMenuVo; -import com.xm.core.vo.XmGroupVo; import io.swagger.annotations.*; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -479,8 +478,8 @@ public class XmMenuController { if(xmProduct==null){ return ResponseHelper.failed("product-data-0","产品已不存在"); } - Map> groupsMap=new HashMap<>(); - tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user); + + tips=productQxService.checkProductQx(xmProduct,2,user); if(!tips.isOk()){ return failed(tips); } @@ -488,7 +487,7 @@ public class XmMenuController { String mmUserid= (String) xmMenuMap.get("mmUserid"); String mmUsername= (String) xmMenuMap.get("mmUsername"); if(!user.getUserid().equals(mmUserid)){ - tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,mmUserid,mmUsername,null); + tips=productQxService.checkProductQx(xmProduct,2,user,mmUserid,mmUsername,null); if(!tips.isOk()){ return failed(tips); } @@ -501,7 +500,7 @@ public class XmMenuController { canOper.addAll(xmMenusDb); }else{ for (XmMenu xm : xmMenusDb) { - tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(), xm.getMmUsername(), null); + tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(), xm.getMmUsername(), null); if(tips.isOk()){ canOper.add(xm); }else{ @@ -592,7 +591,7 @@ public class XmMenuController { List canOper=new ArrayList<>(); List noOper=new ArrayList<>(); Map noOperTips=new HashMap<>(); - Map> groupsMap=new HashMap<>(); + XmProduct xmProduct= productService.getProductFromCache(xmMenuDb.getProductId()); if(xmProduct==null){ return ResponseHelper.failed("product-data-0","产品已不存在"); @@ -601,7 +600,7 @@ public class XmMenuController { canOper.addAll(xmMenusDb); }else{ for (XmMenu xm : xmMenusDb) { - tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null); + tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null); if(tips.isOk()){ canOper.add(xm); }else{ @@ -735,7 +734,7 @@ public class XmMenuController { List canOper=new ArrayList<>(); List noOper=new ArrayList<>(); Map noOperTips=new HashMap<>(); - Map> groupsMap=new HashMap<>(); + XmProduct xmProduct= productService.getProductFromCache(xmMenuDb.getProductId()); if(xmProduct==null){ return ResponseHelper.failed("product-data-0","产品已不存在"); @@ -744,7 +743,7 @@ public class XmMenuController { canOper.addAll(xmMenusDb); }else{ for (XmMenu xm : xmMenusDb) { - tips=productQxService.checkProductQx(groupsMap,xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null); + tips=productQxService.checkProductQx(xmProduct,2,user,xm.getMmUserid(),xm.getMmUsername(),null); if(tips.isOk()){ canOper.add(xm); }else{ diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java index 1ba8064e..f1bfdf4e 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java @@ -596,11 +596,11 @@ public class XmQuestionController { } List productNoDel=new ArrayList<>(); - Map> groupsMap=new HashMap<>(); + if(productsMap.size()>0){ for (String productId : productsMap.keySet()) { XmProduct xmProduct=productService.getProductFromCache(productId); - Tips tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user); + Tips tips1=productQxService.checkProductQx(xmProduct,1,user); if(!tips1.isOk()){ productNoDel.addAll(productsMap.get(productId)); for (XmQuestion xmQuestion : productsMap.get(productId)) { @@ -616,7 +616,7 @@ public class XmQuestionController { canOper.addAll(questions); }else if(opType==2){//重新指派,要检查被指派人是否在项目组 for (XmQuestion question : questions) { - tips1=productQxService.checkProductScopeQx(groupsMap,xmProduct,1,question.getHandlerUserid(),question.getHandlerUsername(),null); + tips1=productQxService.checkProductScopeQx(xmProduct,1,question.getHandlerUserid(),question.getHandlerUsername(),null); if(!tips1.isOk()){ productNoDel.add(question); noOperTips.put(question.getId(),tips1); @@ -629,11 +629,11 @@ public class XmQuestionController { }else{ for (XmQuestion question : questions) { if(opType==0){ - tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getCreateUserid(),question.getCreateUsername(),null); + tips1=productQxService.checkProductQx(xmProduct,1,user,question.getCreateUserid(),question.getCreateUsername(),null); }else if(opType==1){ - tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null); + tips1=productQxService.checkProductQx(xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null); }else if(opType==2){ - tips1=productQxService.checkProductQx(groupsMap,xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null); + tips1=productQxService.checkProductQx(xmProduct,1,user,question.getHandlerUserid(),question.getHandlerUsername(),null); } if(!tips1.isOk()){ @@ -667,7 +667,7 @@ public class XmQuestionController { if(projectsMap.size()>0){ for (String projectId : projectsMap.keySet()) { XmProject xmProject=projectService.getProjectFromCache(projectId); - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,1,user); + Tips tips1=projectQxService.checkProjectQx(xmProject,1,user); if(!tips1.isOk()){ noOper.addAll(projectsMap.get(projectId)); for (XmQuestion xmQuestion : projectsMap.get(projectId)) { @@ -683,7 +683,7 @@ public class XmQuestionController { canOper.addAll(questions); }else if(opType==2){//重新指派,要检查被指派人是否在项目组 for (XmQuestion question : questions) { - tips1=projectQxService.checkProjectScopeQx(groupsMap,xmProject,1,question.getHandlerUserid(),question.getHandlerUsername(),null); + tips1=projectQxService.checkProjectScopeQx(xmProject,1,question.getHandlerUserid(),question.getHandlerUsername(),null); if(!tips1.isOk()){ noOper.add(question); noOperTips.put(question.getId(),tips1); @@ -696,11 +696,11 @@ public class XmQuestionController { }else { for (XmQuestion question : questions) { if (opType == 0) { - tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getCreateUserid(), question.getCreateUsername(), null); + tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getCreateUserid(), question.getCreateUsername(), null); } else if (opType == 1) { - tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null); + tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null); } else if (opType == 2) { - tips1 = projectQxService.checkProjectQx(groupsMap, xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null); + tips1 = projectQxService.checkProjectQx( xmProject, 1, user, question.getHandlerUserid(), question.getHandlerUsername(), null); } if (!tips1.isOk()) { 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 ec786b4d..0b80e629 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 @@ -335,7 +335,7 @@ public class XmTaskController { return ResponseHelper.failed("tasks-0","该任务已不存在"); } Map projectMap=new HashMap<>(); - Map> groupsMap=new HashMap<>(); + if(xmTaskMap.containsKey("createUserid")){ String createUserid=(String) xmTaskMap.get("createUserid"); String createUsername=(String) xmTaskMap.get("createUsername"); @@ -344,7 +344,7 @@ public class XmTaskController { for (String project : projects) { XmProject xmProject=xmProjectService.getProjectFromCache(project); projectMap.put(xmProject.getId(),xmProject); - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,createUserid,createUsername,cbranchId); + Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,createUserid,createUsername,cbranchId); if(!tips1.isOk()){ return ResponseHelper.failed(tips1); }; @@ -363,7 +363,7 @@ public class XmTaskController { if(groupService.checkUserIsProjectAdm(xmProject,user.getUserid())){ can.add(xmTaskDb); }else{ - tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); + tips=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); if(!tips.isOk()){ no.add(xmTaskDb); }else{ @@ -777,15 +777,15 @@ public class XmTaskController { XmProject xmProject=xmProjectService.getProjectFromCache(xmTaskDb.getProjectId()); - Map> groupsMap=new HashMap<>(); + if(!groupService.checkUserIsProjectAdm(xmProject,user.getUserid())){ - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); + Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); if(!tips1.isOk()){ return ResponseHelper.failed(tips1); } } - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskVo.getCreateUserid(),xmTaskVo.getCreateUsername(),xmTaskVo.getCbranchId()); + Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskVo.getCreateUserid(),xmTaskVo.getCreateUsername(),xmTaskVo.getCbranchId()); if(!tips1.isOk()){ return ResponseHelper.failed(tips1); } @@ -891,10 +891,10 @@ public class XmTaskController { return ResponseHelper.failed("data-0","任务已不存在"); } XmProject xmProject=xmProjectService.getProjectFromCache(xmTaskDb.getProjectId()); - Map> groupsMap=new HashMap<>(); - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); + + Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getCreateUserid(),xmTaskDb.getCreateUsername(),xmTaskDb.getCbranchId()); if(!tips1.isOk()){ - tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,xmTaskDb.getExecutorUserid(),xmTaskDb.getExecutorUsername(),null); + tips1=projectQxService.checkProjectQx(xmProject,2,user,xmTaskDb.getExecutorUserid(),xmTaskDb.getExecutorUsername(),null); if(!tips1.isOk()){ return ResponseHelper.failed(tips1); } @@ -1263,15 +1263,15 @@ public class XmTaskController { } projectTasks.add(xmTask); } - Map> groupsMap=new HashMap<>(); + for (Map.Entry> pt : projectTasksMap.entrySet()) { XmProject xmProjectDb=this.xmProjectService.getProjectFromCache(pt.getKey()); - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProjectDb,0,user); + Tips tips1=projectQxService.checkProjectQx(xmProjectDb,0,user); if(!tips1.isOk()){ noAllowTasks.addAll(pt.getValue()); }else{ for (XmTask xmTask : pt.getValue()) { - tips1=projectQxService.checkProjectQx(groupsMap,xmProjectDb,0,user, xmTask.getCreateUserid(),xmTask.getCreateUsername(),xmTask.getCbranchId()); + tips1=projectQxService.checkProjectQx(xmProjectDb,0,user, xmTask.getCreateUserid(),xmTask.getCreateUsername(),xmTask.getCbranchId()); if(!tips1.isOk()){ noAllowTasks.add(xmTask); } @@ -1345,8 +1345,8 @@ public class XmTaskController { } String projectId=xmTaskDb.getProjectId(); XmProject xmProject=xmProjectService.getProjectFromCache(projectId); - Map> groupsMap=new HashMap<>(); - tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user); + + tips=projectQxService.checkProjectQx(xmProject,2,user); if(!tips.isOk()){ return ResponseHelper.failed(tips); } @@ -1363,7 +1363,7 @@ public class XmTaskController { canOper.addAll(delNodesDbMap.values()); }else{ for (XmTask node : delNodesDbMap.values()) { - Tips tips1=projectQxService.checkProjectQx(groupsMap,xmProject,2,user,node.getCreateUserid(),node.getCreateUsername(),node.getCbranchId()); + Tips tips1=projectQxService.checkProjectQx(xmProject,2,user,node.getCreateUserid(),node.getCreateUsername(),node.getCbranchId()); if(!tips1.isOk()){ noOper.add(node); noTipsMap.put(tips1.getMsg(),tips1); 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 85877046..494d1005 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 @@ -358,9 +358,9 @@ public class XmTaskExecuserController { if(xmProject==null ){ return ResponseHelper.failed("project-0","项目已不存在"); } - Map> groupsMap=new HashMap<>(); + groupsMap.put(xmProject.getId(),pgroups); - tips=projectQxService.checkProjectQx(groupsMap,xmProject,2,user); + tips=projectQxService.checkProjectQx(xmProject,2,user); if(tips.isOk()) { boolean exists=groupService.checkUserExistsGroup(pgroups, xmTaskExecuser.getUserid()); diff --git a/xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java b/xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java index 93a32577..01c3f37e 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmProjectQxService.java @@ -235,7 +235,7 @@ public class XmProjectQxService { if(xmGroupService.checkUserIsProjectAdm(xmProject,head.getUserid())){ return tips; } - Map> groupsMap=new HashMap<>(); + tips=this.checkProjectScopeQxBatch(xmProject,teamType,head,memUserids); if(!tips.isOk()){ return tips;