From e6790d88fc5b1ac33d239c0d90ce6cdea666b821 Mon Sep 17 00:00:00 2001 From: mk1990 <153958232@qq.com> Date: 星期一, 16 五月 2022 10:14:24 +0800 Subject: [PATCH] Merge branch 'wvp-28181-2.0' of https://github.com/mk1990/wvp-GB28181-pro into wvp-28181-2.0 --- src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceMapper.java | 91 +++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 87 insertions(+), 4 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 da455fb..37d951e 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 @@ -1,24 +1,107 @@ package com.genersoft.iot.vmp.storager.dao; import com.genersoft.iot.vmp.gb28181.bean.Device; -import org.apache.ibatis.annotations.Insert; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.*; +import org.springframework.stereotype.Repository; import java.util.List; +/** + * 鐢ㄤ簬瀛樺偍璁惧淇℃伅 + */ @Mapper +@Repository public interface DeviceMapper { @Select("SELECT * FROM device WHERE deviceId = #{deviceId}") Device getDeviceByDeviceId(String deviceId); - @Insert("SELECT * FROM device WHERE deviceId = #{deviceId}") + @Insert("INSERT INTO device (" + + "deviceId, " + + "name, " + + "manufacturer, " + + "model, " + + "firmware, " + + "transport," + + "streamMode," + + "ip," + + "port," + + "hostAddress," + + "expires," + + "registerTime," + + "keepaliveTime," + + "createTime," + + "updateTime," + + "charset," + + "subscribeCycleForCatalog," + + "subscribeCycleForMobilePosition," + + "mobilePositionSubmissionInterval," + + "subscribeCycleForAlarm," + + "ssrcCheck," + + "online" + + ") VALUES (" + + "#{deviceId}," + + "#{name}," + + "#{manufacturer}," + + "#{model}," + + "#{firmware}," + + "#{transport}," + + "#{streamMode}," + + "#{ip}," + + "#{port}," + + "#{hostAddress}," + + "#{expires}," + + "#{registerTime}," + + "#{keepaliveTime}," + + "#{createTime}," + + "#{updateTime}," + + "#{charset}," + + "#{subscribeCycleForCatalog}," + + "#{subscribeCycleForMobilePosition}," + + "#{mobilePositionSubmissionInterval}," + + "#{subscribeCycleForAlarm}," + + "#{ssrcCheck}," + + "#{online}" + + ")") int add(Device device); + @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>" + + "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") List<Device> getDevices(); + @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