| | |
| | | } |
| | | if(Constants.equalsInteger(req.getWithCameras(),Constants.ONE)){ |
| | | initReginCameralList(allList,req.getName());//获取全部监控点数据 |
| | | }else if(Constants.equalsInteger(req.getWithCameras(),Constants.TWO)){ |
| | | initReginCameralList(allList,req.getName());//获取全部监控点数据 |
| | | initReginFireDeviveList(allList,req.getName());//获取全部监控点数据 |
| | | initReginSensorList(allList,req.getName());//获取全部监控点数据 |
| | | } |
| | | List<PageRegionInfoResponse> data = new RegionTreeVO(allList).buildTree(); |
| | | return data; |
| | | } |
| | | private void initReginFireDeviveList(List<PageRegionInfoResponse> allList,String name) { |
| | | List<CarmeraListVO> carmeraListVOList = fireDeviceList(); |
| | | if(carmeraListVOList!=null && carmeraListVOList.size()>0){ |
| | | for(PageRegionInfoResponse p : allList){ |
| | | for(CarmeraListVO c : carmeraListVOList){ |
| | | if(StringUtils.equals(p.getIndexCode(),c.getReginCode()) |
| | | && (StringUtils.contains(c.getName(),name) ||StringUtils.isBlank(name))){ |
| | | if(p.getCarmeraList()==null){ |
| | | p.setCarmeraList(new ArrayList<>()); |
| | | } |
| | | p.getCarmeraList().add(c); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | private void initReginSensorList(List<PageRegionInfoResponse> allList,String name) { |
| | | List<CarmeraListVO> carmeraListVOList = sensorList(); |
| | | if(carmeraListVOList!=null && carmeraListVOList.size()>0){ |
| | | for(PageRegionInfoResponse p : allList){ |
| | | for(CarmeraListVO c : carmeraListVOList){ |
| | | if(StringUtils.equals(p.getIndexCode(),c.getReginCode()) |
| | | && (StringUtils.contains(c.getName(),name) ||StringUtils.isBlank(name))){ |
| | | if(p.getCarmeraList()==null){ |
| | | p.setCarmeraList(new ArrayList<>()); |
| | | } |
| | | p.getCarmeraList().add(c); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | private void initReginCameralList(List<PageRegionInfoResponse> allList,String name) { |
| | | CarmeraListVO re = new CarmeraListVO(); |
| | |
| | | } |
| | | return data; |
| | | } |
| | | public List<CarmeraListVO> sensorList(){ |
| | | List<SensorStatusListResponse> allList = new ArrayList<>(); |
| | | boolean hasNext = true; |
| | | int curTotal = 0; |
| | | int curPage = 1; |
| | | while (hasNext){ |
| | | //分页遍历循环查询所有门禁设备数据 |
| | | SensorStatusListRequest param = new SensorStatusListRequest(); |
| | | param.setRegionIndexCode("-1"); |
| | | param.setPageSize(100); |
| | | param.setPageNo(curPage); |
| | | BaseResponse<BaseListPageResponse<SensorStatusListResponse>> response = HKService.sensorStatusSearch(param); |
| | | if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,海康同步数据失败~"); |
| | | } |
| | | BaseListPageResponse<SensorStatusListResponse> r = response.getData(); |
| | | curTotal += 100; |
| | | if(curTotal >= r.getTotal()){ |
| | | hasNext = false; |
| | | } |
| | | if(r.getList() == null || r.getList().size()==0){ |
| | | hasNext =false; |
| | | }else{ |
| | | allList.addAll(r.getList()); |
| | | } |
| | | curPage++; |
| | | } |
| | | |
| | | List<CarmeraListVO> data = new ArrayList<>(); |
| | | for(SensorStatusListResponse p : allList){ |
| | | CarmeraListVO t = new CarmeraListVO(); |
| | | t.setIndexCode(p.getIndexCode()); |
| | | t.setReginCode(p.getRegionIndexCode()); |
| | | t.setName(p.getCn()); |
| | | t.setStatus(p.getUnitStatus()); |
| | | //0:未注册 1:正常 2: 修复中 3:异常状态 |
| | | if(t.getStatus()!=null && t.getStatus() == 0){ |
| | | t.setStatusName("未注册"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 1){ |
| | | t.setStatusName("正常"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 2){ |
| | | t.setStatusName("修复中"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 3){ |
| | | t.setStatusName("异常状态"); |
| | | } |
| | | data.add(t); |
| | | } |
| | | return data; |
| | | } |
| | | public List<CarmeraListVO> fireDeviceList(){ |
| | | List<FireDeviceStatusListResponse> allList = new ArrayList<>(); |
| | | boolean hasNext = true; |
| | | int curTotal = 0; |
| | | int curPage = 1; |
| | | while (hasNext){ |
| | | //分页遍历循环查询所有门禁设备数据 |
| | | FireDeviceStatuslListRequest param = new FireDeviceStatuslListRequest(); |
| | | param.setRegionIndexCode("-1"); |
| | | param.setPageSize(100); |
| | | param.setPageNo(curPage); |
| | | BaseResponse<BaseListPageResponse<FireDeviceStatusListResponse>> response = HKService.fireDeviceStatusSearch(param); |
| | | if(response == null || !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){ |
| | | throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,海康同步数据失败~"); |
| | | } |
| | | BaseListPageResponse<FireDeviceStatusListResponse> r = response.getData(); |
| | | curTotal += 100; |
| | | if(curTotal >= r.getTotal()){ |
| | | hasNext = false; |
| | | } |
| | | if(r.getList() == null || r.getList().size()==0){ |
| | | hasNext =false; |
| | | }else{ |
| | | allList.addAll(r.getList()); |
| | | } |
| | | curPage++; |
| | | } |
| | | |
| | | List<CarmeraListVO> data = new ArrayList<>(); |
| | | for(FireDeviceStatusListResponse p : allList){ |
| | | CarmeraListVO t = new CarmeraListVO(); |
| | | t.setIndexCode(p.getIndexCode()); |
| | | t.setReginCode(p.getRegionIndexCode()); |
| | | t.setName(p.getCn()); |
| | | t.setStatus(p.getUnitStatus()); |
| | | //0:未注册 1:正常 2: 修复中 3:异常状态 |
| | | if(t.getStatus()!=null && t.getStatus() == 0){ |
| | | t.setStatusName("未注册"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 1){ |
| | | t.setStatusName("正常"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 2){ |
| | | t.setStatusName("修复中"); |
| | | } |
| | | if(t.getStatus()!=null && t.getStatus() == 3){ |
| | | t.setStatusName("异常状态"); |
| | | } |
| | | data.add(t); |
| | | } |
| | | return data; |
| | | } |
| | | @Override |
| | | public List<PageFireChannelInfoResponse> fireChannelList(){ |
| | | List<PageFireChannelInfoResponse> allList = new ArrayList<>(); |