tplink摄像头物联管理

This commit is contained in:
曹磊 2025-03-18 11:07:25 +08:00
parent 099079f890
commit e7c3ade238
4 changed files with 44 additions and 88 deletions

View File

@ -133,7 +133,7 @@ public class CameraInfo implements Serializable {
private String topTime;
/**护理单元*/
@ApiModelProperty(value = "护理单元ID")
@Dict(dictTable ="nu_base_info",dicText = "name",dicCode = "id")
@Dict(dictTable ="nu_base_info",dicText = "nu_name",dicCode = "nu_id")
private String nuId;
/**护理单元*/
@ApiModelProperty(value = "护理单元")

View File

@ -26,9 +26,9 @@
system_type as systemType,
protocol as protocol,
a.nu_id as nuId,
b.name as nuName,
b.nu_name as nuName,
ifnull(c.multitrans,0) as multitrans
from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.id
from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.nu_id
left join nu_iot_tplink_camera_capability c on a.device_index = c.device_index
<where>
<if test="params.deviceIndex != null and params.deviceIndex != ''">
@ -47,7 +47,7 @@
AND a.region_name LIKE concat('%',#{params.regionName},'%')
</if>
<if test="params.nuName != null and params.nuName != ''">
AND b.name LIKE concat('%',#{params.nuName},'%')
AND b.nu_name LIKE concat('%',#{params.nuName},'%')
</if>
<if test="params.projectId != null and params.projectId != ''">
AND a.project_id = #{params.projectId}
@ -87,15 +87,15 @@
<select id="findNuPage" parameterType="com.nu.modules.tplink.camera.entity.CameraInfo" resultType="com.nu.modules.tplink.camera.entity.CameraInfo">
select
id as nuId,
name as nuName
nu_id as nuId,
nu_name as nuName
from nu_base_info b
<where>
<if test="params.nuId != null and params.nuId != ''">
AND b.id = #{params.nuId}
AND b.nu_id = #{params.nuId}
</if>
<if test="params.nuName != null and params.nuName != ''">
AND b.name LIKE concat('%',#{params.nuName},'%')
AND b.nu_name LIKE concat('%',#{params.nuName},'%')
</if>
</where>
</select>
@ -123,9 +123,9 @@
location_name as locationName,
system_type as systemType,
protocol as protocol,
nu_id as nuId,
b.id as nuName
from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.id
a.nu_id as nuId,
b.nu_name as nuName
from nu_iot_tplink_camera a left join nu_base_info b on a.nu_id = b.nu_id
where device_index = #{deviceIndex}
</select>

View File

@ -1694,8 +1694,7 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
sb.append("{");
sb.append("\"id\"").append(":").append("[{");
sb.append("\"videoDevId\"").append(":").append("\"").append(cameraInfo.getVideoDevId()).append("\",");
sb.append("\"storageDevId\"").append(":").append("\"").append(cameraInfo.getStorageDevId()).append("\",");
sb.append("\"storageType\"").append(":").append(cameraInfo.getStorageType());
sb.append("\"storageDevId\"").append(":").append("\"").append(cameraInfo.getStorageDevId()).append("\"");
sb.append("}],");
sb.append("\"videoType\"").append(":").append("[").append(cameraInfo.getVideoType()).append("],");
sb.append("\"scale\"").append(":\"").append(cameraInfo.getScale()).append("/1").append("\",");
@ -1720,7 +1719,6 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
entity.setSessionId(sessionId);
entity.setErrorCode(errCode);
entity.setStorageDevId(cameraInfo.getStorageDevId());
entity.setStorageType(cameraInfo.getStorageType());
entity.setVideoType(cameraInfo.getVideoType());
entity.setStartTime(cameraInfo.getStartTime());
entity.setEndTime(cameraInfo.getEndTime());
@ -1748,10 +1746,8 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
sb.append("\"id\"").append(":").append("[{");
sb.append("\"videoDevId\"").append(":").append("\"").append(cameraInfo.getVideoDevId()).append("\",");
sb.append("\"storageDevId\"").append(":").append("\"").append(cameraInfo.getStorageDevId()).append("\",");
sb.append("\"storageType\"").append(":").append(cameraInfo.getStorageType()).append(",");
sb.append("\"sessionId\"").append(":").append("\"").append(cameraInfo.getSessionId()).append("\"");
sb.append("}],");
sb.append("\"videoType\"").append(":").append("[").append(cameraInfo.getVideoType()).append("],");
sb.append("\"scale\"").append(":\"").append(cameraInfo.getScale()).append("/1").append("\",");
sb.append("\"startTime\"").append(":").append(cameraInfo.getStartTime()).append(",");
sb.append("\"endTime\"").append(":").append(cameraInfo.getEndTime());
@ -1832,49 +1828,35 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
Map<String,Object> map = new HashMap<>();
String errorMsgs = "";
List<CameraInfo> dataList = Lists.newArrayList();
Map<String,Object> storageMap = getStoragesById(cameraInfo);
String error = storageMap.get("error").toString();
if(error.equals("0")){
List<CameraInfo> storageList = (List)storageMap.get("data");
if(storageList!=null&&storageList.size()>0){
for(int i=0;i<storageList.size();i++){
CameraInfo storage = storageList.get(i);
Map<String,Object> chnMap = addPlaybackChn(storage);
String chnError = chnMap.get("error").toString();
if(chnError.equals("0")){
List<CameraInfo> chnList = (List)chnMap.get("data");
if(chnList!=null&&chnList.size()>0){
for(int j=0;j<chnList.size();j++){
CameraInfo chn = chnList.get(j);
Map<String,Object> playbackMap = getPlaybackUrl(chn,1);
String pbError = playbackMap.get("error").toString();
if(pbError.equals("0")){
List<CameraInfo> pbList = (List)playbackMap.get("data");
if(pbList!=null&&pbList.size()>0){
for(int k=0;k<pbList.size();k++){
CameraInfo pb = pbList.get(k);
pb.setQueryAddress(tumsConfig.getUrl());
dataList.add(pb);
}
}
}else{
ErrorCode errVo = errorCodeService.getByCode(pbError);
String errMsg = errVo.getErrorMsg();
errorMsgs = errorMsgs+ "<div>获取回放通道时:"+errMsg+"</div>";
}
Map<String,Object> chnMap = addPlaybackChn(cameraInfo);
String chnError = chnMap.get("error").toString();
if(chnError.equals("0")){
List<CameraInfo> chnList = (List)chnMap.get("data");
if(chnList!=null&&chnList.size()>0){
for(int j=0;j<chnList.size();j++){
CameraInfo chn = chnList.get(j);
Map<String,Object> playbackMap = getPlaybackUrl(chn,1);
String pbError = playbackMap.get("error").toString();
if(pbError.equals("0")){
List<CameraInfo> pbList = (List)playbackMap.get("data");
if(pbList!=null&&pbList.size()>0){
for(int k=0;k<pbList.size();k++){
CameraInfo pb = pbList.get(k);
pb.setQueryAddress(tumsConfig.getUrl());
dataList.add(pb);
}
}
}else{
ErrorCode errVo = errorCodeService.getByCode(chnError);
ErrorCode errVo = errorCodeService.getByCode(pbError);
String errMsg = errVo.getErrorMsg();
errorMsgs = errorMsgs+ "<div>添加回放通道时:"+errMsg+"</div>";
errorMsgs = errorMsgs+ "<div>获取回放通道时:"+errMsg+"</div>";
}
}
}
}else{
ErrorCode errVo = errorCodeService.getByCode(error);
ErrorCode errVo = errorCodeService.getByCode(chnError);
String errMsg = errVo.getErrorMsg();
errorMsgs = errorMsgs+ "<div>获取指定监控点的存储设备列表时:"+errMsg+"</div>";
errorMsgs = errorMsgs+ "<div>添加回放通道时:"+errMsg+"</div>";
}
map.put("error",errorMsgs);
map.put("data",dataList);
@ -2000,12 +1982,6 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
entity.setUrl(url);
entity.setWsUrl(wsUrl);
entity.setWssUrl(wssUrl);
entity.setStorageDevId(cameraInfo.getStorageDevId());
entity.setStorageType(cameraInfo.getStorageType());
entity.setVideoType(cameraInfo.getVideoType());
entity.setStartTime(cameraInfo.getStartTime());
entity.setEndTime(cameraInfo.getEndTime());
entity.setScale(cameraInfo.getScale());
map.put("data",entity);
}else if(errorCode == -80703){
try {
@ -2032,39 +2008,17 @@ public class CameraInfoServiceImpl extends ServiceImpl<CameraInfoMapper, CameraI
*/
@Override
public Result getMultitransUrl(CameraInfo cameraInfo) throws Exception{
// Map<String,Object> map = new HashMap<>();
String errorMsgs = "";
List<CameraInfo> dataList = Lists.newArrayList();
Map<String,Object> storageMap = getStoragesById(cameraInfo);
String error = storageMap.get("error").toString();
if(error.equals("0")){
List<CameraInfo> storageList = (List)storageMap.get("data");
if(storageList!=null&&storageList.size()>0){
for(int i=0;i<storageList.size();i++){
CameraInfo storage = storageList.get(i);
Map<String,Object> multitransMap = getMultitransUrl(storage,1);
String multitransError = multitransMap.get("error").toString();
if(multitransError.equals("0")){
CameraInfo entity = (CameraInfo)multitransMap.get("data");
entity.setQueryAddress(tumsConfig.getUrl());
dataList.add(entity);
}else{
ErrorCode errVo = errorCodeService.getByCode(multitransError);
String errMsg = errVo.getErrorMsg();
errorMsgs = errorMsgs+ "<div>获取nvmp设备双向通信URL"+errMsg+"</div>";
}
}
}
Map<String,Object> multitransMap = getMultitransUrl(cameraInfo,1);
String multitransError = multitransMap.get("error").toString();
if(multitransError.equals("0")){
CameraInfo entity = (CameraInfo)multitransMap.get("data");
entity.setQueryAddress(tumsConfig.getUrl());
return Result.OK(entity);
}else{
ErrorCode errVo = errorCodeService.getByCode(error);
ErrorCode errVo = errorCodeService.getByCode(multitransError);
String errMsg = errVo.getErrorMsg();
errorMsgs = errorMsgs+ "<div>获取指定监控点的存储设备列表时:"+errMsg+"</div>";
}
// map.put("error",errorMsgs);
// map.put("data",dataList);
if(errorMsgs.equals("")){
return Result.OK(dataList);
}else {
errorMsgs = errorMsgs+ "<div>获取nvmp设备双向通信URL"+errMsg+"</div>";
return Result.error(errorMsgs);
}
}

View File

@ -262,8 +262,9 @@ public class TumsApi {
*/
public String getPlaybackUrl(String jsonRequest){
this.createTumsClient();
log.info("getPlaybackUrl:request:{}",jsonRequest);
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_PLAYBACK_URL.getValue());
log.info("getPlaybackUrl:{}",jsonResponse);
log.info("getPlaybackUrl:response:{}",jsonResponse);
return jsonResponse;
}
@ -286,8 +287,9 @@ public class TumsApi {
*/
public String getMultitransUrl(String jsonRequest){
this.createTumsClient();
log.info("getMultitransUrl:request:{}",jsonRequest);
String jsonResponse = tumsClient.request(jsonRequest, ApiEnum.IPC_GET_MULTITRANS_URL.getValue());
log.info("getMultitransUrl:{}",jsonResponse);
log.info("getMultitransUrl:response:{}",jsonResponse);
return jsonResponse;
}