|
|
@@ -45,18 +45,18 @@ import java.util.*;
|
|
|
@RestController
|
|
|
@RequestMapping("/api/device/query")
|
|
|
public class DeviceQuery {
|
|
|
-
|
|
|
+
|
|
|
private final static Logger logger = LoggerFactory.getLogger(DeviceQuery.class);
|
|
|
-
|
|
|
+
|
|
|
@Autowired
|
|
|
private IVideoManagerStorage storager;
|
|
|
|
|
|
@Autowired
|
|
|
private IRedisCatchStorage redisCatchStorage;
|
|
|
-
|
|
|
+
|
|
|
@Autowired
|
|
|
private SIPCommander cmder;
|
|
|
-
|
|
|
+
|
|
|
@Autowired
|
|
|
private DeferredResultHolder resultHolder;
|
|
|
|
|
|
@@ -80,11 +80,11 @@ public class DeviceQuery {
|
|
|
})
|
|
|
@GetMapping("/devices/{deviceId}")
|
|
|
public ResponseEntity<Device> devices(@PathVariable String deviceId){
|
|
|
-
|
|
|
+
|
|
|
// if (logger.isDebugEnabled()) {
|
|
|
// logger.debug("查询视频设备API调用,deviceId:" + deviceId);
|
|
|
// }
|
|
|
-
|
|
|
+
|
|
|
Device device = storager.queryVideoDevice(deviceId);
|
|
|
return new ResponseEntity<>(device,HttpStatus.OK);
|
|
|
}
|
|
|
@@ -102,11 +102,11 @@ public class DeviceQuery {
|
|
|
})
|
|
|
@GetMapping("/devices")
|
|
|
public PageInfo<Device> devices(int page, int count){
|
|
|
-
|
|
|
+
|
|
|
// if (logger.isDebugEnabled()) {
|
|
|
// logger.debug("查询所有视频设备API调用");
|
|
|
// }
|
|
|
-
|
|
|
+
|
|
|
return storager.queryVideoDeviceList(page, count);
|
|
|
}
|
|
|
|
|
|
@@ -160,7 +160,7 @@ public class DeviceQuery {
|
|
|
})
|
|
|
@PostMapping("/devices/{deviceId}/sync")
|
|
|
public WVPResult<SyncStatus> devicesSync(@PathVariable String deviceId){
|
|
|
-
|
|
|
+
|
|
|
if (logger.isDebugEnabled()) {
|
|
|
logger.debug("设备通道信息同步API调用,deviceId:" + deviceId);
|
|
|
}
|
|
|
@@ -193,7 +193,7 @@ public class DeviceQuery {
|
|
|
})
|
|
|
@DeleteMapping("/devices/{deviceId}/delete")
|
|
|
public ResponseEntity<String> delete(@PathVariable String deviceId){
|
|
|
-
|
|
|
+
|
|
|
if (logger.isDebugEnabled()) {
|
|
|
logger.debug("设备信息删除API调用,deviceId:" + deviceId);
|
|
|
}
|
|
|
@@ -327,7 +327,7 @@ public class DeviceQuery {
|
|
|
|
|
|
/**
|
|
|
* 设备状态查询请求API接口
|
|
|
- *
|
|
|
+ *
|
|
|
* @param deviceId 设备id
|
|
|
*/
|
|
|
@ApiOperation("设备状态查询")
|
|
|
@@ -339,9 +339,14 @@ public class DeviceQuery {
|
|
|
if (logger.isDebugEnabled()) {
|
|
|
logger.debug("设备状态查询API调用");
|
|
|
}
|
|
|
- Device device = storager.queryVideoDevice(deviceId);
|
|
|
String uuid = UUID.randomUUID().toString();
|
|
|
String key = DeferredResultHolder.CALLBACK_CMD_DEVICESTATUS + deviceId;
|
|
|
+ Device device = storager.queryVideoDevice(deviceId);
|
|
|
+ DeferredResult<ResponseEntity<String>> result = new DeferredResult<ResponseEntity<String>>(2*1000L);
|
|
|
+ if(device == null) {
|
|
|
+ result.setResult(new ResponseEntity(String.format("设备%s不存在", deviceId),HttpStatus.OK));
|
|
|
+ return result;
|
|
|
+ }
|
|
|
cmder.deviceStatusQuery(device, event -> {
|
|
|
RequestMessage msg = new RequestMessage();
|
|
|
msg.setId(uuid);
|
|
|
@@ -349,7 +354,7 @@ public class DeviceQuery {
|
|
|
msg.setData(String.format("获取设备状态失败,错误码: %s, %s", event.statusCode, event.msg));
|
|
|
resultHolder.invokeResult(msg);
|
|
|
});
|
|
|
- DeferredResult<ResponseEntity<String>> result = new DeferredResult<ResponseEntity<String>>(2*1000L);
|
|
|
+
|
|
|
result.onTimeout(()->{
|
|
|
logger.warn(String.format("获取设备状态超时"));
|
|
|
// 释放rtpserver
|
|
|
@@ -386,8 +391,8 @@ public class DeviceQuery {
|
|
|
})
|
|
|
@GetMapping("/alarm/{deviceId}")
|
|
|
public DeferredResult<ResponseEntity<String>> alarmApi(@PathVariable String deviceId,
|
|
|
- @RequestParam(required = false) String startPriority,
|
|
|
- @RequestParam(required = false) String endPriority,
|
|
|
+ @RequestParam(required = false) String startPriority,
|
|
|
+ @RequestParam(required = false) String endPriority,
|
|
|
@RequestParam(required = false) String alarmMethod,
|
|
|
@RequestParam(required = false) String alarmType,
|
|
|
@RequestParam(required = false) String startTime,
|