From 75f043dfa6660716364e66ee0b3cf99f44255686 Mon Sep 17 00:00:00 2001 From: DYL0109 <dn18191638832@163.com> Date: 星期三, 16 四月 2025 19:20:36 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/develop1.0' into dyl_dev --- zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 60 insertions(+), 0 deletions(-) diff --git a/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml b/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml index 37b928f..6cb58c9 100644 --- a/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml +++ b/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml @@ -215,4 +215,64 @@ AND ( begin_time BETWEEN #{beginTime} AND #{endTime} ) AND time_type = #{timeType} </select> + + <select id="getDataItemTimeRangeValueByNodeId" resultType="java.math.BigDecimal"> + SELECT + COALESCE (SUM ( "value" ), 0) + FROM + "data_item" di + JOIN energy_index ei ON di.index_id = ei.index_id + WHERE + di.index_id IN ( SELECT index_id FROM node_index WHERE node_id = #{nodeId}) + <if test="energyType !='' and energyType !=null and energyType =='allType'"> + AND ei.energy_id != '' + </if> + <if test="energyType !='' and energyType !=null and energyType !='allType'"> + AND ei.energy_id = #{energyType} + </if> + AND (di.data_time BETWEEN #{beginTime} AND #{endTime}) + AND di.time_type = #{timeType} + </select> + <select id="getHomePageConsumptionRanking" + resultType="com.zhitan.consumptionanalysis.domain.vo.RankingEnergyData"> + SELECT + A.node_Id, + A."name" AS nodeName, + A.energy_id AS energyTypeNo, + A.index_type AS energyTypeName, + A."value" AS energyConsumption + FROM + ( + SELECT + mn.node_id, + mn."name", + ei.energy_id, + ei.index_type, + se.coefficient, + (SUM ( di."value" ) * se.coefficient) AS "value" + FROM + model_node mn + LEFT JOIN node_index ni ON ni.node_id = mn.node_id + LEFT JOIN data_item di ON di.index_id = ni.index_id + LEFT JOIN energy_index ei ON ei.index_id = ni.index_id + LEFT JOIN sys_energy se ON se.enersno = ei.energy_id + WHERE + mn.node_id IN + <foreach collection="nodeIds" item="nodeId" open="(" separator="," close=")"> + #{nodeId} + </foreach> + AND di.time_type = #{timeType} + AND di.begin_time between #{beginTime} AND #{endTime} + AND ei.index_type = 'STATISTIC' + GROUP BY + mn.node_id, + mn."name", + ei.energy_id, + ei.index_type, + se.coefficient + ) A + ORDER BY + A."value" DESC + LIMIT 5 + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.3