648540858
2022-01-17 385fdb95f18c1f0b4e38f8a6e481176ac31ee987
优化级联选择通道逻辑
10个文件已修改
1个文件已删除
79 ■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/IGbStreamService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformCatalogMapper.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/platform/PlatformController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/platformGbStream/PlatformGbStreamController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java
@@ -59,6 +59,7 @@
        Map<String, List<ParentPlatform>> parentPlatformMap = new HashMap<>();
        if (event.getPlatformId() != null) {
            parentPlatform = storager.queryParentPlatByServerGBId(event.getPlatformId());
            if (!parentPlatform.isStatus())return;
            String key = VideoManagerConstants.SIP_SUBSCRIBE_PREFIX + userSetup.getServerId() +  "_Catalog_" + event.getPlatformId();
            subscribe = redisCatchStorage.getSubscribe(key);
        }else {
src/main/java/com/genersoft/iot/vmp/service/IGbStreamService.java
@@ -17,7 +17,7 @@
     * @param count
     * @return
     */
    PageInfo<GbStream> getAll(Integer page, Integer count);
    PageInfo<GbStream> getAll(Integer page, Integer count, String platFormId);
    /**
src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java
@@ -51,9 +51,9 @@
    private EventPublisher eventPublisher;
    @Override
    public PageInfo<GbStream> getAll(Integer page, Integer count) {
    public PageInfo<GbStream> getAll(Integer page, Integer count, String platFormId) {
        PageHelper.startPage(page, count);
        List<GbStream> all = gbStreamMapper.selectAll();
        List<GbStream> all = gbStreamMapper.selectAll(platFormId);
        return new PageInfo<>(all);
    }
src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java
@@ -37,8 +37,10 @@
    @Delete("DELETE FROM gb_stream WHERE app=#{app} AND stream=#{stream}")
    int del(String app, String stream);
    @Select("SELECT gs.*, pgs.platformId AS platformId, pgs.catalogId AS catalogId  FROM gb_stream gs LEFT JOIN  platform_gb_stream pgs ON gs.app = pgs.app AND gs.stream = pgs.stream")
    List<GbStream> selectAll();
    @Select("SELECT gs.*, pgs.platformId AS platformId, pgs.catalogId AS catalogId FROM gb_stream gs " +
            "LEFT JOIN  platform_gb_stream pgs ON gs.app = pgs.app AND gs.stream = pgs.stream " +
            "WHERE pgs.platformId is null OR pgs.platformId = #{platformId}")
    List<GbStream> selectAll(String platformId);
    @Select("SELECT * FROM gb_stream WHERE app=#{app} AND stream=#{stream}")
    StreamProxyItem selectOne(String app, String stream);
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformCatalogMapper.java
@@ -24,7 +24,9 @@
    @Delete("DELETE FROM platform_catalog WHERE platformId=#{platformId}")
    int delByPlatformId(String platformId);
    @Select("SELECT *, (SELECT COUNT(1) from platform_catalog where parentId = pc.id AND platformId=#{platformId}) as childrenCount FROM platform_catalog pc WHERE parentId=#{parentId} AND platformId=#{platformId}")
    @Select("SELECT pc.*, count(pc2.id) as childrenCount FROM platform_catalog pc " +
            "left join platform_catalog pc2 on pc.id = pc2.parentId " +
            "WHERE pc.parentId=#{parentId} AND pc.platformId=#{platformId} group by pc.id")
    List<PlatformCatalog> selectByParentId(String platformId, String parentId);
    @Select("SELECT *, (SELECT COUNT(1) from platform_catalog where parentId = pc.id) as childrenCount  FROM platform_catalog pc WHERE pc.id=#{id}")
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformChannelMapper.java
@@ -83,7 +83,7 @@
            "left join platform_gb_channel pgc on " +
            "pp.serverGBId = pgc.platformId " +
            "WHERE " +
            "pgc.channelId = #{channelId} " +
            "pgc.channelId = #{channelId} pp.status = true " +
            "AND pp.serverGBId IN" +
            "<foreach collection='platforms'  item='item'  open='(' separator=',' close=')' > #{item}</foreach>" +
            "</script> ")
src/main/java/com/genersoft/iot/vmp/storager/dao/PlatformGbStreamMapper.java
@@ -52,8 +52,8 @@
            "from gb_stream gs\n" +
            "    left join platform_gb_stream pgs\n" +
            "        on gs.app = pgs.app and gs.stream = pgs.stream\n" +
            "where pgs.platformId=#{platformId} and pgs.catalogId=#{catalogId}")
    List<PlatformCatalog> queryChannelInParentPlatformAndCatalogForCatlog(String platformId, String catalogId);
            "where and pgs.platformId=#{platformId} and pgs.catalogId=#{catalogId}")
    List<PlatformCatalog> queryChannelInParentPlatformAndCatalogForCatalog(String platformId, String catalogId);
    @Delete("DELETE FROM platform_gb_stream WHERE catalogId=#{id}")
    int delByCatalogId(String id);
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -639,7 +639,7 @@
    @Override
    public List<PlatformCatalog> queryStreamInParentPlatformAndCatalog(String platformId, String catalogId) {
        List<PlatformCatalog> catalogs = platformGbStreamMapper.queryChannelInParentPlatformAndCatalogForCatlog(platformId, catalogId);
        List<PlatformCatalog> catalogs = platformGbStreamMapper.queryChannelInParentPlatformAndCatalogForCatalog(platformId, catalogId);
        return catalogs;
    }
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java
@@ -33,19 +33,22 @@
     * 查询国标通道
     * @param page 当前页
     * @param count 每页条数
     * @param platformId 平台ID
     * @return
     */
    @ApiOperation("查询国标通道")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "page", value = "当前页", required = true , dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "count", value = "每页条数", required = true , dataTypeClass = Integer.class),
            @ApiImplicitParam(name = "platformId", value = "平台ID", required = true , dataTypeClass = Integer.class),
    })
    @GetMapping(value = "/list")
    @ResponseBody
    public PageInfo<GbStream> list(@RequestParam(required = false)Integer page,
                                   @RequestParam(required = false)Integer count){
    public PageInfo<GbStream> list(@RequestParam(required = true)Integer page,
                                   @RequestParam(required = true)Integer count,
                                   @RequestParam(required = true)String platformId){
        return gbStreamService.getAll(page, count);
        return gbStreamService.getAll(page, count, platformId);
    }
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/platform/PlatformController.java
@@ -307,6 +307,7 @@
        List<PlatformCatalog> platformCatalogList = storager.getChildrenCatalogByPlatform(platformId, parentId);
        // 查询下属的国标通道
        List<PlatformCatalog> catalogsForChannel = storager.queryChannelInParentPlatformAndCatalog(platformId, parentId);
        // 查询下属的直播流通道
        List<PlatformCatalog> catalogsForStream = storager.queryStreamInParentPlatformAndCatalog(platformId, parentId);
        platformCatalogList.addAll(catalogsForChannel);
        platformCatalogList.addAll(catalogsForStream);
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/platformGbStream/PlatformGbStreamController.java
File was deleted