|
@@ -138,33 +138,41 @@ public class MonitorPointServiceImpl implements MonitorPointService {
|
|
|
|
|
|
@Override
|
|
|
public List<CameraTreeDTO> selectTree() {
|
|
|
+ Integer siteId=UserUtil.getCurrentUser().getSiteId();
|
|
|
List<MonitorPointTreeDTO> trees=
|
|
|
- monitorPointMapper.selectTree(UserUtil.getCurrentUser().getSiteId());
|
|
|
+ monitorPointMapper.selectTree(siteId);
|
|
|
Map<Integer, List<MonitorPointTreeDTO>> detailmap = trees.stream()
|
|
|
.collect(Collectors.groupingBy(d -> d.getMonitorSceneId() ));
|
|
|
- Iterator<List<MonitorPointTreeDTO>> iterator = detailmap.values().iterator();
|
|
|
- trees.clear();
|
|
|
List<CameraTreeDTO>newTress=new ArrayList<>();
|
|
|
- while (iterator.hasNext()){
|
|
|
- List<MonitorPointTreeDTO> next = iterator.next();
|
|
|
- CameraTreeDTO cameraTreeDTO=new CameraTreeDTO();
|
|
|
- MonitorPointTreeDTO monitorPointTreeDTO = next.get(0);
|
|
|
- cameraTreeDTO.setId(monitorPointTreeDTO.getMonitorSceneId());
|
|
|
- cameraTreeDTO.setName(monitorPointTreeDTO.getMonitorSceneName());
|
|
|
- cameraTreeDTO.setParentId(0);
|
|
|
- List<CameraTreeDTO>cameraTreeDTOS=new ArrayList<>();
|
|
|
- next.forEach(n->{
|
|
|
- CameraTreeDTO cameraTreeDTOChild=new CameraTreeDTO();
|
|
|
- cameraTreeDTOChild.setParentId(cameraTreeDTO.getId());
|
|
|
- cameraTreeDTOChild.setId(n.getMonitorPointId());
|
|
|
- cameraTreeDTOChild.setName(n.getMonitorPointName());
|
|
|
- cameraTreeDTOS.add(cameraTreeDTOChild);
|
|
|
- });
|
|
|
- cameraTreeDTO.setChild(cameraTreeDTOS);
|
|
|
- cameraTreeDTO.setSize(cameraTreeDTOS.size());
|
|
|
- newTress.add(cameraTreeDTO);
|
|
|
+ List<Integer>scenes=new ArrayList<>();
|
|
|
+ trees.forEach(tree->{
|
|
|
+ if(!scenes.contains(tree.getMonitorSceneId())){
|
|
|
+ scenes.add(tree.getMonitorSceneId());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ scenes.forEach(sceneId->{
|
|
|
+ List<MonitorPointTreeDTO> next = detailmap.get(sceneId);
|
|
|
+ CameraTreeDTO cameraTreeDTO=new CameraTreeDTO();
|
|
|
+ MonitorPointTreeDTO monitorPointTreeDTO = next.get(0);
|
|
|
+ cameraTreeDTO.setId(monitorPointTreeDTO.getMonitorSceneId());
|
|
|
+ cameraTreeDTO.setName(monitorPointTreeDTO.getMonitorSceneName());
|
|
|
+ cameraTreeDTO.setParentId(0);
|
|
|
+ List<CameraTreeDTO>cameraTreeDTOS=new ArrayList<>();
|
|
|
+ next.forEach(n->{
|
|
|
+ CameraTreeDTO cameraTreeDTOChild=new CameraTreeDTO();
|
|
|
+ if(n.getMonitorPointName()!=null){
|
|
|
+ cameraTreeDTOChild.setParentId(cameraTreeDTO.getId());
|
|
|
+ cameraTreeDTOChild.setId(n.getMonitorPointId());
|
|
|
+ cameraTreeDTOChild.setName(n.getMonitorPointName());
|
|
|
+ cameraTreeDTOS.add(cameraTreeDTOChild);
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ cameraTreeDTO.setChild(cameraTreeDTOS);
|
|
|
+ cameraTreeDTO.setSize(cameraTreeDTOS.size());
|
|
|
+ newTress.add(cameraTreeDTO);
|
|
|
+ });
|
|
|
|
|
|
- }
|
|
|
|
|
|
return newTress;
|
|
|
}
|