添加金仓数据库x86驱动,优化兼容接口通道列表查询。修复多个通道同时推送

This commit is contained in:
648540858
2024-01-04 17:26:47 +08:00
parent d91583b833
commit 6120e6bd7b
13 changed files with 30 additions and 17 deletions

View File

@@ -68,6 +68,7 @@ public class ApiDeviceController {
// if (logger.isDebugEnabled()) {
// logger.debug("查询所有视频设备API调用");
// }
JSONObject result = new JSONObject();
List<Device> devices;
if (start == null || limit ==null) {
@@ -80,7 +81,7 @@ public class ApiDeviceController {
}
JSONArray deviceJSONList = new JSONArray();
for (Device device : devices) {
devices.stream().forEach(device -> {
JSONObject deviceJsonObject = new JSONObject();
deviceJsonObject.put("ID", device.getDeviceId());
deviceJsonObject.put("Name", device.getName());
@@ -99,7 +100,7 @@ public class ApiDeviceController {
deviceJsonObject.put("UpdatedAt", "");
deviceJsonObject.put("CreatedAt", "");
deviceJSONList.add(deviceJsonObject);
}
});
result.put("DeviceList",deviceJSONList);
return result;
}
@@ -114,7 +115,6 @@ public class ApiDeviceController {
@RequestParam(required = false)String q,
@RequestParam(required = false)Boolean online ){
JSONObject result = new JSONObject();
List<DeviceChannelExtend> deviceChannels;
List<String> channelIds = null;
@@ -127,13 +127,19 @@ public class ApiDeviceController {
deviceChannels = allDeviceChannelList;
result.put("ChannelCount", deviceChannels.size());
}else {
deviceChannels = storager.queryChannelsByDeviceIdWithStartAndLimit(serial,channelIds, null, null, online,start, limit);
int total = allDeviceChannelList.size();
result.put("ChannelCount", total);
if (start > allDeviceChannelList.size()) {
deviceChannels = new ArrayList<>();
}else {
if (start + limit < allDeviceChannelList.size()) {
deviceChannels = allDeviceChannelList.subList(start, start + limit);
}else {
deviceChannels = allDeviceChannelList.subList(start, allDeviceChannelList.size());
}
}
result.put("ChannelCount", allDeviceChannelList.size());
}
JSONArray channleJSONList = new JSONArray();
for (DeviceChannelExtend deviceChannelExtend : deviceChannels) {
deviceChannels.stream().forEach(deviceChannelExtend -> {
JSONObject deviceJOSNChannel = new JSONObject();
deviceJOSNChannel.put("ID", deviceChannelExtend.getChannelId());
deviceJOSNChannel.put("DeviceID", deviceChannelExtend.getDeviceId());
@@ -166,7 +172,7 @@ public class ApiDeviceController {
deviceJOSNChannel.put("StreamID", deviceChannelExtend.getStreamId()); // StreamID 直播流ID, 有值表示正在直播
deviceJOSNChannel.put("NumOutputs ", -1); // 直播在线人数
channleJSONList.add(deviceJOSNChannel);
}
});
result.put("ChannelList", channleJSONList);
return result;
}