From c8ce26aac0004e249a0cef35fe15b2ddb280ad25 Mon Sep 17 00:00:00 2001
From: liuhaonan <konodioda2333@vip.qq.com>
Date: 星期三, 27 四月 2022 15:51:10 +0800
Subject: [PATCH] 大气数据推送到LED

---
 dao/src/main/resources/mapper/AirDataMapper.xml |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 52 insertions(+), 4 deletions(-)

diff --git a/dao/src/main/resources/mapper/AirDataMapper.xml b/dao/src/main/resources/mapper/AirDataMapper.xml
index 68e7ac5..23b0f61 100644
--- a/dao/src/main/resources/mapper/AirDataMapper.xml
+++ b/dao/src/main/resources/mapper/AirDataMapper.xml
@@ -32,10 +32,58 @@
     </resultMap>
 
     <select id="listAirEquipmentMAC" resultType="java.lang.String">
-            SELECT DISTINCT
-            device_mac
-            FROM
-             air_data
+        SELECT DISTINCT device_mac
+        FROM air_data
     </select>
 
+
+    <select id="listAirId" resultType="java.lang.Long">
+        SELECT
+        MAX(t1.id) AS air_id
+        FROM
+        air_data t1
+        <if test="keyword != null and keyword != ''">
+            LEFT JOIN pole_binding t2 ON t1.device_mac = t2.device_code
+            AND t2.device_type = 3
+            LEFT JOIN pole t3 ON t3.id = t2.pole_id
+        </if>
+        <where>
+            <if test="keyword != null and keyword != ''">
+                AND t3.pole_name LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+            </if>
+            <if test="userid != null">
+                AND (t3.user_id = #{userid} OR t3.client_id = #{userid})
+            </if>
+        </where>
+        GROUP BY
+        t1.device_mac
+    </select>
+
+    <select id="listAirDataByIds" resultType="com.sandu.ximon.dao.bo.AirDataBo">
+        SELECT
+        t1.*, t2.pole_id,
+        t3.pole_name
+        FROM
+        air_data t1
+        LEFT JOIN pole_binding t2 ON t1.device_mac = t2.device_code
+        AND t2.device_type = 3
+        LEFT JOIN pole t3 ON t3.id = t2.pole_id
+        <where>
+            t1.id IN
+            <foreach collection="airIdList" open="(" close=")" item="airId" separator=",">
+                #{airId}
+            </foreach>
+        </where>
+    </select>
+    <select id="getCodeByPoleId" resultType="java.lang.String">
+        select t1.device_code
+        from pole_binding t1
+        left join pole t2 on t1.pole_id = t2.id
+        where t1.device_type = 3
+        and t1.pole_id = #{poleId}
+        <if test="clientId != null">
+            AND (t2.user_id = #{clientId} OR t2.client_id = #{clientId})
+        </if>
+
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.9.3