Browse Source

投标直通车

master
陈裕财 3 years ago
parent
commit
59c12fda92
  1. 2
      xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java
  2. 114
      xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java

2
xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java

@ -226,7 +226,7 @@ public class XmGroupController {
if(!StringUtils.hasText(xmGroup.getProductId())){ if(!StringUtils.hasText(xmGroup.getProductId())){
return ResponseHelper.failed("productId-0","产品编号不能为空"); return ResponseHelper.failed("productId-0","产品编号不能为空");
} }
XmProduct xmProduct = xmProductService.selectOneById(xmGroup.getProductId());
XmProduct xmProduct = xmProductService.getProductFromCache(xmGroup.getProductId());
if(xmProduct==null){ if(xmProduct==null){
return ResponseHelper.failed("product-0","产品已不存在"); return ResponseHelper.failed("product-0","产品已不存在");
} }

114
xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java

@ -120,24 +120,49 @@ public class XmGroupUserController {
} }
String pgClass=gu.getPgClass(); String pgClass=gu.getPgClass();
User user=LoginUtils.getCurrentUserInfo(); User user=LoginUtils.getCurrentUserInfo();
if(!StringUtils.hasText(gu.getProjectId())){
return ResponseHelper.failed("projectId-0","请上送小组归属项目编号");
}
String name="";
if("0".equals(pgClass)){
if(!StringUtils.hasText(gu.getProjectId())){
return ResponseHelper.failed("projectId-0","请上送小组归属项目编号");
}
XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId());
if(xmProject==null){
return ResponseHelper.failed("product-0","产品已不存在");
}
if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId());
if(xmProject==null){
return ResponseHelper.failed("product-0","产品已不存在");
}
name=xmProject.getName();
if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
}
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。");
}
} }
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。");
}else if("1".equals(pgClass)){
if(!StringUtils.hasText(gu.getProductId())){
return ResponseHelper.failed("productId-0","请上送小组归属产品编号");
}
XmProduct product=this.xmProductService.getProductFromCache(gu.getProductId());
if(product==null){
return ResponseHelper.failed("product-0","产品已不存在");
}
name=product.getProductName();
if(!xmGroupService.checkUserIsProductAdm(product, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProductGroupFromCache(product.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
}
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。");
}
} }
} }
if(xmGroupUserService.countByWhere(gu)>0){ if(xmGroupUserService.countByWhere(gu)>0){
tips.setFailureMsg("该用户已在小组中"); tips.setFailureMsg("该用户已在小组中");
m.put("tips", tips); m.put("tips", tips);
@ -150,7 +175,7 @@ public class XmGroupUserController {
List<Map<String,Object>> users=new ArrayList<>(); List<Map<String,Object>> users=new ArrayList<>();
users.add(usermap); users.add(usermap);
pushMsgService.pushJoinChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users); pushMsgService.pushJoinChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users);
notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"恭喜您加入项目【"+xmProject.getName()+"】");
notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"恭喜您加入"+("0".equals(pgClass)?"项目":"产品")+"【"+name+"】");
if("1".equals(pgClass)){ if("1".equals(pgClass)){
xmGroupService.clearProductGroup(gu.getProductId()); xmGroupService.clearProductGroup(gu.getProductId());
xmRecordService.addXmGroupRecord(gu.getProductId(),gu.getGroupId(), "产品-团队-新增小组成员", "增加组员["+gu.getUsername()+"]",gu.getUserid(),null); xmRecordService.addXmGroupRecord(gu.getProductId(),gu.getGroupId(), "产品-团队-新增小组成员", "增加组员["+gu.getUsername()+"]",gu.getUserid(),null);
@ -192,32 +217,61 @@ public class XmGroupUserController {
if(!StringUtils.hasText(gu.getProjectId())){ if(!StringUtils.hasText(gu.getProjectId())){
return ResponseHelper.failed("projectId-0","请上送小组归属项目编号"); return ResponseHelper.failed("projectId-0","请上送小组归属项目编号");
} }
XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId());
if(xmProject==null){
return ResponseHelper.failed("project-0","项目已不存在");
}
if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
String name="";
if("0".equals(pgClass)){
XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId());
if(xmProject==null){
return ResponseHelper.failed("project-0","项目已不存在");
} }
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。");
name=xmProject.getName();
if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
}
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。");
}
}
}else{
XmProduct xmProduct=this.xmProductService.getProductFromCache(gu.getProductId());
if(xmProduct==null){
return ResponseHelper.failed("productId-0","产品已不存在");
}
name=xmProduct.getProductName();
if(!xmGroupService.checkUserIsProductAdm(xmProduct, user.getUserid())){
XmGroupVo xmGroupVo=this.xmGroupService.getProductGroupFromCache(xmProduct.getId(),gu.getGroupId());
if(xmGroupVo==null){
return ResponseHelper.failed("group-0","小组已不存在");
}
boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid());
if(isHead==false){
return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。");
}
} }
} }
xmGroupUserService.deleteByPk(gu); xmGroupUserService.deleteByPk(gu);
Map<String,Object> usermap=new HashMap<>(); Map<String,Object> usermap=new HashMap<>();
usermap.put("userid", gu.getUserid()); usermap.put("userid", gu.getUserid());
usermap.put("username", gu.getUsername()); usermap.put("username", gu.getUsername());
List<Map<String,Object>> users=new ArrayList<>(); List<Map<String,Object>> users=new ArrayList<>();
users.add(usermap); users.add(usermap);
notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"您离开项目【"+xmProject.getName()+"】中的小组【"+gu.getGroupId()+"】");
notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"您离开"+("0".equals(pgClass)?"项目":"产品")+"【"+name+"】中的小组【"+gu.getGroupId()+"】");
pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users); pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users);
xmGroupService.clearProjectGroup(gu.getProjectId());
xmRecordService.addXmGroupRecord(gu.getProjectId(),gu.getGroupId(), "项目-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null);
if("1".equals(pgClass)){
xmGroupService.clearProductGroup(gu.getProductId());
xmRecordService.addXmProductRecord(gu.getProductId(), "产品-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null);
}else{
xmGroupService.clearProjectGroup(gu.getProjectId());
xmRecordService.addXmGroupRecord(gu.getProjectId(),gu.getGroupId(), "项目-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null);
}
}catch (BizException e) { }catch (BizException e) {

Loading…
Cancel
Save