|
@@ -220,32 +220,36 @@ public class WbsParamServiceImpl extends BaseServiceImpl<WbsParamMapper, WbsPara
|
|
if(wbsTreePrivate==null){
|
|
if(wbsTreePrivate==null){
|
|
return R.success("暂无数据");
|
|
return R.success("暂无数据");
|
|
}
|
|
}
|
|
- String ancestor=wbsTreePrivate.getAncestors()+","+wbsTreePrivate.getAncestorsPId();
|
|
|
|
|
|
+ //拿到引用项目级节点的祖级节点
|
|
|
|
+ String ancestor=wbsTreePrivate.getAncestorsPId()+","+wbsTreePrivate.getPKeyId();
|
|
String[] ancestors = ancestor.split(",");
|
|
String[] ancestors = ancestor.split(",");
|
|
List<Long> list2 = Arrays.stream(ancestors)
|
|
List<Long> list2 = Arrays.stream(ancestors)
|
|
.map(Long::parseLong)
|
|
.map(Long::parseLong)
|
|
.collect(Collectors.toList());
|
|
.collect(Collectors.toList());
|
|
String join = String.join(",", list2.stream().map(String::valueOf).collect(Collectors.toList()));
|
|
String join = String.join(",", list2.stream().map(String::valueOf).collect(Collectors.toList()));
|
|
- String sql11 = "SELECT * FROM m_wbs_tree_private WHERE node_type=1 AND project_id="+projectId+" AND parent_id!=0 AND (p_key_id IN (" + join + ") or id IN ("+join+"))";
|
|
|
|
|
|
+ String sql11 = "SELECT * FROM m_wbs_tree_private WHERE node_type=1 AND project_id="+projectId+" AND parent_id!=0 AND p_key_id IN (" + join + ")";
|
|
List<WbsTreePrivate> nodeList = jdbcTemplate.query(sql11, new BeanPropertyRowMapper<>(WbsTreePrivate.class));
|
|
List<WbsTreePrivate> nodeList = jdbcTemplate.query(sql11, new BeanPropertyRowMapper<>(WbsTreePrivate.class));
|
|
//List<WbsTreePrivate> nodeList = wbsTreePrivateService.getBaseMapper().selectList(new LambdaQueryWrapper<>(WbsTreePrivate.class).select(WbsTreePrivate::getId).eq(WbsTreePrivate::getNodeType, 1).ne(WbsTreePrivate::getParentId, 0).in(WbsTreePrivate::getPKeyId, list2));
|
|
//List<WbsTreePrivate> nodeList = wbsTreePrivateService.getBaseMapper().selectList(new LambdaQueryWrapper<>(WbsTreePrivate.class).select(WbsTreePrivate::getId).eq(WbsTreePrivate::getNodeType, 1).ne(WbsTreePrivate::getParentId, 0).in(WbsTreePrivate::getPKeyId, list2));
|
|
|
|
+ //那点祖级节点的Id
|
|
List<Long> list3 = nodeList.stream().map(o -> o.getId()).collect(Collectors.toList());
|
|
List<Long> list3 = nodeList.stream().map(o -> o.getId()).collect(Collectors.toList());
|
|
if(list3.size()<0){
|
|
if(list3.size()<0){
|
|
return R.success("暂无数据");
|
|
return R.success("暂无数据");
|
|
}
|
|
}
|
|
|
|
+ //查出这个项目所有的文件题名配置
|
|
List<WbsParam> wbsParamList = this.getBaseMapper().selectList(new LambdaQueryWrapper<>(WbsParam.class).eq(WbsParam::getProjectId, projectId).eq(WbsParam::getK, "FILE_TITLE"));
|
|
List<WbsParam> wbsParamList = this.getBaseMapper().selectList(new LambdaQueryWrapper<>(WbsParam.class).eq(WbsParam::getProjectId, projectId).eq(WbsParam::getK, "FILE_TITLE"));
|
|
List<WbsParam> result=new ArrayList<>();
|
|
List<WbsParam> result=new ArrayList<>();
|
|
if(wbsParamList.size()>0){
|
|
if(wbsParamList.size()>0){
|
|
//筛选出包含当前单位工程节点的
|
|
//筛选出包含当前单位工程节点的
|
|
for (WbsParam param : wbsParamList) {
|
|
for (WbsParam param : wbsParamList) {
|
|
|
|
+ //祖级节点里有文件题名配置就加进去
|
|
if(list3.contains(param.getNodeId())){
|
|
if(list3.contains(param.getNodeId())){
|
|
result.add(param);
|
|
result.add(param);
|
|
}
|
|
}
|
|
|
|
+ //如果是全局的也加进去
|
|
if(param.getNameType()==1){
|
|
if(param.getNameType()==1){
|
|
result.add(param);
|
|
result.add(param);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
if(result.size()>0){
|
|
if(result.size()>0){
|
|
//如果有部分节点优先部分
|
|
//如果有部分节点优先部分
|
|
List<WbsParam> collect1 = result.stream().filter(o -> o.getNameType() == 2).collect(Collectors.toList());
|
|
List<WbsParam> collect1 = result.stream().filter(o -> o.getNameType() == 2).collect(Collectors.toList());
|