From d68181ce2faef4821d6d8a8ffb8027480a6262c3 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Wed, 05 Nov 2025 17:01:20 +0800
Subject: [PATCH] 2025-11-5 zwy websockeet增加Type:livestream,开启机场和飞行器的直播接口, 增加LiveStreamHandler对开启直播和关闭直播的处理; redis增加WEBSOCKET_VideoId_PREFIX,存储videoid,关闭直播功能时使用;

---
 ard-work/src/main/resources/mapper/ArdDroneInfoMapper.xml |   57 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 36 insertions(+), 21 deletions(-)

diff --git a/ard-work/src/main/resources/mapper/ArdDroneInfoMapper.xml b/ard-work/src/main/resources/mapper/ArdDroneInfoMapper.xml
index fdcc976..b3c8119 100644
--- a/ard-work/src/main/resources/mapper/ArdDroneInfoMapper.xml
+++ b/ard-work/src/main/resources/mapper/ArdDroneInfoMapper.xml
@@ -37,32 +37,39 @@
     </select>
 
     <sql id="selectArdDroneVo">
-        select id,
-               box_sn,
-               box_name,
-               box_version,
-               start_time,
-               on_line,
-               video_server,
-               video_port,
-               last_task_id,
-               server_id,
-               user_id,
-               dept_id,
-               box_alias_name
-        from ard_drone_info
+        select c.id,
+               c.box_sn,
+               c.box_name,
+               c.box_version,
+               c.start_time,
+               c.on_line,
+               c.video_server,
+               c.video_port,
+               c.last_task_id,
+               c.server_id,
+               c.user_id,
+               c.dept_id,
+               c.box_alias_name
+        from ard_drone_info c
+                 left join sys_dept d on d.dept_id = c.dept_id
+                 left join sys_user u on u.user_id = c.user_id
     </sql>
 
     <select id="selectArdDroneList" parameterType="ArdDroneInfo" resultMap="ArdDroneInfoResult">
         <include refid="selectArdDroneVo"/>
         <where>
-            <if test="boxSn != null  and boxSn != ''"> and box_sn like concat('%', #{boxSn}, '%')</if>
-            <if test="boxName != null  and boxName != ''"> and box_name like concat('%', #{boxName}, '%')</if>
-            <if test="boxVersion != null  and boxVersion != ''"> and box_version = #{boxVersion}</if>
-            <if test="onLine != null "> and onLine = #{onLine}</if>
-            <if test="lastTaskId != null "> and last_task_id = #{lastTaskId}</if>
-            <if test="userId != null "> and user_id = #{userId}</if>
-            <if test="deptId != null "> and dept_id = #{deptId}</if>
+            <if test="boxSn != null  and boxSn != ''"> and c.box_sn like concat('%', #{boxSn}, '%')</if>
+            <if test="boxName != null  and boxName != ''"> and c.box_name like concat('%', #{boxName}, '%')</if>
+            <if test="boxVersion != null  and boxVersion != ''"> and c.box_version = #{boxVersion}</if>
+            <if test="onLine != null "> and c.onLine = #{onLine}</if>
+            <if test="lastTaskId != null "> and c.last_task_id = #{lastTaskId}</if>
+            <if test="userId != null "> and c.user_id = #{userId}</if>
+            <if test="deptId != null and deptId != 0">
+                and (d.dept_id = #{deptId} OR d.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE
+                find_in_set(#{deptId}, ancestors) ))
+            </if>
+            <!-- 数据范围过滤 -->
+            ${params.dataScope}
         </where>
     </select>
     
@@ -196,4 +203,12 @@
         </foreach>
     </insert>
 
+    <update id="updateDroneStatus">
+        update ard_drone_info
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="onLine != null">on_line = #{onLine},</if>
+        </trim>
+        where server_id = #{serverId}
+    </update>
+
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3