From 937eb07b37f98a83666cc79c322a5f0132c834c0 Mon Sep 17 00:00:00 2001 From: YangCheng <1633794139@qq.com> Date: Fri, 20 Mar 2026 22:47:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9ARedis=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=8E=A8=E9=80=81=E6=97=B6=E6=91=84=E5=83=8F=E5=A4=B4?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E4=BC=98=E5=85=88=E5=8F=96cameraName?= =?UTF-8?q?=E8=80=8C=E9=9D=9EgbName?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/AiRedisConfigServiceImpl.java | 45 +++++++------------ 1 file changed, 17 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/aiot/service/impl/AiRedisConfigServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/aiot/service/impl/AiRedisConfigServiceImpl.java index f4c3bc1db..5ea53949f 100644 --- a/src/main/java/com/genersoft/iot/vmp/aiot/service/impl/AiRedisConfigServiceImpl.java +++ b/src/main/java/com/genersoft/iot/vmp/aiot/service/impl/AiRedisConfigServiceImpl.java @@ -279,20 +279,17 @@ public class AiRedisConfigServiceImpl implements IAiRedisConfigService { String cameraName = ""; String rtspUrl = ""; - // 从ROI关联的通道获取名称 - if (!rois.isEmpty()) { - AiRoi firstRoi = rois.get(0); - if (firstRoi.getChannelDbId() != null) { - try { - CommonGBChannel channel = channelMapper.queryById(firstRoi.getChannelDbId()); - if (channel != null) { - cameraName = channel.getGbName() != null ? channel.getGbName() : ""; - } - } catch (Exception e) { - log.warn("[AiRedis] 查询通道信息失败: channelDbId={}", firstRoi.getChannelDbId()); - } + // 优先从 StreamProxy 获取 cameraName(用户自定义名称) + StreamProxy proxy = streamProxyMapper.selectByCameraCode(cameraId); + if (proxy != null) { + cameraName = proxy.getCameraName(); + if (cameraName == null || cameraName.isBlank()) { + cameraName = proxy.getGbName(); } } + if (cameraName == null || cameraName.isBlank()) { + cameraName = cameraId; + } // 构建RTSP代理地址(通过ZLM媒体服务器) // cameraId格式为 {app}/{stream},ZLM的RTSP路径直接使用该格式 @@ -504,23 +501,15 @@ public class AiRedisConfigServiceImpl implements IAiRedisConfigService { cameraMap.put("camera_code", cameraId); cameraMap.put("camera_id", cameraId); - // 获取摄像头名称 - String cameraName = ""; - List cameraRois = roiMapper.queryAllByCameraId(cameraId); - - if (!cameraRois.isEmpty()) { - AiRoi firstRoi = cameraRois.get(0); - if (firstRoi.getChannelDbId() != null) { - try { - CommonGBChannel channel = channelMapper.queryById(firstRoi.getChannelDbId()); - if (channel != null) { - cameraName = channel.getGbName() != null ? channel.getGbName() : ""; - } - } catch (Exception e) { - log.warn("[AiRedis] 查询通道信息失败: channelDbId={}", firstRoi.getChannelDbId()); - } - } + // 获取摄像头名称:优先 cameraName(用户自定义),其次 gbName,最后 cameraId + String cameraName = proxy.getCameraName(); + if (cameraName == null || cameraName.isBlank()) { + cameraName = proxy.getGbName(); } + if (cameraName == null || cameraName.isBlank()) { + cameraName = cameraId; + } + List cameraRois = roiMapper.queryAllByCameraId(cameraId); // 获取 RTSP URL:优先使用 StreamProxy 的源 URL String rtspUrl = "";