From afae558d8eb1832769b6621d0d9c30103f7fdd89 Mon Sep 17 00:00:00 2001
From: DYL0109 <dn18191638832@163.com>
Date: 星期五, 18 四月 2025 16:48:43 +0800
Subject: [PATCH] Merge pull request #70 from zhitan-cloud/wt_from_develop1.0

---
 zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml |   54 +++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 45 insertions(+), 9 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..1145863 100644
--- a/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml
+++ b/zhitan-system/src/main/resources/mapper/model/EnergyIndexMapper.xml
@@ -4,7 +4,7 @@
   "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zhitan.model.mapper.EnergyIndexMapper">
 
-  <resultMap type="EnergyIndex" id="EnergyIndexResult">
+  <resultMap type="com.zhitan.model.domain.EnergyIndex" id="EnergyIndexResult">
     <result property="indexId" column="index_id"/>
     <result property="name" column="name"/>
     <result property="code" column="code"/>
@@ -34,7 +34,7 @@
     from energy_index
   </sql>
 
-  <select id="selectEnergyIndexList" parameterType="EnergyIndex" resultMap="EnergyIndexResult">
+  <select id="selectEnergyIndexList" parameterType="com.zhitan.model.domain.EnergyIndex" resultMap="EnergyIndexResult">
     select ni.index_id, name, code, index_type, remark, unit_id, index_category
     from energy_index ei left join node_index ni on ei.index_id = ni.index_id
     <where>
@@ -59,7 +59,7 @@
     <include refid="selectEnergyIndexVo"/>
     where
         index_id IN
-        <foreach collection="list" item="indexId" open="(" separator="," close=")">
+        <foreach collection="indexIds" item="indexId" open="(" separator="," close=")">
           #{indexId}
         </foreach>
   </select>
@@ -145,7 +145,7 @@
     order by ei.order_num
   </select>
 
-  <insert id="insertEnergyIndex" parameterType="EnergyIndex">
+  <insert id="insertEnergyIndex" parameterType="com.zhitan.model.domain.EnergyIndex">
     insert into energy_index
     <trim prefix="(" suffix=")" suffixOverrides=",">
       <if test="indexId != null  and indexId != ''">index_id,</if>
@@ -271,7 +271,7 @@
     </foreach>
   </insert>
 
-  <update id="updateEnergyIndex" parameterType="EnergyIndex">
+  <update id="updateEnergyIndex" parameterType="com.zhitan.model.domain.EnergyIndex">
     update energy_index
     <trim prefix="SET" suffixOverrides=",">
       <if test="name != null  and name != ''">name = #{name},</if>
@@ -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