From 5b017324148ea92d96f9f16ade215463d6c712e5 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: 星期六, 10 八月 2024 14:15:02 +0800
Subject: [PATCH] 优化:海康大华sdk断线重连机制
---
ard-work/src/main/resources/mapper/device/ArdCamerasMapper.xml | 22 ++++++++++++++++++++--
1 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/ard-work/src/main/resources/mapper/device/ArdCamerasMapper.xml b/ard-work/src/main/resources/mapper/device/ArdCamerasMapper.xml
index e7a7999..09e84ed 100644
--- a/ard-work/src/main/resources/mapper/device/ArdCamerasMapper.xml
+++ b/ard-work/src/main/resources/mapper/device/ArdCamerasMapper.xml
@@ -15,6 +15,7 @@
<result property="gdtype" column="gdtype"/>
<result property="factory" column="factory"/>
<result property="chanNum" column="channel"/>
+ <result property="startChan" column="start_chan"/>
<result property="longitude" column="longitude"/>
<result property="latitude" column="latitude"/>
<result property="altitude" column="altitude"/>
@@ -48,6 +49,7 @@
c.gdtype,
c.factory,
c.channel,
+ c.start_chan,
c.longitude,
c.latitude,
c.altitude,
@@ -86,6 +88,7 @@
<if test="gdtype != null and gdtype != ''">and c.gdtype = #{gdtype}</if>
<if test="factory != null and factory != ''">and c.factory = #{factory}</if>
<if test="chanNum != null ">and c.channel = #{chanNum}</if>
+ <if test="startChan != null ">and c.start_chan = #{startChan}</if>
<if test="longitude != null ">and c.longitude = #{longitude}</if>
<if test="latitude != null ">and c.latitude = #{latitude}</if>
<if test="altitude != null ">and c.altitude = #{altitude}</if>
@@ -123,6 +126,7 @@
<if test="gdtype != null and gdtype != ''">and c.gdtype = #{gdtype}</if>
<if test="factory != null and factory != ''">and c.factory = #{factory}</if>
<if test="chanNum != null ">and c.channel = #{chanNum}</if>
+ <if test="startChan != null ">and c.start_chan= #{startChan}</if>
<if test="longitude != null ">and c.longitude = #{longitude}</if>
<if test="latitude != null ">and c.latitude = #{latitude}</if>
<if test="altitude != null ">and c.altitude = #{altitude}</if>
@@ -163,6 +167,7 @@
<if test="factory != null">factory,</if>
<if test="towerId != null">tower_id,</if>
<if test="chanNum != null">channel,</if>
+ <if test="startChan != null">start_chan,</if>
<if test="longitude != null">longitude,</if>
<if test="latitude != null">latitude,</if>
<if test="altitude != null">altitude,</if>
@@ -197,6 +202,7 @@
<if test="factory != null">#{factory},</if>
<if test="towerId != null">#{towerId},</if>
<if test="chanNum != null">#{chanNum},</if>
+ <if test="startChan != null">#{startChan},</if>
<if test="longitude != null">#{longitude},</if>
<if test="latitude != null">#{latitude},</if>
<if test="altitude != null">#{altitude},</if>
@@ -234,6 +240,7 @@
<if test="factory != null">factory = #{factory},</if>
<if test="towerId != null">tower_id = #{towerId},</if>
<if test="chanNum != null">channel = #{chanNum},</if>
+ <if test="startChan != null">start_chan = #{startChan},</if>
<if test="longitude != null">longitude = #{longitude},</if>
<if test="latitude != null">latitude = #{latitude},</if>
<if test="altitude != null">altitude = #{altitude},</if>
@@ -349,7 +356,7 @@
ac.gdtype,ac.state,sdd.dict_label as "dictLabel",sdd0.dict_label as factory,
case sdd0.dict_label
when '娴峰悍' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/h264/ch1/main/av_stream')
- when '澶у崕' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/cam/realmonitor?channel=1&subtype=1')
+ when '澶у崕' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/cam/realmonitor?channel=1&subtype=0')
end as rtsp
from ard_cameras ac
inner join sys_dict_data sdd on ac.gdtype = sdd.dict_value
@@ -367,7 +374,7 @@
ac.gdtype,ac.state,sdd.dict_label as "dictLabel",sdd0.dict_label as factory,
case sdd0.dict_label
when '娴峰悍' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/h264/ch1/main/av_stream')
- when '澶у崕' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/cam/realmonitor?channel=1&subtype=1')
+ when '澶у崕' then concat('rtsp://',ac.username,':',ac.password,'@',ac.ip,':',ac.rtsp_port,'/cam/realmonitor?channel=1&subtype=0')
end as rtsp from sys_user_role sur
inner join sys_role_dept srd on sur.role_id = srd.role_id
inner join ard_cameras ac on srd.dept_id = ac.dept_id
@@ -398,4 +405,15 @@
inner join sys_config sc on sc.config_key = 'dayNightTime'
where ac.device_id = #{id}
</select>
+ <select id="findTowerCamerasBySubAndOwnDeptIds" parameterType="java.lang.String" resultMap = "ArdCamerasResult">
+ select * from ard_cameras where dept_id in
+ <foreach item="deptId" collection="deptIdList" open="(" separator="," close=")">
+ #{deptId}
+ </foreach>
+ and tower_id is not null
+ order by create_time desc
+ </select>
+ <update id="resetCameraLoginId">
+ update ard_cameras set login_id = -1
+ </update>
</mapper>
--
Gitblit v1.9.3