|
@@ -130,23 +130,24 @@ public class WbsTreeSynchronousRecordServiceImpl extends ServiceImpl<WbsTreeSync
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public Boolean getNodeStatus(Long id) {
|
|
|
|
|
|
+ public WbsTreeSynchronousRecord getNodeStatus(Long id) {
|
|
WbsTreePrivate wbsTreePrivate = wbsTreePrivateMapper.selectById(id);
|
|
WbsTreePrivate wbsTreePrivate = wbsTreePrivateMapper.selectById(id);
|
|
- if(wbsTreePrivate == null){
|
|
|
|
|
|
+ if (wbsTreePrivate == null) {
|
|
throw new ServiceException("节点不存在");
|
|
throw new ServiceException("节点不存在");
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
//新增之前 判断当前选中节点是否在同步列表中,因为是多节点 所有要查询所有同项目下的同步节点再获取所有子节点 判断当前选中节点是否在这一批次当中
|
|
//新增之前 判断当前选中节点是否在同步列表中,因为是多节点 所有要查询所有同项目下的同步节点再获取所有子节点 判断当前选中节点是否在这一批次当中
|
|
List<WbsTreeSynchronousRecord> wbsTreeSynchronousRecords = baseMapper.selectList(new QueryWrapper<WbsTreeSynchronousRecord>().lambda()
|
|
List<WbsTreeSynchronousRecord> wbsTreeSynchronousRecords = baseMapper.selectList(new QueryWrapper<WbsTreeSynchronousRecord>().lambda()
|
|
- .select(WbsTreeSynchronousRecord::getNodeId)
|
|
|
|
.eq(WbsTreeSynchronousRecord::getProjectId, wbsTreePrivate.getProjectId())
|
|
.eq(WbsTreeSynchronousRecord::getProjectId, wbsTreePrivate.getProjectId())
|
|
.eq(WbsTreeSynchronousRecord::getIsDeleted, 0)
|
|
.eq(WbsTreeSynchronousRecord::getIsDeleted, 0)
|
|
.in(WbsTreeSynchronousRecord::getStatus, 0, 1));
|
|
.in(WbsTreeSynchronousRecord::getStatus, 0, 1));
|
|
- List<String> nodeIds = wbsTreeSynchronousRecords.stream().map(WbsTreeSynchronousRecord::getNodeId).collect(Collectors.toList());
|
|
|
|
|
|
+ for (WbsTreeSynchronousRecord wbsTreeSynchronousRecord : wbsTreeSynchronousRecords) {
|
|
|
|
|
|
- //所有子节点集合
|
|
|
|
- List<Long> privateIds = new ArrayList<>();
|
|
|
|
- //通过 ancestors_p_id 查询所有 非表单子节点
|
|
|
|
- for (String nodeId : nodeIds) {
|
|
|
|
|
|
+
|
|
|
|
+ List<Long> privateIds = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ String nodeId = wbsTreeSynchronousRecord.getNodeId();
|
|
String[] split = nodeId.split(",");
|
|
String[] split = nodeId.split(",");
|
|
for (String s : split) {
|
|
for (String s : split) {
|
|
List<WbsTreePrivate> wbsTreePrivates = wbsTreePrivateMapper.selectList(new QueryWrapper<WbsTreePrivate>().lambda()
|
|
List<WbsTreePrivate> wbsTreePrivates = wbsTreePrivateMapper.selectList(new QueryWrapper<WbsTreePrivate>().lambda()
|
|
@@ -157,8 +158,11 @@ public class WbsTreeSynchronousRecordServiceImpl extends ServiceImpl<WbsTreeSync
|
|
privateIds.add(Long.valueOf(s));
|
|
privateIds.add(Long.valueOf(s));
|
|
privateIds.addAll(wbsTreePrivates.stream().map(WbsTreePrivate::getPKeyId).collect(Collectors.toList()));
|
|
privateIds.addAll(wbsTreePrivates.stream().map(WbsTreePrivate::getPKeyId).collect(Collectors.toList()));
|
|
}
|
|
}
|
|
|
|
+ if (privateIds.size() > 0 && privateIds.contains(id)) {
|
|
|
|
+ return wbsTreeSynchronousRecord;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- return privateIds.contains(id);
|
|
|
|
|
|
+ return null;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -206,6 +210,7 @@ public class WbsTreeSynchronousRecordServiceImpl extends ServiceImpl<WbsTreeSync
|
|
wbsTreeSynchronousRecordVo.setId(projectInfo1.getId());
|
|
wbsTreeSynchronousRecordVo.setId(projectInfo1.getId());
|
|
wbsTreeSynchronousRecordVo.setName(projectInfo1.getProjectName());
|
|
wbsTreeSynchronousRecordVo.setName(projectInfo1.getProjectName());
|
|
wbsTreeSynchronousRecordVo.setType(2);
|
|
wbsTreeSynchronousRecordVo.setType(2);
|
|
|
|
+ wbsTreeSynchronousRecordVo.setWbsId(wbsTreePrivate1.getWbsId());
|
|
list.add(wbsTreeSynchronousRecordVo);
|
|
list.add(wbsTreeSynchronousRecordVo);
|
|
return getTempProject(wbsTreePrivate1, list);
|
|
return getTempProject(wbsTreePrivate1, list);
|
|
}
|
|
}
|