|
|
@@ -2,7 +2,7 @@
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="com.xunmei.iot.mapper.IotBoardMapper">
|
|
|
<select id="device" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '主机设备' AS `name`,
|
|
|
+ SELECT '主机设备' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(dd.state IS NULL) AS unknown,
|
|
|
sum(dd.state = 0) AS normal,
|
|
|
@@ -11,30 +11,30 @@
|
|
|
FROM iot_device d
|
|
|
LEFT JOIN iot_device_detection dd ON d.equipment_code = dd.equipment_code
|
|
|
WHERE deleted = 0
|
|
|
- and d.org_path like concat(#{orgPath}, "%")
|
|
|
+ and d.org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="subsystem" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '报警控制器' AS `name`,
|
|
|
+ SELECT '报警控制器' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(status = 0) AS exception,
|
|
|
sum(status = 1) AS normal,
|
|
|
sum(status = 2) AS unknown
|
|
|
FROM iot_alarm_subsystem
|
|
|
WHERE deleted = 0
|
|
|
- and org_path like concat(#{orgPath}, "%")
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="sensor" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '传感器设备' AS `name`,
|
|
|
+ SELECT '传感器设备' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(state = 0) AS normal,
|
|
|
sum(state = 1) AS exception,
|
|
|
sum(state is null) AS unknown
|
|
|
FROM iot_sensor
|
|
|
WHERE deleted = 0
|
|
|
- and org_path like concat(#{orgPath}, "%")
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="videoInterity" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '(昨日)录像完整性' AS `name`,
|
|
|
+ SELECT '(昨日)录像完整性' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(vic.status = 0) AS normal,
|
|
|
sum(vic.status = 1) AS other1,
|
|
|
@@ -44,10 +44,10 @@
|
|
|
LEFT JOIN mediator_video_integrity_check vic
|
|
|
on dc.host_code = vic.equipment_code and dc.channel_code = vic.channel_code
|
|
|
WHERE dc.deleted = 0
|
|
|
- and dc.org_path like concat(#{orgPath}, "%")
|
|
|
+ and dc.org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="videoDays" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '录像存储天数' AS `name`,
|
|
|
+ SELECT '录像存储天数' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(vdc.status = 0) AS normal,
|
|
|
sum(vdc.status = 1) AS exception,
|
|
|
@@ -56,10 +56,10 @@
|
|
|
LEFT JOIN mediator_video_days_check vdc
|
|
|
on dc.host_code = vdc.equipment_code and dc.channel_code = vdc.channel_code
|
|
|
WHERE dc.deleted = 0
|
|
|
- and dc.org_path like concat(#{orgPath}, "%")
|
|
|
+ and dc.org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="videoQuality" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT '(当前)录像质量' AS `name`,
|
|
|
+ SELECT '(当前)录像质量' AS `name`,
|
|
|
count(0) AS count,
|
|
|
sum(vdr.is_alarm = 0) AS normal,
|
|
|
sum(vdr.is_alarm = 1) AS exception,
|
|
|
@@ -68,35 +68,97 @@
|
|
|
LEFT JOIN mediator_video_diagnosis_record vdr
|
|
|
on dc.host_code = vdr.equipment_code and dc.channel_code = vdr.channel_code
|
|
|
WHERE dc.deleted = 0
|
|
|
- and dc.org_path like concat(#{orgPath}, "%")
|
|
|
+ and dc.org_path like concat(#{orgPath}, '%')
|
|
|
</select>
|
|
|
<select id="dvrDisk" resultType="com.xunmei.iot.vo.board.IotBoardOverviewItemVo">
|
|
|
- SELECT
|
|
|
- '录像机硬盘' AS `name`,
|
|
|
- count( 0 ) AS count,
|
|
|
- sum( dd.other1 ) AS other1,
|
|
|
- sum( dd.normal ) AS normal,
|
|
|
- sum( dd.exception ) AS exception,
|
|
|
- sum( dd.unknown ) AS unknown
|
|
|
- FROM
|
|
|
- iot_device d
|
|
|
- LEFT JOIN (
|
|
|
- SELECT
|
|
|
- count( 0 ) AS other1,
|
|
|
- sum( state = 0 ) AS normal,
|
|
|
- sum( state = 1 ) AS exception,
|
|
|
- sum( state IS NULL ) AS unknown,
|
|
|
- host_code
|
|
|
- FROM
|
|
|
- iot_dvr_disk
|
|
|
- WHERE
|
|
|
- deleted = 0 and org_path like concat(#{orgPath}, "%")
|
|
|
- GROUP BY
|
|
|
- host_code
|
|
|
- ) dd ON d.equipment_code = dd.host_code
|
|
|
- WHERE
|
|
|
- d.category_id = 1
|
|
|
+ SELECT '录像机硬盘' AS `name`,
|
|
|
+ count(0) AS count,
|
|
|
+ sum(dd.other1) AS other1,
|
|
|
+ sum(dd.normal) AS normal,
|
|
|
+ sum(dd.exception) AS exception,
|
|
|
+ sum(dd.unknown) AS unknown
|
|
|
+ FROM iot_device d
|
|
|
+ LEFT JOIN (SELECT count(0) AS other1,
|
|
|
+ sum(state = 0) AS normal,
|
|
|
+ sum(state = 1) AS exception,
|
|
|
+ sum(state IS NULL) AS unknown,
|
|
|
+ host_code
|
|
|
+ FROM iot_dvr_disk
|
|
|
+ WHERE deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ GROUP BY host_code) dd ON d.equipment_code = dd.host_code
|
|
|
+ WHERE d.category_id = 1
|
|
|
AND d.deleted = 0
|
|
|
- and d.org_path like concat(#{orgPath}, "%")
|
|
|
+ and d.org_path like concat(#{orgPath}, '%')
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="countDeviceNums" resultType="java.util.Map">
|
|
|
+ select category_id as categoryId, count(1) as nums
|
|
|
+ from iot_device d
|
|
|
+ inner join sys_org o on o.id = d.org_id
|
|
|
+ where d.deleted = 0
|
|
|
+ and o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ group by category_id
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="countDeviceNums2" resultType="java.util.Map">
|
|
|
+ select 'sensor' as categoryId, count(1) as nums
|
|
|
+ from iot_sensor s
|
|
|
+ inner join sys_org o on o.id = s.org_id
|
|
|
+ where s.deleted = 0
|
|
|
+ and o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ union all
|
|
|
+ select 'channel' as categoryId, count(1) as nums
|
|
|
+ from iot_dvr_channel c
|
|
|
+ inner join sys_org o on o.id = c.org_id
|
|
|
+ where c.deleted = 0
|
|
|
+ and o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ union all
|
|
|
+ select 'disk' as categoryId, count(1) as nums
|
|
|
+ from iot_dvr_disk d
|
|
|
+ inner join sys_org o on o.id = d.org_id
|
|
|
+ where d.deleted = 0
|
|
|
+ and o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="countSensorNums" resultType="java.util.Map">
|
|
|
+ select s.device_type as deviceType, count(1) as nums
|
|
|
+ from iot_sensor s
|
|
|
+ inner join sys_org o on o.id = s.org_id
|
|
|
+ where o.deleted = 0
|
|
|
+ and s.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ group by s.device_type
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectVideoCheckSelf" resultType="java.util.Map">
|
|
|
+ select 'video' as deviceType,
|
|
|
+ ROUND(CAST(SUM(IF(c.lose_span LIKE '%et%', 1, 0)) AS FLOAT) / COUNT(1), 2) *
|
|
|
+ 100 as nums
|
|
|
+ from mediator_video_integrity_check c
|
|
|
+ inner join sys_org o on o.id = c.org_id
|
|
|
+ where o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ union all
|
|
|
+ select 'disk' as deviceType,
|
|
|
+ ROUND(CAST(SUM(IF(d.state = 1, 1, 0)) AS FLOAT) / COUNT(1), 2) * 100 as nums
|
|
|
+ from iot_dvr_disk d
|
|
|
+ inner join sys_org o on o.id = d.org_id
|
|
|
+ where o.deleted = 0
|
|
|
+ and d.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectVideoDaysStorage" resultType="java.util.Map">
|
|
|
+ select c.plan_days as planDays, sum(c.plan_days != c.real_days) as nums
|
|
|
+ from mediator_video_days_check c
|
|
|
+ inner join sys_org o on o.id = c.org_id
|
|
|
+ where o.deleted = 0
|
|
|
+ and org_path like concat(#{orgPath}, '%')
|
|
|
+ group by c.plan_days
|
|
|
</select>
|
|
|
</mapper>
|