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; private String topTime;
/**护理单元*/ /**护理单元*/
@ApiModelProperty(value = "护理单元ID") @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; private String nuId;
/**护理单元*/ /**护理单元*/
@ApiModelProperty(value = "护理单元") @ApiModelProperty(value = "护理单元")

View File

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

View File

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

View File

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