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/model/EnergyIndexMapper.xml |   44 ++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 40 insertions(+), 4 deletions(-)

diff --git a/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml b/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml
index 3ea43ac..3e16008 100644
--- a/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml
+++ b/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml
@@ -303,11 +303,11 @@
     from energy_index
     where meter_id = #{meterId}
   </delete>
-  <delete id="removeNodeIndex">
-    delete from node_index where node_id = #{nodeId} and index_id in
-    <foreach item="indexId" collection="indexIds" open="(" separator="," close=")">
+  <delete id="removeEnergyIndex">
+    delete from energy_index where index_id in
+    <foreach collection="indexIds" item="indexId" open="(" separator="," close=")">
       #{indexId}
-    </foreach>;
+    </foreach>
   </delete>
 
   <select id="getEnergyIndexMeterByCodes" resultMap="EnergyIndexResult">
@@ -391,4 +391,40 @@
         </if>
     </where>
   </select>
+  <select id="getIndexByMeterIdIndexCode" resultType="com.zhitan.model.domain.EnergyIndex">
+    SELECT ei.code,mi.meter_name||'_'||ei.name as name from energy_index ei
+    LEFT JOIN node_device nd on ei.meter_id =  nd.device_id
+    LEFT JOIN meter_implement  mi on mi."id" = nd.device_id
+    <where>
+        <if test="nodeId != null  and nodeId != ''">and nd.node_id  = #{nodeId}</if>
+        <if test="indexCode != null  and indexCode != ''">
+          and (mi.meter_name like concat('%', #{indexCode}, '%')
+          or ei.code like concat('%', #{indexCode}, '%')
+          or ei.name like concat('%', #{indexCode}, '%')
+          )
+        </if>
+        <if test="meterId != null  and meterId != ''">
+          and ei.meter_id = #{meterId}
+        </if>
+    </where>
+  </select>
+    <select id="getModelNodeIndexInfoListByIndexIds"
+            resultType="com.zhitan.model.domain.vo.ModelNodeIndexInfo">
+        SELECT 	mi.model_name modelName,
+          mi.model_code,
+          mn."name" "name",
+          ei.index_id,
+          ei.code indexCode,
+          ei."name" indexName,
+          ei.energy_id,
+          ei.energy_id
+        FROM node_index ni
+        INNER JOIN energy_index ei ON ni.index_id = ei.index_id
+        LEFT JOIN model_node mn ON ni.node_id = mn.node_id
+        LEFT JOIN model_info mi ON mn.model_code = mi.model_code
+        WHERE ei.index_id IN
+        <foreach collection="indexIds" item="indexId" open="(" separator="," close=")">
+            #{indexId}
+        </foreach>
+    </select>
 </mapper>

--
Gitblit v1.9.3