| 
					
				 | 
			
			
				@@ -311,34 +311,64 @@ public class CameraManageServiceImpl implements CameraManageService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         searchSceneEntity.setUserType(currentUser.getType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //1是公司,2是公司及以下,3部门,4部门及以下,5自定义 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         searchSceneEntity.setPermissonType(currentUser.getPermissonType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        searchSceneEntity.setParentSceneId(0l); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<SceneEntity> sceneEntities = sceneMapper.findList(searchSceneEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         CameraManage searchCameraManage=new CameraManage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         searchCameraManage.setStatus(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<CameraManage> cameraManages = cameraManageMapper.selectList(searchCameraManage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        searchCameraManage.setTenantId(currentUser.getTenantId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<CameraManage> cameraManages = cameraManageMapper.selectAllCameras(searchCameraManage); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<CameraDto>cameraDtos=new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        Map<Integer, List<CameraManage>> detailmap = cameraManages.stream() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                .collect(Collectors.groupingBy(d -> d.getSceneId() )); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sceneEntities.forEach(sceneEntity -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            Long id = sceneEntity.getId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(detailmap.get(Integer.valueOf(id+""))!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 CameraDto cameraDto=new CameraDto(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                cameraDto.setId(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                cameraDto.setSceneName(sceneEntity.getSceneName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cameraDto.setId(sceneEntity.getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cameraDto.setKey(sceneEntity.getId()+"_senceType"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cameraDto.setParentKey(sceneEntity.getParentSceneId()+"_senceType"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 cameraDto.setSceneTypeName(sceneEntity.getSceneTypeName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                List<CameraDto>cameraDtos2=new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                detailmap.get(Integer.valueOf(id+"")).forEach(detail->{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    CameraDto cameraDto2=new CameraDto(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    cameraDto2.setId(Long.valueOf(detail.getId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    cameraDto2.setSceneName(detail.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    cameraDto2.setSceneTypeName(sceneEntity.getSceneTypeName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    cameraDtos2.add(cameraDto2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                cameraDto.setChildren(cameraDtos2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                //cameraDto.setPid(sceneEntity.getParentSceneId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cameraDto.setSceneName(sceneEntity.getSceneName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 cameraDtos.add(cameraDto); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return cameraDtos; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cameraManages.forEach(cameraManage ->{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            CameraDto cameraDto=new CameraDto(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            cameraDto.setId(Long.valueOf(cameraManage.getId()) ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            cameraDto.setKey(cameraManage.getId()+"_cameraType"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String[] parentIds = cameraManage.getParentSceneIds().split(","); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(parentIds.length>1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cameraDto.setParentKey(parentIds[1]+"_senceType"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            cameraDto.setSceneName(cameraManage.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            cameraDtos.add(cameraDto); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<CameraDto>cameraTree=getCameraTree(cameraDtos,0+"_senceType",1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cameraTree; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<CameraManage> getAllCameras(Integer id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return cameraManageMapper.getAllCameras(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public  List<CameraDto> getCameraTree(List<CameraDto> list, String key, Integer leve) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<CameraDto> temList = newArrayList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (list != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (CameraDto cameraDto : list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (key.equals(cameraDto.getParentKey())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    List<CameraDto> chidren = getCameraTree(list, cameraDto.getKey(), ++leve); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    CameraDto temMeanu = new CameraDto(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    BeanUtils.copyProperties(cameraDto, temMeanu); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    temMeanu.setChildren(chidren); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    temList.add(temMeanu); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    leve--; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (temList.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return temList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |