瀏覽代碼

甬台温计量关联质检报错

chenr 7 月之前
父節點
當前提交
3c9d771cf9

+ 2 - 2
blade-service/blade-meter/src/main/java/org/springblade/meter/service/impl/MiddleMeterApplyServiceImpl.java

@@ -881,7 +881,7 @@ public class MiddleMeterApplyServiceImpl extends BaseServiceImpl<MiddleMeterAppl
         //获取当前合同下所有节点
         List<WbsNodeVO> vos = baseMapper.getAllNode2(dto);
         Map<Long, WbsNodeVO> map2 = vos.stream().collect(Collectors.toMap(l -> l.getId(), l -> l));
-        Map<Long, List<WbsNodeVO>> map3 = vos.stream().collect(Collectors.groupingBy(WbsNodeVO::getParentId));
+        Map<Long, List<WbsNodeVO>> map3 = vos.stream().filter(v->v.getParentId()!=null).collect(Collectors.groupingBy(WbsNodeVO::getParentId));
         //获取点击节点的所有子节点
         List<WbsNodeVO> list7 = new ArrayList<>();
         list7.add(masterId);
@@ -1406,7 +1406,7 @@ public class MiddleMeterApplyServiceImpl extends BaseServiceImpl<MiddleMeterAppl
         }catch (Exception e){
             throw new ServiceException("自动生成失败:"+e.getMessage());
         }
-        
+
     }
 
     @Override

+ 6 - 4
blade-service/blade-user/src/main/java/org/springblade/system/user/service/impl/UserServiceImpl.java

@@ -1294,9 +1294,11 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
 
             if (nodesAll.size() > 0) {
                 //判断是否有子级,赋值
-                Map<Long, List<WbsTreeContractLazyVO>> groupedByParentId = nodesAll.stream().collect(Collectors.groupingBy(WbsTreeContractLazyVO::getParentId));
+                Map<Long, List<WbsTreeContractLazyVO>> groupedByParentId = nodesAll.stream()
+                    .filter(vo -> vo.getParentId() != null)
+                    .collect(Collectors.groupingBy(WbsTreeContractLazyVO::getParentId));
                 for (WbsTreeContractLazyVO vo : nodesAll) {
-                    if (vo.getParentId() == 0) {
+                    if (vo.getParentId()!=null&&vo.getParentId() == 0) {
                         vo.setHasChildren(1);
                     }
                     List<WbsTreeContractLazyVO> childNodes = groupedByParentId.getOrDefault(vo.getId(), null);
@@ -1466,8 +1468,8 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
      */
     public List<NodeVO> buildNodeTreeByStream(List<WbsTreeContractLazyVO> distinctNodesAll,
                                               Map<Long, WbsTreeContractLazyVO> lowestNodesMap) {
-        List<WbsTreeContractLazyVO> list = distinctNodesAll.stream().filter(f -> f.getParentId().equals(0L)).collect(Collectors.toList());
-        Map<Long, List<WbsTreeContractLazyVO>> map = distinctNodesAll.stream().collect(Collectors.groupingBy(WbsTreeContractLazyVO::getParentId));
+        List<WbsTreeContractLazyVO> list = distinctNodesAll.stream().filter(f->f.getParentId()!=null).filter(f -> f.getParentId().equals(0L)).collect(Collectors.toList());
+        Map<Long, List<WbsTreeContractLazyVO>> map = distinctNodesAll.stream().filter(f->f.getParentId()!=null).collect(Collectors.groupingBy(WbsTreeContractLazyVO::getParentId));
         return recursionFnNodeTree(list, map, lowestNodesMap);
     }