diff --git a/libs/jdbc-x86/bcprov-jdk15on-1.70.jar b/libs/jdbc-x86/bcprov-jdk15on-1.70.jar new file mode 100644 index 00000000..0e4198e5 Binary files /dev/null and b/libs/jdbc-x86/bcprov-jdk15on-1.70.jar differ diff --git a/libs/jdbc-x86/kingbase8-8.6.0.jar b/libs/jdbc-x86/kingbase8-8.6.0.jar new file mode 100644 index 00000000..ff4664ef Binary files /dev/null and b/libs/jdbc-x86/kingbase8-8.6.0.jar differ diff --git a/libs/jdbc-x86/kingbase8-8.6.0.jre6.jar b/libs/jdbc-x86/kingbase8-8.6.0.jre6.jar new file mode 100644 index 00000000..fcdf628c Binary files /dev/null and b/libs/jdbc-x86/kingbase8-8.6.0.jre6.jar differ diff --git a/libs/jdbc-x86/kingbase8-8.6.0.jre7.jar b/libs/jdbc-x86/kingbase8-8.6.0.jre7.jar new file mode 100644 index 00000000..a0393586 Binary files /dev/null and b/libs/jdbc-x86/kingbase8-8.6.0.jre7.jar differ diff --git a/libs/jdbc-x86/postgresql-42.2.9.jar b/libs/jdbc-x86/postgresql-42.2.9.jar new file mode 100644 index 00000000..487cfc1e Binary files /dev/null and b/libs/jdbc-x86/postgresql-42.2.9.jar differ diff --git a/libs/jdbc-x86/postgresql-42.2.9.jre6.jar b/libs/jdbc-x86/postgresql-42.2.9.jre6.jar new file mode 100644 index 00000000..11e9f997 Binary files /dev/null and b/libs/jdbc-x86/postgresql-42.2.9.jre6.jar differ diff --git a/libs/jdbc-x86/postgresql-42.2.9.jre7.jar b/libs/jdbc-x86/postgresql-42.2.9.jre7.jar new file mode 100644 index 00000000..522738dd Binary files /dev/null and b/libs/jdbc-x86/postgresql-42.2.9.jre7.jar differ diff --git a/pom.xml b/pom.xml index 9899d275..b91caa01 100644 --- a/pom.xml +++ b/pom.xml @@ -153,6 +153,13 @@ system ${basedir}/libs/jdbc-aarch/kingbase8-8.6.0.jar + + com.kingbase + kingbase8 + 8.6.0 + system + ${basedir}/libs/jdbc-x86/kingbase8-8.6.0.jar + diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java index 473ca91d..ecbdccab 100755 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java @@ -598,7 +598,7 @@ public class SIPCommanderFroPlatform implements ISIPCommanderForPlatform { SIPRequest notifyRequest = headerProviderPlatformProvider.createNotifyRequest(parentPlatform, catalogXmlContent, subscribeInfo); - sipSender.transmitRequest(parentPlatform.getDeviceIp(), notifyRequest); + sipSender.transmitRequest(parentPlatform.getDeviceIp(), notifyRequest, errorEvent, okEvent); } private String getCatalogXmlContentForCatalogAddOrUpdate(ParentPlatform parentPlatform, List channels, int sumNum, String type, SubscribeInfo subscribeInfo) { @@ -610,7 +610,7 @@ public class SIPCommanderFroPlatform implements ISIPCommanderForPlatform { .append("Catalog\r\n") .append("" + (int) ((Math.random() * 9 + 1) * 100000) + "\r\n") .append("" + parentPlatform.getDeviceGBId() + "\r\n") - .append("1\r\n") + .append(""+ channels.size() +"\r\n") .append("\r\n"); if (channels.size() > 0) { for (DeviceChannel channel : channels) { diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java index 26b4f3e2..86e033c2 100755 --- a/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java @@ -250,9 +250,6 @@ public class GbStreamServiceImpl implements IGbStreamService { if (platform == null) { return ; } - if (ObjectUtils.isEmpty(catalogId)) { - catalogId = platform.getDeviceGBId(); - } if (platformGbStreamMapper.delByPlatformAndCatalogId(platformId, catalogId) > 0) { List gbStreams = platformGbStreamMapper.queryChannelInParentPlatformAndCatalog(platformId, catalogId); List deviceChannelList = new ArrayList<>(); diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java index c394bcbd..5f6d7848 100755 --- a/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java +++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java @@ -103,6 +103,9 @@ public interface PlatformGbStreamMapper { "") void delByAppAndStreamsByPlatformId(@Param("gbStreams") List gbStreams, @Param("platformId") String platformId); - @Delete("DELETE from wvp_platform_gb_stream WHERE platform_id=#{platformId} and catalog_id=#{catalogId}") + @Delete("") int delByPlatformAndCatalogId(@Param("platformId") String platformId, @Param("catalogId") String catalogId); } diff --git a/src/main/java/com/genersoft/iot/vmp/web/gb28181/ApiDeviceController.java b/src/main/java/com/genersoft/iot/vmp/web/gb28181/ApiDeviceController.java index 7b59f7f7..688fc804 100644 --- a/src/main/java/com/genersoft/iot/vmp/web/gb28181/ApiDeviceController.java +++ b/src/main/java/com/genersoft/iot/vmp/web/gb28181/ApiDeviceController.java @@ -68,6 +68,7 @@ public class ApiDeviceController { // if (logger.isDebugEnabled()) { // logger.debug("查询所有视频设备API调用"); // } + JSONObject result = new JSONObject(); List 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 deviceChannels; List 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; } diff --git a/src/main/resources/all-application.yml b/src/main/resources/all-application.yml index f5c9d63b..8af091d9 100644 --- a/src/main/resources/all-application.yml +++ b/src/main/resources/all-application.yml @@ -54,9 +54,9 @@ spring: password: root123 hikari: connection-timeout: 20000 # 是客户端等待连接池连接的最大毫秒数 - initialSize: 10 # 连接池初始化连接数 + initialSize: 50 # 连接池初始化连接数 maximum-pool-size: 200 # 连接池最大连接数 - minimum-idle: 5 # 连接池最小空闲连接数 + minimum-idle: 10 # 连接池最小空闲连接数 idle-timeout: 300000 # 允许连接在连接池中空闲的最长时间(以毫秒为单位) max-lifetime: 1200000 # 是池中连接关闭后的最长生命周期(以毫秒为单位)