Browse Source

站点列表里统计设备数和建筑数

hym 4 years ago
parent
commit
bf868ec7d8

+ 2 - 1
src/main/java/com/zoniot/ccrc/dto/SiteDto.java

@@ -20,5 +20,6 @@ public class SiteDto extends Site {
 
     @ApiModelProperty(value = "权限id",position = 101)
     private List<Integer> permissionIds;
-
+    private Integer buildingCount;
+    private Integer deviceCount;
 }

+ 3 - 1
src/main/resources/mapper/SiteMapper.xml

@@ -164,9 +164,11 @@
 
     <select id="getList" resultType="com.zoniot.ccrc.dto.SiteDto">
         select
-               ss.*,
+               ss.*,a.buildingCount,b.deviceCount,
                (SELECT GROUP_CONCAT(su.username SEPARATOR '、') FROM sc_site_user ssu LEFT JOIN sc_user su on(su.id = ssu.user_id and su.`status`= 1)  WHERE ssu.site_id = ss.id and ssu.`status` =1 and ssu.is_admin= 1) as username
         from sc_site ss
+            left join (select count(*)buildingCount,site_id from sc_building group by site_id) a on ss.id=a.site_id
+            left join (select count(*)deviceCount,site_id from sc_device group by site_id) b on ss.id=b.site_id
         where ss.status = 1
         <if test="siteIds != null and siteIds.size()>0">
             and ss.id in <foreach collection="siteIds" item="item" open="(" separator="," close=")">#{item}</foreach>