diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java index 019ae129a..197135928 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalTreeServiceImpl.java @@ -265,12 +265,14 @@ public class TerminalTreeServiceImpl implements TerminalTreeService { tree.setPid(userLedgerVO.getStationId()); tree.setId(userLedgerVO.getId()); tree.setChildren(monitorList); - /* int devSize = (int) monitorList.stream().map(x -> { + int devSize = (int) monitorList.stream().map(x -> { // 获取父id字符串,通过 逗号 分割 成一个数组 String[] pid = x.getPids().split(StrUtil.COMMA); return pid[LineBaseEnum.DEVICE_LEVEL.getCode()]; - }).distinct().count();*/ + }).distinct().count(); tree.setName(userLedgerVO.getProjectName()); + //特殊处理,用户层级下面的装置数量临时存到pids字段。 + tree.setPids(String.valueOf(devSize)); temList.add(tree); }); @@ -334,17 +336,20 @@ public class TerminalTreeServiceImpl implements TerminalTreeService { } if (isLine) { //变电站集合 - if(userLineMap.containsKey(terminalTree.getId())){ - List devList = userLineMap.get(terminalTree.getId()); - terminalTrees.addAll(devList); - } - int size = (int) terminalTrees.stream().map(x -> { // 获取父id字符串,通过 逗号 分割 成一个数组 String[] pid = x.getPids().split(StrUtil.COMMA); return pid[LineBaseEnum.DEVICE_LEVEL.getCode()]; }).distinct().count(); - terminalTree.setName(terminalTree.getName() + "(" + size + "台装置)"); + + int devSize = 0; + if(userLineMap.containsKey(terminalTree.getId())){ + List userList = userLineMap.get(terminalTree.getId()); + devSize= (int) userList.stream().mapToDouble(it->Integer.parseInt(it.getPids())).sum(); + terminalTrees.addAll(userList); + } + int sumDev = size+devSize; + terminalTree.setName(terminalTree.getName() + "(" +sumDev+ "台装置)"); terminalTree.setChildren(terminalTrees); } else { terminalTree.setChildren(terminalTrees);