From 6707cf22587cba66f79a29145cc735a7c029dd05 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 09 九月 2024 13:35:02 +0800
Subject: [PATCH] 设置新设备bug

---
 ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml |   50 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 46 insertions(+), 4 deletions(-)

diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
index 14b8c34..22d1360 100644
--- a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
+++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
@@ -36,6 +36,7 @@
         <result property="cameraDept" column="camera_dept"/>
         <result property="hybm" column="hybm"/>
         <result property="lxbm" column="lxbm"/>
+        <result property="deviceType" column="device_type"/>
     </resultMap>
 
     <sql id="selectTMonitorVo">
@@ -69,7 +70,8 @@
                encoded_format,
                camera_dept,
                hybm,
-               lxbm
+               lxbm,
+               device_type
         from t_monitor
     </sql>
 
@@ -84,6 +86,13 @@
         where m.serial_number in
         <foreach collection="list" separator="," item="id" open="(" close=")">
             #{id}
+        </foreach>
+    </select>
+
+    <select id="selectByNumbers" resultType="com.ycl.platform.domain.entity.TMonitor">
+        select * from t_monitor where serial_number in
+        <foreach collection="numbers" separator="," open="(" close=")" item="number">
+            #{number}
         </foreach>
     </select>
 
@@ -184,6 +193,7 @@
             <if test="cameraDept != null">camera_dept,</if>
             <if test="hybm != null">hybm,</if>
             <if test="lxbm != null">lxbm,</if>
+            <if test="deviceType != null">device_type,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="serialNumber != null and serialNumber != ''">#{serialNumber},</if>
@@ -216,8 +226,16 @@
             <if test="cameraDept != null">#{cameraDept},</if>
             <if test="hybm != null">#{hybm},</if>
             <if test="lxbm != null">#{lxbm},</if>
+            <if test="deviceType != null">#{deviceType},</if>
         </trim>
     </insert>
+
+    <update id="batchUpdateDeviceType">
+        update t_monitor set device_type = #{deviceType} where serial_number in
+        <foreach collection="numbers" separator="," open="(" close=")" item="number">
+            #{number}
+        </foreach>
+    </update>
 
     <update id="updateTMonitor" parameterType="com.ycl.platform.domain.entity.TMonitor">
         update t_monitor
@@ -254,6 +272,7 @@
             <if test="cameraDept != null">camera_dept = #{cameraDept},</if>
             <if test="hybm != null">hybm = #{hybm},</if>
             <if test="lxbm != null">lxbm = #{lxbm},</if>
+            <if test="deviceType != null">device_type = #{deviceType},</if>
         </trim>
         where id = #{id}
     </update>
@@ -281,12 +300,9 @@
         IFNULL(SUM(IF(on_state = 2, 1, 0)), 0) AS postsPercentage,
         IFNULL(ROUND(SUM(IF(on_state = 1, 1, 0)) / count(*) * 100, 2), 0) as viewsPercentage
         FROM t_monitor m
-        left join t_yw_point p on m.serial_number = p.serial_number
-        left join sys_dept d on p.dept_id = d.dept_id
         <where>
             camera_fun_type like concat('%', #{cameraFunType}, '%')
         </where>
-        ${params.dataScope}
     </select>
 
     <select id="recoveryException" resultType="java.util.Map">
@@ -489,9 +505,13 @@
                #{query.keyword} as keyword
         FROM
             t_monitor tm
+                INNER JOIN t_yw_point yp ON yp.serial_number = tm.serial_number
         <where>
             <if test="query.keyword != null and query.keyword != ''">
                 AND tm.name like concat('%', #{query.keyword}, '%')
+            </if>
+            <if test="query.startTIme != null and query.endTime != null">
+                AND yp.create_time between #{query.startTime} and #{query.endTime}
             </if>
         </where>
     </select>
@@ -553,4 +573,26 @@
     <delete id="deleteAll">
         delete from t_monitor
     </delete>
+
+    <select id="getGBbyGB" resultType="string">
+        SELECT
+            DISTINCT serial_number
+        FROM
+             t_monitor
+        WHERE
+              serial_number in <foreach collection="gbList" open="(" separator="," close=")" item="no">#{no}</foreach>
+    </select>
+
+    <select id="getDistinctIP" resultType="string">
+        SELECT
+            DISTINCT ip
+        FROM
+            t_monitor
+    </select>
+
+    <update id="updateOnline">
+        update t_yw_ponit set online = #{online.online}, update_time = #{online.updateTime} WHERE EXISTS (
+                                                                                                          SELECT 1 FROM t_monitor WHERE ip = #{online.ip} AND t_monitor.serial_number = t_yw_point.serial_number
+                                                                                                      );
+    </update>
 </mapper>

--
Gitblit v1.8.0