From 2b3c06ae70b16b83063158d092094619579a4d7b Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Tue, 27 Oct 2020 14:40:12 +0800
Subject: [PATCH] 风场更新
---
src/main/resources/mapper/DeviceMapper.xml | 61 +++++++++++++++++++++++++-----
1 files changed, 51 insertions(+), 10 deletions(-)
diff --git a/src/main/resources/mapper/DeviceMapper.xml b/src/main/resources/mapper/DeviceMapper.xml
index f95d41f..59935ea 100644
--- a/src/main/resources/mapper/DeviceMapper.xml
+++ b/src/main/resources/mapper/DeviceMapper.xml
@@ -378,16 +378,16 @@
as windSpeed, h.json->"$.e23[0]" as windDir,
h.json->"$.e17[0]" as tVoc
from ${table} h ,`device` as d
- where d.mac=h.mac and d.mac=#{mac} and h.time=#{time}
+ where d.mac=h.mac and d.mac=#{mac} and h.time=(select max(time) from ${table})
</select>
<select id="byMonitorIdGetDeviceAndWind" resultType="com.moral.entity.DeviceAndWind">
select d.longitude as longitude,d.latitude as latitude,
case when h.json->"$.e18[0]"=0 then 0.1 else h.json->"$.e18[0]" end
as windSpeed, h.json->"$.e23[0]" as windDir,
h.json->"$.e17[0]" as tVoc
- from ${table} h ,`device` as d
- where d.mac=h.mac and h.time=#{time}
- and d.mac in (select d.mac from device , monitor_point as m where d.monitor_point_id=m.id and m.id=#{id})
+ from ${table} as h ,`device` as d
+ where d.mac=h.mac and h.time=(select max(time) from ${table})
+ and d.mac in (select d.mac from device , monitor_point as m where d.monitor_point_id=m.id and m.id=#{id})
</select>
<select id="getDevicesStateByRegion" resultType="map">
@@ -484,7 +484,8 @@
</select>
<select id="selectDevicesAll" parameterType="java.util.Map" resultType="com.moral.entity.Device">
- SELECT dev.id,dev.mac,dev.device_version_id deviceVersionId from device dev
+ SELECT dev.name,dev.address,dev.id,dev.state,dev.mac,dev.longitude,dev.latitude,dev.device_version_id
+ deviceVersionId from device dev
left join monitor_point mpt on dev.monitor_point_id = mpt.id
<where>
<if test="@com.moral.common.bean.Constants@isNotSpecialOrgId(orgId)">
@@ -514,14 +515,54 @@
)
</select>
- <select id="getDeviceListByMonitorPointIds" resultType="com.moral.entity.Device">
- select * from device where monitor_point_id in
- <foreach item="item" collection="list" index="index" open="(" separator="," close=")">#{item}</foreach>
- </select>
+ <select id="getMacsByMonitorPointIds" resultType="java.lang.String">
+ select mac from device where monitor_point_id in
+ <foreach item="item" collection="list" index="index" open="(" separator="," close=")">#{item}</foreach>
+ and is_delete=0
+ </select>
- <select id="selectAllFieldByMac" resultType="java.util.Map">
+ <select id="selectAllFieldByMac" resultType="java.util.Map">
SELECT *
FROM device
WHERE mac = #{mac}
</select>
+ <select id="getDeviceByCode" resultType="java.util.List" resultMap="BaseResultMap">
+ select d.* from monitor_point as m,device as d where m.id=d.monitor_point_id
+ and m.id
+ in
+ (SELECT m.id where state!=4
+ <if test="areaCode != null">
+ and area_code = #{areaCode}
+ </if>
+ <if test="townCode != null">
+ and town_code = #{townCode}
+ </if>
+
+
+ )
+ </select>
+ <select id="byMacGetDeviceAndWind" resultType="com.moral.entity.DeviceAndWind">
+ select d.longitude as longitude,d.latitude as latitude,
+ case when h.json->"$.e18[0]"=0 then 0.1 else h.json->"$.e18[0]" end
+ as windSpeed, h.json->"$.e23[0]" as windDir,
+ h.json->"$.e17[0]" as tVoc
+ from ${table} as h ,`device` as d
+ where d.mac=h.mac and h.time=(select max(time) from ${table})
+ and d.mac=#{mac}
+ </select>
+ <select id="getDeviceByCodeAndId" resultType="com.moral.entity.Device" resultMap="BaseResultMap">
+ select * from device where monitor_point_id in(
+ SELECT mpt.id
+ FROM monitor_point mpt,organization org
+ where mpt.organization_id=org.id
+ and org.id=#{id}
+ )
+ </select>
+ <select id="byMacGetOrgId" resultType="java.lang.String">
+ SELECT organization_id FROM `monitor_point` as mt ,device as d where d.monitor_point_id=mt.id and mac=#{mac}
+ </select>
+
+ <select id="getDevicesByMpId" resultType="java.util.Map">
+ select name,mac from device where monitor_point_id=#{mpId} and is_delete=0
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0