IFNULL(max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),'--') AS nowLevel,
IFNULL(max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),'--') AS nowLevel,
(
(
CASE
CASE
...
@@ -128,21 +127,19 @@
...
@@ -128,21 +127,19 @@
END
END
) AS levelStatus,
) AS levelStatus,
IFNULL( rp.volume, 0 ) AS volume,
IFNULL( rp.volume, 0 ) AS volume,
<!-- ec.image,-->
ec.image,
r.resource_type,
r.resource_type,
r.sequence_nbr
r.sequence_nbr
FROM
FROM
cb_water_resource r
cb_water_resource r
LEFT JOIN cb_org_usr ou ON ou.biz_org_code = r.biz_org_code
AND ou.is_delete = 0
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
LEFT JOIN wl_equipment_specific_index ei ON ei.equipment_specific_id = rp.level_device_id
LEFT JOIN wl_equipment_specific_index ei ON ei.equipment_specific_id = rp.level_device_id
<!-- LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id-->
LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id
<!-- LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id-->
LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id
WHERE
WHERE
r.resource_type = 'industryPool'
r.resource_type = 'industryPool'
AND r.is_delete = 1
AND r.is_delete = 1
AND ou.`code` IS NOT NULL
AND r.`biz_org_code` IS NOT NULL
<iftest="bizOrgCode!=null and bizOrgCode!=''">
<iftest="bizOrgCode!=null and bizOrgCode!=''">
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
</if>
</if>
...
@@ -151,7 +148,6 @@
...
@@ -151,7 +148,6 @@
(
(
SELECT
SELECT
a.`name`,
a.`name`,
a.`code`,
a.minLevel,
a.minLevel,
a.maxLevel,
a.maxLevel,
(
(
...
@@ -182,7 +178,7 @@
...
@@ -182,7 +178,7 @@
)
)
END
END
) AS levelAbs,
) AS levelAbs,
a.nowLevel,
IFNULL( a.nowLevel, '--' ) nowLevel,
(
(
CASE
CASE
...
@@ -196,15 +192,13 @@
...
@@ -196,15 +192,13 @@
END
END
) AS levelStatus,
) AS levelStatus,
a.volume,
a.volume,
<!-- a.image,-->
a.image,
a.resource_type,
a.resource_type,
a.sequence_nbr
a.sequence_nbr
<!-- ,a.`code` AS systemCode-->
FROM
FROM
(
(
SELECT
SELECT
r.`name`,
r.`name`,
ou.`code`,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
(select
(select
...
@@ -215,22 +209,19 @@
...
@@ -215,22 +209,19 @@
(ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel')
(ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel')
and FIND_IN_SET( ei.equipment_specific_id, rp.level_device_id) > 0) AS nowLevel,
and FIND_IN_SET( ei.equipment_specific_id, rp.level_device_id) > 0) AS nowLevel,
IFNULL( rp.volume, 0 ) AS volume,
IFNULL( rp.volume, 0 ) AS volume,
<!-- ec.image,-->
ec.image,
r.resource_type,
r.resource_type,
r.sequence_nbr,
r.sequence_nbr,
rp.level_device_id
rp.level_device_id
<!-- ,fs.`code` AS systemCode-->
FROM
FROM
cb_water_resource r
cb_water_resource r
LEFT JOIN cb_org_usr ou ON ou.biz_org_code = r.biz_org_code
AND ou.is_delete = 0
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
<!-- LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id-->
LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id
<!-- LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id-->
LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id
WHERE
WHERE
r.resource_type = 'pool'
r.resource_type = 'pool'
AND r.is_delete = 1
AND r.is_delete = 1
AND ou.`code` IS NOT NULL
AND r.`biz_org_code` IS NOT NULL
<iftest="bizOrgCode!=null and bizOrgCode!=''">
<iftest="bizOrgCode!=null and bizOrgCode!=''">
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
</if>
</if>
...
@@ -245,162 +236,157 @@
...
@@ -245,162 +236,157 @@
<selectid="countWater"resultType="long">
<selectid="countWater"resultType="long">
select count(1) from (
select count(1) from (
(SELECT
select * from (
r.`name`,
(SELECT
ou.`code`,
r.`name`,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
(
(
CASE
CASE
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) IS NULL THEN
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) IS NULL THEN
'--'
'--'
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) >= IFNULL( rp.min_water_level, 0 )
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) >= IFNULL( rp.min_water_level, 0 )
AND rp.max_water_level IS NULL THEN
AND rp.max_water_level IS NULL THEN
'100'
'100'
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) < IFNULL( rp.min_water_level, 0 )
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) < IFNULL( rp.min_water_level, 0 )
AND rp.max_water_level IS NULL THEN
AND rp.max_water_level IS NULL THEN
'--' ELSE IFNULL((
'--' ELSE IFNULL((
FORMAT(
FORMAT(
abs(
abs(
IFNULL(
IFNULL(
max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),
max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),
IFNULL( rp.min_water_level, 0 )) /
IFNULL( rp.min_water_level, 0 )) /
IF
IF
(
(
IFNULL( rp.max_water_level, 0 ) = 0,
IFNULL( rp.max_water_level, 0 ) = 0,
1,
1,
IFNULL( rp.max_water_level, 0 ))) * 100,
IFNULL( rp.max_water_level, 0 ))) * 100,
2
2
)
)
),
),
0
0
)
)
END
END
) AS levelAbs,
) AS levelAbs,
IFNULL(max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),'--') AS nowLevel,
IFNULL(max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),'--') AS nowLevel,
(
(
CASE
CASE
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) IS NULL
WHEN max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ) IS NULL
OR rp.min_water_level IS NULL THEN
OR rp.min_water_level IS NULL THEN
'--'
'--'
WHEN IFNULL(
WHEN IFNULL(
max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),
max( CASE WHEN ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel' THEN ei.`value` END ),
IFNULL( rp.min_water_level, 0 )) < IFNULL( rp.min_water_level, 0 ) THEN
IFNULL( rp.min_water_level, 0 )) < IFNULL( rp.min_water_level, 0 ) THEN
'缺水' ELSE '正常'
'缺水' ELSE '正常'
END
END
) AS levelStatus,
) AS levelStatus,
IFNULL( rp.volume, 0 ) AS volume,
IFNULL( rp.volume, 0 ) AS volume,
<!-- ec.image,-->
ec.image,
r.resource_type,
r.resource_type,
r.sequence_nbr
r.sequence_nbr
FROM
FROM
cb_water_resource r
cb_water_resource r
LEFT JOIN cb_org_usr ou ON ou.biz_org_code = r.biz_org_code
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
AND ou.is_delete = 0
LEFT JOIN wl_equipment_specific_index ei ON ei.equipment_specific_id = rp.level_device_id
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id
LEFT JOIN wl_equipment_specific_index ei ON ei.equipment_specific_id = rp.level_device_id
LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id
<!-- LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id-->
WHERE
<!-- LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id-->
r.resource_type = 'industryPool'
WHERE
AND r.is_delete = 1
r.resource_type = 'industryPool'
AND r.`biz_org_code` IS NOT NULL
AND r.is_delete = 1
<iftest="bizOrgCode!=null and bizOrgCode!=''">
AND ou.`code` IS NOT NULL
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
<iftest="bizOrgCode!=null and bizOrgCode!=''">
</if>
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
GROUP BY
</if>
r.sequence_nbr) union all
GROUP BY
(
r.sequence_nbr) union all
SELECT
(
a.`name`,
SELECT
a.minLevel,
a.`name`,
a.maxLevel,
a.`code`,
(
a.minLevel,
CASE
a.maxLevel,
(
CASE
WHEN a.nowLevel IS NULL THEN
WHEN a.nowLevel IS NULL THEN
'--'
'--'
WHEN a.nowLevel >= IFNULL( a.minLevel, 0 )
WHEN a.nowLevel >= IFNULL( a.minLevel, 0 )
AND a.maxLevel IS NULL THEN
AND a.maxLevel IS NULL THEN
'100'
'100'
WHEN IFNULL( a.minLevel, 0 ) > a.nowLevel
WHEN IFNULL( a.minLevel, 0 ) > a.nowLevel
AND a.maxLevel IS NULL THEN
AND a.maxLevel IS NULL THEN
'--' ELSE IFNULL((
'--' ELSE IFNULL((
FORMAT(
FORMAT(
abs(
abs(
IFNULL(
IFNULL(
a.nowLevel,
a.nowLevel,
IFNULL( a.minLevel, 0 )) /
IFNULL( a.minLevel, 0 )) /
IF
IF
(
(
IFNULL( a.maxLevel, 0 ) = 0,
IFNULL( a.maxLevel, 0 ) = 0,
1,
1,
IFNULL( a.maxLevel, 0 ))) * 100,
IFNULL( a.maxLevel, 0 ))) * 100,
2
2
)
)
),
),
0
0
)
)
END
END
) AS levelAbs,
) AS levelAbs,
a.nowLevel,
IFNULL( a.nowLevel, '--' ) nowLevel,
(
(
CASE
CASE
WHEN a.nowLevel IS NULL
WHEN a.nowLevel IS NULL
OR a.minLevel IS NULL THEN
OR a.minLevel IS NULL THEN
'--'
'--'
WHEN IFNULL( a.minLevel, 0 ) > IFNULL(
WHEN IFNULL( a.minLevel, 0 ) > IFNULL(
a.nowLevel,
a.nowLevel,
IFNULL( a.minLevel, 0 )) THEN
IFNULL( a.minLevel, 0 )) THEN
'缺水' ELSE '正常'
'缺水' ELSE '正常'
END
END
) AS levelStatus,
) AS levelStatus,
a.volume,
a.volume,
<!-- a.image,-->
a.image,
a.resource_type,
a.resource_type,
a.sequence_nbr
a.sequence_nbr
<!-- ,a.`code` AS systemCode-->
FROM
FROM
(
(
SELECT
SELECT
r.`name`,
r.`name`,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
ou.`code`,
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
IFNULL( rp.min_water_level, 0 ) AS minLevel,
(select
IFNULL( rp.max_water_level, 0 ) AS maxLevel,
FORMAT(avg(IFNULL(ei.`value`,0)), 2)
(select
from
FORMAT(avg(IFNULL(ei.`value`,0)), 2)
wl_equipment_specific_index ei
from
where
wl_equipment_specific_index ei
(ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel')
where
and FIND_IN_SET( ei.equipment_specific_id, rp.level_device_id) > 0) AS nowLevel,
(ei.equipment_index_key = 'FHS_FirePoolDevice_WaterLevel' or ei.equipment_index_key = 'FHS_WirelessliquidDetector_WaterLevel')
IFNULL( rp.volume, 0 ) AS volume,
and FIND_IN_SET( ei.equipment_specific_id, rp.level_device_id) > 0) AS nowLevel,
ec.image,
IFNULL( rp.volume, 0 ) AS volume,
r.resource_type,
<!-- ec.image,-->
r.sequence_nbr,
r.resource_type,
rp.level_device_id
r.sequence_nbr,
FROM
rp.level_device_id
cb_water_resource r
<!-- ,fs.`code` AS systemCode-->
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
FROM
LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id
cb_water_resource r
LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id
LEFT JOIN cb_org_usr ou ON ou.biz_org_code = r.biz_org_code
WHERE
AND ou.is_delete = 0
r.resource_type = 'pool'
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
AND r.is_delete = 1
<!-- LEFT JOIN wl_equipment_category ec ON ec.id = r.equip_category_id-->
AND r.`biz_org_code` IS NOT NULL
<!-- LEFT JOIN f_fire_fighting_system fs ON fs.id = r.belong_fighting_system_id-->
<iftest="bizOrgCode!=null and bizOrgCode!=''">
WHERE
AND r.biz_org_code like concat(#{bizOrgCode}, '%')
r.resource_type = 'pool'
</if>
AND r.is_delete = 1
GROUP BY
AND ou.`code` IS NOT NULL
r.sequence_nbr
<iftest="bizOrgCode!=null and bizOrgCode!=''">
) a
AND r.biz_org_code like concat(#{bizOrgCode}, '%')