|
@@ -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;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
}
|