|
@@ -84,6 +84,9 @@ public class WbsTreePrivateController extends BladeController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //记录需要修改的对象(只改名称)
|
|
|
+ List<WbsTreePrivate> updateList = new ArrayList<>();
|
|
|
+
|
|
|
//检查一下原本节点的表是否有新增的(只处理新增)
|
|
|
if(oldDataList != null && oldDataList.size() > 0){
|
|
|
for(WbsTreePrivate treePrivate : oldDataList){
|
|
@@ -96,33 +99,42 @@ public class WbsTreePrivateController extends BladeController {
|
|
|
//校验数量
|
|
|
if(wbsTreeTableList != null && wbsTreeTableList.size() > 0){
|
|
|
if(treePrivateTableList != null){
|
|
|
- if(treePrivateTableList.size() < wbsTreeTableList.size()){
|
|
|
- //小于,说明模板节点存在新增,检查哪些是新增的
|
|
|
- Iterator<WbsTree> iterator = wbsTreeTableList.iterator();
|
|
|
- while (iterator.hasNext()){
|
|
|
- WbsTree tree = iterator.next();
|
|
|
- for(WbsTreePrivate privateNode : treePrivateTableList){
|
|
|
- if(privateNode.getId().equals(tree.getId())){
|
|
|
- //存在,删除
|
|
|
- iterator.remove();
|
|
|
- break;
|
|
|
+ //小于,说明模板节点存在新增,检查哪些是新增的
|
|
|
+ Iterator<WbsTree> iterator = wbsTreeTableList.iterator();
|
|
|
+ while (iterator.hasNext()){
|
|
|
+ WbsTree tree = iterator.next();
|
|
|
+
|
|
|
+ for(WbsTreePrivate privateNode : treePrivateTableList){
|
|
|
+ if(privateNode.getId().equals(tree.getId())){
|
|
|
+ if(
|
|
|
+ (StringUtils.isNotEmpty(privateNode.getFullName(), tree.getFullName()) && !privateNode.getFullName().equals(tree.getFullName()))
|
|
|
+ ||
|
|
|
+ (StringUtils.isNotEmpty(privateNode.getDeptName(), tree.getDeptName()) && !privateNode.getDeptName().equals(tree.getDeptName()))
|
|
|
+ ){
|
|
|
+ //名字不同,需要修改
|
|
|
+ privateNode.setFullName(tree.getFullName());
|
|
|
+ privateNode.setDeptName(tree.getDeptName());
|
|
|
+ updateList.add(privateNode);
|
|
|
}
|
|
|
+
|
|
|
+ //存在,删除
|
|
|
+ iterator.remove();
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
- //多出来的,新增
|
|
|
- if(wbsTreeTableList.size() > 0){
|
|
|
- for(WbsTree wbsTree : wbsTreeTableList){
|
|
|
- WbsTreePrivate newTreePrivate = new WbsTreePrivate();
|
|
|
- BeanUtils.copyProperties(wbsTree, newTreePrivate);
|
|
|
- newTreePrivate.setWbsType("4");
|
|
|
- newTreePrivate.setProjectId(vo.getProjectId());
|
|
|
- newTreePrivate.setCreateTime(now);
|
|
|
- newTreePrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
|
-
|
|
|
- saveTreePrivateList.add(newTreePrivate);
|
|
|
- }
|
|
|
+ }
|
|
|
+ //多出来的,新增
|
|
|
+ if(wbsTreeTableList.size() > 0){
|
|
|
+ for(WbsTree wbsTree : wbsTreeTableList){
|
|
|
+ WbsTreePrivate newTreePrivate = new WbsTreePrivate();
|
|
|
+ BeanUtils.copyProperties(wbsTree, newTreePrivate);
|
|
|
+ newTreePrivate.setWbsType("4");
|
|
|
+ newTreePrivate.setProjectId(vo.getProjectId());
|
|
|
+ newTreePrivate.setCreateTime(now);
|
|
|
+ newTreePrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
|
+
|
|
|
+ saveTreePrivateList.add(newTreePrivate);
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -156,7 +168,12 @@ public class WbsTreePrivateController extends BladeController {
|
|
|
this.projectInfoService.update(Wrappers.<ProjectInfo>lambdaUpdate().set(ProjectInfo::getReferenceLogWbsTemplateId, vo.getWbsId()).eq(ProjectInfo::getId, vo.getProjectId()));
|
|
|
|
|
|
//保存数据
|
|
|
- return R.data(this.wbsTreePrivateService.saveBatch(saveTreePrivateList));
|
|
|
+ this.wbsTreePrivateService.saveBatch(saveTreePrivateList);
|
|
|
+ }
|
|
|
+ if(updateList.size() > 0){
|
|
|
+ for(WbsTreePrivate treePrivate : updateList){
|
|
|
+ this.wbsTreePrivateService.update(Wrappers.<WbsTreePrivate>lambdaUpdate().set(WbsTreePrivate::getDeptName, treePrivate.getDeptName()).set(WbsTreePrivate::getFullName, treePrivate.getFullName()).eq(WbsTreePrivate::getPKeyId, treePrivate.getPKeyId()));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return R.data(200, true, "保存成功");
|