Переглянути джерело

查询回放视频根据报警ID

gao.qiang 1 рік тому
батько
коміт
06048a48e7

+ 30 - 53
vehicle-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java

@@ -110,7 +110,7 @@ public class BaseCameraManagementController extends BaseController {
             } else {
                 return AjaxResult.error("修改失败");
             }
-        }else {
+        } else {
             return AjaxResult.error("未查询该ID的相机台账信息");
         }
     }
@@ -297,7 +297,7 @@ public class BaseCameraManagementController extends BaseController {
     /**
      * HTTP流转RTSP流
      *
-     * @param 
+     * @param
      * @return
      */
     @GetMapping("/streamConversion")
@@ -305,7 +305,7 @@ public class BaseCameraManagementController extends BaseController {
     @Transactional
     @Log(title = "相机台账管理", businessType = BusinessType.INSERT)
     public AjaxResult streamConversion(String code) {
-            cameraUtil.streamConversion(code);
+        cameraUtil.streamConversion(code);
         return AjaxResult.success();
     }
 
@@ -663,7 +663,7 @@ public class BaseCameraManagementController extends BaseController {
         if (ObjectUtils.isEmpty(one)) {
             throw new BaseException("相机编号【" + cameraCode + "】不存在");
         }
-        return new AjaxResult(200, "ok", CameraUtil.getPlayFlv(cameraCode, one.getChannel()));
+        return new AjaxResult(200, "ok", one.getRtspUrl());
     }
 
     @ApiOperation("视频邀约")
@@ -701,56 +701,33 @@ public class BaseCameraManagementController extends BaseController {
         LambdaQueryWrapper<MsgAlarm> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(MsgAlarm::getAlarmId, alarmId);
         MsgAlarm msgAlarm = msgAlarmService.getOne(wrapper);
-        if (ObjectUtils.isEmpty(msgAlarm.getReleasedUrl())) {
-            LambdaQueryWrapper<BaseRailwayManagement> wrapperRailway = new LambdaQueryWrapper<>();
-            if (!ObjectUtils.isEmpty(msgAlarm.getRailwayCode())) {
-                wrapperRailway.eq(BaseRailwayManagement::getRailwayCode, msgAlarm.getRailwayCode());
-            }
-            BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(wrapperRailway);
-            if (StringUtils.isEmptySunhh(baseRailwayManagement)) {
-                return AjaxResult.error("报警线路编码:" + msgAlarm.getRailwayCode() + "不存在!");
-            }
-            // 查询里程位置最近的相机
-            LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<>();
-            if (!StringUtils.isEmptySunhh(msgAlarm.getRailwayCode())) {
-                lw.eq(BaseCameraManagement::getRailwayCode, msgAlarm.getRailwayCode());
-            }
-            if (!StringUtils.isEmptySunhh(msgAlarm.getAlarmMile())) {
-                lw.le(BaseCameraManagement::getBeginMile, msgAlarm.getAlarmMile());
-                lw.gt(BaseCameraManagement::getEndMile, msgAlarm.getAlarmMile());
-            }
-            List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementService.list(lw);
-            BaseCameraManagement baseCameraManagement = new BaseCameraManagement();
-            if (!StringUtils.isEmptySunhh(baseCameraManagementList) && baseCameraManagementList.size() > 0) {
-                baseCameraManagement = baseCameraManagementList.get(0);
-            } else {
-                return AjaxResult.error("报警里程范围内:" + msgAlarm.getAlarmMile() + "没有可查看的相机!");
-            }
-            Map<String, Object> map = new HashMap<>();
-            map.put("isLock", msgAlarm.getIsRelease());
-            map.put("releasedTime", msgAlarm.getReleasedTime());
-            map.put("alarmTime", msgAlarm.getAlarmTime());
-            map.put("channel", baseCameraManagement.getChannel());
-            map.put("cameraCode", baseCameraManagement.getCameraCode());
-            // Map<String, Object> map = baseCameraManagementService.getCameraChannelByAlarmId(alarmId);
-            if (!ObjectUtils.isEmpty(map)
-                    && map.size() > 0
-                    && !org.apache.commons.lang3.StringUtils.isBlank(map.get("channel").toString())) {
-                String url = null;
-                if (map.get("isLock").toString().equals("1")) {
-                    url = com.ozs.web.core.util.CameraUtil.historyPlayListStr(map.get("channel").toString(),
-                            (Date) map.get("alarmTime"),
-                            (Date) map.get("releasedTime"),
-                            true);
-                    msgAlarm.setReleasedUrl(url);
-                    msgAlarmService.updateById(msgAlarm);
-                }
-                return error("报警ID为:【" + alarmId + "】的相机信息还未生成报警回放视频");
-            } else {
-                return error("报警ID为:【" + alarmId + "】的相机信息不存在");
-            }
+        LambdaQueryWrapper<BaseRailwayManagement> wrapperRailway = new LambdaQueryWrapper<>();
+        if (!ObjectUtils.isEmpty(msgAlarm.getRailwayCode())) {
+            wrapperRailway.eq(BaseRailwayManagement::getRailwayCode, msgAlarm.getRailwayCode());
+        }
+        BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(wrapperRailway);
+        if (StringUtils.isEmptySunhh(baseRailwayManagement)) {
+            return AjaxResult.error("报警线路编码:" + msgAlarm.getRailwayCode() + "不存在!");
+        }
+        // 查询里程位置最近的相机
+        LambdaQueryWrapper<BaseCameraManagement> lw = new LambdaQueryWrapper<>();
+        if (!StringUtils.isEmptySunhh(msgAlarm.getRailwayCode())) {
+            lw.eq(BaseCameraManagement::getRailwayCode, msgAlarm.getRailwayCode());
+        }
+        if (!StringUtils.isEmptySunhh(msgAlarm.getAlarmMile())) {
+            lw.le(BaseCameraManagement::getBeginMile, msgAlarm.getAlarmMile());
+            lw.gt(BaseCameraManagement::getEndMile, msgAlarm.getAlarmMile());
+        }
+        lw.eq(BaseCameraManagement::getLineDir, msgAlarm.getLineDir());
+        lw.eq(BaseCameraManagement::getOnline, 2);
+        lw.eq(BaseCameraManagement::getEnableOrNot, 1);
+        List<BaseCameraManagement> baseCameraManagementList = baseCameraManagementService.list(lw);
+        BaseCameraManagement baseCameraManagement = new BaseCameraManagement();
+        if (!StringUtils.isEmptySunhh(baseCameraManagementList) && baseCameraManagementList.size() > 0) {
+            baseCameraManagement = baseCameraManagementList.get(0);
+            return new AjaxResult(200, "ok", baseCameraManagement.getRtspUrl());
         } else {
-            return new AjaxResult(200, "ok", caneraConfig.getRecordUrl() + msgAlarm.getReleasedUrl());
+            return AjaxResult.error("报警里程范围内:" + msgAlarm.getAlarmMile() + "没有可查看的相机!");
         }
     }
 

+ 2 - 2
vehicle-admin/src/main/java/com/ozs/web/controller/sdk/GeoHazardMonitorTokenController.java

@@ -699,8 +699,8 @@ public class GeoHazardMonitorTokenController {
                         ment.le(BaseCameraManagement::getBeginMile, list.get(i).getAlarmMile());
                         ment.eq(BaseCameraManagement::getLineDir, heartbeatVo.getLineDir());
                         ment.eq(BaseCameraManagement::getRailwayCode, heartbeatVo.getRailwayCode());
-                        camera.eq(BaseCameraManagement::getOnline,2);
-                        camera.eq(BaseCameraManagement::getEnableOrNot,1);
+                        ment.eq(BaseCameraManagement::getOnline,2);
+                        ment.eq(BaseCameraManagement::getEnableOrNot,1);
                         ment.orderByAsc(BaseCameraManagement::getInstallMile);
                         if (i == 0) {
                             ment.last("limit 1,1000000");