修复云端录像查看
This commit is contained in:
parent
91ee708c37
commit
77e3e0878f
6
pom.xml
6
pom.xml
@ -10,8 +10,8 @@
|
||||
</parent>
|
||||
|
||||
<groupId>com.genersoft</groupId>
|
||||
<artifactId>wvp-gb28181</artifactId>
|
||||
<version>2.0.0</version>
|
||||
<artifactId>wvp-pro</artifactId>
|
||||
<version>2.0</version>
|
||||
<name>web video platform</name>
|
||||
|
||||
<repositories>
|
||||
@ -44,7 +44,7 @@
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
|
||||
<maven.build.timestamp.format>MMddHHmm</maven.build.timestamp.format>
|
||||
<maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
|
||||
|
||||
<!-- 依赖版本 -->
|
||||
|
@ -194,7 +194,7 @@ public class MediaServerServiceImpl implements IMediaServerService {
|
||||
mediaConfig.setId(zlmServerConfig.getGeneralMediaServerId());
|
||||
mediaConfig.setCreateTime(now);
|
||||
mediaConfig.setUpdateTime(now);
|
||||
serverItem = mediaConfig;
|
||||
serverItem = mediaConfig.getMediaSerItem();
|
||||
mediaServerMapper.add(mediaConfig);
|
||||
}else {
|
||||
// 一个新的zlm接入wvp
|
||||
|
@ -4,6 +4,7 @@ import com.genersoft.iot.vmp.common.StreamInfo;
|
||||
import com.genersoft.iot.vmp.service.IStreamPushService;
|
||||
import com.genersoft.iot.vmp.service.IMediaService;
|
||||
import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
|
||||
import com.genersoft.iot.vmp.vmanager.bean.WVPResult;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiImplicitParams;
|
||||
@ -47,9 +48,18 @@ public class MediaController {
|
||||
})
|
||||
@GetMapping(value = "/stream_info_by_app_and_stream")
|
||||
@ResponseBody
|
||||
public StreamInfo getStreamInfoByAppAndStream(@RequestParam String app, @RequestParam String stream, @RequestParam String mediaServerId){
|
||||
|
||||
return mediaService.getStreamInfoByAppAndStreamWithCheck(app, stream,mediaServerId);
|
||||
public WVPResult<StreamInfo> getStreamInfoByAppAndStream(@RequestParam String app, @RequestParam String stream, @RequestParam String mediaServerId){
|
||||
StreamInfo streamInfoByAppAndStreamWithCheck = mediaService.getStreamInfoByAppAndStreamWithCheck(app, stream, mediaServerId);
|
||||
WVPResult<StreamInfo> result = new WVPResult<>();
|
||||
if (streamInfoByAppAndStreamWithCheck != null){
|
||||
result.setCode(0);
|
||||
result.setMsg("scccess");
|
||||
result.setData(streamInfoByAppAndStreamWithCheck);
|
||||
}else {
|
||||
result.setCode(-1);
|
||||
result.setMsg("fail");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
Binary file not shown.
@ -8,12 +8,12 @@
|
||||
<div style="background-color: #FFFFFF; margin-bottom: 1rem; position: relative; padding: 0.5rem; text-align: left;">
|
||||
<span style="font-size: 1rem; font-weight: bold;">云端录像</span>
|
||||
<div style="position: absolute; right: 5rem; top: 0.3rem;">
|
||||
节点选择: <el-select size="mini" @change="chooseMediaChange" style="width: 16rem; margin-right: 1rem;" v-model="mediaServer" placeholder="请选择" default-first-option>
|
||||
节点选择: <el-select size="mini" @change="chooseMediaChange" style="width: 16rem; margin-right: 1rem;" v-model="mediaServerId" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in mediaServerList"
|
||||
:key="item.id"
|
||||
:label="item.id + '( ' + item.streamIp + ' )'"
|
||||
:value="item">
|
||||
:label="item.id"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
@ -52,7 +52,7 @@
|
||||
:total="total">
|
||||
</el-pagination>
|
||||
</div>
|
||||
<cloud-record-detail ref="cloudRecordDetail" v-if="recordDetail" :recordFile="chooseRecord" :mediaServer="mediaServer" ></cloud-record-detail>
|
||||
<cloud-record-detail ref="cloudRecordDetail" v-if="recordDetail" :recordFile="chooseRecord" :mediaServerId="mediaServerId" ></cloud-record-detail>
|
||||
</el-main>
|
||||
</el-container>
|
||||
</div>
|
||||
@ -70,7 +70,7 @@
|
||||
data() {
|
||||
return {
|
||||
mediaServerList: [], // 滅体节点列表
|
||||
mediaServer: null, // 媒体服务
|
||||
mediaServerId: null, // 媒体服务
|
||||
recordList: [], // 设备列表
|
||||
chooseRecord: null, // 媒体服务
|
||||
|
||||
@ -111,9 +111,9 @@
|
||||
getMediaServerList: function (){
|
||||
let that = this;
|
||||
that.mediaServerObj.getMediaServerList((data)=>{
|
||||
that.mediaServerList = data;
|
||||
that.mediaServerList = data.data;
|
||||
if (that.mediaServerList.length > 0) {
|
||||
that.mediaServer = that.mediaServerList[0]
|
||||
that.mediaServerId = that.mediaServerList[0].id
|
||||
that.getRecordList();
|
||||
}
|
||||
})
|
||||
@ -122,7 +122,7 @@
|
||||
let that = this;
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/list`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/list`,
|
||||
params: {
|
||||
page: that.currentPage,
|
||||
count: that.count
|
||||
@ -142,7 +142,8 @@
|
||||
},
|
||||
chooseMediaChange(val){
|
||||
console.log(val)
|
||||
this.mediaServer = val;
|
||||
this.total = 0;
|
||||
this.recordList = [];
|
||||
this.getRecordList();
|
||||
},
|
||||
showRecordDetail(row){
|
||||
|
@ -110,7 +110,7 @@
|
||||
components: {
|
||||
uiHeader, player
|
||||
},
|
||||
props: ['recordFile', 'mediaServer', 'dateFiles'],
|
||||
props: ['recordFile', 'mediaServerId', 'dateFiles'],
|
||||
data() {
|
||||
return {
|
||||
basePath: process.env.NODE_ENV === 'development'?`${location.origin}/debug/zlm`:`${location.origin}/zlm`,
|
||||
@ -238,7 +238,7 @@
|
||||
let that = this;
|
||||
that.$axios({
|
||||
method: 'get',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/file/list`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/file/list`,
|
||||
params: {
|
||||
app: that.recordFile.app,
|
||||
stream: that.recordFile.stream,
|
||||
@ -263,7 +263,7 @@
|
||||
this.videoUrl = "";
|
||||
}else {
|
||||
// TODO 控制列表滚动条
|
||||
this.videoUrl = `${this.basePath}/${this.mediaServer.recordAppName}/${this.recordFile.app}/${this.recordFile.stream}/${this.chooseDate}/${this.choosedFile}`
|
||||
this.videoUrl = `${this.basePath}/${this.mediaServerId}/record/${this.recordFile.app}/${this.recordFile.stream}/${this.chooseDate}/${this.choosedFile}`
|
||||
console.log(this.videoUrl)
|
||||
}
|
||||
|
||||
@ -312,7 +312,7 @@
|
||||
let that = this;
|
||||
this.$axios({
|
||||
method: 'delete',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/delete`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/delete`,
|
||||
params: {
|
||||
page: that.currentPage,
|
||||
count: that.count
|
||||
@ -331,7 +331,7 @@
|
||||
that.dateFilesObj = {};
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/date/list`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/date/list`,
|
||||
params: {
|
||||
app: that.recordFile.app,
|
||||
stream: that.recordFile.stream
|
||||
@ -380,7 +380,7 @@
|
||||
let that = this;
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/file/download/task/add`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/file/download/task/add`,
|
||||
params: {
|
||||
app: that.recordFile.app,
|
||||
stream: that.recordFile.stream,
|
||||
@ -405,7 +405,7 @@
|
||||
let that = this;
|
||||
this.$axios({
|
||||
method: 'get',
|
||||
url:`/record_proxy/${that.mediaServer.generalMediaServerId}/api/record/file/download/task/list`,
|
||||
url:`/record_proxy/${that.mediaServerId}/api/record/file/download/task/list`,
|
||||
params: {
|
||||
isEnd: isEnd,
|
||||
}
|
||||
|
@ -211,10 +211,19 @@
|
||||
}
|
||||
}).then(function (res) {
|
||||
that.getListLoading = false;
|
||||
that.$refs.devicePlayer.openDialog("streamPlay", null, null, {
|
||||
streamInfo: res.data,
|
||||
hasAudio: true
|
||||
});
|
||||
if (res.data.code === 0) {
|
||||
that.$refs.devicePlayer.openDialog("streamPlay", null, null, {
|
||||
streamInfo: res.data.data,
|
||||
hasAudio: true
|
||||
});
|
||||
}else {
|
||||
that.$message({
|
||||
showClose: true,
|
||||
message: "获取地址失败:" + res.data.msg,
|
||||
type: "error",
|
||||
});
|
||||
}
|
||||
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
that.getListLoading = false;
|
||||
|
Loading…
Reference in New Issue
Block a user