Commit cefdce5e0a34743e6d9784f858265120e75179a1

Authored by 648540858
1 parent c5ff8113

优化兼容接口

src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorage.java
... ... @@ -5,6 +5,7 @@ import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
5 5 import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
6 6 import com.genersoft.iot.vmp.storager.dao.dto.ChannelSourceInfo;
7 7 import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce;
  8 +import com.genersoft.iot.vmp.web.gb28181.dto.DeviceChannelExtend;
8 9 import com.github.pagehelper.PageInfo;
9 10  
10 11 import java.util.List;
... ... @@ -58,7 +59,7 @@ public interface IVideoManagerStorage {
58 59 */
59 60 public PageInfo<DeviceChannel> queryChannelsByDeviceId(String deviceId, String query, Boolean hasSubChannel, Boolean online, Boolean catalogUnderDevice, int page, int count);
60 61  
61   - public List<DeviceChannel> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, String query, Boolean hasSubChannel, Boolean online, int start, int limit,List<String> channelIds);
  62 + public List<DeviceChannelExtend> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, List<String> channelIds, String query, Boolean hasSubChannel, Boolean online, int start, int limit);
62 63  
63 64  
64 65 /**
... ... @@ -374,4 +375,7 @@ public interface IVideoManagerStorage {
374 375 void cleanContentForPlatform(String serverGBId);
375 376  
376 377 List<DeviceChannel> queryChannelWithCatalog(String serverGBId);
  378 +
  379 + List<DeviceChannelExtend> queryChannelsByDeviceId(String serial, List<String> channelIds, Boolean online);
  380 +
377 381 }
... ...
src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
... ... @@ -5,6 +5,7 @@ import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
5 5 import com.genersoft.iot.vmp.gb28181.bean.DeviceChannelInPlatform;
6 6 import com.genersoft.iot.vmp.vmanager.bean.ResourceBaceInfo;
7 7 import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce;
  8 +import com.genersoft.iot.vmp.web.gb28181.dto.DeviceChannelExtend;
8 9 import org.apache.ibatis.annotations.*;
9 10 import org.springframework.stereotype.Repository;
10 11  
... ... @@ -82,7 +83,56 @@ public interface DeviceChannelMapper {
82 83 "</foreach> </if>" +
83 84 "ORDER BY dc.channelId " +
84 85 " </script>"})
85   - List<DeviceChannel> queryChannels(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, Boolean online,List<String> channelIds);
  86 + List<DeviceChannel> queryChannels(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, Boolean online, List<String> channelIds);
  87 +
  88 + @Select(value = {" <script>" +
  89 + "SELECT " +
  90 + "dc.*, " +
  91 + "de.name as deviceName, " +
  92 + "de.online as deviceOnline " +
  93 + "from " +
  94 + "device_channel dc " +
  95 + "LEFT JOIN device de ON dc.deviceId = de.deviceId " +
  96 + "WHERE 1=1" +
  97 + " <if test='deviceId != null'> AND dc.deviceId = #{deviceId} </if> " +
  98 + " <if test='query != null'> AND (dc.channelId LIKE '%${query}%' OR dc.name LIKE '%${query}%' OR dc.name LIKE '%${query}%')</if> " +
  99 + " <if test='parentChannelId != null'> AND dc.parentId=#{parentChannelId} </if> " +
  100 + " <if test='online == true' > AND dc.status=1</if>" +
  101 + " <if test='online == false' > AND dc.status=0</if>" +
  102 + " <if test='hasSubChannel == true' > AND dc.subCount > 0 </if>" +
  103 + " <if test='hasSubChannel == false' > AND dc.subCount = 0 </if>" +
  104 + "<if test='channelIds != null'> AND dc.channelId in <foreach item='item' index='index' collection='channelIds' open='(' separator=',' close=')'>" +
  105 + "#{item} " +
  106 + "</foreach> </if>" +
  107 + "ORDER BY dc.channelId ASC" +
  108 + " </script>"})
  109 + List<DeviceChannelExtend> queryChannelsWithDeviceInfo(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, Boolean online, List<String> channelIds);
  110 +
  111 +
  112 + @Select(value = {" <script>" +
  113 + "SELECT " +
  114 + "dc.*, " +
  115 + "de.name as deviceName, " +
  116 + "de.online as deviceOnline " +
  117 + "from " +
  118 + "device_channel dc " +
  119 + "LEFT JOIN device de ON dc.deviceId = de.deviceId " +
  120 + "WHERE 1=1" +
  121 + " <if test='deviceId != null'> AND dc.deviceId = #{deviceId} </if> " +
  122 + " <if test='query != null'> AND (dc.channelId LIKE '%${query}%' OR dc.name LIKE '%${query}%' OR dc.name LIKE '%${query}%')</if> " +
  123 + " <if test='parentChannelId != null'> AND dc.parentId=#{parentChannelId} </if> " +
  124 + " <if test='online == true' > AND dc.status=1</if>" +
  125 + " <if test='online == false' > AND dc.status=0</if>" +
  126 + " <if test='hasSubChannel == true' > AND dc.subCount > 0 </if>" +
  127 + " <if test='hasSubChannel == false' > AND dc.subCount = 0 </if>" +
  128 + "<if test='channelIds != null'> AND dc.channelId in <foreach item='item' index='index' collection='channelIds' open='(' separator=',' close=')'>" +
  129 + "#{item} " +
  130 + "</foreach> </if>" +
  131 + "ORDER BY dc.channelId ASC " +
  132 + "Limit #{limit} OFFSET #{start}" +
  133 + " </script>"})
  134 + List<DeviceChannelExtend> queryChannelsByDeviceIdWithStartAndLimit(String deviceId,List<String> channelIds, String parentChannelId, String query,
  135 + Boolean hasSubChannel, Boolean online, int start, int limit);
86 136  
87 137 @Select("SELECT * FROM device_channel WHERE deviceId=#{deviceId} AND channelId=#{channelId}")
88 138 DeviceChannel queryChannel(String deviceId, String channelId);
... ... @@ -245,28 +295,6 @@ public interface DeviceChannelMapper {
245 295 int batchUpdate(List<DeviceChannel> updateChannels);
246 296  
247 297  
248   - @Select(value = {" <script>" +
249   - "SELECT " +
250   - "dc1.* " +
251   - "from " +
252   - "device_channel dc1 " +
253   - "WHERE " +
254   - "dc1.deviceId = #{deviceId} " +
255   - " <if test='query != null'> AND (dc1.channelId LIKE concat('%',#{query},'%') OR dc1.name LIKE concat('%',#{query},'%') OR dc1.name LIKE concat('%',#{query},'%'))</if> " +
256   - " <if test='parentChannelId != null'> AND dc1.parentId=#{parentChannelId} </if> " +
257   - " <if test='online == true' > AND dc1.status=1</if>" +
258   - " <if test='online == false' > AND dc1.status=0</if>" +
259   - " <if test='hasSubChannel == true' > AND dc1.subCount >0</if>" +
260   - " <if test='hasSubChannel == false' > AND dc1.subCount=0</if>" +
261   - "<if test='channelIds != null'> AND dc1.channelId in <foreach item='item' index='index' collection='channelIds' open='(' separator=',' close=')'>" +
262   - "#{item} " +
263   - "</foreach> </if>" +
264   - "ORDER BY dc1.channelId ASC " +
265   - "Limit #{limit} OFFSET #{start}" +
266   - " </script>"})
267   - List<DeviceChannel> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, String parentChannelId, String query,
268   - Boolean hasSubChannel, Boolean online, int start, int limit,List<String> channelIds);
269   -
270 298 @Select("SELECT * FROM device_channel WHERE deviceId=#{deviceId} AND status=1")
271 299 List<DeviceChannel> queryOnlineChannelsByDeviceId(String deviceId);
272 300  
... ...
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
... ... @@ -14,6 +14,7 @@ import com.genersoft.iot.vmp.storager.dao.*;
14 14 import com.genersoft.iot.vmp.storager.dao.dto.ChannelSourceInfo;
15 15 import com.genersoft.iot.vmp.utils.DateUtil;
16 16 import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce;
  17 +import com.genersoft.iot.vmp.web.gb28181.dto.DeviceChannelExtend;
17 18 import com.github.pagehelper.PageHelper;
18 19 import com.github.pagehelper.PageInfo;
19 20 import org.slf4j.Logger;
... ... @@ -366,8 +367,8 @@ public class VideoManagerStorageImpl implements IVideoManagerStorage {
366 367 }
367 368  
368 369 @Override
369   - public List<DeviceChannel> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, String query, Boolean hasSubChannel, Boolean online, int start, int limit,List<String> channelIds) {
370   - return deviceChannelMapper.queryChannelsByDeviceIdWithStartAndLimit(deviceId, null, query, hasSubChannel, online, start, limit,channelIds);
  370 + public List<DeviceChannelExtend> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, List<String> channelIds, String query, Boolean hasSubChannel, Boolean online, int start, int limit) {
  371 + return deviceChannelMapper.queryChannelsByDeviceIdWithStartAndLimit(deviceId, channelIds, null, query, hasSubChannel, online, start, limit);
371 372 }
372 373  
373 374  
... ... @@ -377,6 +378,11 @@ public class VideoManagerStorageImpl implements IVideoManagerStorage {
377 378 }
378 379  
379 380 @Override
  381 + public List<DeviceChannelExtend> queryChannelsByDeviceId(String deviceId, List<String> channelIds, Boolean online) {
  382 + return deviceChannelMapper.queryChannelsWithDeviceInfo(deviceId, null,null, null, online,channelIds);
  383 + }
  384 +
  385 + @Override
380 386 public PageInfo<DeviceChannel> querySubChannels(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, Boolean online, int page, int count) {
381 387 PageHelper.startPage(page, count);
382 388 List<DeviceChannel> all = deviceChannelMapper.queryChannels(deviceId, parentChannelId, query, hasSubChannel, online,null);
... ...
src/main/java/com/genersoft/iot/vmp/web/gb28181/ApiDeviceController.java
... ... @@ -3,15 +3,17 @@ package com.genersoft.iot.vmp.web.gb28181;
3 3 import com.alibaba.fastjson2.JSONArray;
4 4 import com.alibaba.fastjson2.JSONObject;
5 5 import com.genersoft.iot.vmp.gb28181.bean.Device;
6   -import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
7 6 import com.genersoft.iot.vmp.service.IDeviceService;
8 7 import com.genersoft.iot.vmp.storager.IVideoManagerStorage;
  8 +import com.genersoft.iot.vmp.web.gb28181.dto.DeviceChannelExtend;
9 9 import com.github.pagehelper.PageInfo;
10 10 import org.slf4j.Logger;
11 11 import org.slf4j.LoggerFactory;
12 12 import org.springframework.beans.factory.annotation.Autowired;
13 13 import org.springframework.util.StringUtils;
14   -import org.springframework.web.bind.annotation.*;
  14 +import org.springframework.web.bind.annotation.RequestMapping;
  15 +import org.springframework.web.bind.annotation.RequestParam;
  16 +import org.springframework.web.bind.annotation.RestController;
15 17  
16 18 import java.util.Arrays;
17 19 import java.util.List;
... ... @@ -96,8 +98,8 @@ public class ApiDeviceController {
96 98  
97 99 @RequestMapping(value = "/channellist")
98 100 public JSONObject channellist( String serial,
99   - @RequestParam(required = false)String code,
100 101 @RequestParam(required = false)String channel_type,
  102 + @RequestParam(required = false)String code ,
101 103 @RequestParam(required = false)String dir_serial ,
102 104 @RequestParam(required = false)Integer start,
103 105 @RequestParam(required = false)Integer limit,
... ... @@ -109,54 +111,60 @@ public class ApiDeviceController {
109 111 // }
110 112 JSONObject result = new JSONObject();
111 113 // 查询设备是否存在
112   - List<DeviceChannel> deviceChannels;
  114 +// Device device = storager.queryVideoDevice(serial);
  115 +// if (device == null) {
  116 +// result.put("ChannelCount", 0);
  117 +// result.put("ChannelList", "[]");
  118 +// return result;
  119 +// }
  120 + List<DeviceChannelExtend> deviceChannels;
113 121 List<String> channelIds = null;
114 122 if (!StringUtils.isEmpty(code)) {
115 123 String[] split = code.trim().split(",");
116 124 channelIds = Arrays.asList(split);
117 125 }
118   - List<DeviceChannel> allDeviceChannelList = storager.queryChannelsByDeviceId(serial,online,channelIds);
  126 + List<DeviceChannelExtend> allDeviceChannelList = storager.queryChannelsByDeviceId(serial,channelIds,online);
119 127 if (start == null || limit ==null) {
120 128 deviceChannels = allDeviceChannelList;
121 129 result.put("ChannelCount", deviceChannels.size());
122 130 }else {
123   - deviceChannels = storager.queryChannelsByDeviceIdWithStartAndLimit(serial, null, null, online,start, limit,channelIds);
  131 + deviceChannels = storager.queryChannelsByDeviceIdWithStartAndLimit(serial,channelIds, null, null, online,start, limit);
124 132 int total = allDeviceChannelList.size();
125 133 result.put("ChannelCount", total);
126 134 }
127 135  
128 136 JSONArray channleJSONList = new JSONArray();
129   - for (DeviceChannel deviceChannel : deviceChannels) {
  137 + for (DeviceChannelExtend deviceChannelExtend : deviceChannels) {
130 138 JSONObject deviceJOSNChannel = new JSONObject();
131   - deviceJOSNChannel.put("ID", deviceChannel.getChannelId());
132   - deviceJOSNChannel.put("DeviceID", device.getDeviceId());
133   - deviceJOSNChannel.put("DeviceName", device.getName());
134   - deviceJOSNChannel.put("DeviceOnline", device.getOnline() == 1);
135   - deviceJOSNChannel.put("Channel", 0); // 自定义序号
136   - deviceJOSNChannel.put("Name", deviceChannel.getName());
  139 + deviceJOSNChannel.put("ID", deviceChannelExtend.getChannelId());
  140 + deviceJOSNChannel.put("DeviceID", deviceChannelExtend.getDeviceId());
  141 + deviceJOSNChannel.put("DeviceName", deviceChannelExtend.getDeviceName());
  142 + deviceJOSNChannel.put("DeviceOnline", deviceChannelExtend.getDeviceOnline() == 1);
  143 + deviceJOSNChannel.put("Channel", 0); // TODO 自定义序号
  144 + deviceJOSNChannel.put("Name", deviceChannelExtend.getName());
137 145 deviceJOSNChannel.put("Custom", false);
138 146 deviceJOSNChannel.put("CustomName", "");
139   - deviceJOSNChannel.put("SubCount", deviceChannel.getSubCount()); // 子节点数, SubCount > 0 表示该通道为子目录
  147 + deviceJOSNChannel.put("SubCount", deviceChannelExtend.getSubCount()); // TODO ? 子节点数, SubCount > 0 表示该通道为子目录
140 148 deviceJOSNChannel.put("SnapURL", "");
141   - deviceJOSNChannel.put("Manufacturer ", deviceChannel.getManufacture());
142   - deviceJOSNChannel.put("Model", deviceChannel.getModel());
143   - deviceJOSNChannel.put("Owner", deviceChannel.getOwner());
144   - deviceJOSNChannel.put("CivilCode", deviceChannel.getCivilCode());
145   - deviceJOSNChannel.put("Address", deviceChannel.getAddress());
146   - deviceJOSNChannel.put("Parental", deviceChannel.getParental()); // 当为通道设备时, 是否有通道子设备, 1-有,0-没有
147   - deviceJOSNChannel.put("ParentID", deviceChannel.getParentId()); // 直接上级编号
148   - deviceJOSNChannel.put("Secrecy", deviceChannel.getSecrecy());
  149 + deviceJOSNChannel.put("Manufacturer ", deviceChannelExtend.getManufacture());
  150 + deviceJOSNChannel.put("Model", deviceChannelExtend.getModel());
  151 + deviceJOSNChannel.put("Owner", deviceChannelExtend.getOwner());
  152 + deviceJOSNChannel.put("CivilCode", deviceChannelExtend.getCivilCode());
  153 + deviceJOSNChannel.put("Address", deviceChannelExtend.getAddress());
  154 + deviceJOSNChannel.put("Parental", deviceChannelExtend.getParental()); // 当为通道设备时, 是否有通道子设备, 1-有,0-没有
  155 + deviceJOSNChannel.put("ParentID", deviceChannelExtend.getParentId()); // 直接上级编号
  156 + deviceJOSNChannel.put("Secrecy", deviceChannelExtend.getSecrecy());
149 157 deviceJOSNChannel.put("RegisterWay", 1); // 注册方式, 缺省为1, 允许值: 1, 2, 3
150   - // 1-IETF RFC3261,
151   - // 2-基于口令的双向认证,
152   - // 3-基于数字证书的双向认证
153   - deviceJOSNChannel.put("Status", deviceChannel.getStatus() == 1 ? "ON":"OFF");
154   - deviceJOSNChannel.put("Longitude", deviceChannel.getLongitude());
155   - deviceJOSNChannel.put("Latitude", deviceChannel.getLatitude());
156   - deviceJOSNChannel.put("PTZType ", deviceChannel.getPTZType()); // 云台类型, 0 - 未知, 1 - 球机, 2 - 半球,
157   - // 3 - 固定枪机, 4 - 遥控枪机
  158 + // 1-IETF RFC3261,
  159 + // 2-基于口令的双向认证,
  160 + // 3-基于数字证书的双向认证
  161 + deviceJOSNChannel.put("Status", deviceChannelExtend.getStatus() == 1 ? "ON":"OFF");
  162 + deviceJOSNChannel.put("Longitude", deviceChannelExtend.getLongitude());
  163 + deviceJOSNChannel.put("Latitude", deviceChannelExtend.getLatitude());
  164 + deviceJOSNChannel.put("PTZType ", deviceChannelExtend.getPTZType()); // 云台类型, 0 - 未知, 1 - 球机, 2 - 半球,
  165 + // 3 - 固定枪机, 4 - 遥控枪机
158 166 deviceJOSNChannel.put("CustomPTZType", "");
159   - deviceJOSNChannel.put("StreamID", deviceChannel.getStreamId()); // StreamID 直播流ID, 有值表示正在直播
  167 + deviceJOSNChannel.put("StreamID", deviceChannelExtend.getStreamId()); // StreamID 直播流ID, 有值表示正在直播
160 168 deviceJOSNChannel.put("NumOutputs ", -1); // 直播在线人数
161 169 channleJSONList.add(deviceJOSNChannel);
162 170 }
... ...
src/main/java/com/genersoft/iot/vmp/web/gb28181/dto/DeviceChannelExtent.java renamed to src/main/java/com/genersoft/iot/vmp/web/gb28181/dto/DeviceChannelExtend.java
1 1 package com.genersoft.iot.vmp.web.gb28181.dto;
2 2  
3   -import io.swagger.v3.oas.annotations.media.Schema;
4   -
5   -@Schema(description = "通道信息")
6   -public class DeviceChannelExtent {
  3 +public class DeviceChannelExtend {
7 4  
8 5  
9 6 /**
10 7 * 数据库自增ID
11 8 */
12   - @Schema(description = "数据库自增ID")
13 9 private int id;
14 10  
15 11 /**
16   - * 通道国标编号
  12 + * 通道id
17 13 */
18   - @Schema(description = "通道国标编号")
19 14 private String channelId;
20 15  
21 16 /**
22   - * 设备国标编号
  17 + * 设备id
23 18 */
24   - @Schema(description = "设备国标编号")
25 19 private String deviceId;
26 20  
27 21 /**
28 22 * 通道名
29 23 */
30   - @Schema(description = "名称")
31 24 private String name;
  25 +
  26 + private String deviceName;
  27 +
  28 + private int deviceOnline;
32 29  
33 30 /**
34 31 * 生产厂商
35 32 */
36   - @Schema(description = "生产厂商")
37 33 private String manufacture;
38 34  
39 35 /**
40 36 * 型号
41 37 */
42   - @Schema(description = "型号")
43 38 private String model;
44 39  
45 40 /**
46 41 * 设备归属
47 42 */
48   - @Schema(description = "设备归属")
49 43 private String owner;
50 44  
51 45 /**
52 46 * 行政区域
53 47 */
54   - @Schema(description = "行政区域")
55 48 private String civilCode;
56 49  
57 50 /**
58 51 * 警区
59 52 */
60   - @Schema(description = "警区")
61 53 private String block;
62 54  
63 55 /**
64 56 * 安装地址
65 57 */
66   - @Schema(description = "安装地址")
67 58 private String address;
68 59  
69 60 /**
70 61 * 是否有子设备 1有, 0没有
71 62 */
72   - @Schema(description = "是否有子设备 1有, 0没有")
73 63 private int parental;
74 64  
75 65 /**
76 66 * 父级id
77 67 */
78   - @Schema(description = "父级id")
79 68 private String parentId;
80 69  
81 70 /**
82 71 * 信令安全模式 缺省为0; 0:不采用; 2: S/MIME签名方式; 3: S/ MIME加密签名同时采用方式; 4:数字摘要方式
83 72 */
84   - @Schema(description = "信令安全模式 缺省为0; 0:不采用; 2: S/MIME签名方式; 3: S/ MIME加密签名同时采用方式; 4:数字摘要方式")
85 73 private int safetyWay;
86 74  
87 75 /**
88 76 * 注册方式 缺省为1;1:符合IETFRFC3261标准的认证注册模 式; 2:基于口令的双向认证注册模式; 3:基于数字证书的双向认证注册模式
89 77 */
90   - @Schema(description = "注册方式 缺省为1;1:符合IETFRFC3261标准的认证注册模 式; 2:基于口令的双向认证注册模式; 3:基于数字证书的双向认证注册模式")
91 78 private int registerWay;
92 79  
93 80 /**
94 81 * 证书序列号
95 82 */
96   - @Schema(description = "证书序列号")
97 83 private String certNum;
98 84  
99 85 /**
100 86 * 证书有效标识 缺省为0;证书有效标识:0:无效1: 有效
101 87 */
102   - @Schema(description = "证书有效标识 缺省为0;证书有效标识:0:无效1: 有效")
103 88 private int certifiable;
104 89  
105 90 /**
106 91 * 证书无效原因码
107 92 */
108   - @Schema(description = "证书无效原因码")
109 93 private int errCode;
110 94  
111 95 /**
112 96 * 证书终止有效期
113 97 */
114   - @Schema(description = "证书终止有效期")
115 98 private String endTime;
116 99  
117 100 /**
118 101 * 保密属性 缺省为0; 0:不涉密, 1:涉密
119 102 */
120   - @Schema(description = "保密属性 缺省为0; 0:不涉密, 1:涉密")
121 103 private String secrecy;
122 104  
123 105 /**
124 106 * IP地址
125 107 */
126   - @Schema(description = "IP地址")
127 108 private String ipAddress;
128 109  
129 110 /**
130 111 * 端口号
131 112 */
132   - @Schema(description = "端口号")
133 113 private int port;
134 114  
135 115 /**
136 116 * 密码
137 117 */
138   - @Schema(description = "密码")
139 118 private String password;
140 119  
141 120 /**
142 121 * 云台类型
143 122 */
144   - @Schema(description = "云台类型")
145 123 private int PTZType;
146 124  
147 125 /**
148 126 * 云台类型描述字符串
149 127 */
150   - @Schema(description = "云台类型描述字符串")
151 128 private String PTZTypeText;
152 129  
153 130 /**
154 131 * 创建时间
155 132 */
156   - @Schema(description = "创建时间")
157 133 private String createTime;
158 134  
159 135 /**
160 136 * 更新时间
161 137 */
162   - @Schema(description = "更新时间")
163 138 private String updateTime;
164 139  
165 140 /**
... ... @@ -171,79 +146,66 @@ public class DeviceChannelExtent {
171 146 * <Status>OFF</Status>
172 147 * 遇到过NVR下的IPC下发信令可以推流, 但是 Status 响应 OFF
173 148 */
174   - @Schema(description = "在线/离线, 1在线,0离线")
175 149 private int status;
176 150  
177 151 /**
178 152 * 经度
179 153 */
180   - @Schema(description = "经度")
181 154 private double longitude;
182 155  
183 156 /**
184 157 * 纬度
185 158 */
186   - @Schema(description = "纬度")
187 159 private double latitude;
188 160  
189 161 /**
190 162 * 经度 GCJ02
191 163 */
192   - @Schema(description = "GCJ02坐标系经度")
193 164 private double longitudeGcj02;
194 165  
195 166 /**
196 167 * 纬度 GCJ02
197 168 */
198   - @Schema(description = "GCJ02坐标系纬度")
199 169 private double latitudeGcj02;
200 170  
201 171 /**
202 172 * 经度 WGS84
203 173 */
204   - @Schema(description = "WGS84坐标系经度")
205 174 private double longitudeWgs84;
206 175  
207 176 /**
208 177 * 纬度 WGS84
209 178 */
210   - @Schema(description = "WGS84坐标系纬度")
211 179 private double latitudeWgs84;
212 180  
213 181 /**
214 182 * 子设备数
215 183 */
216   - @Schema(description = "子设备数")
217 184 private int subCount;
218 185  
219 186 /**
220 187 * 流唯一编号,存在表示正在直播
221 188 */
222   - @Schema(description = "流唯一编号,存在表示正在直播")
223 189 private String streamId;
224 190  
225 191 /**
226 192 * 是否含有音频
227 193 */
228   - @Schema(description = "是否含有音频")
229 194 private boolean hasAudio;
230 195  
231 196 /**
232 197 * 标记通道的类型,0->国标通道 1->直播流通道 2->业务分组/虚拟组织/行政区划
233 198 */
234   - @Schema(description = "标记通道的类型,0->国标通道 1->直播流通道 2->业务分组/虚拟组织/行政区划")
235 199 private int channelType;
236 200  
237 201 /**
238 202 * 业务分组
239 203 */
240   - @Schema(description = "业务分组")
241 204 private String businessGroupId;
242 205  
243 206 /**
244 207 * GPS的更新时间
245 208 */
246   - @Schema(description = "GPS的更新时间")
247 209 private String gpsTime;
248 210  
249 211 public int getId() {
... ... @@ -574,4 +536,20 @@ public class DeviceChannelExtent {
574 536 public void setGpsTime(String gpsTime) {
575 537 this.gpsTime = gpsTime;
576 538 }
  539 +
  540 + public String getDeviceName() {
  541 + return deviceName;
  542 + }
  543 +
  544 + public void setDeviceName(String deviceName) {
  545 + this.deviceName = deviceName;
  546 + }
  547 +
  548 + public int getDeviceOnline() {
  549 + return deviceOnline;
  550 + }
  551 +
  552 + public void setDeviceOnline(int deviceOnline) {
  553 + this.deviceOnline = deviceOnline;
  554 + }
577 555 }
... ...