648540858
2022-03-15 0e692512812a2c0a0c62e97b34bf7519ca4f9f58
修复多平台同时导入时的bug
3个文件已修改
21 ■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/response/impl/RegisterResponseProcessor.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/vmanager/streamPush/StreamPushController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/response/impl/RegisterResponseProcessor.java
@@ -100,7 +100,6 @@
                subscribeHolder.removeCatalogSubscribe(platformGBId);
                subscribeHolder.removeMobilePositionSubscribe(platformGBId);
            }
        }
    }
src/main/java/com/genersoft/iot/vmp/service/impl/StreamPushServiceImpl.java
@@ -411,8 +411,7 @@
            // 遍历存储结果,查找app+Stream->platformId+catalogId的对应关系,然后执行批量写入
            for (StreamPushItem streamPushItem : streamPushItemsForPlatform) {
                List<String[]> platFormInfoList = streamPushItemsForAll.get(streamPushItem.getApp() + streamPushItem.getStream());
                if (platFormInfoList != null) {
                    if (platFormInfoList.size() > 0) {
                if (platFormInfoList != null && platFormInfoList.size() > 0) {
                        for (String[] platFormInfoArray : platFormInfoList) {
                            StreamPushItem streamPushItemForPlatform = new StreamPushItem();
                            streamPushItemForPlatform.setGbStreamId(streamPushItem.getGbStreamId());
@@ -425,8 +424,10 @@
                                    continue;
                                }
                                streamPushItemForPlatform.setPlatformId(platFormInfoArray[0]);
                                List<GbStream> gbStreamList = platformForEvent.get(streamPushItem.getPlatformId());
                            if (platFormInfoArray[0].equals("34020000002110000001")) {
                                System.out.println(111);
                            }
                            List<GbStream> gbStreamList = platformForEvent.get(platFormInfoArray[0]);
                                if (gbStreamList == null) {
                                    gbStreamList = new ArrayList<>();
                                    platformForEvent.put(platFormInfoArray[0], gbStreamList);
@@ -442,7 +443,6 @@
                                streamPushItemForPlatform.setCatalogId(platFormInfoArray[1]);
                            }
                            streamPushItemListFroPlatform.add(streamPushItemForPlatform);
                        }
                    }
                }
src/main/java/com/genersoft/iot/vmp/vmanager/streamPush/StreamPushController.java
@@ -168,16 +168,6 @@
            result.setResult(ResponseEntity.status(HttpStatus.BAD_REQUEST).body(wvpResult));
            return result;
        }
//        if (!file.getContentType().endsWith(".xls")
//            && !file.getContentType().endsWith(".csv")
//            && !file.getContentType().endsWith(".xlsx") ) {
//            logger.warn("通道导入文件类型错误: {}",file.getContentType() );
//            WVPResult<Object> wvpResult = new WVPResult<>();
//            wvpResult.setCode(-1);
//            wvpResult.setMsg("文件类型错误,请使用");
//            result.setResult(ResponseEntity.status(HttpStatus.BAD_REQUEST).body(wvpResult));
//            return result;
//        }
        // 同时只处理一个文件
        if (resultHolder.exist(key, null)) {
            logger.warn("已有导入任务正在执行");