| | |
| | | <template slot-scope="scope"> |
| | | <el-button size="medium" icon="el-icon-video-play" type="text" @click="play(scope.row)">播放 |
| | | </el-button> |
| | | <el-button size="medium" icon="el-icon-download" type="text" @click="downloadFile(scope.row)">下载 |
| | | </el-button> |
| | | <!-- <el-button size="medium" icon="el-icon-delete" type="text" style="color: #f56c6c"--> |
| | | <!-- @click="deleteRecord(scope.row)">删除--> |
| | | <!-- </el-button>--> |
| | |
| | | console.log(row) |
| | | this.chooseRecord = row; |
| | | this.showPlayer = true; |
| | | let videoPath = row.filePath.substring(row.filePath.length - 25); |
| | | console.log(videoPath) |
| | | this.videoUrl = `${this.getFileBasePath(row)}/download/${row.app}/${row.stream}/${videoPath}` |
| | | console.log(this.videoUrl) |
| | | }, |
| | | getFileBasePath(item) { |
| | | let basePath = "" |
| | | if (axios.defaults.baseURL.startsWith("http")) { |
| | | basePath = `${axios.defaults.baseURL}/record_proxy/${item.mediaServerId}` |
| | | this.$axios({ |
| | | method: 'get', |
| | | url: `/api/cloud/record/play/path`, |
| | | params: { |
| | | recordId: row.id, |
| | | } |
| | | }).then((res) => { |
| | | console.log(res) |
| | | if (res.data.code === 0) { |
| | | if (location.protocol === "https:") { |
| | | this.videoUrl = res.data.data.httpsPath; |
| | | }else { |
| | | basePath = `${window.location.origin}${axios.defaults.baseURL}/record_proxy/${item.mediaServerId}` |
| | | this.videoUrl = res.data.data.httpPath; |
| | | } |
| | | return basePath; |
| | | }, |
| | | console.log(222 ) |
| | | console.log(this.videoUrl ) |
| | | } |
| | | }).catch((error) => { |
| | | console.log(error); |
| | | }); |
| | | }, |
| | | downloadFile(file){ |
| | | console.log(file) |
| | | this.$axios({ |
| | | method: 'get', |
| | | url: `/api/cloud/record/play/path`, |
| | | params: { |
| | | recordId: file.id, |
| | | } |
| | | }).then((res) => { |
| | | console.log(res) |
| | | const link = document.createElement('a'); |
| | | link.target = "_blank"; |
| | | if (res.data.code === 0) { |
| | | if (location.protocol === "https:") { |
| | | link.href = res.data.data.httpsPath + "&save_name=" + file.fileName; |
| | | }else { |
| | | link.href = res.data.data.httpPath + "&save_name=" + file.fileName; |
| | | } |
| | | link.click(); |
| | | } |
| | | }).catch((error) => { |
| | | console.log(error); |
| | | }); |
| | | }, |
| | | deleteRecord() { |
| | | // TODO |
| | | let that = this; |
| | |
| | | }); |
| | | }, |
| | | formatTime(time) { |
| | | const h = parseInt(time / 3600) |
| | | const minute = parseInt(time / 60 % 60) |
| | | const second = Math.ceil(time % 60) |
| | | |
| | | return (h > 0 ? h + `小时` : '') + (minute > 0 ? minute + '分' : '') + second + '秒' |
| | | const h = parseInt(time / 3600 / 1000) |
| | | const minute = parseInt((time - h * 3600 * 1000) / 60 / 1000) |
| | | let second = Math.ceil((time - h * 3600 * 1000 - minute * 60 * 1000) / 1000) |
| | | if (second < 0) { |
| | | second = 0; |
| | | } |
| | | return (h > 0 ? h + `小时` : '') + (minute > 0 ? minute + '分' : '') + (second > 0 ? second + '秒' : '') |
| | | }, |
| | | formatTimeStamp(time) { |
| | | return moment.unix(time).format('yyyy-MM-DD HH:mm:ss') |
| | | return moment.unix(time/1000).format('yyyy-MM-DD HH:mm:ss') |
| | | } |
| | | |
| | | } |