|
|
|
@ -33,12 +33,12 @@ import java.util.stream.Collectors; |
|
|
|
|
|
|
|
/** |
|
|
|
* url编制采用rest风格,如对XM.xm_group xm_group的操作有增删改查,对应的url分别为:<br> |
|
|
|
* 新增: xm/xmProjectGroup/add <br> |
|
|
|
* 查询: xm/xmProjectGroup/list<br> |
|
|
|
* 模糊查询: xm/xmProjectGroup/listKey<br> |
|
|
|
* 修改: xm/xmProjectGroup/edit <br> |
|
|
|
* 删除: xm/xmProjectGroup/del<br> |
|
|
|
* 批量删除: xm/xmProjectGroup/batchDel<br> |
|
|
|
* 新增: xm/xmGroup/add <br> |
|
|
|
* 查询: xm/xmGroup/list<br> |
|
|
|
* 模糊查询: xm/xmGroup/listKey<br> |
|
|
|
* 修改: xm/xmGroup/edit <br> |
|
|
|
* 删除: xm/xmGroup/del<br> |
|
|
|
* 批量删除: xm/xmGroup/batchDel<br> |
|
|
|
* 组织 com.qqkj 顶级模块 oa 大模块 xm 小模块 <br> |
|
|
|
* 实体 XmProjectGroup 表 XM.xm_group 当前主键(包括多主键): id; |
|
|
|
***/ |
|
|
|
@ -50,11 +50,11 @@ public class XmGroupController { |
|
|
|
static Log logger=LogFactory.getLog(XmGroupController.class); |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private XmGroupService xmProjectGroupService; |
|
|
|
private XmGroupService xmGroupService; |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
private XmGroupCacheService xmProjectGroupCacheService; |
|
|
|
private XmGroupCacheService xmGroupCacheService; |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private XmProjectService xmProjectService; |
|
|
|
@ -73,7 +73,7 @@ public class XmGroupController { |
|
|
|
@ApiResponses({ |
|
|
|
@ApiResponse(code = 200,response= XmGroup.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|
|
|
}) |
|
|
|
@HasQx(value = "xm_core_xmProjectGroup_updateGroup",name = "批量更新修改项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@HasQx(value = "xm_core_xmGroup_updateGroup",name = "批量更新修改项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@RequestMapping(value="/edit",method=RequestMethod.POST) |
|
|
|
public Map<String,Object> updateGroup(@RequestBody XmGroup group) { |
|
|
|
|
|
|
|
@ -88,38 +88,38 @@ public class XmGroupController { |
|
|
|
return ResponseHelper.failed("id-0","小组编号不能为空"); |
|
|
|
} |
|
|
|
User user=LoginUtils.getCurrentUserInfo(); |
|
|
|
XmGroup groupDb=this.xmProjectGroupService.selectOneObject(new XmGroup(group.getId())); |
|
|
|
XmGroup groupDb=this.xmGroupService.selectOneObject(new XmGroup(group.getId())); |
|
|
|
if(groupDb==null){ |
|
|
|
return ResponseHelper.failed("data-0","小组已不存在。"); |
|
|
|
} |
|
|
|
if("1".equals(groupDb.getPgClass())){ |
|
|
|
XmProduct xmProduct=this.xmProductService.selectOneObject(new XmProduct(groupDb.getProductId())); |
|
|
|
tips=this.xmProjectGroupService.checkProductStatus(xmProduct); |
|
|
|
tips=this.xmGroupService.checkProductStatus(xmProduct); |
|
|
|
if(tips.isOk()==false){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
tips=this.xmProjectGroupService.checkHasEditProdcutGroupQx(user,group,groupDb,xmProduct); |
|
|
|
tips=this.xmGroupService.checkHasEditProdcutGroupQx(user,group,groupDb,xmProduct); |
|
|
|
if(tips.isOk()==false){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
}else{ |
|
|
|
XmProject xmProject=this.xmProjectService.getProjectFromCache(groupDb.getProjectId()); |
|
|
|
tips=this.xmProjectGroupService.checkProjectStatus(xmProject); |
|
|
|
tips=this.xmGroupService.checkProjectStatus(xmProject); |
|
|
|
if(tips.isOk()==false){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
tips=this.xmProjectGroupService.checkHasEditProjectGroupQx(user,group,groupDb,xmProject); |
|
|
|
tips=this.xmGroupService.checkHasEditProjectGroupQx(user,group,groupDb,xmProject); |
|
|
|
if(tips.isOk()==false){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
} |
|
|
|
xmProjectGroupService.parentIdPathsCalcBeforeSave(group); |
|
|
|
tips= xmProjectGroupService.updateGroup(group,groupDb); //列出XmProjectGroup列表 |
|
|
|
xmGroupService.parentIdPathsCalcBeforeSave(group); |
|
|
|
tips= xmGroupService.updateGroup(group,groupDb); //列出XmProjectGroup列表 |
|
|
|
if("1".equals(groupDb.getPgClass())){ |
|
|
|
xmProjectGroupCacheService.clearProductGroup(groupDb.getProductId()); |
|
|
|
xmGroupCacheService.clearProductGroup(groupDb.getProductId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(groupDb.getProductId(),groupDb.getId(),"团队-小组-修改小组","修改小组信息【"+groupDb.getGroupName()+"】"); |
|
|
|
}else { |
|
|
|
xmProjectGroupCacheService.clearProjectGroup(groupDb.getProjectId()); |
|
|
|
xmGroupCacheService.clearProjectGroup(groupDb.getProjectId()); |
|
|
|
xmRecordService.addXmGroupRecord(groupDb.getProjectId(),groupDb.getId(),"团队-小组-修改小组","修改小组信息【"+groupDb.getGroupName()+"】"); |
|
|
|
|
|
|
|
} |
|
|
|
@ -143,26 +143,26 @@ public class XmGroupController { |
|
|
|
@ApiResponses({ |
|
|
|
@ApiResponse(code = 200,response= XmGroup.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|
|
|
}) |
|
|
|
@HasQx(value = "xm_core_xmProjectGroup_getGroups",name = "查找项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@HasQx(value = "xm_core_xmGroup_getGroups",name = "查找项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@RequestMapping(value="/getGroups",method=RequestMethod.GET) |
|
|
|
public Map<String,Object> getGroup(@RequestParam Map<String,Object> params) { |
|
|
|
Map<String,Object> m = new HashMap<>(); |
|
|
|
RequestUtils.transformArray(params, "ids"); |
|
|
|
PageUtils.startPage(params); |
|
|
|
List<XmGroupVo> xmProjectGroupList=new ArrayList<>(); |
|
|
|
List<XmGroupVo> xmGroupList=new ArrayList<>(); |
|
|
|
String iterationId= (String) params.get("iterationId"); |
|
|
|
String projectId= (String) params.get("projectId"); |
|
|
|
String productId= (String) params.get("productId"); |
|
|
|
if(StringUtils.hasText(projectId)){ |
|
|
|
xmProjectGroupList = xmProjectGroupService.getProjectGroupVoList(projectId); //列出XmProjectGroup列表 |
|
|
|
xmGroupList = xmGroupService.getProjectGroupVoList(projectId); //列出XmProjectGroup列表 |
|
|
|
}else if(StringUtils.hasText(iterationId)){ |
|
|
|
xmProjectGroupList = xmProjectGroupService.getProjectGroupVoListByIterationId(iterationId ); //列出XmProjectGroup列表 |
|
|
|
xmGroupList = xmGroupService.getProjectGroupVoListByIterationId(iterationId ); //列出XmProjectGroup列表 |
|
|
|
}else if(StringUtils.hasText(productId)){ |
|
|
|
xmProjectGroupList = xmProjectGroupService.getProjectGroupVoListByProductId( productId); //列出XmProjectGroup列表 |
|
|
|
xmGroupList = xmGroupService.getProjectGroupVoListByProductId( productId); //列出XmProjectGroup列表 |
|
|
|
} |
|
|
|
|
|
|
|
PageUtils.responePage(m, xmProjectGroupList); |
|
|
|
m.put("data",xmProjectGroupList); |
|
|
|
PageUtils.responePage(m, xmGroupList); |
|
|
|
m.put("data",xmGroupList); |
|
|
|
Tips tips=new Tips("查询成功"); |
|
|
|
m.put("tips", tips); |
|
|
|
return m; |
|
|
|
@ -187,21 +187,21 @@ public class XmGroupController { |
|
|
|
@ApiResponse(code = 200,response= XmGroup.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'错误码'},pageInfo:{total:总记录数},data:[数据对象1,数据对象2,...]}") |
|
|
|
}) |
|
|
|
@RequestMapping(value="/list",method=RequestMethod.GET) |
|
|
|
public Map<String,Object> listXmProjectGroup( @RequestParam Map<String,Object> xmProjectGroup){ |
|
|
|
public Map<String,Object> listXmProjectGroup( @RequestParam Map<String,Object> xmGroup){ |
|
|
|
Map<String,Object> m = new HashMap<>(); |
|
|
|
RequestUtils.transformArray(xmProjectGroup, "ids"); |
|
|
|
PageUtils.startPage(xmProjectGroup); |
|
|
|
RequestUtils.transformArray(xmGroup, "ids"); |
|
|
|
PageUtils.startPage(xmGroup); |
|
|
|
User user=LoginUtils.getCurrentUserInfo(); |
|
|
|
String projectId= (String) xmProjectGroup.get("projectId"); |
|
|
|
String productId= (String) xmProjectGroup.get("productId"); |
|
|
|
String iterationId= (String) xmProjectGroup.get("iterationId"); |
|
|
|
String projectId= (String) xmGroup.get("projectId"); |
|
|
|
String productId= (String) xmGroup.get("productId"); |
|
|
|
String iterationId= (String) xmGroup.get("iterationId"); |
|
|
|
if(!StringUtils.hasText(projectId) && !StringUtils.hasText(productId) && !StringUtils.hasText(iterationId)){ |
|
|
|
xmProjectGroup.put("branchId",user.getBranchId()); |
|
|
|
xmProjectGroup.put("orCrowBranchId",user.getBranchId()); |
|
|
|
xmGroup.put("branchId",user.getBranchId()); |
|
|
|
xmGroup.put("orCrowBranchId",user.getBranchId()); |
|
|
|
} |
|
|
|
List<Map<String,Object>> xmProjectGroupList = xmProjectGroupService.selectListMapByWhere(xmProjectGroup); //列出XmProjectGroup列表 |
|
|
|
PageUtils.responePage(m, xmProjectGroupList); |
|
|
|
m.put("data",xmProjectGroupList); |
|
|
|
List<Map<String,Object>> xmGroupList = xmGroupService.selectListMapByWhere(xmGroup); //列出XmProjectGroup列表 |
|
|
|
PageUtils.responePage(m, xmGroupList); |
|
|
|
m.put("data",xmGroupList); |
|
|
|
Tips tips=new Tips("查询成功"); |
|
|
|
m.put("tips", tips); |
|
|
|
return m; |
|
|
|
@ -211,77 +211,77 @@ public class XmGroupController { |
|
|
|
@ApiResponses({ |
|
|
|
@ApiResponse(code = 200,response= XmGroup.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|
|
|
}) |
|
|
|
@HasQx(value = "xm_core_xmProjectGroup_add",name = "新增项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@HasQx(value = "xm_core_xmGroup_add",name = "新增项目团队信息",categoryId = "admin-xm",categoryName = "管理端-项目管理系统") |
|
|
|
@RequestMapping(value="/add",method=RequestMethod.POST) |
|
|
|
public Map<String,Object> addXmProjectGroup(@RequestBody XmGroup xmProjectGroup) { |
|
|
|
public Map<String,Object> addXmProjectGroup(@RequestBody XmGroup xmGroup) { |
|
|
|
Map<String,Object> m = new HashMap<>(); |
|
|
|
Tips tips=new Tips("成功新增一条数据"); |
|
|
|
try{ |
|
|
|
User u = LoginUtils.getCurrentUserInfo(); |
|
|
|
if(!"1".equals(xmProjectGroup.getPgClass())) { |
|
|
|
if(!StringUtils.hasText(xmProjectGroup.getProjectId())){ |
|
|
|
if(!"1".equals(xmGroup.getPgClass())) { |
|
|
|
if(!StringUtils.hasText(xmGroup.getProjectId())){ |
|
|
|
return ResponseHelper.failed("projectId-0","项目编号不能为空"); |
|
|
|
} |
|
|
|
XmProject project = xmProjectService.getProjectFromCache(xmProjectGroup.getProjectId()); |
|
|
|
XmProject project = xmProjectService.getProjectFromCache(xmGroup.getProjectId()); |
|
|
|
if(project==null){ |
|
|
|
return ResponseHelper.failed("project-0","项目已不存在"); |
|
|
|
} |
|
|
|
tips=this.xmProjectGroupService.checkProjectStatus(project); |
|
|
|
tips=this.xmGroupService.checkProjectStatus(project); |
|
|
|
if(!tips.isOk()){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
Map<String,String> projectAdmMap=xmProjectGroupService.getProjectAdmUsers(project); |
|
|
|
Map<String,String> projectAdmMap=xmGroupService.getProjectAdmUsers(project); |
|
|
|
if(!projectAdmMap.containsKey(u.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-project-adm","您不是项目管理人员,不能创建小组。项目级助理以上人员可以创建小组。"); |
|
|
|
} |
|
|
|
xmProjectGroup.setProductId(null); |
|
|
|
xmGroup.setProductId(null); |
|
|
|
|
|
|
|
xmProjectGroup.setBranchId(project.getBranchId()); |
|
|
|
xmGroup.setBranchId(project.getBranchId()); |
|
|
|
|
|
|
|
}else{ |
|
|
|
if(!StringUtils.hasText(xmProjectGroup.getProductId())){ |
|
|
|
if(!StringUtils.hasText(xmGroup.getProductId())){ |
|
|
|
return ResponseHelper.failed("productId-0","产品编号不能为空"); |
|
|
|
} |
|
|
|
|
|
|
|
XmProduct product = xmProductService.selectOneObject(new XmProduct(xmProjectGroup.getProductId())); |
|
|
|
XmProduct product = xmProductService.selectOneObject(new XmProduct(xmGroup.getProductId())); |
|
|
|
if(product==null){ |
|
|
|
return ResponseHelper.failed("product-0","产品已不存在"); |
|
|
|
} |
|
|
|
tips=this.xmProjectGroupService.checkProductStatus(product); |
|
|
|
tips=this.xmGroupService.checkProductStatus(product); |
|
|
|
if(!tips.isOk()){ |
|
|
|
return ResponseHelper.failed(tips); |
|
|
|
} |
|
|
|
xmProjectGroup.setBranchId(product.getBranchId()); |
|
|
|
Map<String,String> productAdmMap=xmProjectGroupService.getProductAdmUsers(product); |
|
|
|
xmGroup.setBranchId(product.getBranchId()); |
|
|
|
Map<String,String> productAdmMap=xmGroupService.getProductAdmUsers(product); |
|
|
|
if(!productAdmMap.containsKey(u.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-product-adm","您不是产品管理人员,不能创建小组。产品级助理及以上人员可以创建小组。"); |
|
|
|
} |
|
|
|
xmProjectGroup.setProjectId(null); |
|
|
|
xmGroup.setProjectId(null); |
|
|
|
} |
|
|
|
if (StringUtils.isEmpty(xmProjectGroup.getId())) { |
|
|
|
xmProjectGroup.setId(xmProjectGroupService.createKey("id")); |
|
|
|
if (StringUtils.isEmpty(xmGroup.getId())) { |
|
|
|
xmGroup.setId(xmGroupService.createKey("id")); |
|
|
|
} else { |
|
|
|
XmGroup xmProjectGroupQuery = new XmGroup(xmProjectGroup.getId()); |
|
|
|
if (xmProjectGroupService.countByWhere(xmProjectGroupQuery) > 0) { |
|
|
|
XmGroup xmGroupQuery = new XmGroup(xmGroup.getId()); |
|
|
|
if (xmGroupService.countByWhere(xmGroupQuery) > 0) { |
|
|
|
tips.setFailureMsg("编号重复,请修改编号再提交"); |
|
|
|
m.put("tips", tips); |
|
|
|
return m; |
|
|
|
} |
|
|
|
} |
|
|
|
if(StringUtils.hasText(xmProjectGroup.getBranchId())){ |
|
|
|
xmProjectGroup.setBranchId(u.getBranchId()); |
|
|
|
if(StringUtils.hasText(xmGroup.getBranchId())){ |
|
|
|
xmGroup.setBranchId(u.getBranchId()); |
|
|
|
} |
|
|
|
this.xmProjectGroupService.parentIdPathsCalcBeforeSave(xmProjectGroup); |
|
|
|
xmProjectGroupService.insert(xmProjectGroup); |
|
|
|
if("1".equals(xmProjectGroup.getPgClass())){ |
|
|
|
xmProjectGroupCacheService.clearProductGroup(xmProjectGroup.getProductId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(xmProjectGroup.getProductId(),xmProjectGroup.getId(),"团队-小组-新增小组","新增小组【"+xmProjectGroup.getGroupName()+"】"); |
|
|
|
this.xmGroupService.parentIdPathsCalcBeforeSave(xmGroup); |
|
|
|
xmGroupService.insert(xmGroup); |
|
|
|
if("1".equals(xmGroup.getPgClass())){ |
|
|
|
xmGroupCacheService.clearProductGroup(xmGroup.getProductId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(xmGroup.getProductId(),xmGroup.getId(),"团队-小组-新增小组","新增小组【"+xmGroup.getGroupName()+"】"); |
|
|
|
|
|
|
|
}else { |
|
|
|
xmProjectGroupCacheService.clearProjectGroup(xmProjectGroup.getProjectId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(xmProjectGroup.getProductId(),xmProjectGroup.getId(),"团队-小组-新增小组","新增小组【"+xmProjectGroup.getGroupName()+"】"); |
|
|
|
xmGroupCacheService.clearProjectGroup(xmGroup.getProjectId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(xmGroup.getProductId(),xmGroup.getId(),"团队-小组-新增小组","新增小组【"+xmGroup.getGroupName()+"】"); |
|
|
|
} |
|
|
|
m.put("data",xmProjectGroup); |
|
|
|
m.put("data",xmGroup); |
|
|
|
}catch (BizException e) { |
|
|
|
tips=e.getTips(); |
|
|
|
logger.error("",e); |
|
|
|
@ -298,15 +298,15 @@ public class XmGroupController { |
|
|
|
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}") |
|
|
|
}) |
|
|
|
@RequestMapping(value="/del",method=RequestMethod.POST) |
|
|
|
public Map<String,Object> delXmProjectGroup(@RequestBody XmGroup xmProjectGroup){ |
|
|
|
public Map<String,Object> delXmProjectGroup(@RequestBody XmGroup xmGroup){ |
|
|
|
Map<String,Object> m = new HashMap<>(); |
|
|
|
Tips tips=new Tips("成功删除一条数据"); |
|
|
|
try{ |
|
|
|
User u = LoginUtils.getCurrentUserInfo(); |
|
|
|
if(!StringUtils.hasText(xmProjectGroup.getId())){ |
|
|
|
if(!StringUtils.hasText(xmGroup.getId())){ |
|
|
|
return ResponseHelper.failed("id-0","请上送小组编号"); |
|
|
|
} |
|
|
|
XmGroup groupDb=this.xmProjectGroupService.selectOneObject(xmProjectGroup); |
|
|
|
XmGroup groupDb=this.xmGroupService.selectOneObject(xmGroup); |
|
|
|
if(groupDb==null){ |
|
|
|
return ResponseHelper.failed("data-0","小组已不存在"); |
|
|
|
} |
|
|
|
@ -316,7 +316,7 @@ public class XmGroupController { |
|
|
|
if(project==null){ |
|
|
|
return ResponseHelper.failed("project-0","项目已不存在"); |
|
|
|
} |
|
|
|
Map<String,String> projectAdmMap=xmProjectGroupService.getProjectAdmUsers(project); |
|
|
|
Map<String,String> projectAdmMap=xmGroupService.getProjectAdmUsers(project); |
|
|
|
if(!projectAdmMap.containsKey(u.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-project-adm","您不是项目管理人员,不能删除小组。项目级助理以上人员可以删除小组。"); |
|
|
|
} |
|
|
|
@ -324,12 +324,12 @@ public class XmGroupController { |
|
|
|
|
|
|
|
|
|
|
|
}else{ |
|
|
|
if(!StringUtils.hasText(xmProjectGroup.getProductId())){ |
|
|
|
if(!StringUtils.hasText(xmGroup.getProductId())){ |
|
|
|
XmProduct product = xmProductService.selectOneObject(new XmProduct(groupDb.getProductId())); |
|
|
|
if(product==null){ |
|
|
|
return ResponseHelper.failed("product-0","产品已不存在"); |
|
|
|
} |
|
|
|
Map<String,String> productAdmMap=xmProjectGroupService.getProductAdmUsers(product); |
|
|
|
Map<String,String> productAdmMap=xmGroupService.getProductAdmUsers(product); |
|
|
|
if(!productAdmMap.containsKey(u.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-product-adm","您不是产品管理人员,不能删除小组。产品级助理及以上人员可以删除小组。"); |
|
|
|
} |
|
|
|
@ -339,12 +339,12 @@ public class XmGroupController { |
|
|
|
if(groupDb.getChildrenCnt()!=null && groupDb.getChildrenCnt()>0){ |
|
|
|
return ResponseHelper.failed("childrenCnt-no-0","该小组有下级小组,不能删除。请先删除下级小组。"); |
|
|
|
} |
|
|
|
xmProjectGroupService.doDeleteByPk(xmProjectGroup,groupDb); |
|
|
|
xmGroupService.doDeleteByPk(xmGroup,groupDb); |
|
|
|
if("1".equals(groupDb.getPgClass())){ |
|
|
|
xmProjectGroupCacheService.clearProductGroup(groupDb.getProductId()); |
|
|
|
xmGroupCacheService.clearProductGroup(groupDb.getProductId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(groupDb.getProductId(),groupDb.getId(),"团队-小组-删除小组","删除小组【"+groupDb.getGroupName()+"】"); |
|
|
|
}else { |
|
|
|
xmProjectGroupCacheService.clearProjectGroup(groupDb.getProjectId()); |
|
|
|
xmGroupCacheService.clearProjectGroup(groupDb.getProjectId()); |
|
|
|
xmRecordService.addXmGroupRecord(groupDb.getProjectId(),groupDb.getId(),"团队-小组-删除小组","删除小组【"+groupDb.getGroupName()+"】"); |
|
|
|
|
|
|
|
} |
|
|
|
@ -368,11 +368,11 @@ public class XmGroupController { |
|
|
|
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}") |
|
|
|
}) |
|
|
|
@RequestMapping(value="/batchDel",method=RequestMethod.POST) |
|
|
|
public Map<String,Object> batchDelXmProjectGroup(@RequestBody List<XmGroup> xmProjectGroups) { |
|
|
|
public Map<String,Object> batchDelXmProjectGroup(@RequestBody List<XmGroup> xmGroups) { |
|
|
|
Map<String,Object> m = new HashMap<>(); |
|
|
|
Tips tips=new Tips("成功删除"+xmProjectGroups.size()+"条数据"); |
|
|
|
Tips tips=new Tips("成功删除"+xmGroups.size()+"条数据"); |
|
|
|
try{ |
|
|
|
List<XmGroup> groupsDb=this.xmProjectGroupService.selectListByIds(xmProjectGroups.stream().map(i->i.getId()).collect(Collectors.toList())); |
|
|
|
List<XmGroup> groupsDb=this.xmGroupService.selectListByIds(xmGroups.stream().map(i->i.getId()).collect(Collectors.toList())); |
|
|
|
if(groupsDb==null || groupsDb.size()==0){ |
|
|
|
return ResponseHelper.failed("data-0","要删除的小组已不存在"); |
|
|
|
} |
|
|
|
@ -387,21 +387,21 @@ public class XmGroupController { |
|
|
|
if("0".equals(pgClass)){ |
|
|
|
id=groupDb.getProjectId(); |
|
|
|
XmProject prject=this.xmProjectService.getProjectFromCache(id); |
|
|
|
Map<String,String> projectAdmMap=xmProjectGroupService.getProjectAdmUsers(prject); |
|
|
|
Map<String,String> projectAdmMap=xmGroupService.getProjectAdmUsers(prject); |
|
|
|
if (!projectAdmMap.containsKey(user.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-project-adm","您不是项目管理人员,不能删除小组。项目级助理以上人员可以删除小组。"); |
|
|
|
} |
|
|
|
}else{ |
|
|
|
id=groupDb.getProductId(); |
|
|
|
XmProduct product=this.xmProductService.getProductFromCache( id ); |
|
|
|
Map<String,String> productAdmMap=xmProjectGroupService.getProductAdmUsers(product); |
|
|
|
Map<String,String> productAdmMap=xmGroupService.getProductAdmUsers(product); |
|
|
|
if(!productAdmMap.containsKey(user.getUserid())) { |
|
|
|
return ResponseHelper.failed("not-product-adm","您不是产品管理人员,不能删除小组。产品级助理以上人员可以删除小组。"); |
|
|
|
} |
|
|
|
} |
|
|
|
if(canDelNodes.size()>0){ |
|
|
|
for (XmGroup canDelNode : canDelNodes) { |
|
|
|
if(!xmProjectGroupService.checkCanDelAllChild(canDelNode,canDelNodes)){ |
|
|
|
if(!xmGroupService.checkCanDelAllChild(canDelNode,canDelNodes)){ |
|
|
|
hasChildNodes.add(canDelNode); |
|
|
|
}else{ |
|
|
|
canDelNodes.add(canDelNode); |
|
|
|
@ -411,13 +411,13 @@ public class XmGroupController { |
|
|
|
if(canDelNodes.size()>0){ |
|
|
|
String groupNames=canDelNodes.stream().map(i->i.getGroupName()).collect(Collectors.joining(",")); |
|
|
|
if("1".equals(pgClass)){ |
|
|
|
xmProjectGroupService.doBatchDeleteProductGroups(canDelNodes); |
|
|
|
xmProjectGroupCacheService.clearProductGroups(groupDb.getProductId()); |
|
|
|
xmGroupService.doBatchDeleteProductGroups(canDelNodes); |
|
|
|
xmGroupCacheService.clearProductGroups(groupDb.getProductId()); |
|
|
|
xmRecordService.addXmProductGroupRecord(groupDb.getProductId(),groupDb.getId(),"团队-小组-批量删除小组","删除"+canDelNodes.size()+"个小组【"+groupNames+"】"); |
|
|
|
|
|
|
|
}else { |
|
|
|
xmProjectGroupService.doBatchDeleteProjectGroups(canDelNodes); |
|
|
|
xmProjectGroupCacheService.clearProjectGroups(groupDb.getProjectId()); |
|
|
|
xmGroupService.doBatchDeleteProjectGroups(canDelNodes); |
|
|
|
xmGroupCacheService.clearProjectGroups(groupDb.getProjectId()); |
|
|
|
xmRecordService.addXmGroupRecord(groupDb.getProjectId(),groupDb.getId(),"团队-小组-批量删除小组","删除"+canDelNodes.size()+"个小组【"+groupNames+"】"); |
|
|
|
|
|
|
|
} |
|
|
|
|