From 5d36e1f987ef21e44ded2e8a1d06c28094ec1e76 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期六, 19 四月 2025 12:39:47 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 zhitan-system/src/main/resources/mapper/keyequipment/YearKeyEquipmentMapper.xml |   83 +++++++++++++++++++++++------------------
 1 files changed, 47 insertions(+), 36 deletions(-)

diff --git a/zhitan-system/src/main/resources/mapper/keyequipment/YearKeyEquipmentMapper.xml b/zhitan-system/src/main/resources/mapper/keyequipment/YearKeyEquipmentMapper.xml
index 6a2316e..c1c6dcf 100644
--- a/zhitan-system/src/main/resources/mapper/keyequipment/YearKeyEquipmentMapper.xml
+++ b/zhitan-system/src/main/resources/mapper/keyequipment/YearKeyEquipmentMapper.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zhitan.keyequipment.mapper.YearKeyEquipmentMapper">
     <resultMap id="dataItemMap" type="com.zhitan.keyequipment.domain.YearKeyEquipment">
         <result column="index_id" property="indexId"/>
@@ -25,52 +25,63 @@
     <!--鍏ㄥ巶鑳借�楃粺璁�-->
     <select id="getYearKeyEquipmentList" resultMap="dataItemMap">
         SELECT
-        aa.index_id,
-        aa.index_name,
-        <foreach item="item" index="index" collection="dataList">
-            MAX ( CASE WHEN data_time = #{item.dataTime} THEN "value" END ) AS ${item.value},
-        </foreach>
-        aa.time_type
+            aa.index_id,
+            aa.index_name,
+            aa.unit_id,
+            <foreach item="item" index="index" collection="dataList">
+                MAX ( CASE WHEN data_time = #{item.dateTime} THEN "value" END ) AS ${item.value},
+            </foreach>
+            aa.time_type
         FROM
         (
-        SELECT
-        ci.index_id,
-        ci.NAME  AS "index_name",
-        di."value",
-        di.data_time,
-        di.time_type
-        FROM
-        data_item di LEFT JOIN energy_index ci ON di.index_id = ci.index_id
-        LEFT JOIN facility_archives f ON f."id"=ci.equipment
-        WHERE
-        di.data_time >= #{beginTime}
-        AND di.data_time &lt; #{endTime}
-        AND di.index_id IN <foreach item="indexId" index="index" collection="indexIds"  open="(" separator="," close=")">#{indexId} </foreach>
-        AND di.time_type = #{timeType}
-        <if test="indexStorageId !='' and indexStorageId !=null">
-            and ci.equipment=#{indexStorageId}
-        </if>
+            SELECT
+                ni.index_id,
+                ei.NAME AS "index_name",
+                ei.unit_id,
+                di."value",
+                di.data_time,
+                di.time_type
+            FROM
+                model_node mn
+                LEFT JOIN node_index ni ON ni.node_id = mn.node_id
+                LEFT JOIN energy_index ei ON ei.index_id = ni.index_id
+                LEFT JOIN data_item di ON ni.index_id = di.index_id
+            WHERE
+                di.data_time &gt;= #{beginTime}
+                AND di.data_time &lt; #{endTime}
+                AND di.index_id IN
+                    <foreach item="indexId" index="index" collection="indexIds" open="(" separator="," close=")">
+                        #{indexId}
+                    </foreach>
+                AND di.time_type = #{timeType}
+                <if test="indexStorageId !='' and indexStorageId !=null">
+                    and ei.energy_id=#{indexStorageId}
+                </if>
         ) aa
         GROUP BY
-        aa.index_id,aa.index_name,aa.time_type
+            aa.index_id, aa.index_name, aa.unit_id, aa.time_type
     </select>
 
     <select id="getListChart" resultMap="dataItemMap">
         SELECT
-            di.index_id,
-            ci.name AS "index_name",
-            ci.unit_id,
-            di."value",
-            di.data_time,
-            di.time_type,
-            di.time_code
+        di.index_id,
+        ci.name AS "index_name",
+        ci.unit_id,
+        di."value",
+        di.data_time,
+        di.time_type,
+        di.time_code
         FROM
         data_item di LEFT JOIN energy_index ci ON di.index_id = ci.index_id
         WHERE
-            di.index_id =#{indexId}
-            AND di.data_time &lt; #{endTime}
-            AND di.data_time >= #{beginTime}
+        di.index_id =#{indexId}
+        AND di.data_time &lt; #{endTime}
+        <if test="endTime != null">
+            AND di.data_time &gt;= #{beginTime}
+        </if>
+        <if test="beginTime != null">
             AND di.time_type = #{timeType}
+        </if>
         order by di.data_time
     </select>
 </mapper>

--
Gitblit v1.9.3