From c1b0365b02bc8d5919ca08053eb8a961c1923418 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 12 六月 2024 11:16:21 +0800
Subject: [PATCH] 增加设备上线判断双逻辑,兼容华为设备(前一条的描述大华是错误的,大华没有这个问题)注册后不再发送注册的设备
---
src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java | 40 ++++++++++++++++++++++------------------
1 files changed, 22 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
index 10d0ee1..5cd50b9 100755
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
@@ -357,7 +357,8 @@
"<if test='item.gpsTime != null'>, gps_time=#{item.gpsTime}</if>" +
"<if test='item.streamIdentification != null'>, stream_identification=#{item.streamIdentification}</if>" +
"<if test='item.id > 0'>WHERE id=#{item.id}</if>" +
- "<if test='item.id == 0'>WHERE device_id=#{item.deviceId} AND channel_id=#{item.channelId}</if>" +
+ "<if test='item.id == 0 and item.channelId != null '>WHERE device_id=#{item.deviceId} AND channel_id=#{item.channelId}</if>" +
+ "<if test='item.id == 0 and item.channelId == null '>WHERE device_id=#{item.deviceId}</if>" +
"</foreach>" +
"</script>"})
int batchUpdate(List<DeviceChannel> updateChannels);
@@ -400,23 +401,6 @@
" <if test='channelId != null' > AND channel_id=#{channelId}</if>" +
" </script>"})
int updatePosition(DeviceChannel deviceChannel);
-
- @Update({"<script>" +
- "<foreach collection='deviceChannelList' item='item' separator=';'>" +
- " UPDATE" +
- " wvp_device_channel" +
- " SET gps_time=#{item.gpsTime}" +
- "<if test='item.longitude != null'>, longitude=#{item.longitude}</if>" +
- "<if test='item.latitude != null'>, latitude=#{item.latitude}</if>" +
- "<if test='item.longitudeGcj02 != null'>, longitude_gcj02=#{item.longitudeGcj02}</if>" +
- "<if test='item.latitudeGcj02 != null'>, latitude_gcj02=#{item.latitudeGcj02}</if>" +
- "<if test='item.longitudeWgs84 != null'>, longitude_wgs84=#{item.longitudeWgs84}</if>" +
- "<if test='item.latitudeWgs84 != null'>, latitude_wgs84=#{item.latitudeWgs84}</if>" +
- "WHERE device_id=#{item.deviceId} " +
- " <if test='item.channelId != null' > AND channel_id=#{item.channelId}</if>" +
- "</foreach>" +
- "</script>"})
- int batchUpdatePosition(List<DeviceChannel> deviceChannelList);
@Select("SELECT * FROM wvp_device_channel WHERE length(trim(stream_id)) > 0")
List<DeviceChannel> getAllChannelInPlay();
@@ -571,4 +555,24 @@
" <if test='channelId != null'> and channel_id = #{channelId} </if>" +
"</script>")
void updateChannelStreamIdentification(DeviceChannel channel);
+
+
+ @Update({"<script>" +
+ "<foreach collection='channelList' item='item' separator=';'>" +
+ " UPDATE" +
+ " wvp_device_channel" +
+ " SET update_time=#{item.updateTime}" +
+ "<if test='item.longitude != null'>, longitude=#{item.longitude}</if>" +
+ "<if test='item.latitude != null'>, latitude=#{item.latitude}</if>" +
+ "<if test='item.longitudeGcj02 != null'>, longitude_gcj02=#{item.longitudeGcj02}</if>" +
+ "<if test='item.latitudeGcj02 != null'>, latitude_gcj02=#{item.latitudeGcj02}</if>" +
+ "<if test='item.longitudeWgs84 != null'>, longitude_wgs84=#{item.longitudeWgs84}</if>" +
+ "<if test='item.latitudeWgs84 != null'>, latitude_wgs84=#{item.latitudeWgs84}</if>" +
+ "<if test='item.gpsTime != null'>, gps_time=#{item.gpsTime}</if>" +
+ "<if test='item.id > 0'>WHERE id=#{item.id}</if>" +
+ "<if test='item.id == 0'>WHERE device_id=#{item.deviceId} AND channel_id=#{item.channelId}</if>" +
+ "</foreach>" +
+ "</script>"})
+ void batchUpdatePosition(List<DeviceChannel> channelList);
+
}
--
Gitblit v1.8.0