lihui001 3 роки тому
батько
коміт
b47af873be

+ 7 - 4
zoniot-water/zoniot-water-core/src/main/java/com/bz/zoneiot/water/core/mapper/OnlineMonitorMapper.xml

@@ -413,12 +413,15 @@
     </select>
     <!--按管网名称分类查询设备数量-->
     <select id="selectDeviceCount" resultType="java.util.Map">
-        select  t1.id sceneId,t1.scene_name sceneName,sum(if(t5.id is null,0,1)) deviceCount,sum(if(t7.device_id is null,0,1)) alarmCount
+        select
+        t1.id sceneId,t1.scene_name sceneName,sum(if(t5.id is null,0,1)) deviceCount,
+        sum(if(t6.ENABLE_STATE = 1,1,0)) normalCount,
+        sum(if(t6.ENABLE_STATE = 2,1,0)) alarmCount,
+        sum(if(t6.ENABLE_STATE = 3,1,0)) offLineCount,
+        sum(if(t6.ENABLE_STATE = 4,1,0)) scrapCount,
+        sum(if(t6.ENABLE_STATE = 5,1,0)) notEnabledCount
         from sms_scene t1
         <include refid="deviceInnerJoins"/>
-        left join(
-            select a1.scene_id, a1.device_id from sms_alarm_details a1 where a1.`status` = 1 and a1.state = 1 group by a1.scene_id, a1.device_id
-        )t7 on t7.scene_id=t2.scene_id and t7.device_id=t2.device_id
         where t1.parent_scene_id = 0 and t1. status = 1 and t1. enable_state = 1 and t3.scene_type_name = '管网' and t5.scene_type_name = #{sceneTypeName}
         <if test="sceneIds != null and sceneIds.size() > 0">
             and t1.id  in