|
|
|
@ -489,119 +489,139 @@
|
|
|
|
|
|
|
|
|
|
<select id="queryDeviceOneTable" resultType="com.mh.common.core.domain.entity.ConsumptionAnalyze"> |
|
|
|
|
select |
|
|
|
|
sum(calc_value) as curValue, |
|
|
|
|
device_type as deviceType, |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) as timeStr |
|
|
|
|
SUM(coalesce(dm.calc_value, 0)) as curValue, |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose> |
|
|
|
|
<when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
) as timeStr |
|
|
|
|
from |
|
|
|
|
${curTableName} dy |
|
|
|
|
${curTableName} dm |
|
|
|
|
where |
|
|
|
|
cur_time >= #{startTime} |
|
|
|
|
and cur_time <= #{endTime} |
|
|
|
|
and device_type = 'meter' |
|
|
|
|
and exists ( |
|
|
|
|
select |
|
|
|
|
1 |
|
|
|
|
from |
|
|
|
|
device_manage |
|
|
|
|
where |
|
|
|
|
device_num = dy.device_num |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chiller'"> |
|
|
|
|
and grade < 10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chilledWaterPump'"> |
|
|
|
|
and grade < 20 and grade >=10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingPump'"> |
|
|
|
|
and grade < 30 and grade >=20 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingTower'"> |
|
|
|
|
and grade < 40 and grade >=30 |
|
|
|
|
</if> |
|
|
|
|
) |
|
|
|
|
dm.cur_time >= #{startTime}::timestamp |
|
|
|
|
and dm.cur_time <= #{endTime}::timestamp |
|
|
|
|
and dm.device_type in( |
|
|
|
|
select |
|
|
|
|
cpm.mt_type |
|
|
|
|
from |
|
|
|
|
collection_params_manage cpm |
|
|
|
|
join |
|
|
|
|
device_ledger dl |
|
|
|
|
on |
|
|
|
|
cpm.device_ledger_id = dl.id |
|
|
|
|
where |
|
|
|
|
dl.device_type = '5' |
|
|
|
|
and cpm.terminal_device_type = #{deviceType} |
|
|
|
|
group by |
|
|
|
|
device_type, |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) |
|
|
|
|
cpm.mt_type |
|
|
|
|
) |
|
|
|
|
group by |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose> |
|
|
|
|
<when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
order by timeStr |
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
<select id="queryDeviceManyTable" resultType="com.mh.common.core.domain.entity.ConsumptionAnalyze"> |
|
|
|
|
<if test="lastTableName != curTableName"> |
|
|
|
|
select |
|
|
|
|
sum(calc_value) as curValue, |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) as timeStr |
|
|
|
|
SUM(coalesce(dm.calc_value, 0)) as curValue, |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose> |
|
|
|
|
<when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
) as timeStr |
|
|
|
|
from |
|
|
|
|
${lastTableName} dy |
|
|
|
|
${lastTableName} dm |
|
|
|
|
where |
|
|
|
|
cur_time >= #{startTime} |
|
|
|
|
and cur_time <= #{endTime} |
|
|
|
|
and device_type = 'meter' |
|
|
|
|
and exists ( |
|
|
|
|
select |
|
|
|
|
1 |
|
|
|
|
from |
|
|
|
|
device_manage |
|
|
|
|
where |
|
|
|
|
device_num = dy.device_num |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chiller'"> |
|
|
|
|
and grade < 10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chilledWaterPump'"> |
|
|
|
|
and grade < 20 and grade >=10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingPump'"> |
|
|
|
|
and grade < 30 and grade >=20 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingTower'"> |
|
|
|
|
and grade < 40 and grade >=30 |
|
|
|
|
</if> |
|
|
|
|
) |
|
|
|
|
dm.cur_time >= #{startTime}::timestamp |
|
|
|
|
and dm.cur_time <= #{endTime}::timestamp |
|
|
|
|
and dm.device_type in( |
|
|
|
|
select |
|
|
|
|
cpm.mt_type |
|
|
|
|
from |
|
|
|
|
collection_params_manage cpm |
|
|
|
|
join |
|
|
|
|
device_ledger dl |
|
|
|
|
on |
|
|
|
|
cpm.device_ledger_id = dl.id |
|
|
|
|
where |
|
|
|
|
dl.device_type = '5' |
|
|
|
|
and cpm.terminal_device_type = #{deviceType} |
|
|
|
|
group by |
|
|
|
|
cpm.mt_type |
|
|
|
|
) |
|
|
|
|
group by |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose> |
|
|
|
|
<when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
) |
|
|
|
|
union all |
|
|
|
|
</if> |
|
|
|
|
select |
|
|
|
|
sum(calc_value) as curValue, |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) as timeStr |
|
|
|
|
SUM(coalesce(dm.calc_value, 0)) as curValue, |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose> |
|
|
|
|
<when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
) as timeStr |
|
|
|
|
from |
|
|
|
|
${curTableName} dy |
|
|
|
|
${curTableName} dm |
|
|
|
|
where |
|
|
|
|
cur_time >= #{startTime} |
|
|
|
|
and cur_time <= #{endTime} |
|
|
|
|
and device_type = 'meter' |
|
|
|
|
and exists ( |
|
|
|
|
select |
|
|
|
|
1 |
|
|
|
|
from |
|
|
|
|
device_manage |
|
|
|
|
where |
|
|
|
|
device_num = dy.device_num |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chiller'"> |
|
|
|
|
and grade < 10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chilledWaterPump'"> |
|
|
|
|
and grade < 20 and grade >=10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingPump'"> |
|
|
|
|
and grade < 30 and grade >=20 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingTower'"> |
|
|
|
|
and grade < 40 and grade >=30 |
|
|
|
|
</if> |
|
|
|
|
) |
|
|
|
|
dm.cur_time >= #{startTime}::timestamp |
|
|
|
|
and dm.cur_time <= #{endTime}::timestamp |
|
|
|
|
and dm.device_type in( |
|
|
|
|
select |
|
|
|
|
cpm.mt_type |
|
|
|
|
from |
|
|
|
|
collection_params_manage cpm |
|
|
|
|
join |
|
|
|
|
device_ledger dl |
|
|
|
|
on |
|
|
|
|
cpm.device_ledger_id = dl.id |
|
|
|
|
where |
|
|
|
|
dl.device_type = '5' |
|
|
|
|
and cpm.terminal_device_type = #{deviceType} |
|
|
|
|
group by |
|
|
|
|
cpm.mt_type |
|
|
|
|
) |
|
|
|
|
group by |
|
|
|
|
convert(varchar(${len}), |
|
|
|
|
cur_time, |
|
|
|
|
120) |
|
|
|
|
TO_CHAR(dm.cur_time, |
|
|
|
|
<choose><when test='len == 4'>'YYYY'</when> |
|
|
|
|
<when test='len == 7'>'YYYY-MM'</when> |
|
|
|
|
<when test='len == 10'>'YYYY-MM-DD'</when> |
|
|
|
|
<when test='len == 13'>'YYYY-MM-DD HH24'</when> |
|
|
|
|
<when test='len == 16'>'YYYY-MM-DD HH24:MI'</when> |
|
|
|
|
<otherwise>'YYYY-MM-DD HH24:MI:SS'</otherwise> |
|
|
|
|
</choose> |
|
|
|
|
) |
|
|
|
|
order by timeStr |
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
@ -736,68 +756,57 @@
|
|
|
|
|
<select id="queryDeviceLineManyTable" resultType="com.mh.common.core.domain.entity.ConsumptionAnalyze"> |
|
|
|
|
<if test="lastTableName != curTableName"> |
|
|
|
|
select |
|
|
|
|
sum(calc_value) as curValue, |
|
|
|
|
cur_time as timeStr |
|
|
|
|
SUM(coalesce(dm.calc_value, 0)) as curValue, |
|
|
|
|
dm.cur_time as timeStr |
|
|
|
|
from |
|
|
|
|
${lastTableName} dy |
|
|
|
|
${lastTableName} dm |
|
|
|
|
where |
|
|
|
|
cur_time >= #{startTime} |
|
|
|
|
and cur_time <= #{endTime} |
|
|
|
|
and device_type = 'meter' |
|
|
|
|
and exists ( |
|
|
|
|
dm.cur_time >= #{startTime}::timestamp |
|
|
|
|
and dm.cur_time <= #{endTime}::timestamp |
|
|
|
|
and dm.device_type in( |
|
|
|
|
select |
|
|
|
|
1 |
|
|
|
|
cpm.mt_type |
|
|
|
|
from |
|
|
|
|
device_manage |
|
|
|
|
collection_params_manage cpm |
|
|
|
|
join |
|
|
|
|
device_ledger dl |
|
|
|
|
on |
|
|
|
|
cpm.device_ledger_id = dl.id |
|
|
|
|
where |
|
|
|
|
device_num = dy.device_num |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chiller'"> |
|
|
|
|
and grade < 10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chilledWaterPump'"> |
|
|
|
|
and grade < 20 and grade >=10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingPump'"> |
|
|
|
|
and grade < 30 and grade >=20 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingTower'"> |
|
|
|
|
and grade < 40 and grade >=30 |
|
|
|
|
</if> |
|
|
|
|
dl.device_type = '5' |
|
|
|
|
and cpm.terminal_device_type = #{deviceType} |
|
|
|
|
group by |
|
|
|
|
cpm.mt_type |
|
|
|
|
) |
|
|
|
|
group by cur_time |
|
|
|
|
group by |
|
|
|
|
dm.cur_time |
|
|
|
|
union all |
|
|
|
|
</if> |
|
|
|
|
select |
|
|
|
|
sum(calc_value) as curValue, |
|
|
|
|
cur_time as timeStr |
|
|
|
|
SUM(coalesce(dm.calc_value, 0)) as curValue, |
|
|
|
|
dm.cur_time as timeStr |
|
|
|
|
from |
|
|
|
|
${curTableName} dy |
|
|
|
|
${curTableName} dm |
|
|
|
|
where |
|
|
|
|
cur_time >= #{startTime} |
|
|
|
|
and cur_time <= #{endTime} |
|
|
|
|
and device_type = 'meter' |
|
|
|
|
and exists ( |
|
|
|
|
dm.cur_time >= #{startTime}::timestamp |
|
|
|
|
and dm.cur_time <= #{endTime}::timestamp |
|
|
|
|
and dm.device_type in( |
|
|
|
|
select |
|
|
|
|
1 |
|
|
|
|
cpm.mt_type |
|
|
|
|
from |
|
|
|
|
device_manage |
|
|
|
|
collection_params_manage cpm |
|
|
|
|
join |
|
|
|
|
device_ledger dl |
|
|
|
|
on |
|
|
|
|
cpm.device_ledger_id = dl.id |
|
|
|
|
where |
|
|
|
|
device_num = dy.device_num |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chiller'"> |
|
|
|
|
and grade < 10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'chilledWaterPump'"> |
|
|
|
|
and grade < 20 and grade >=10 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingPump'"> |
|
|
|
|
and grade < 30 and grade >=20 |
|
|
|
|
</if> |
|
|
|
|
<if test="deviceType != null and deviceType != '' and deviceType == 'coolingTower'"> |
|
|
|
|
and grade < 40 and grade >=30 |
|
|
|
|
</if> |
|
|
|
|
) |
|
|
|
|
dl.device_type = '5' |
|
|
|
|
and cpm.terminal_device_type = #{deviceType} |
|
|
|
|
group by |
|
|
|
|
cpm.mt_type |
|
|
|
|
) |
|
|
|
|
group by |
|
|
|
|
cur_time |
|
|
|
|
dm.cur_time |
|
|
|
|
order by timeStr |
|
|
|
|
</select> |
|
|
|
|
</mapper> |