From 221f99c764b51c3cd284c6e5a41492c26c5c7ffc Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 09 九月 2022 17:06:19 +0800 Subject: [PATCH] 优化sip消息 --- src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java | 73 ++++++++++++++++++++++++++++++------ 1 files changed, 60 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java index 3c10618..7e8dd3c 100644 --- a/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java +++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java @@ -27,6 +27,19 @@ "ip," + "port," + "hostAddress," + + "expires," + + "registerTime," + + "keepaliveTime," + + "createTime," + + "updateTime," + + "charset," + + "subscribeCycleForCatalog," + + "subscribeCycleForMobilePosition," + + "mobilePositionSubmissionInterval," + + "subscribeCycleForAlarm," + + "ssrcCheck," + + "geoCoordSys," + + "treeType," + "online" + ") VALUES (" + "#{deviceId}," + @@ -39,23 +52,49 @@ "#{ip}," + "#{port}," + "#{hostAddress}," + + "#{expires}," + + "#{registerTime}," + + "#{keepaliveTime}," + + "#{createTime}," + + "#{updateTime}," + + "#{charset}," + + "#{subscribeCycleForCatalog}," + + "#{subscribeCycleForMobilePosition}," + + "#{mobilePositionSubmissionInterval}," + + "#{subscribeCycleForAlarm}," + + "#{ssrcCheck}," + + "#{geoCoordSys}," + + "#{treeType}," + "#{online}" + ")") int add(Device device); - - @Update("UPDATE device " + - "SET name=#{name}, " + - "manufacturer=#{manufacturer}," + - "model=#{model}," + - "firmware=#{firmware}, " + - "transport=#{transport}," + - "streamMode=#{streamMode}, " + - "ip=#{ip}, " + - "port=#{port}, " + - "hostAddress=#{hostAddress}, " + - "online=#{online} " + - "WHERE deviceId=#{deviceId}") + @Update(value = {" <script>" + + "UPDATE device " + + "SET updateTime='${updateTime}'" + + "<if test=\"name != null\">, name='${name}'</if>" + + "<if test=\"manufacturer != null\">, manufacturer='${manufacturer}'</if>" + + "<if test=\"model != null\">, model='${model}'</if>" + + "<if test=\"firmware != null\">, firmware='${firmware}'</if>" + + "<if test=\"transport != null\">, transport='${transport}'</if>" + + "<if test=\"streamMode != null\">, streamMode='${streamMode}'</if>" + + "<if test=\"ip != null\">, ip='${ip}'</if>" + + "<if test=\"port != null\">, port=${port}</if>" + + "<if test=\"hostAddress != null\">, hostAddress='${hostAddress}'</if>" + + "<if test=\"online != null\">, online=${online}</if>" + + "<if test=\"registerTime != null\">, registerTime='${registerTime}'</if>" + + "<if test=\"keepaliveTime != null\">, keepaliveTime='${keepaliveTime}'</if>" + + "<if test=\"expires != null\">, expires=${expires}</if>" + + "<if test=\"charset != null\">, charset='${charset}'</if>" + + "<if test=\"subscribeCycleForCatalog != null\">, subscribeCycleForCatalog=${subscribeCycleForCatalog}</if>" + + "<if test=\"subscribeCycleForMobilePosition != null\">, subscribeCycleForMobilePosition=${subscribeCycleForMobilePosition}</if>" + + "<if test=\"mobilePositionSubmissionInterval != null\">, mobilePositionSubmissionInterval=${mobilePositionSubmissionInterval}</if>" + + "<if test=\"subscribeCycleForAlarm != null\">, subscribeCycleForAlarm=${subscribeCycleForAlarm}</if>" + + "<if test=\"ssrcCheck != null\">, ssrcCheck=${ssrcCheck}</if>" + + "<if test=\"geoCoordSys != null\">, geoCoordSys=#{geoCoordSys}</if>" + + "<if test=\"treeType != null\">, treeType=#{treeType}</if>" + + "WHERE deviceId='${deviceId}'"+ + " </script>"}) int update(Device device); @Select("SELECT *, (SELECT count(0) FROM device_channel WHERE deviceId=de.deviceId) as channelCount FROM device de") @@ -63,4 +102,12 @@ @Delete("DELETE FROM device WHERE deviceId=#{deviceId}") int del(String deviceId); + + @Update("UPDATE device SET online=0") + int outlineForAll(); + + @Select("SELECT * FROM device WHERE online = 1") + List<Device> getOnlineDevices(); + @Select("SELECT * FROM device WHERE ip = #{host} AND port=${port}") + Device getDeviceByHostAndPort(String host, int port); } -- Gitblit v1.8.0