Browse Source

报警回放开发

gao.qiang 10 months ago
parent
commit
668bdf6c76

+ 2 - 2
business-service/src/main/resources/mapper/service/BaseCameraManagementMapper.xml

@@ -156,10 +156,10 @@
                 and man.electricity <=#{electricity}
             </if>
             <if test="lineDir != null and lineDir != 0">
-                and a.line_dir =#{lineDir}
+                and ca.line_dir =#{lineDir}
             </if>
             <if test="deptId != null and deptId != 0">
-                and a.dept_id =#{deptId}
+                and ca.dept_id =#{deptId}
             </if>
             <if test="!dsFlay">
                 and

+ 1 - 5
hazard-admin/src/main/java/com/ozs/web/core/util/CameraUtil.java

@@ -535,11 +535,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
      */
     public static String getRecordUrl(String cameraCode, String channel, Date startTm, Date endTm) {
         String result = null;
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        // 使用SimpleDateFormat格式化Date对象为字符串
-        String start = sdf.format(startTm);
-        String end = sdf.format(endTm);
-        String url = webUrl + "/gb28181/api/invite?id=" + cameraCode + "&channel=" + channel + "&startTime=" + start + "&endTime=" + end;
+        String url = webUrl + "/gb28181/api/invite?id=" + cameraCode + "&channel=" + channel + "&startTime=" + startTm.getTime()/1000 + "&endTime=" + endTm.getTime()/1000;
         try {
             result = HttpClientUtil.get(url);
             if (result.equals("200")) {

+ 7 - 7
hazard-sdk/src/main/java/com/ozs/controller/upload/GeoHazardMonitorTokenController.java

@@ -355,22 +355,22 @@ public class GeoHazardMonitorTokenController {
         log.info("afterTenMinutes------------->" + afterTenMinutes);
         // 格式化时间
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        // 将字符串解析为LocalDateTime对象(指定时区为东八区)
+        LocalDateTime startTime = LocalDateTime.parse(beforeTenMinutes.format(formatter), formatter).atOffset(ZoneOffset.ofHours(8)).toLocalDateTime();
+        LocalDateTime endTime = LocalDateTime.parse(afterTenMinutes.format(formatter), formatter).atOffset(ZoneOffset.ofHours(8)).toLocalDateTime();
+        // 将LocalDateTime转换为秒数
+        long seconds = startTime.toEpochSecond(ZoneOffset.ofHours(8));
+        long second = endTime.toEpochSecond(ZoneOffset.ofHours(8));
         try {
             TimeUnit.SECONDS.sleep(65 * 5);
         } catch (InterruptedException e) {
             throw new RuntimeException(e);
         }
         String result;
-        String url = webUrl + "/gb28181/api/invite?id=" + cameraCode + "&channel=" + channel + "&startTime=" + beforeTenMinutes.format(formatter) + "&endTime=" + afterTenMinutes.format(formatter);
+        String url = webUrl + "/gb28181/api/invite?id=" + cameraCode + "&channel=" + channel + "&startTime=" + seconds + "&endTime=" + second;
         try {
             result = HttpClientUtil.get(url);
             if ("200".equals(result)) {
-                // 将字符串解析为LocalDateTime对象(指定时区为东八区)
-                LocalDateTime startTime = LocalDateTime.parse(beforeTenMinutes.format(formatter), formatter).atOffset(ZoneOffset.ofHours(8)).toLocalDateTime();
-                LocalDateTime endTime = LocalDateTime.parse(afterTenMinutes.format(formatter), formatter).atOffset(ZoneOffset.ofHours(8)).toLocalDateTime();
-                // 将LocalDateTime转换为秒数
-                long seconds = startTime.toEpochSecond(ZoneOffset.ofHours(8));
-                long second = endTime.toEpochSecond(ZoneOffset.ofHours(8));
                 String path = apiSummary(cameraCode + "/" + channel+"/"+seconds+"-"+second);
                 if (org.apache.commons.lang3.StringUtils.isNotEmpty(path)){
                     String codes = HttpUtils.sendGet(startRecording(cameraCode, "playback"));