From d9d70577933e9cd021b4ff6d26c576d6dbd9161a Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 28 八月 2024 17:54:41 +0800
Subject: [PATCH] 点播定时任务优化
---
ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml | 44 ++++++++++++++++++++++++++++----------------
1 files changed, 28 insertions(+), 16 deletions(-)
diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml
index 78b6c63..b97bffc 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>
@@ -184,6 +186,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 +219,19 @@
<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">
+ <foreach collection="list" separator=";" item="item">
+ UPDATE t_monitor
+ SET
+ update_time = #{item.updateTime},
+ device_type = #{item.deviceType}
+ WHERE id = #{item.id}
+ </foreach>
+ </update>
<update id="updateTMonitor" parameterType="com.ycl.platform.domain.entity.TMonitor">
update t_monitor
@@ -254,6 +268,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>
@@ -367,10 +382,9 @@
COUNT(p2.id) AS errorNum,
COUNT(p1.id) - COUNT(p2.id) AS normalNum
FROM t_monitor
- LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 1 </if><if test="dataScope == 3"> AND p1.important_tag = 1 </if><if test="deptId != null"> AND p1.dept_id = #{deptId} </if>
+ LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 AND p1.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if>
WHERE INSTR(camera_fun_type, 1)
- <if test="deptId != null"> AND p1.dept_id = #{deptId} AND p2.dept_id = #{deptId} </if>
UNION ALL
SELECT
'杞﹁締' as type,
@@ -378,10 +392,9 @@
COUNT(p2.id) AS errorNum,
COUNT(p1.id) - COUNT(p2.id) AS normalNum
FROM t_monitor
- LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 1 </if><if test="dataScope == 3"> AND p1.important_tag = 1 </if><if test="deptId != null"> AND p1.dept_id = #{deptId} </if>
+ LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 AND p1.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = '1' </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if>
WHERE INSTR(camera_fun_type, 2)
- <if test="deptId != null"> AND p1.dept_id = #{deptId} AND p2.dept_id = #{deptId} </if>
UNION ALL
SELECT
'浜鸿劯' as type,
@@ -389,10 +402,9 @@
COUNT(p2.id) AS errorNum,
COUNT(p1.id) - COUNT(p2.id) AS normalNum
FROM t_monitor
- LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number <if test="dataScope == 1"> AND p1.province_tag = 1 </if><if test="dataScope == 3"> AND p1.important_tag = 1 </if><if test="deptId != null"> AND p1.dept_id = #{deptId} </if>
+ LEFT JOIN t_yw_point p2 ON t_monitor.serial_number = p2.serial_number AND p2.recovery = 1 AND p1.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if>
WHERE INSTR(camera_fun_type, 3)
- <if test="deptId != null"> AND p1.dept_id = #{deptId} AND p2.dept_id = #{deptId} </if>
</select>
<select id="monitorRate" resultType="com.ycl.platform.domain.vo.screen.MonitorRateVO">
@@ -408,8 +420,8 @@
COUNT(m2.id) AS faceErrorNum
FROM
sys_dept d
- LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 1 </if><if test="dataScope == 3"> AND p.important_tag = 1 </if>
+ LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if>
LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 1)
LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 1)
WHERE d.del_flag = 0 AND d.area IS NOT NULL
@@ -426,8 +438,8 @@
COUNT(m2.id) AS carErrorNum
FROM
sys_dept d
- LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 1 </if><if test="dataScope == 3"> AND p.important_tag = 1 </if>
+ LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if>
LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 2)
LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 2)
WHERE d.del_flag = 0 AND d.area IS NOT NULL
@@ -444,8 +456,8 @@
COUNT(m2.id) AS videoErrorNum
FROM
sys_dept d
- LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 'province' </if>
- LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 <if test="dataScope == 1"> AND p2.province_tag = 'province' </if>
+ LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 <if test="dataScope == 1"> AND p.province_tag = 1 </if><if test="dataScope == 3"> AND p.important_tag = 1 </if>
+ LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.recovery = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag = 1 </if><if test="dataScope == 3"> AND p2.important_tag = 1 </if>
LEFT JOIN t_monitor m ON m.serial_number = p.serial_number AND INSTR(m.camera_fun_type, 3)
LEFT JOIN t_monitor m2 ON m2.serial_number = p2.serial_number AND INSTR(m2.camera_fun_type, 3)
WHERE d.del_flag = 0 AND d.area IS NOT NULL
--
Gitblit v1.8.0