From 4dd656b29b655d17b4d3c9d0d8e3870b871f5433 Mon Sep 17 00:00:00 2001 From: panlinlin <648540858@qq.com> Date: Sat, 17 Aug 2024 08:02:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=9B=AE=E5=BD=95=E6=8E=A8?= =?UTF-8?q?=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../genersoft/iot/vmp/gb28181/bean/CommonGBChannel.java | 2 +- .../iot/vmp/gb28181/dao/CommonGBChannelMapper.java | 2 +- .../com/genersoft/iot/vmp/gb28181/dao/GroupMapper.java | 9 +++++++++ .../vmp/gb28181/service/impl/GbChannelServiceImpl.java | 8 ++++++++ 4 files changed, 19 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/CommonGBChannel.java b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/CommonGBChannel.java index c261427e..bf221dbd 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/bean/CommonGBChannel.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/bean/CommonGBChannel.java @@ -450,7 +450,7 @@ public class CommonGBChannel { CommonGBChannel commonGBChannel = new CommonGBChannel(); commonGBChannel.setGbDeviceId(region.getDeviceId()); commonGBChannel.setGbName(region.getName()); - return null; + return commonGBChannel; } } diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java index 1db92e19..394b9bcd 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/CommonGBChannelMapper.java @@ -420,7 +420,7 @@ public interface CommonGBChannelMapper { " coalesce(wpgc.manufacturer, wdc.gb_manufacturer, wdc.manufacturer) as gb_manufacturer,\n" + " coalesce(wpgc.model, wdc.gb_model, wdc.model) as gb_model,\n" + " coalesce(wpgc.owner, wdc.gb_owner, wdc.owner) as gb_owner,\n" + - " coalesce(wpgc.civil_code, wdc.gb_civil_code, wdc.civil_code),\n" + + " coalesce(wpgc.civil_code, wdc.gb_civil_code, wdc.civil_code) as gb_civil_code,\n" + " coalesce(wpgc.block, wdc.gb_block, wdc.block) as gb_block,\n" + " coalesce(wpgc.address, wdc.gb_address, wdc.address) as gb_address,\n" + " coalesce(wpgc.parental, wdc.gb_parental, wdc.parental) as gb_parental,\n" + diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/GroupMapper.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/GroupMapper.java index b6a3ebd1..2058b654 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/GroupMapper.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/GroupMapper.java @@ -179,4 +179,13 @@ public interface GroupMapper { " #{item.parentDeviceId}" + " ") Set queryParentInChannelList(Set regionChannelList); + + @Select(" ") + Set queryBusinessGroupInChannelList(List channelList); } diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java index 96ba3059..20631e5d 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/service/impl/GbChannelServiceImpl.java @@ -329,6 +329,7 @@ public class GbChannelServiceImpl implements IGbChannelService { if (!regionChannelList.isEmpty()) { // 获取这些节点的所有父节点, 使用set滤重 Set allRegion = getAllRegion(regionChannelList); + allRegion.addAll(regionChannelList); for (Region region : allRegion) { channelList.add(CommonGBChannel.build(region)); } @@ -336,10 +337,17 @@ public class GbChannelServiceImpl implements IGbChannelService { } // 是否包含分组信息 if (platform.getCatalogWithGroup()) { + // 虚拟组织 Set groupChannelList = groupMapper.queryInChannelList(commonGBChannelList); + // 业务分组 + Set businessGroupChannelList = groupMapper.queryBusinessGroupInChannelList(commonGBChannelList); if (!groupChannelList.isEmpty()) { // 获取这些节点的所有父节点 Set allGroup = getAllGroup(groupChannelList); + allGroup.addAll(groupChannelList); + if (!businessGroupChannelList.isEmpty()) { + allGroup.addAll(businessGroupChannelList); + } for (Group group : allGroup) { channelList.add(CommonGBChannel.build(group)); }