| | |
| | | #{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, |
| | |
| | | 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 |
| | | 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, |
| | | tmc.tag |
| | | 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 |
| | |
| | | ) 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 |
| | | LEFT JOIN t_monitor_construction tmc on m.serial_number = tmc.serial_number and tmc.deleted = 0 |
| | | <where> |
| | | p.examine_status = 1 |
| | | <if test="serialNumber != null and serialNumber != ''">and m.serial_number = #{serialNumber}</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>--> |
| | | ${params.dataScope} |
| | | </where> |
| | | </select> |
| | | <select id="selectTMonitorListAndIds" 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, |
| | | 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, |
| | | tmc.tag |
| | | 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 ( |
| | | 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 |
| | | LEFT JOIN t_monitor_construction tmc on m.serial_number = tmc.serial_number and tmc.deleted = 0 |
| | | <where> |
| | | p.examine_status = 1 |
| | | <if test="ids != null and ids.size() > 0"> |
| | | and m.serial_number in |
| | | <foreach collection="ids" item="id" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </if> |
| | | <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="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="cameraFunType != null and cameraFunType != ''">and camera_fun_type like concat('%', |
| | | #{cameraFunType}, '%') |
| | | </if> |
| | | <if test="longitude != null and longitude != ''">and longitude = #{longitude}</if> |
| | | <if test="latitude != null and latitude != ''">and latitude = #{latitude}</if> |
| | | <if test="cameraCaptureArea != null and cameraCaptureArea != ''">and camera_capture_area = |
| | | #{cameraCaptureArea} |
| | | </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="address != null and address != ''">and d.dept_id = #{address}</if> |
| | | <if test="netWorking != null ">and net_working = #{netWorking}</if> |
| | | <if test="publicSecurity != null and publicSecurity != ''">and public_security = #{publicSecurity}</if> |
| | | <if test="installedTime != null ">and installed_time = #{installedTime}</if> |
| | | <if test="managementUnit != null and managementUnit != ''">and management_unit = #{managementUnit}</if> |
| | | <if test="muContactInfo != null and muContactInfo != ''">and mu_contact_info = #{muContactInfo}</if> |
| | | <if test="storageDays != null ">and storage_days = #{storageDays}</if> |
| | | <if test="monitorAzimuth != null ">and monitor_azimuth = #{monitorAzimuth}</if> |
| | | <if test="scenePhotoAddr != null and scenePhotoAddr != ''">and scene_photo_addr = #{scenePhotoAddr}</if> |
| | | <if test="model != null and model != ''">and model = #{model}</if> |
| | | <if test="siteVulgo != null and siteVulgo != ''">and site_vulgo = #{siteVulgo}</if> |
| | | <if test="cameraType != null ">and camera_type = #{cameraType}</if> |
| | | <if test="cameraLightType != null ">and camera_light_type = #{cameraLightType}</if> |
| | | <if test="encodedFormat != null ">and encoded_format = #{encodedFormat}</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> |
| | | ${params.dataScope} |
| | | </where> |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | </select> |
| | | <!-- TODO --> |
| | | <select id="exportTMonitorList" resultType="com.ycl.platform.domain.excel.TMonitorExp"> |
| | | select m.id, m.serial_number, name, ip, camera_fun_type, |
| | | CASE |
| | |
| | | <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="address != null and address !=''">and d.dept_id = #{address}</if> |
| | | </where> |
| | | </select> |
| | | <select id="selectMonitorVOList" resultType="com.ycl.platform.domain.vo.TMonitorVO"> |
| | |
| | | <if test="deptTag!=null"> |
| | | and p.dept_tag = #{deptTag} |
| | | </if> |
| | | <if test="address != null"> |
| | | and p.dept_id = #{address} |
| | | </if> |
| | | <if test="ids != null and ids.size() > 0"> |
| | | and m.serial_number in |
| | | <foreach collection="ids" item="id" open="(" separator="," close=")"> |
| | | #{id} |
| | | </foreach> |
| | | </if> |
| | | <if test="constructionType != null and constructionType != ''"> |
| | | <choose> |
| | | <when test="constructionType == 'PHASE_ONE_TWO'"> |
| | | and m.name LIKE 'DX_%' |
| | | </when> |
| | | <when test="constructionType == 'PHASE_THREE'"> |
| | | and m.name LIKE 'LT_%' |
| | | </when> |
| | | <when test="constructionType == 'PHASE_FOURTH'"> |
| | | and ( |
| | | m.name LIKE 'DX_R%' |
| | | OR |
| | | m.name LIKE 'DX_RS%' |
| | | ) |
| | | </when> |
| | | <when test="constructionType == 'EASTERN_NEW_CITY'"> |
| | | and m.name LIKE 'DX_RD%' |
| | | </when> |
| | | <when test="constructionType == 'YAN_TAN_PHASE_TWO_FACE'"> |
| | | and m.name LIKE 'DX_R2%' |
| | | </when> |
| | | </choose> |
| | | </if> |
| | | |
| | | ${params.dataScope} |
| | | </where> |
| | | </select> |
| | |
| | | COUNT(p2.id) AS errorNum, |
| | | COUNT(p3.id) AS normalNum |
| | | FROM t_monitor |
| | | 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> |
| | | 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 |
| | |
| | | COUNT(p2.id) AS errorNum, |
| | | COUNT(p3.id) AS normalNum |
| | | FROM t_monitor |
| | | 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> |
| | | 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"> |
| | |
| | | AND t_monitor.serial_number = t_yw_point.serial_number ) |
| | | </foreach> |
| | | </update> |
| | | |
| | | <update id="batchUpdatePingOnline"> |
| | | <foreach collection="ipList" item="ip" separator=";"> |
| | | UPDATE |
| | | t_yw_point |
| | | SET |
| | | online = #{online}, |
| | | update_time = #{date} |
| | | WHERE |
| | | EXISTS (SELECT 1 FROM t_monitor |
| | | WHERE ip = #{ip} |
| | | AND t_monitor.serial_number = t_yw_point.serial_number ) |
| | | </foreach> |
| | | </update> |
| | | <update id="updateOnlineFromHk"> |
| | | <foreach collection="onlineList" item="online" separator=";"> |
| | | UPDATE |