diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/provider/ChannelProvider.java b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/provider/ChannelProvider.java index c06500add..14b52f83d 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/dao/provider/ChannelProvider.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/dao/provider/ChannelProvider.java @@ -582,21 +582,22 @@ public class ChannelProvider { public String queryListWithChildForSy(Map params ){ StringBuilder sqlBuild = new StringBuilder(); sqlBuild.append(BASE_SQL_FOR_CAMERA_DEVICE); - sqlBuild.append(" where wdc.channel_type != 1 AND (wdc.gb_ptz_type is null || ( wdc.gb_ptz_type != 98 && wdc.gb_ptz_type != 99)) " + - " AND coalesce(wdc.gb_parent_id, wdc.parent_id) in ("); + sqlBuild.append(" where wdc.channel_type != 1 AND (wdc.gb_ptz_type is null || ( wdc.gb_ptz_type != 98 && wdc.gb_ptz_type != 99)) "); + - sqlBuild.append(" "); List groupList = (List)params.get("groupList"); - boolean first = true; - for (CameraGroup group : groupList) { - if (!first) { - sqlBuild.append(","); + if (groupList != null && !groupList.isEmpty()) { + sqlBuild.append(" AND coalesce(wdc.gb_parent_id, wdc.parent_id) in ("); + boolean first = true; + for (CameraGroup group : groupList) { + if (!first) { + sqlBuild.append(","); + } + sqlBuild.append("'" + group.getDeviceId() + "'"); + first = false; } - sqlBuild.append("'" + group.getDeviceId() + "'"); - first = false; + sqlBuild.append(" )"); } - sqlBuild.append(" )"); - if (params.get("query") != null) { sqlBuild.append(" AND (coalesce(wdc.gb_device_id, wdc.device_id) LIKE concat('%',#{query},'%') escape '/'" + " OR coalesce(wdc.gb_name, wdc.name) LIKE concat('%',#{query},'%') escape '/' )") diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java b/src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java index a777f07ac..ea43ab1b0 100755 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/event/subscribe/catalog/CatalogEventLister.java @@ -25,7 +25,7 @@ import java.util.Map; * catalog事件 */ @Slf4j -@Component +//@Component public class CatalogEventLister implements ApplicationListener { @Autowired diff --git a/src/main/java/com/genersoft/iot/vmp/web/custom/CameraChannelController.java b/src/main/java/com/genersoft/iot/vmp/web/custom/CameraChannelController.java index 706c18cbb..6d9e10575 100644 --- a/src/main/java/com/genersoft/iot/vmp/web/custom/CameraChannelController.java +++ b/src/main/java/com/genersoft/iot/vmp/web/custom/CameraChannelController.java @@ -110,7 +110,7 @@ public class CameraChannelController { @RequestParam(required = false) String query, @RequestParam(required = false) String sortName, @RequestParam(required = false) Boolean order, - String groupAlias, + @RequestParam(required = false) String groupAlias, @RequestParam(required = false) String geoCoordSys, @RequestParam(required = false) Boolean status){ if (ObjectUtils.isEmpty(query)) { diff --git a/src/main/java/com/genersoft/iot/vmp/web/custom/service/CameraChannelService.java b/src/main/java/com/genersoft/iot/vmp/web/custom/service/CameraChannelService.java index 4dc5d0a40..9885a271c 100644 --- a/src/main/java/com/genersoft/iot/vmp/web/custom/service/CameraChannelService.java +++ b/src/main/java/com/genersoft/iot/vmp/web/custom/service/CameraChannelService.java @@ -273,13 +273,18 @@ public class CameraChannelService implements CommandLineRunner { } public PageInfo queryListWithChild(Integer page, Integer count, String query, String sortName, Boolean order, String groupAlias, Boolean status, String geoCoordSys) { + + List groupList = null; // 构建组织结构信息 - CameraGroup group = groupMapper.queryGroupByAlias(groupAlias); - Assert.notNull(group, "组织结构不存在"); - String groupDeviceId = group.getDeviceId(); - // 获取所有子节点 - List groupList = queryAllGroupChildren(group.getId(), group.getBusinessGroup()); - groupList.add(group); + if (groupAlias != null) { + CameraGroup group = groupMapper.queryGroupByAlias(groupAlias); + Assert.notNull(group, "组织结构不存在"); + String groupDeviceId = group.getDeviceId(); + // 获取所有子节点 + groupList = queryAllGroupChildren(group.getId(), group.getBusinessGroup()); + groupList.add(group); + } + // 构建分页 PageHelper.startPage(page, count); if (query != null) {