Commit 0e94aeaf5fed799b419245ee4002c7b24d399ce4

Authored by 648540858
1 parent 07729fbe

优化录像合并下载,支持不过滤zlm节点ID

src/main/java/com/genersoft/iot/vmp/service/ICloudRecordService.java
@@ -32,7 +32,8 @@ public interface ICloudRecordService { @@ -32,7 +32,8 @@ public interface ICloudRecordService {
32 /** 32 /**
33 * 添加合并任务 33 * 添加合并任务
34 */ 34 */
35 - String addTask(String app, String stream, MediaServerItem mediaServerItem, String startTime, String endTime, String callId, String remoteHost); 35 + String addTask(String app, String stream, MediaServerItem mediaServerItem, String startTime,
  36 + String endTime, String callId, String remoteHost, boolean filterMediaServer);
36 37
37 38
38 /** 39 /**
src/main/java/com/genersoft/iot/vmp/service/impl/CloudRecordServiceImpl.java
@@ -109,7 +109,8 @@ public class CloudRecordServiceImpl implements ICloudRecordService { @@ -109,7 +109,8 @@ public class CloudRecordServiceImpl implements ICloudRecordService {
109 } 109 }
110 110
111 @Override 111 @Override
112 - public String addTask(String app, String stream, MediaServerItem mediaServerItem, String startTime, String endTime, String callId, String remoteHost) { 112 + public String addTask(String app, String stream, MediaServerItem mediaServerItem, String startTime, String endTime,
  113 + String callId, String remoteHost, boolean filterMediaServer) {
113 // 参数校验 114 // 参数校验
114 assert app != null; 115 assert app != null;
115 assert stream != null; 116 assert stream != null;
@@ -125,8 +126,11 @@ public class CloudRecordServiceImpl implements ICloudRecordService { @@ -125,8 +126,11 @@ public class CloudRecordServiceImpl implements ICloudRecordService {
125 endTimeStamp = DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(endTime); 126 endTimeStamp = DateUtil.yyyy_MM_dd_HH_mm_ssToTimestamp(endTime);
126 } 127 }
127 128
  129 + List<MediaServerItem> mediaServers = new ArrayList<>();
  130 + mediaServers.add(mediaServerItem);
128 // 检索相关的录像文件 131 // 检索相关的录像文件
129 - List<String> filePathList = cloudRecordServiceMapper.queryRecordFilePathList(app, stream, startTimeStamp, endTimeStamp, callId, null); 132 + List<String> filePathList = cloudRecordServiceMapper.queryRecordFilePathList(app, stream, startTimeStamp,
  133 + endTimeStamp, callId, filterMediaServer ? mediaServers : null);
130 if (filePathList == null || filePathList.isEmpty()) { 134 if (filePathList == null || filePathList.isEmpty()) {
131 throw new ControllerException(ErrorCode.ERROR100.getCode(), "未检索到视频文件"); 135 throw new ControllerException(ErrorCode.ERROR100.getCode(), "未检索到视频文件");
132 } 136 }
src/main/java/com/genersoft/iot/vmp/vmanager/cloudRecord/CloudRecordController.java
@@ -177,7 +177,7 @@ public class CloudRecordController { @@ -177,7 +177,7 @@ public class CloudRecordController {
177 remoteHost = request.getScheme() + "://" + request.getLocalAddr() + ":" + mediaServerItem.getRecordAssistPort(); 177 remoteHost = request.getScheme() + "://" + request.getLocalAddr() + ":" + mediaServerItem.getRecordAssistPort();
178 } 178 }
179 } 179 }
180 - return cloudRecordService.addTask(app, stream, mediaServerItem, startTime, endTime, callId, remoteHost); 180 + return cloudRecordService.addTask(app, stream, mediaServerItem, startTime, endTime, callId, remoteHost, mediaServerId != null);
181 } 181 }
182 182
183 @ResponseBody 183 @ResponseBody