| | |
| | | camera_dept, hybm, lxbm,d.dept_id, d.dept_name 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 m.serial_number in |
| | | where p.examine_status = 1 and 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 |
| | | select m.*,p.username,p.password |
| | | from t_monitor m left join t_yw_point p on m.serial_number = p.serial_number |
| | | where m.serial_number in |
| | | <foreach collection="numbers" separator="," open="(" close=")" item="number"> |
| | | #{number} |
| | | </foreach> |
| | | </select> |
| | | |
| | | <!-- TODO:异常恢复监控和是否产生工单字段--> |
| | | <select id="selectTMonitorList" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | | select m.id, m.serial_number, name, site_type, mac_addr, ip, camera_fun_type, longitude, latitude, |
| | | camera_capture_area, on_state, civil_code, d.dept_id, d.dept_name, d.area, p.province_tag, |
| | | IF(COUNT(w.id) OVER() > 0, '是', '否') AS error, u.unit_name from t_monitor m |
| | | camera_capture_area, |
| | | CASE |
| | | WHEN p.online = 1 AND p.ping_online = 1 THEN 1 |
| | | WHEN p.online = -1 OR p.ping_online = -1 THEN -1 |
| | | ELSE 0 |
| | | END AS onState, civil_code, d.dept_id, d.dept_name, d.area, p.province_tag_video,p.province_tag_car,p.province_tag_face,p.dept_tag, |
| | | IF(COUNT(w.id) OVER() > 0, '是', '否') AS error, u.unit_name,p.recovery_time,p.reason,p.start_time,p.end_time, w.work_order_no |
| | | from t_monitor m |
| | | left join t_yw_point p on m.serial_number = p.serial_number and p.deleted = 0 |
| | | left join sys_dept d on p.dept_id = d.dept_id and d.del_flag = 0 |
| | | left join t_work_order w on m.serial_number = w.serial_number and w.deleted = 0 |
| | | left join ( |
| | | WITH cte AS ( |
| | | SELECT *,row_number() OVER(PARTITION BY serial_number ORDER BY create_time DESC) rn FROM t_work_order |
| | | WHERE deleted = 0 AND status != 'AUDITING_SUCCESS' |
| | | ) SELECT * FROM cte WHERE rn=1 |
| | | ) w on m.serial_number = w.serial_number and w.deleted = 0 |
| | | left join t_yw_unit u on p.unit_id = u.id and u.deleted = 0 |
| | | <where> |
| | | p.examine_status = 1 |
| | | <if test="serialNumber != null and serialNumber != ''">and m.serial_number = #{serialNumber}</if> |
| | | <if test="name != null and name != ''">and name like concat('%', #{name}, '%')</if> |
| | | <if test="name != null and name != ''"> |
| | | and (name like concat('%', #{name}, '%') |
| | | or m.ip like concat('%', #{name}, '%') |
| | | or m.serial_number like concat('%', #{name}, '%') |
| | | or u.unit_name like concat('%', #{name}, '%')) |
| | | </if> |
| | | <if test="provinceTag != null and cameraFunType == 1">and p.province_tag_video = #{provinceTag}</if> |
| | | <if test="provinceTag != null and cameraFunType == 2">and p.province_tag_car = #{provinceTag}</if> |
| | | <if test="provinceTag != null and cameraFunType == 3">and p.province_tag_face = #{provinceTag}</if> |
| | | <if test="provinceTag != null and recovery == 1">and (p.province_tag_face = #{provinceTag} or p.province_tag_video = #{provinceTag} or p.province_tag_car = #{provinceTag})</if> |
| | | <if test="deptTag != null ">and p.dept_tag = #{deptTag}</if> |
| | | <if test="siteType != null ">and site_type = #{siteType}</if> |
| | | <if test="macAddr != null and macAddr != ''">and mac_addr = #{macAddr}</if> |
| | | <if test="ip != null and ip != ''">and ip = #{ip}</if> |
| | |
| | | <if test="cameraCaptureArea != null and cameraCaptureArea != ''">and camera_capture_area = |
| | | #{cameraCaptureArea} |
| | | </if> |
| | | <if test="onState != null ">and on_state = #{onState}</if> |
| | | <if test="time !=null and time !=''">and TIMESTAMPDIFF(DAY, p.recovery_time, NOW()) <![CDATA[<=]]> #{time}</if> |
| | | <if test="onState != null and onState == 1">and (p.online = #{onState} and p.ping_online = #{onState})</if> |
| | | <if test="onState != null and onState == -1">and (p.online = #{onState} or p.ping_online = #{onState})</if> |
| | | <if test="onState != null and onState == 0">and (p.online = #{onState} and p.ping_online = #{onState})</if> |
| | | <if test="civilCode != null and civilCode != ''">and civil_code = #{civilCode}</if> |
| | | <if test="integratedDevice != null ">and integrated_device = #{integratedDevice}</if> |
| | | <if test="cameraBrand != null ">and camera_brand = #{cameraBrand}</if> |
| | |
| | | <if test="cameraDept != null and cameraDept != ''">and camera_dept = #{cameraDept}</if> |
| | | <if test="hybm != null and hybm != ''">and hybm = #{hybm}</if> |
| | | <if test="lxbm != null ">and lxbm = #{lxbm}</if> |
| | | <if test="recovery != null ">and p.recovery = #{recovery}</if> |
| | | <!-- <if test="recovery != null ">and p.recovery = #{recovery}</if>--> |
| | | ${params.dataScope} |
| | | </where> |
| | | ${params.dataScope} |
| | | </select> |
| | | |
| | | <select id="exportTMonitorList" resultType="com.ycl.platform.domain.excel.TMonitorExp"> |
| | | select m.id, m.serial_number, name, ip, camera_fun_type, |
| | | CASE |
| | | WHEN p.online = 1 AND p.ping_online = 1 THEN 1 |
| | | WHEN p.online = -1 OR p.ping_online = -1 THEN -1 |
| | | ELSE 0 |
| | | END AS onState, |
| | | d.dept_name, p.id as pointId,p.province_tag_video,p.province_tag_car,p.province_tag_face,p.dept_tag,p.important_tag,p.important_command_image_tag,u.unit_name as managementUnit |
| | | from t_monitor m |
| | | left join t_yw_point p on m.serial_number = p.serial_number and p.deleted = 0 |
| | | left join sys_dept d on p.dept_id = d.dept_id and d.del_flag = 0 |
| | | left join t_yw_unit u on p.unit_id = u.id and u.deleted = 0 |
| | | <where> |
| | | p.examine_status = 1 |
| | | <if test="serialNumber != null and serialNumber != ''">and m.serial_number = #{serialNumber}</if> |
| | | <if test="name != null and name != ''"> |
| | | and (name like concat('%', #{name}, '%') |
| | | or m.ip like concat('%', #{name}, '%') |
| | | or m.serial_number like concat('%', #{name}, '%') |
| | | or u.unit_name like concat('%', #{name}, '%')) |
| | | </if> |
| | | <if test="provinceTag != null and cameraFunType==1">and p.province_tag_video = #{provinceTag}</if> |
| | | <if test="provinceTag != null and cameraFunType==2">and p.province_tag_car = #{provinceTag}</if> |
| | | <if test="provinceTag != null and cameraFunType==3">and p.province_tag_face = #{provinceTag}</if> |
| | | <if test="deptTag != null ">and p.dept_tag = #{deptTag}</if> |
| | | <if test="cameraFunType != null and cameraFunType != ''">and camera_fun_type like concat('%', |
| | | #{cameraFunType}, '%') |
| | | </if> |
| | | <if test="onState != null and onState == 1">and (p.online = #{onState} and p.ping_online = #{onState})</if> |
| | | <if test="onState != null and onState == -1">and (p.online = #{onState} or p.ping_online = #{onState})</if> |
| | | <if test="onState != null and onState == 0">and (p.online = #{onState} and p.ping_online = #{onState})</if> |
| | | <if test="civilCode != null and civilCode != ''">and civil_code = #{civilCode}</if> |
| | | </where> |
| | | </select> |
| | | <select id="selectMonitorVOList" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | | select m.id, m.serial_number, name, site_type, mac_addr, ip, camera_fun_type, longitude, latitude, |
| | | camera_capture_area, on_state, civil_code, integrated_device, camera_brand, address, net_working, |
| | | public_security, installed_time, management_unit, mu_contact_info, storage_days |
| | | , monitor_azimuth, scene_photo_addr, model, site_vulgo, camera_type, camera_light_type, encoded_format, |
| | | camera_dept, hybm, lxbm,d.dept_id, d.dept_name,p.province_tag from t_monitor m |
| | | camera_dept, hybm, lxbm,d.dept_id, d.dept_name, |
| | | CASE |
| | | WHEN p.province_tag_video = 1 OR p.province_tag_car = 1 OR p.province_tag_face = 1 THEN 1 |
| | | ELSE 0 |
| | | END AS province_tag,p.dept_tag |
| | | 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 |
| | | </select> |
| | | |
| | | <select id="selectMonitorResult" resultType="com.ycl.platform.domain.result.SYS.TMonitorResult"> |
| | | select m.id, m.serial_number as no,d.dept_id,p.province_tag,p.important_tag,p.important_command_image_tag,p.dept_tag,p.online |
| | | <select id="selectMonitorResult" resultType = "com.ycl.platform.domain.result.SYS.TMonitorResult"> |
| | | select m.id, m.serial_number as no,m.name,m.camera_fun_type as monitorType, |
| | | d.dept_id,p.province_tag_video as provinceTag,p.important_tag,p.important_command_image_tag,p.dept_tag,p.online,p.id as pointId |
| | | 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> |
| | | p.examine_status = 1 |
| | | <if test="cameraFunType!=null"> |
| | | m.camera_fun_type like concat('%',#{cameraFunType},'%') |
| | | and m.camera_fun_type like concat('%',#{cameraFunType},'%') |
| | | </if> |
| | | <if test="deptIds!=null and deptIds.size>0"> |
| | | and p.dept_id in |
| | | <foreach collection="deptIds" item="deptId" open="(" close=")" separator=","> |
| | | #{deptId} |
| | | </foreach> |
| | | </if> |
| | | <if test="provinceTag!=null"> |
| | | and p.province_tag_video = #{provinceTag} |
| | | </if> |
| | | <if test="importantTag!=null"> |
| | | and p.important_tag = #{importantTag} |
| | | </if> |
| | | <if test="importantCommandImageTag!=null"> |
| | | and p.important_command_image_tag = #{importantCommandImageTag} |
| | | </if> |
| | | <if test="deptTag!=null"> |
| | | and p.dept_tag =#{deptTag} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | |
| | | <select id="selectTMonitorById" parameterType="Long" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | | <include refid="selectTMonitorVo"/> |
| | | where id = #{id} |
| | |
| | | #{id} |
| | | </foreach> |
| | | </delete> |
| | | |
| | | <select id="getVideoCount" resultType="java.util.Map"> |
| | | SELECT count(*) AS totalPosts, |
| | | IFNULL(SUM(IF(on_state = 1, 1, 0)), 0) AS totalMembers, |
| | | 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 |
| | | IFNULL(SUM(IF((p.online = 1 and p.ping_online = 1), 1, 0)), 0) AS totalMembers, |
| | | IFNULL(SUM(IF((p.online = -1 or p.ping_online = -1), 1, 0)), 0) AS postsPercentage, |
| | | IFNULL(SUM(IF((p.online = 0 and p.ping_online = 0), 1, 0)), 0) AS unknownNumbers, |
| | | IFNULL(ROUND(SUM(IF((p.online = 1 and p.ping_online= 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 and d.del_flag = 0 |
| | | <where> |
| | | camera_fun_type like concat('%', #{cameraFunType}, '%') |
| | | camera_fun_type like concat('%', #{cameraFunType}, '%') and p.examine_status = 1 |
| | | <if test="provinceTag!=null and cameraFunType==1"> |
| | | and p.province_tag_video = #{provinceTag} |
| | | </if> |
| | | <if test="provinceTag!=null and cameraFunType==2"> |
| | | and p.province_tag_car = #{provinceTag} |
| | | </if> |
| | | <if test="provinceTag!=null and cameraFunType==3"> |
| | | and p.province_tag_face = #{provinceTag} |
| | | </if> |
| | | <if test="deptTag!=null"> |
| | | and p.dept_tag = #{deptTag} |
| | | </if> |
| | | ${params.dataScope} |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="assetManagementCount" resultType="java.util.Map"> |
| | | SELECT count(*) AS total, |
| | | IFNULL(SUM(IF((m.camera_fun_type like '%1%'), 1, 0)), 0) AS video, |
| | | IFNULL(SUM(IF((m.camera_fun_type like '%2%'), 1, 0)), 0) AS face, |
| | | IFNULL(SUM(IF((m.camera_fun_type like '%3%'), 1, 0)), 0) AS car, |
| | | IFNULL(SUM(IF((p.examine_status = 1), 1, 0)), 0) as examine, |
| | | IFNULL(SUM(IF((p.examine_status = 0), 1, 0)), 0) as notExamine |
| | | FROM t_monitor m |
| | | left join t_yw_point p on m.serial_number = p.serial_number |
| | | </select> |
| | | <select id="recoveryException" resultType="java.util.Map"> |
| | | <![CDATA[ |
| | | SELECT count(*) AS totalPosts, |
| | | IFNULL(SUM(IF(on_state = 1, 1, 0)), 0) AS totalMembers, |
| | | 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 t |
| | | LEFT JOIN t_yw_point p ON t.serial_number = p.serial_number |
| | | WHERE p.recovery = 1 |
| | | OR TIMESTAMPDIFF(DAY, p.recovery_time, NOW()) <= #{time} |
| | | ]]> |
| | | SELECT count(*) AS totalPosts, |
| | | IFNULL(SUM(IF((p.online = 1 and p.ping_online = 1), 1, 0)), 0) AS totalMembers, |
| | | IFNULL(SUM(IF((p.online = -1 or p.ping_online = -1), 1, 0)), 0) AS postsPercentage, |
| | | IFNULL(SUM(IF((p.online = 0 and p.ping_online = 0), 1, 0)), 0) AS unknownNumbers, |
| | | IFNULL(ROUND(SUM(IF((p.online = 1 and p.ping_online = 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 and d.del_flag = 0 |
| | | <where> |
| | | p.examine_status = 1 |
| | | <!-- (p.recovery = 1 OR TIMESTAMPDIFF(DAY, p.recovery_time, NOW()) <![CDATA[<=]]> #{time}) --> |
| | | <if test="provinceTag!=null"> |
| | | and (p.province_tag_video = #{provinceTag} or p.province_tag_car = #{provinceTag} or p.province_tag_face = #{provinceTag}) |
| | | </if> |
| | | <if test="deptTag!=null"> |
| | | and p.dept_tag = #{deptTag} |
| | | </if> |
| | | ${params.dataScope} |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="selectRecoveryMonitor" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | |
| | | WHERE TIMESTAMPDIFF(DAY, p.recovery_time, NOW()) <= #{time} |
| | | ]]> |
| | | </select> |
| | | |
| | | <!-- 查询 t_yw_unit 中id 为? 并且 t_work_order--> |
| | | <!-- <select id="home" resultType="java.util.Map">--> |
| | | <!-- SELECT--> |
| | | <!-- u.unit_name AS name,--> |
| | | <!-- CONCAT(MONTH(w.create_time), '月') AS months,--> |
| | | <!-- COUNT(w.id) AS num1,--> |
| | | <!-- COUNT(w.id) - COUNT(m.id) AS num2--> |
| | | <!-- FROM--> |
| | | <!-- t_monitor m--> |
| | | <!-- LEFT JOIN t_yw_point p ON m.serial_number = p.serial_number--> |
| | | <!-- LEFT JOIN t_yw_unit u ON p.unit_id = u.id--> |
| | | <!-- LEFT JOIN t_work_order w ON w.serial_number = p.serial_number--> |
| | | <!-- WHERE u.id = #{unitId} AND MONTH(w.create_time) IS NOT NULL--> |
| | | <!-- <if test="dateRange != null and dateRange.size > 0">--> |
| | | <!-- AND DATE_FORMAT(w.create_time, '%Y-%m') BETWEEN DATE_FORMAT(#{dateRange[0]}, '%Y-%m') AND DATE_FORMAT(#{dateRange[1]}, '%Y-%m')--> |
| | | <!-- </if>--> |
| | | <!-- GROUP BY months--> |
| | | <!-- ORDER BY months--> |
| | | <!-- </select>--> |
| | | <select id="home" resultType="java.util.Map"> |
| | | SELECT |
| | | select count(distinct w.serial_number) as num1, |
| | | CASE WHEN( a.num -count(distinct w.serial_number)) |
| | | <![CDATA[ < 0 THEN 0 ELSE (a.num -count(distinct w.serial_number)) END as num2 ]]>, |
| | | u.unit_name AS name, |
| | | CONCAT(MONTH(w.create_time), '月') AS months, |
| | | COUNT(w.id) AS num1, |
| | | COUNT(m.id) - COUNT(w.id) AS num2 |
| | | FROM |
| | | t_monitor m |
| | | LEFT JOIN t_yw_point p ON m.serial_number = p.serial_number |
| | | LEFT JOIN t_yw_unit u ON p.unit_id = u.id |
| | | LEFT JOIN t_work_order w ON w.serial_number = p.serial_number |
| | | WHERE u.id = #{unitId} AND MONTH(w.create_time) IS NOT NULL |
| | | CONCAT(MONTH(w.create_time), '月') AS months |
| | | from |
| | | (select count(m.id) as num from t_monitor m where m.serial_number IN (SELECT p.serial_number from t_yw_unit u,t_yw_point p where p.unit_id = u.id and u.id = 21 AND p.examine_status = 1) |
| | | ) as a |
| | | join |
| | | t_work_order w |
| | | JOIN t_yw_unit u ON u.id = w.unit_id |
| | | where w.unit_id=#{unitId} |
| | | <if test="dateRange != null and dateRange.size > 0"> |
| | | AND DATE_FORMAT(w.create_time, '%Y-%m') BETWEEN DATE_FORMAT(#{dateRange[0]}, '%Y-%m') AND DATE_FORMAT(#{dateRange[1]}, '%Y-%m') |
| | | AND DATE_FORMAT(w.create_time, '%Y-%m') BETWEEN DATE_FORMAT(#{dateRange[0], '%Y-%m') AND DATE_FORMAT(#{dateRange[1], '%Y-%m') |
| | | </if> |
| | | AND w.deleted = 1 |
| | | GROUP BY months |
| | | ORDER BY months |
| | | </select> |
| | | |
| | | </select> |
| | | <select id="monitorTotal" resultType="com.ycl.platform.domain.vo.screen.MonitorTotalVO"> |
| | | SELECT |
| | | '视频' as type, |
| | | 'video' as type, |
| | | COUNT(p1.id) AS totalNum, |
| | | COUNT(p2.id) AS errorNum, |
| | | COUNT(p1.id) - COUNT(p2.id) AS normalNum |
| | | COUNT(p3.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 = 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> |
| | | LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number AND p1.examine_status = 1<if test="dataScope == 1"> AND p1.province_tag_video = 1 </if><if test="dataScope == 3"> AND p1.dept_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.examine_status = 1 AND (p2.online = -1 OR p2.ping_online = -1) AND p1.id = p2.id <if test="dataScope == 1"> AND p2.province_tag_video = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if> |
| | | LEFT JOIN t_yw_point p3 ON t_monitor.serial_number = p3.serial_number AND p3.examine_status = 1 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p1.id = p3.id<if test="dataScope == 1"> AND p3.province_tag_video = 1 </if><if test="dataScope == 3"> AND p3.dept_tag = 1 </if><if test="deptId != null"> AND p3.dept_id = #{deptId} </if> |
| | | WHERE INSTR(camera_fun_type, 1) |
| | | UNION ALL |
| | | SELECT |
| | | '车辆' as type, |
| | | 'car' as type, |
| | | COUNT(p1.id) AS totalNum, |
| | | COUNT(p2.id) AS errorNum, |
| | | COUNT(p1.id) - COUNT(p2.id) AS normalNum |
| | | COUNT(p3.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 = 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> |
| | | LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number AND p1.examine_status = 1 <if test="dataScope == 1"> AND p1.province_tag_car = 1 </if><if test="dataScope == 3"> AND p1.dept_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.examine_status = 1 AND (p2.online = -1 OR p2.ping_online = -1) AND p1.id = p2.id <if test="dataScope == 1"> AND p2.province_tag_car = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if> |
| | | LEFT JOIN t_yw_point p3 ON t_monitor.serial_number = p3.serial_number AND p3.examine_status = 1 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p1.id = p3.id <if test="dataScope == 1"> AND p3.province_tag_car = 1 </if><if test="dataScope == 3"> AND p3.dept_tag = 1 </if><if test="deptId != null"> AND p3.dept_id = #{deptId} </if> |
| | | WHERE INSTR(camera_fun_type, 2) |
| | | UNION ALL |
| | | SELECT |
| | | '人脸' as type, |
| | | 'face' as type, |
| | | COUNT(p1.id) AS totalNum, |
| | | COUNT(p2.id) AS errorNum, |
| | | COUNT(p1.id) - COUNT(p2.id) AS normalNum |
| | | COUNT(p3.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 = 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> |
| | | LEFT JOIN t_yw_point p1 ON t_monitor.serial_number = p1.serial_number AND p1.examine_status = 1 <if test="dataScope == 1"> AND p1.province_tag_face = 1 </if><if test="dataScope == 3"> AND p1.dept_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.examine_status = 1 AND (p2.online = -1 OR p2.ping_online = -1) AND p1.id = p2.id<if test="dataScope == 1"> AND p2.province_tag_face = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if><if test="deptId != null"> AND p2.dept_id = #{deptId} </if> |
| | | LEFT JOIN t_yw_point p3 ON t_monitor.serial_number = p3.serial_number AND p3.examine_status = 1 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p1.id = p3.id<if test="dataScope == 1"> AND p3.province_tag_face = 1 </if><if test="dataScope == 3"> AND p3.dept_tag = 1 </if><if test="deptId != null"> AND p3.dept_id = #{deptId} </if> |
| | | WHERE INSTR(camera_fun_type, 3) |
| | | </select> |
| | | |
| | | <select id="monitorRate" resultType="com.ycl.platform.domain.vo.screen.MonitorRateVO"> |
| | | SELECT |
| | | * |
| | |
| | | ( |
| | | SELECT |
| | | d.area, |
| | | IFNULL(ROUND((COUNT(m.id) - COUNT(m2.id)) / COUNT(m.id) * 100, 2), 0) AS faceRate, |
| | | COUNT(m.id) - COUNT(m2.id) AS faceNormalNum, |
| | | IFNULL(ROUND(COUNT(m3.id)/ COUNT(m.id) * 100, 2), 0) AS faceRate, |
| | | COUNT(m3.id) AS faceNormalNum, |
| | | 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 = 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) |
| | | LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 AND p.examine_status = 1 <if test="dataScope == 1"> AND p.province_tag_face = 1 </if><if test="dataScope == 3"> AND p.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND (p2.online = -1 OR p2.ping_online = -1) AND p2.examine_status = 1 AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag_face = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p3 ON p3.dept_id = d.dept_id AND p3.deleted = 0 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p.id = p3.id <if test="dataScope == 1"> AND p3.province_tag_face = 1 </if><if test="dataScope == 3"> AND p3.dept_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) |
| | | LEFT JOIN t_monitor m3 ON m3.serial_number = p3.serial_number AND INSTR(m3.camera_fun_type, 3) |
| | | WHERE d.del_flag = 0 AND d.area IS NOT NULL |
| | | GROUP BY d.area, d.dept_id |
| | | ORDER BY d.dept_id |
| | | ORDER BY d.area_code |
| | | ) a |
| | | INNER JOIN |
| | | -- 车辆设备 |
| | | ( |
| | | SELECT |
| | | d.area, |
| | | IFNULL(ROUND((COUNT(m.id) - COUNT(m2.id)) / COUNT(m.id) * 100, 2), 0) AS carRate, |
| | | COUNT(m.id) - COUNT(m2.id) AS carNormalNum, |
| | | IFNULL(ROUND(COUNT(m3.id) / COUNT(m.id) * 100, 2), 0) AS carRate, |
| | | COUNT(m3.id) AS carNormalNum, |
| | | 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 = 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_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 AND p.examine_status = 1 <if test="dataScope == 1"> AND p.province_tag_car = 1 </if><if test="dataScope == 3"> AND p.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.examine_status = 1 AND (p2.online = -1 OR p2.ping_online = -1) AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag_car = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p3 ON p3.dept_id = d.dept_id AND p3.deleted = 0 AND p3.examine_status = 1 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p.id = p3.id <if test="dataScope == 1"> AND p3.province_tag_car = 1 </if><if test="dataScope == 3"> AND p3.dept_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) |
| | | LEFT JOIN t_monitor m3 ON m3.serial_number = p3.serial_number AND INSTR(m3.camera_fun_type, 2) |
| | | WHERE d.del_flag = 0 AND d.area IS NOT NULL |
| | | GROUP BY d.area, d.dept_id |
| | | ORDER BY d.dept_id |
| | | GROUP BY d.area, d.dept_id, d.area_code |
| | | ORDER BY d.area_code |
| | | ) b ON a.area = b.area |
| | | INNER JOIN |
| | | -- 视频设备 |
| | | ( |
| | | SELECT |
| | | d.area, |
| | | IFNULL(ROUND((COUNT(m.id) - COUNT(m2.id)) / COUNT(m.id) * 100, 2), 0) AS videoRate, |
| | | COUNT(m.id) - COUNT(m2.id) AS videoNormalNum, |
| | | IFNULL(ROUND(COUNT(m3.id) / COUNT(m.id) * 100, 2), 0) AS videoRate, |
| | | COUNT(m3.id) AS videoNormalNum, |
| | | 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 = 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) |
| | | LEFT JOIN t_yw_point p ON p.dept_id = d.dept_id AND p.deleted = 0 AND p.examine_status = 1 <if test="dataScope == 1"> AND p.province_tag_video = 1 </if><if test="dataScope == 3"> AND p.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p2 ON p2.dept_id = d.dept_id AND p2.deleted = 0 AND p2.examine_status = 1 AND (p2.online = -1 OR p2.ping_online = -1) AND p.id = p2.id <if test="dataScope == 1"> AND p2.province_tag_video = 1 </if><if test="dataScope == 3"> AND p2.dept_tag = 1 </if> |
| | | LEFT JOIN t_yw_point p3 ON p3.dept_id = d.dept_id AND p3.deleted = 0 AND p3.examine_status = 1 AND (p3.online = 1 AND p3.ping_online = 1 ) AND p.id = p3.id <if test="dataScope == 1"> AND p3.province_tag_video = 1 </if><if test="dataScope == 3"> AND p3.dept_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) |
| | | LEFT JOIN t_monitor m3 ON m3.serial_number = p3.serial_number AND INSTR(m3.camera_fun_type, 1) |
| | | WHERE d.del_flag = 0 AND d.area IS NOT NULL |
| | | GROUP BY d.area, d.dept_id |
| | | ORDER BY d.dept_id |
| | | GROUP BY d.area, d.area_code, d.dept_id |
| | | ORDER BY d.area_code |
| | | ) c ON a.area = c.area |
| | | </select> |
| | | |
| | | |
| | | <select id="assetManagement" resultMap="dyMap"> |
| | | <select id="assetManagement" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | | SELECT |
| | | tm.id, |
| | | tm.serial_number, |
| | |
| | | tm.camera_fun_type, |
| | | tm.longitude, |
| | | tm.latitude, |
| | | tm.camera_capture_area, |
| | | tm.on_state, |
| | | d.dept_name as camera_capture_area, |
| | | yp.examine_status as on_state, |
| | | tm.civil_code, |
| | | tm.integrated_device, |
| | | tm.camera_brand, |
| | | tm.address, |
| | | tm.net_working, |
| | | tm.public_security, |
| | | tm.installed_time, |
| | | tm.management_unit, |
| | | yp.create_time as installed_time, |
| | | u.unit_name as management_unit, |
| | | tm.mu_contact_info, |
| | | tm.storage_days, |
| | | tm.monitor_azimuth, |
| | |
| | | tm.camera_type, |
| | | tm.camera_light_type, |
| | | tm.encoded_format, |
| | | tm.camera_dept, |
| | | tm.hybm, |
| | | tm.lxbm, |
| | | 't_monitor' as tableName, |
| | | #{query.keyword} as keyword |
| | | tm.camera_dept |
| | | FROM |
| | | t_monitor tm |
| | | INNER JOIN t_yw_point yp ON yp.serial_number = tm.serial_number |
| | | left join sys_dept d on yp.dept_id = d.dept_id and d.del_flag = 0 |
| | | left join t_yw_unit u on yp.unit_id = u.id and u.deleted = 0 |
| | | <where> |
| | | <if test="query.keyword != null and query.keyword != ''"> |
| | | AND tm.name like concat('%', #{query.keyword}, '%') |
| | | </if> |
| | | <if test="query.examineStatus != null"> |
| | | AND yp.examine_status = #{query.examineStatus} |
| | | </if> |
| | | <if test="query.startTIme != null and query.endTime != null"> |
| | | AND yp.create_time between #{query.startTime} and #{query.endTime} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | <select id="getDyColumns" resultMap="dynamicColumnMap"> |
| | | SELECT |
| | | * |
| | | FROM |
| | | t_dynamic_column_value dcv |
| | | LEFT JOIN t_dynamic_column dc ON dc.id = dcv.dynamic_column_id AND dc.table_name = #{tableName} |
| | | WHERE |
| | | dcv.ref_id = #{id} |
| | | <if test="keyword != null and keyword != ''"> |
| | | and dcv.column_value like concat('%', #{keyword}, '%') |
| | | </if> |
| | | </select> |
| | | |
| | | <resultMap id="dyMap" type="com.ycl.platform.domain.vo.TMonitorVO"> |
| | | <id column="id" property="id"/> |
| | | <result column="serial_number" property="serialNumber"/> |
| | | <result column="name" property="name"/> |
| | | <result column="site_type" property="siteType"/> |
| | | <result column="mac_addr" property="macAddr"/> |
| | | <result column="ip" property="ip"/> |
| | | <result column="longitude" property="longitude"/> |
| | | <result column="latitude" property="latitude"/> |
| | | <result column="camera_capture_area" property="cameraCaptureArea"/> |
| | | <result column="camera_fun_type" property="cameraFunType"/> |
| | | <result column="on_state" property="onState"/> |
| | | <result column="civil_code" property="civilCode"/> |
| | | <result column="integrated_device" property="integratedDevice"/> |
| | | <result column="camera_brand" property="cameraBrand"/> |
| | | <result column="address" property="address"/> |
| | | <result column="public_security" property="publicSecurity"/> |
| | | <result column="installed_time" property="installedTime"/> |
| | | <result column="management_unit" property="managementUnit"/> |
| | | <result column="mu_contact_info" property="muContactInfo"/> |
| | | <result column="storage_days" property="storageDays"/> |
| | | <result column="monitor_azimuth" property="monitorAzimuth"/> |
| | | <result column="scene_photo_addr" property="scenePhotoAddr"/> |
| | | <result column="model" property="model"/> |
| | | <result column="site_vulgo" property="siteVulgo"/> |
| | | <result column="camera_type" property="cameraType"/> |
| | | <result column="camera_light_type" property="cameraLightType"/> |
| | | <result column="encoded_format" property="encodedFormat"/> |
| | | <result column="camera_dept" property="cameraDept"/> |
| | | <result column="hybm" property="hybm"/> |
| | | <result column="lxbm" property="lxbm"/> |
| | | <collection property="dynamicColumnList" select="getDyColumns" column="{id=id,tableName=tableName,keyword=keyword}" ofType="com.ycl.platform.domain.vo.DynamicColumnVO"/> |
| | | </resultMap> |
| | | |
| | | <resultMap id="dynamicColumnMap" type="com.ycl.platform.domain.vo.DynamicColumnVO"> |
| | | <result column="prop_name" property="propName"/> |
| | | <result column="label_value" property="labelValue"/> |
| | | <result column="column_value" property="columnValue"/> |
| | | </resultMap> |
| | | |
| | | |
| | | <delete id="deleteAll"> |
| | | delete 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 id="getDistinctIP" resultType="com.ycl.platform.domain.result.SYS.TMonitorResult"> |
| | | select DISTINCT m.id, m.ip,m.serial_number as no,m.name,m.camera_fun_type as monitorType,d.dept_id, |
| | | p.province_tag_video, p.province_tag_car, p.province_tag_face, |
| | | p.important_tag,p.important_command_image_tag,p.dept_tag,p.online |
| | | 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 p.online != 0 and p.examine_status = 1 |
| | | </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 id="updateOnlineFromUyOrHk"> |
| | | <foreach collection="onlineList" item="online" separator=";"> |
| | | UPDATE |
| | | t_yw_point |
| | | 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 ) |
| | | </foreach> |
| | | </update> |
| | | |
| | | <update id="updateOnlineFromHk"> |
| | | <foreach collection="onlineList" item="online" separator=";"> |
| | | UPDATE |
| | | t_yw_point |
| | | SET |
| | | online = #{online.online}, |
| | | update_time = #{online.updateTime} |
| | | WHERE |
| | | serial_number = #{online.serialNumber} |
| | | </foreach> |
| | | </update> |
| | | <update id="batchUpdateOnline"> |
| | | UPDATE |
| | | t_yw_point p |
| | | LEFT JOIN t_monitor m on p.serial_number = m.serial_number |
| | | SET |
| | | p.ping_online = #{online}, |
| | | p.update_time = #{date} |
| | | WHERE m.ip in |
| | | <foreach collection="ipList" open="(" close=")" separator="," item="ip"> |
| | | #{ip} |
| | | </foreach> |
| | | </update> |
| | | <select id="selectCarOrFace" resultType="com.ycl.platform.domain.entity.TMonitor"> |
| | | select m.* |
| | | from t_monitor m |
| | | left join t_yw_point p |
| | | on m.serial_number = p.serial_number |
| | | where (m.camera_fun_type = '2' or m.camera_fun_type = '3') and p.examine_status = 1 |
| | | </select> |
| | | |
| | | <select id="getByIp" resultType="com.ycl.platform.domain.result.SYS.TMonitorResult"> |
| | | select m.ip,m.serial_number as no,p.id as pointId,p.province_tag_video,p.province_tag_car,p.province_tag_face,p.dept_tag,p.important_tag,p.important_command_image_tag |
| | | from t_monitor m |
| | | left join t_yw_point p on m.serial_number = p.serial_number |
| | | where p.examine_status = 1 and m.ip in |
| | | <foreach collection="ipList" item="ip" separator="," close=")" open="("> |
| | | #{ip} |
| | | </foreach> |
| | | </select> |
| | | <!-- 清理一机一档 --> |
| | | <delete id="clearMonitor"> |
| | | delete m from t_monitor m left join t_yw_point p on m.serial_number = p.serial_number |
| | | where p.examine_status != 1 |
| | | </delete> |
| | | |
| | | <select id ="getVideoIds" resultType="java.lang.String"> |
| | | select serial_number from t_monitor |
| | | where camera_fun_type like '%1%' |
| | | </select> |
| | | </mapper> |