|
@@ -1332,6 +1332,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
ProjectInfo projectInfo = projectInfoMapper.selectOne(Wrappers.<ProjectInfo>lambdaQuery().select(ProjectInfo::getReferenceWbsTemplateType, ProjectInfo::getReferenceWbsTemplateTypeTrial).eq(ProjectInfo::getId, wbsTreePrivate.getProjectId()));
|
|
ProjectInfo projectInfo = projectInfoMapper.selectOne(Wrappers.<ProjectInfo>lambdaQuery().select(ProjectInfo::getReferenceWbsTemplateType, ProjectInfo::getReferenceWbsTemplateTypeTrial).eq(ProjectInfo::getId, wbsTreePrivate.getProjectId()));
|
|
//结果集
|
|
//结果集
|
|
List<WbsTreePrivate> insertDataPrivateList = new ArrayList<>();
|
|
List<WbsTreePrivate> insertDataPrivateList = new ArrayList<>();
|
|
|
|
+ List<WbsTreeContract> insertDataContractList = new ArrayList<>();
|
|
|
|
|
|
if (("1").equals(wbsTreePrivate.getWbsType())) {
|
|
if (("1").equals(wbsTreePrivate.getWbsType())) {
|
|
if (("public").equals(projectInfo.getReferenceWbsTemplateType())) {
|
|
if (("public").equals(projectInfo.getReferenceWbsTemplateType())) {
|
|
@@ -1341,11 +1342,15 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
List<WbsTree> wbsTreesPublicTables;
|
|
List<WbsTree> wbsTreesPublicTables;
|
|
if (wbsTree.getAncestors().equals("0")) {
|
|
if (wbsTree.getAncestors().equals("0")) {
|
|
//根节点
|
|
//根节点
|
|
- wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda().eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
|
|
|
|
+ wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda()
|
|
|
|
+ .select(WbsTree::getId, WbsTree::getParentId)
|
|
|
|
+ .eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
/*.eq(WbsTree::getStatus,1)*/
|
|
/*.eq(WbsTree::getStatus,1)*/
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
- wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda().eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
|
|
|
|
+ wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda()
|
|
|
|
+ .select(WbsTree::getId, WbsTree::getParentId)
|
|
|
|
+ .eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
/*.eq(WbsTree::getStatus,1)*/
|
|
/*.eq(WbsTree::getStatus,1)*/
|
|
.like(WbsTree::getAncestors, wbsTree.getId())
|
|
.like(WbsTree::getAncestors, wbsTree.getId())
|
|
);
|
|
);
|
|
@@ -1353,6 +1358,7 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
|
|
|
|
//获取当前项目树下的元素表 节点
|
|
//获取当前项目树下的元素表 节点
|
|
List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
|
|
List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
|
|
|
|
+ .select(WbsTreePrivate::getType, WbsTreePrivate::getId, WbsTreePrivate::getAncestors)
|
|
.eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId())
|
|
.eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId())
|
|
.eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
.eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
@@ -1376,17 +1382,16 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
|
|
|
|
//构造
|
|
//构造
|
|
- for (WbsTree tree : addPublicTables) {
|
|
|
|
|
|
+ List<WbsTree> resultDataList = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery().in(WbsTree::getId, addPublicTables.stream().map(WbsTree::getId).collect(Collectors.toList())));
|
|
|
|
+ for (WbsTree tree : resultDataList) {
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
if (dataPrivate != null) {
|
|
if (dataPrivate != null) {
|
|
- Long idPrivate = SnowFlakeUtil.getId();
|
|
|
|
- dataPrivate.setPKeyId(idPrivate);
|
|
|
|
|
|
+ dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
dataPrivate.setWbsType(wbsTreePrivate.getWbsType());
|
|
dataPrivate.setWbsType(wbsTreePrivate.getWbsType());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setFullName(dataPrivate.getNodeName());
|
|
dataPrivate.setFullName(dataPrivate.getNodeName());
|
|
dataPrivate.setInitTableId(tree.getInitTableId().toString());
|
|
dataPrivate.setInitTableId(tree.getInitTableId().toString());
|
|
- //新增
|
|
|
|
- insertDataPrivateList.add(dataPrivate);
|
|
|
|
|
|
+ insertDataPrivateList.add(dataPrivate);//新增
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1400,18 +1405,23 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
List<WbsTreePrivate> wbsTreePrivateRootTables;
|
|
List<WbsTreePrivate> wbsTreePrivateRootTables;
|
|
if (wbsTreePrivate.getAncestors().equals("0")) {
|
|
if (wbsTreePrivate.getAncestors().equals("0")) {
|
|
//根节点
|
|
//根节点
|
|
- wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
|
|
|
|
+ wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getId, WbsTreePrivate::getParentId, WbsTreePrivate::getPKeyId)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
- wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId())
|
|
|
|
- .eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
|
|
|
|
+ wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getId, WbsTreePrivate::getParentId, WbsTreePrivate::getPKeyId)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
.like(WbsTreePrivate::getAncestors, wbsTreePrivate.getId()));
|
|
.like(WbsTreePrivate::getAncestors, wbsTreePrivate.getId()));
|
|
}
|
|
}
|
|
|
|
|
|
//获取当前项目选择的节点下的所有元素表 节点
|
|
//获取当前项目选择的节点下的所有元素表 节点
|
|
- List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
|
|
|
|
+ List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getType, WbsTreePrivate::getId, WbsTreePrivate::getAncestors)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
);
|
|
);
|
|
|
|
|
|
@@ -1433,7 +1443,8 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
|
|
|
|
//构造
|
|
//构造
|
|
- for (WbsTreePrivate tree : addPrivateTables) {
|
|
|
|
|
|
+ List<WbsTreePrivate> resultDataList = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().in(WbsTreePrivate::getPKeyId, addPrivateTables.stream().map(WbsTreePrivate::getPKeyId).collect(Collectors.toList())));
|
|
|
|
+ for (WbsTreePrivate tree : resultDataList) {
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
if (dataPrivate != null) {
|
|
if (dataPrivate != null) {
|
|
dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
@@ -1454,18 +1465,24 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
List<WbsTree> wbsTreesPublicTables;
|
|
List<WbsTree> wbsTreesPublicTables;
|
|
if (wbsTree.getAncestors().equals("0")) {
|
|
if (wbsTree.getAncestors().equals("0")) {
|
|
//根节点
|
|
//根节点
|
|
- wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery().eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
|
|
|
|
+ wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery()
|
|
|
|
+ .select(WbsTree::getId, WbsTree::getParentId)
|
|
|
|
+ .eq(WbsTree::getWbsId, wbsTree.getWbsId()).eq(WbsTree::getType, 2)
|
|
/*.eq(WbsTree::getStatus, 1)*/
|
|
/*.eq(WbsTree::getStatus, 1)*/
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery().eq(WbsTree::getWbsId, wbsTree.getWbsId())
|
|
wbsTreesPublicTables = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery().eq(WbsTree::getWbsId, wbsTree.getWbsId())
|
|
|
|
+ .select(WbsTree::getId, WbsTree::getParentId)
|
|
.eq(WbsTree::getType, 2)
|
|
.eq(WbsTree::getType, 2)
|
|
/*.eq(WbsTree::getStatus, 1)*/
|
|
/*.eq(WbsTree::getStatus, 1)*/
|
|
.like(WbsTree::getAncestors, wbsTree.getId()));
|
|
.like(WbsTree::getAncestors, wbsTree.getId()));
|
|
}
|
|
}
|
|
|
|
|
|
//获取当前项目树下的元素表 节点
|
|
//获取当前项目树下的元素表 节点
|
|
- List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda().eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
|
|
|
|
+ List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
|
|
|
|
+ .select(WbsTreePrivate::getType, WbsTreePrivate::getId, WbsTreePrivate::getAncestors)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId())
|
|
|
|
+ .eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
);
|
|
);
|
|
List<WbsTreePrivate> wbsTreePrivatesProjectNodes = wbsTreePrivatesProjectAll.stream().filter(f -> f.getType().equals(1)).collect(Collectors.toList());
|
|
List<WbsTreePrivate> wbsTreePrivatesProjectNodes = wbsTreePrivatesProjectAll.stream().filter(f -> f.getType().equals(1)).collect(Collectors.toList());
|
|
@@ -1487,17 +1504,16 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
|
|
|
|
//构造
|
|
//构造
|
|
- for (WbsTree tree : addPublicTables) {
|
|
|
|
|
|
+ List<WbsTree> resultDataList = wbsTreeMapper.selectList(Wrappers.<WbsTree>lambdaQuery().in(WbsTree::getId, addPublicTables.stream().map(WbsTree::getId).collect(Collectors.toList())));
|
|
|
|
+ for (WbsTree tree : resultDataList) {
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
if (dataPrivate != null) {
|
|
if (dataPrivate != null) {
|
|
- Long idPrivate = SnowFlakeUtil.getId();
|
|
|
|
- dataPrivate.setPKeyId(idPrivate);
|
|
|
|
|
|
+ dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
dataPrivate.setWbsType(wbsTreePrivate.getWbsType());
|
|
dataPrivate.setWbsType(wbsTreePrivate.getWbsType());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setFullName(dataPrivate.getNodeName());
|
|
dataPrivate.setFullName(dataPrivate.getNodeName());
|
|
dataPrivate.setInitTableId(ObjectUtils.isNotEmpty(tree.getInitTableId()) ? tree.getInitTableId().toString() : null);
|
|
dataPrivate.setInitTableId(ObjectUtils.isNotEmpty(tree.getInitTableId()) ? tree.getInitTableId().toString() : null);
|
|
- //新增
|
|
|
|
- insertDataPrivateList.add(dataPrivate);
|
|
|
|
|
|
+ insertDataPrivateList.add(dataPrivate);//新增
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1509,19 +1525,23 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
List<WbsTreePrivate> wbsTreePrivateRootTables;
|
|
List<WbsTreePrivate> wbsTreePrivateRootTables;
|
|
if (wbsTreePrivate.getAncestors().equals("0")) {
|
|
if (wbsTreePrivate.getAncestors().equals("0")) {
|
|
//根节点
|
|
//根节点
|
|
- wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId())
|
|
|
|
- .eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
|
|
|
|
+ wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getId, WbsTreePrivate::getParentId, WbsTreePrivate::getPKeyId)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
);
|
|
);
|
|
} else {
|
|
} else {
|
|
- wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId())
|
|
|
|
- .eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
|
|
|
|
+ wbsTreePrivateRootTables = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getId, WbsTreePrivate::getParentId, WbsTreePrivate::getPKeyId)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivateRoot.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivateRoot.getWbsId()).eq(WbsTreePrivate::getType, 2)
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
.like(WbsTreePrivate::getAncestors, wbsTreePrivate.getId()));
|
|
.like(WbsTreePrivate::getAncestors, wbsTreePrivate.getId()));
|
|
}
|
|
}
|
|
|
|
|
|
//获取当前项目选择的节点下的所有元素表 节点
|
|
//获取当前项目选择的节点下的所有元素表 节点
|
|
- List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
|
|
|
|
+ List<WbsTreePrivate> wbsTreePrivatesProjectAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery()
|
|
|
|
+ .select(WbsTreePrivate::getType, WbsTreePrivate::getId, WbsTreePrivate::getAncestors)
|
|
|
|
+ .eq(WbsTreePrivate::getProjectId, wbsTreePrivate.getProjectId()).eq(WbsTreePrivate::getWbsId, wbsTreePrivate.getWbsId())
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
/*.eq(WbsTreePrivate::getStatus, 1)*/
|
|
);
|
|
);
|
|
|
|
|
|
@@ -1543,7 +1563,8 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
wbsTreePrivatesProjectNodes.stream().map(WbsTreePrivate::getId).collect(Collectors.toList()).contains(node.getParentId())).collect(Collectors.toList());
|
|
|
|
|
|
//构造
|
|
//构造
|
|
- for (WbsTreePrivate tree : addPrivateTables) {
|
|
|
|
|
|
+ List<WbsTreePrivate> resultDataList = baseMapper.selectList(Wrappers.<WbsTreePrivate>lambdaQuery().in(WbsTreePrivate::getPKeyId, addPrivateTables.stream().map(WbsTreePrivate::getPKeyId).collect(Collectors.toList())));
|
|
|
|
+ for (WbsTreePrivate tree : resultDataList) {
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
WbsTreePrivate dataPrivate = BeanUtil.copyProperties(tree, WbsTreePrivate.class);
|
|
if (dataPrivate != null) {
|
|
if (dataPrivate != null) {
|
|
dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
dataPrivate.setPKeyId(SnowFlakeUtil.getId());
|
|
@@ -1551,20 +1572,53 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
|
|
dataPrivate.setWbsType(tree.getWbsType());
|
|
dataPrivate.setWbsType(tree.getWbsType());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setProjectId(wbsTreePrivate.getProjectId());
|
|
dataPrivate.setInitTableId(ObjectUtils.isNotEmpty(tree.getInitTableId()) ? tree.getInitTableId() : null);
|
|
dataPrivate.setInitTableId(ObjectUtils.isNotEmpty(tree.getInitTableId()) ? tree.getInitTableId() : null);
|
|
-
|
|
|
|
insertDataPrivateList.add(dataPrivate);
|
|
insertDataPrivateList.add(dataPrivate);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- //新增
|
|
|
|
|
|
+ //新增同步到项目
|
|
if (!insertDataPrivateList.isEmpty()) {
|
|
if (!insertDataPrivateList.isEmpty()) {
|
|
List<List<WbsTreePrivate>> partition = Lists.partition(insertDataPrivateList, 1000);
|
|
List<List<WbsTreePrivate>> partition = Lists.partition(insertDataPrivateList, 1000);
|
|
for (List<WbsTreePrivate> wbsTreePrivates : partition) {
|
|
for (List<WbsTreePrivate> wbsTreePrivates : partition) {
|
|
this.insertBatch(wbsTreePrivates, 1000);
|
|
this.insertBatch(wbsTreePrivates, 1000);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //同步到合同段(合同段中可能不存在原始节点(那么分配wsb处就同步不成功),但合同段存在新增、复制的节点,所以单独处理)
|
|
|
|
+ if (!insertDataPrivateList.isEmpty()) {
|
|
|
|
+ Map<Long, List<WbsTreePrivate>> tabParentNodesGroup = insertDataPrivateList.stream().collect(Collectors.groupingBy(WbsTreePrivate::getParentId));
|
|
|
|
+ Set<Long> longs = tabParentNodesGroup.keySet();
|
|
|
|
+ //获取当前项目下合同段新增或者复制的节点
|
|
|
|
+ List<WbsTreeContract> addOrCopyNodes = wbsTreeContractMapper.selectList(Wrappers.<WbsTreeContract>lambdaQuery()
|
|
|
|
+ .select(WbsTreeContract::getId, WbsTreeContract::getContractId, WbsTreeContract::getOldId)
|
|
|
|
+ .in(WbsTreeContract::getOldId, longs).eq(WbsTreeContract::getProjectId, wbsTreePrivate.getProjectId()));
|
|
|
|
+ List<WbsTreeContract> newAddOrCopyNodes = addOrCopyNodes.stream().distinct().collect(Collectors.toList());
|
|
|
|
+ for (WbsTreeContract addOrCopyNode : newAddOrCopyNodes) {
|
|
|
|
+ //合同段节点的oldId=当前表的parentId,也就是说当前表的父级节点=合同段复制、新增出来节点
|
|
|
|
+ List<WbsTreePrivate> tabs = tabParentNodesGroup.get(Long.parseLong(addOrCopyNode.getOldId()));
|
|
|
|
+ if (tabs.size() > 0) {
|
|
|
|
+ List<WbsTreeContract> wbsTreeContractList = BeanUtil.copyProperties(tabs, WbsTreeContract.class);
|
|
|
|
+ for (WbsTreeContract wbsTreeContract : wbsTreeContractList) {
|
|
|
|
+ wbsTreeContract.setIsDeleted(0);
|
|
|
|
+ wbsTreeContract.setStatus(1);
|
|
|
|
+ wbsTreeContract.setPKeyId(SnowFlakeUtil.getId());
|
|
|
|
+ wbsTreeContract.setParentId(addOrCopyNode.getId());
|
|
|
|
+ wbsTreeContract.setContractId(addOrCopyNode.getContractId());
|
|
|
|
+ }
|
|
|
|
+ insertDataContractList.addAll(wbsTreeContractList);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //新增同步到合同段
|
|
|
|
+ if (!insertDataContractList.isEmpty()) {
|
|
|
|
+ List<List<WbsTreeContract>> partition = Lists.partition(insertDataContractList, 1000);
|
|
|
|
+ for (List<WbsTreeContract> wbsTreeContracts : partition) {
|
|
|
|
+ wbsTreeContractService.insertBatch(wbsTreeContracts, 1000);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
return false;
|