|  |  | 
 |  |  | import com.genersoft.iot.vmp.gb28181.event.DeviceOffLineDetector; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.task.ISubscribeTask; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.task.impl.CatalogSubscribeTask; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.task.impl.MobilePositionSubscribeHandlerTask; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.task.impl.MobilePositionSubscribeTask; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.transmit.callback.DeferredResultHolder; | 
 |  |  | import com.genersoft.iot.vmp.gb28181.transmit.callback.RequestMessage; | 
 |  |  | 
 |  |  | import com.genersoft.iot.vmp.service.IDeviceService; | 
 |  |  | import com.genersoft.iot.vmp.storager.IRedisCatchStorage; | 
 |  |  | import com.genersoft.iot.vmp.storager.IVideoManagerStorage; | 
 |  |  | import com.genersoft.iot.vmp.vmanager.bean.DeviceChannelTree; | 
 |  |  | import com.genersoft.iot.vmp.vmanager.bean.WVPResult; | 
 |  |  | import com.github.pagehelper.PageInfo; | 
 |  |  | import io.swagger.annotations.Api; | 
 |  |  | import io.swagger.annotations.ApiImplicitParam; | 
 |  |  | import io.swagger.annotations.ApiImplicitParams; | 
 |  |  | import io.swagger.annotations.ApiOperation; | 
 |  |  | import org.kxml2.wap.wv.WV; | 
 |  |  | import org.slf4j.Logger; | 
 |  |  | import org.slf4j.LoggerFactory; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | 
 |  |  |          @ApiImplicitParam(name="query", value = "查询内容" ,dataTypeClass = String.class), | 
 |  |  |          @ApiImplicitParam(name="online", value = "是否在线"  ,dataTypeClass = Boolean.class), | 
 |  |  |          @ApiImplicitParam(name="channelType", value = "设备/子目录-> false/true" ,dataTypeClass = Boolean.class), | 
 |  |  |          @ApiImplicitParam(name="catalogUnderDevice", value = "是否直属与设备的目录" ,dataTypeClass = Boolean.class), | 
 |  |  |    }) | 
 |  |  |    public ResponseEntity<PageInfo> channels(@PathVariable String deviceId, | 
 |  |  |                                     int page, int count, | 
 |  |  |                                     @RequestParam(required = false) String query, | 
 |  |  |                                     @RequestParam(required = false) Boolean online, | 
 |  |  |                                     @RequestParam(required = false) Boolean channelType) { | 
 |  |  |                                     @RequestParam(required = false) Boolean channelType, | 
 |  |  |                                     @RequestParam(required = false) Boolean catalogUnderDevice) { | 
 |  |  | //      if (logger.isDebugEnabled()) { | 
 |  |  | //         logger.debug("查询视频设备通道API调用"); | 
 |  |  | //      } | 
 |  |  | 
 |  |  |          query = null; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       PageInfo pageResult = storager.queryChannelsByDeviceId(deviceId, query, channelType, online, page, count); | 
 |  |  |       PageInfo pageResult = storager.queryChannelsByDeviceId(deviceId, query, channelType, online, catalogUnderDevice, page, count); | 
 |  |  |       return new ResponseEntity<>(pageResult,HttpStatus.OK); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  | 
 |  |  |          @ApiImplicitParam(name="page", value = "当前页", required = true, dataTypeClass = Integer.class), | 
 |  |  |          @ApiImplicitParam(name="count", value = "每页条数", required = true, dataTypeClass = Integer.class), | 
 |  |  |          @ApiImplicitParam(name="query", value = "查询内容", dataTypeClass = String.class), | 
 |  |  |          @ApiImplicitParam(name="online", value = "是否在线", dataTypeClass = String.class), | 
 |  |  |          @ApiImplicitParam(name="online", value = "是否在线", dataTypeClass = Boolean.class), | 
 |  |  |          @ApiImplicitParam(name="channelType", value = "通道类型, 子目录", dataTypeClass = Boolean.class), | 
 |  |  |    }) | 
 |  |  |    @GetMapping("/sub_channels/{deviceId}/{channelId}/channels") | 
 |  |  | 
 |  |  |                                       int page, | 
 |  |  |                                       int count, | 
 |  |  |                                       @RequestParam(required = false) String query, | 
 |  |  |                                       @RequestParam(required = false) String online, | 
 |  |  |                                       @RequestParam(required = false) Boolean online, | 
 |  |  |                                       @RequestParam(required = false) Boolean channelType){ | 
 |  |  |  | 
 |  |  | //      if (logger.isDebugEnabled()) { | 
 |  |  | 
 |  |  |       return result; | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    @GetMapping("/{deviceId}/tree") | 
 |  |  |    @ApiOperation(value = "通道树形结构", notes = "通道树形结构") | 
 |  |  |    public WVPResult<List<DeviceChannelTree>> tree(@PathVariable String deviceId) { | 
 |  |  |       return WVPResult.Data(storager.tree(deviceId)); | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    @GetMapping("/{deviceId}/sync_status") | 
 |  |  |    @ApiOperation(value = "获取通道同步进度", notes = "获取通道同步进度") |