增加攝像頭鏈接狀態

taiwan-lingli-new
yiming 4 years ago
parent c4dca6d40f
commit 451193fab6

@ -1,6 +1,7 @@
package com.zhehekeji.web.entity; package com.zhehekeji.web.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
@ -34,6 +35,9 @@ public class Camera {
@ApiModelProperty(value = "预置点 增长值",hidden = true) @ApiModelProperty(value = "预置点 增长值",hidden = true)
private Integer ptzId; private Integer ptzId;
@TableField(exist = false)
private String status;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime; private LocalDateTime updateTime;
} }

@ -12,10 +12,10 @@ public class HikExceptionCallBack implements HCNetSDK.FExceptionCallBack {
public void invoke(int dwType, int lUserID, int lHandle, Pointer pUser) { public void invoke(int dwType, int lUserID, int lHandle, Pointer pUser) {
Integer cameraId =CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID)); Integer cameraId =CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID));
if(dwType == 32768){ if(dwType == 32768){
//CameraConnMap.disConn(cameraId);
log.error("hik disconnect,cameraId:{}", cameraId); log.error("hik disconnect,cameraId:{}", cameraId);
}else if(dwType == 32791){ }else if(dwType == 32791){
//CameraConnMap.conn(cameraId);
log.info("hik reconnect,cameraId:{}", CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID))); log.info("hik reconnect,cameraId:{}", CameraConnMap.getCameraIdByLoginId(new NetSDKLib.LLong(lUserID)));
} }

@ -57,7 +57,7 @@ public class HikLoginModuleImpl implements CameraControlLoginModule {
} }
//检测球机连接状态 //检测球机连接状态
public Boolean connectStatus(int userId){ public static Boolean connectStatus(int userId){
return hcNetsdk.NET_DVR_RemoteControl(userId,20005,null,0); return hcNetsdk.NET_DVR_RemoteControl(userId,20005,null,0);
} }

@ -11,6 +11,7 @@ import com.zhehekeji.web.entity.CameraIOConfig;
import com.zhehekeji.web.lib.CameraConnMap; import com.zhehekeji.web.lib.CameraConnMap;
import com.zhehekeji.web.lib.CameraControlLoginModule; import com.zhehekeji.web.lib.CameraControlLoginModule;
import com.zhehekeji.web.lib.CameraControlModule; import com.zhehekeji.web.lib.CameraControlModule;
import com.zhehekeji.web.lib.hik.HikLoginModuleImpl;
import com.zhehekeji.web.lib.joyware.NetSDKLib; import com.zhehekeji.web.lib.joyware.NetSDKLib;
import com.zhehekeji.web.mapper.CameraIOConfigMapper; import com.zhehekeji.web.mapper.CameraIOConfigMapper;
import com.zhehekeji.web.mapper.CameraIOMapper; import com.zhehekeji.web.mapper.CameraIOMapper;
@ -105,6 +106,14 @@ public class CameraService {
public PageInfo<Camera> cameras(StreetSearch streetSearch) { public PageInfo<Camera> cameras(StreetSearch streetSearch) {
PageHelper.startPage(streetSearch.getPageNum(), streetSearch.getPageSize()); PageHelper.startPage(streetSearch.getPageNum(), streetSearch.getPageSize());
List<Camera> cameras = cameraMapper.selectByMap(new HashMap<>(0)); List<Camera> cameras = cameraMapper.selectByMap(new HashMap<>(0));
cameras.forEach(camera -> {
Boolean ok = HikLoginModuleImpl.connectStatus(CameraConnMap.getConnId(camera.getId()).intValue());
if(ok){
camera.setStatus("連接正常");
}else {
camera.setStatus("未連接");
}
});
return new PageInfo<>(cameras); return new PageInfo<>(cameras);
} }

@ -37,7 +37,7 @@ cameraConfig:
# 下载mp4延迟 海康的下载mp4需要2分钟 # 下载mp4延迟 海康的下载mp4需要2分钟
# 利珀延迟10s就可 # 利珀延迟10s就可
# 单位毫秒 # 单位毫秒
delayDownloadMp4: 120000 delayDownloadMp4: 10000
# ------------ # ------------
# -----图片 mp4下载地址 # -----图片 mp4下载地址
savePath: savePath:

Loading…
Cancel
Save