Merge branch 'wvp-28181-2.0' into main-dev
# Conflicts: # src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMHttpHookListener.java # src/main/java/com/genersoft/iot/vmp/service/IPlatformService.java # src/main/java/com/genersoft/iot/vmp/service/impl/PlatformServiceImpl.java
This commit is contained in:
@@ -36,6 +36,7 @@ import org.springframework.util.ObjectUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.context.request.async.DeferredResult;
|
||||
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.sip.InvalidArgumentException;
|
||||
import javax.sip.SipException;
|
||||
@@ -472,7 +473,10 @@ public class DeviceQuery {
|
||||
try {
|
||||
final InputStream in = Files.newInputStream(new File("snap" + File.separator + deviceId + "_" + channelId + (mark == null? ".jpg": ("_" + mark + ".jpg"))).toPath());
|
||||
resp.setContentType(MediaType.IMAGE_PNG_VALUE);
|
||||
ServletOutputStream outputStream = resp.getOutputStream();
|
||||
IOUtils.copy(in, resp.getOutputStream());
|
||||
in.close();
|
||||
outputStream.close();
|
||||
} catch (IOException e) {
|
||||
resp.setStatus(HttpServletResponse.SC_NOT_FOUND);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.genersoft.iot.vmp.vmanager.gb28181.gbStream;
|
||||
|
||||
import com.genersoft.iot.vmp.conf.exception.ControllerException;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.GbStream;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
||||
import com.genersoft.iot.vmp.service.IGbStreamService;
|
||||
import com.genersoft.iot.vmp.service.IPlatformService;
|
||||
import com.genersoft.iot.vmp.storager.IVideoManagerStorage;
|
||||
import com.genersoft.iot.vmp.vmanager.bean.ErrorCode;
|
||||
import com.genersoft.iot.vmp.vmanager.gb28181.gbStream.bean.GbStreamParam;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
@@ -14,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.util.ObjectUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Tag(name = "视频流关联到级联平台")
|
||||
@@ -28,7 +33,7 @@ public class GbStreamController {
|
||||
private IGbStreamService gbStreamService;
|
||||
|
||||
@Autowired
|
||||
private IVideoManagerStorage storager;
|
||||
private IPlatformService platformService;
|
||||
|
||||
|
||||
/**
|
||||
@@ -107,4 +112,20 @@ public class GbStreamController {
|
||||
gbStreamService.addPlatformInfo(gbStreamParam.getGbStreams(), gbStreamParam.getPlatformId(), gbStreamParam.getCatalogId());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存国标关联
|
||||
* @param gbId
|
||||
* @return
|
||||
*/
|
||||
@Operation(summary = "保存国标关联")
|
||||
@GetMapping(value = "/addWithGbid")
|
||||
@ResponseBody
|
||||
public void add(String gbId, String platformGbId, @RequestParam(required = false) String catalogGbId){
|
||||
List<GbStream> gbStreams = gbStreamService.getGbChannelWithGbid(gbId);
|
||||
if (gbStreams.isEmpty()) {
|
||||
throw new ControllerException(ErrorCode.ERROR100.getCode(), "gbId的信息未找到");
|
||||
}
|
||||
gbStreamService.addPlatformInfo(gbStreams, platformGbId, catalogGbId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -67,6 +67,16 @@ public class StreamProxyController {
|
||||
return streamProxyService.getAll(page, count);
|
||||
}
|
||||
|
||||
@Operation(summary = "查询流代理")
|
||||
@Parameter(name = "app", description = "应用名")
|
||||
@Parameter(name = "stream", description = "流Id")
|
||||
@GetMapping(value = "/one")
|
||||
@ResponseBody
|
||||
public StreamProxyItem one(String app, String stream){
|
||||
|
||||
return streamProxyService.getStreamProxyByAppAndStream(app, stream);
|
||||
}
|
||||
|
||||
@Operation(summary = "保存代理", parameters = {
|
||||
@Parameter(name = "param", description = "代理参数", required = true),
|
||||
})
|
||||
@@ -80,9 +90,16 @@ public class StreamProxyController {
|
||||
if (ObjectUtils.isEmpty(param.getType())) {
|
||||
param.setType("default");
|
||||
}
|
||||
if (ObjectUtils.isEmpty(param.getRtpType())) {
|
||||
param.setRtpType("1");
|
||||
}
|
||||
if (ObjectUtils.isEmpty(param.getGbId())) {
|
||||
param.setGbId(null);
|
||||
}
|
||||
StreamProxyItem streamProxyItem = streamProxyService.getStreamProxyByAppAndStream(param.getApp(), param.getStream());
|
||||
if (streamProxyItem != null) {
|
||||
streamProxyService.del(param.getApp(), param.getStream());
|
||||
}
|
||||
|
||||
RequestMessage requestMessage = new RequestMessage();
|
||||
String key = DeferredResultHolder.CALLBACK_CMD_PROXY + param.getApp() + param.getStream();
|
||||
|
||||
Reference in New Issue
Block a user