From a42dda2bd3cc1cf8c20cc61e7ad9211eadecbaf3 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期四, 24 二月 2022 16:55:06 +0800 Subject: [PATCH] 规范数据库,添加必要约束,优化通道批量导入功能 --- src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java | 50 +++++++++++++++++++++++++++++++++++++------------- 1 files changed, 37 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..ed2d8c8 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,13 @@ "ip," + "port," + "hostAddress," + + "expires," + + "registerTime," + + "keepaliveTime," + + "createTime," + + "updateTime," + + "charset," + + "subscribeCycleForCatalog," + "online" + ") VALUES (" + "#{deviceId}," + @@ -39,23 +46,37 @@ "#{ip}," + "#{port}," + "#{hostAddress}," + + "#{expires}," + + "#{registerTime}," + + "#{keepaliveTime}," + + "#{createTime}," + + "#{updateTime}," + + "#{charset}," + + "#{subscribeCycleForCatalog}," + "#{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>" + + "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 +84,7 @@ @Delete("DELETE FROM device WHERE deviceId=#{deviceId}") int del(String deviceId); + + @Update("UPDATE device SET online=0") + int outlineForAll(); } -- Gitblit v1.8.0